如何在glsl中执行位操作?
使用常规C样式按位运算符|
,&
,^
或!
不起作用。
答案 0 :(得分:7)
它们已经与GLSL 1.30(OGL 3.0)一起推出。
根据您的目的,您最终可以使用浮点运算来模拟它们,例如x & (2^n)-1 = frac(x/(2^n))*(2^n)
,但您必须处理浮点错误。
答案 1 :(得分:5)
你需要把
#version 130
或
#extension GL_EXT_gpu_shader4 : enable
着色器顶部的可以访问位运算符