nur*_*gan 2 opengl floating-point glsl
我在glsl片段着色器中做了一些东西,得到了一些奇怪的结果.我用于计算的代码现在应该并不真正相关,但对于某种"调试",我会根据变量所在的范围显示颜色.
编码为:(阴影是一个浮点数)
if(shadow == 0.0f)
{
vFragColor = vec4(1.0f, 0.0f, 0.0f, 0.0f);
}
else if(shadow == 1.0f)
{
vFragColor = vec4(0.0f, 1.0f, 0.0f, 0.0f);
}
else if(shadow < 1.0f && shadow > 0.0f)
{
vFragColor = vec4(0.0f, 0.0f, 1.0f, 0.0f);
}
else if(shadow < 0.0f)
{
vFragColor = vec4(1.0f, 0.0f, 1.0f, 0.0f);
}
else if(shadow > 1.0f)
{
vFragColor = vec4(0.0f, 1.0f, 1.0f, 0.0f);
}
else
{
vFragColor = vec4(1.0f, 1.0f, 1.0f, 0.0f);
}
Run Code Online (Sandbox Code Playgroud)
根据我的理解,不应该在最后输入"else",因为代码在检查任何可能的值之前.但是,对于我得到一些奇怪结果的区域,我想做那种"调试",代码进入"else"语句.
有谁知道这会怎么样?我根本不明白这一点......
| 归档时间: |
|
| 查看次数: |
571 次 |
| 最近记录: |