上篇日志中,我们用纹理和光照颜色调制的方式得到最终颜色,本章我们尝试用纹理采样的颜色,直接做为材质的漫反射系数Kd,并用它来做光照计算,最后再做个gamma校正,如果不做的话,效果会偏亮。
lighttex.ps主要改动代码:
float4 textureColor = shaderTexture.Sample(SampleType, input.tex);
float4 Kd = textureColor;
…
finalcolor = saturate(finalcolor);
//gamma校正
finalcolor = pow(finalcolor, 2.2);
上一章的调制的效果:
本章加gamma校正的效果:
本章不加gamma校正的效果:
完整的代码请参考:
工程文件myTutorialD3D11_31
代码下载:
http://files.cnblogs.com/mikewolf2002/d3d1127-28.zip
http://files.cnblogs.com/mikewolf2002/pictures.zip
时间: 2024-10-05 20:00:26