我正在尝试使用 cg 为 Unity 编写着色器,我想知道我的浮点数具有什么准确性,但我无法弄清楚如何使用 sizeof 命令。 当我尝试使用它时,出现错误:
Shader error in 'Relativity/ColorShift': GLSL vertex shader: ERROR: 0:433: 'sizeof' : Reserved word. at line 218
218是说"CGPROGRAM"的行。
谁能告诉我是否有使用 arbvp1/arbfp1 配置文件进行浮点的标准大小,或者如何使用 sizeof 命令?
标准大小将(希望)写在这里:http://http.developer.nvidia.com/Cg/arbvp1.html,在数据类型部分(目前显示"待写")
同时,您可以尝试假设,根据 Cg 规范,浮点数为 32 位。
至于 sizeof,它是一个保留字,但未实现,至少不是作为库函数实现的。
在 Cg 运行时(但不是在 Unity 中),您可以使用 cgGetParameterResourceSize()...