Bug 677095. Compute reasonable destination alpha values with component-alpha blending in D3D10. r=bas

--HG--
extra : rebase_source : b0264c52df9a37334d9524e1fdd1f15e4e4df866
This commit is contained in:
Robert O'Callahan 2011-08-12 10:40:39 +12:00
Родитель 4677e74e4d
Коммит 3e3f6096a0
2 изменённых файлов: 7186 добавлений и 7224 удалений

Просмотреть файл

@ -48,8 +48,8 @@ BlendState ComponentAlphaBlend
SrcBlend = One;
DestBlend = Inv_Src1_Color;
BlendOp = Add;
SrcBlendAlpha = Zero;
DestBlendAlpha = One;
SrcBlendAlpha = Src1_Alpha;
DestBlendAlpha = Inv_Src1_Alpha;
BlendOpAlpha = Add;
RenderTargetWriteMask[0] = 0x0F; // All
};
@ -172,6 +172,7 @@ PS_OUTPUT ComponentAlphaShader(const VS_OUTPUT aVertex) : SV_Target
result.vSrc = tRGB.Sample(LayerTextureSamplerLinear, aVertex.vTexCoords);
result.vAlpha = 1.0 - tRGBWhite.Sample(LayerTextureSamplerLinear, aVertex.vTexCoords) + result.vSrc;
result.vAlpha.a = result.vAlpha.g;
result.vSrc *= fLayerOpacity;
result.vAlpha *= fLayerOpacity;
return result;

Разница между файлами не показана из-за своего большого размера Загрузить разницу