gpt4 book ai didi

c# - 使用自定义着色器在 SpriteBatch.Draw 中指定的颜色

转载 作者:行者123 更新时间:2023-11-30 15:36:05 24 4
gpt4 key购买 nike

通常当您执行 SpriteBatch.Draw 时,您可以指定一种颜色。但这就是问题所在。如果我使用自定义着色器,它们会忽略 SpriteBatch.Draw...

传递的颜色

我该如何考虑这一点?我的意思是 SpriteBatch.Draw 究竟是如何传递颜色的?如果我知道它,我可以在我的着色器中使用它。

到目前为止我所拥有的(相关部分):

float4 NoEffects(float2 coords: TEXCOORD0) : COLOR0
{
return tex2D(s0, coords);
}

technique Default
{
pass Pass1
{
PixelShader = compile ps_2_0 NoEffects();
}
}

最佳答案

您需要检索通过顶点着色器传递的颜色并在计算最终输出时使用它:

float4 NoEffects(float4 color : COLOR0, float2 coords : TEXCOORD0) : COLOR0
{
return tex2D(s0, coords) * color;
}

关于c# - 使用自定义着色器在 SpriteBatch.Draw 中指定的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14127029/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com