2009-11-09 146 views
7

如何在glsl中執行位操作?如何在glsl中執行位操作

使用常規C風格按位運算符|,&,^!不起作用。

+0

看到這裏的示例代碼:HTTP://計算器.com/a/23730491/763355 – MoDJ 2015-11-02 23:45:14

回答

6

它們已經與GLSL1.30(OGL 3.0)一起引入。

根據你想要做什麼,你最終可以用浮點運算來模擬它們,例如x & (2^n)-1 = frac(x/(2^n))*(2^n),但是你必須注意浮點錯誤。

+0

是否還有更多類似的例子?這個AND操作是我最需要的,但也有一些OR會派上用場。 – St0fF 2017-11-27 14:00:05

5

你需要把兩種

#version 130 

#extension GL_EXT_gpu_shader4 : enable 

在着色器的頂部以訪問該位運營商