Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Glsl 1.-1在所有着色器语言中是什么意思_Glsl_Shader_Render_Hlsl_Cg - Fatal编程技术网

Glsl 1.-1在所有着色器语言中是什么意思

Glsl 1.-1在所有着色器语言中是什么意思,glsl,shader,render,hlsl,cg,Glsl,Shader,Render,Hlsl,Cg,我看到的glsl代码如下: vec3 color = vec3(.0); float var = 0; color += 1.-step(0.2,var); 什么是color+=1.-步骤(0.2,var)意味着,我发现它也适用于cg语言。它还有其他形式: 1.-1,1.-0等 -是操作员吗 没有-操作符1。是浮点文本(1.0)。因此1.-步骤(0.2,var)与1.0-步骤(0.2,var)完全相同.0与0.0相同 请参见,是常量1的一部分。使其成为浮点常量而不是整数常量。-只是一个减法运算

我看到的glsl代码如下:

vec3 color = vec3(.0);
float var = 0;
color += 1.-step(0.2,var);
什么是
color+=1.-步骤(0.2,var)
意味着,我发现它也适用于cg语言。它还有其他形式:
1.-1
1.-0


-
是操作员吗

没有
-
操作符<代码>1。是浮点文本(
1.0
)。因此
1.-步骤(0.2,var)
1.0-步骤(0.2,var)
完全相同
.0
0.0
相同


请参见,
是常量
1的一部分。
使其成为浮点常量而不是整数常量。
-
只是一个减法运算符

这主要与GLSL有关,GLSL不允许在表达式中混合整数和浮点值(无隐式转换)——您需要显式转换。所以像
1.-step(0.2,var)
这样的表达式是一个减法运算,其中as
1-step(0.2,var)
将是一个类型错误(尝试从和整数中减去浮点值)


类似于
1.-0
的表达式也是一种类型错误。

1。
被称为浮点常量(见GLSL规范第4.1.4节浮点)。
-
被称为算术二进制减法运算符(见GLSL规范第5.9节表达式)。

1步(0.2,var)
将是一个类型错误”-这取决于glsl版本。最新版本会自动进行转换。