我的着色器隐式地将一个int转换为float,这会导致C7011警告。
int i = 1;
float f = i;
我不在乎,也从不关心这个警告。但是,在尝试调试我的着色器时,我必须通过一堆这些警告来查找错误。有没有办法压制这些警告?
我尝试查找#pragma的选项,但我找不到任何内容。
提前致谢。
答案 0 :(得分:2)
不确定这对您有多大帮助,但可以查看您正在使用的glsl版本的快速参考。根据{{3}}发现的4.20 GLSL快速参考表的第7页看起来,您可以使用浮点数f = float(i),我认为我不在计算机上,我现在可以测试一下上。
如果这不起作用,您可能需要查看同一参考表第9页上的intBitsToFloat功能。虽然它仅存在于glsl 3.3及更高版本上,但如果您使用的是该版本或更高版本,它可能会为您提供所需的转换。