如何从HLSL着色器中获取精灵批次的颜色色调?我正在和xna一起工作。
此外,这背后的理论是什么?我认为色调颜色只会在传递给HLSL之前改变实际的纹理颜色,但情况似乎并非如此。
答案 0 :(得分:0)
您可以查看source code for the default SpriteBatch
shader here。请查看SpriteEffect.fx
了解详情。
具体地说,色调颜色在COLOR0
中传递到顶点着色器,然后直接传递给像素着色器。在像素着色器中,它会乘以该像素的纹理样本。
直接修改纹理数据会非常慢。