Art*_*Toh 7 opengl glsl modulo
在今天编写着色器程序时,遇到了我必须%用来查找余数的情况.GLSL给了我一个错误,说它在当前版本中不可用.
我试过几个问题.GLSL不支持递归函数和while循环,如果我想创建一个可以给我结果的函数,则需要它(a % b).
所以,我现在卡住了.有人可以帮我弄这个吗?
编辑.我试图使用本网站的一些着色器代码作为参考代码来模拟CRT屏幕.我想修改某些行和列的像素颜色,所以我需要使用模运算符.
起初,我认为模数函数是使用%运算符完成的.它不起作用,所以我尝试使用递归函数/ while循环作为模数函数的变通方法,它也不起作用.
Nic*_*las 20
GLSL不支持递归函数和while循环,如果我想创建一个可以给我(a%b)结果的函数,则需要它.
首先,计算不需要递归和循环a mod b.这很容易做到a - (b * floor(a/b)).
这正是内置mod函数的作用.如果您的GLSL版本不支持%运算符,那么您可能无法获得实数整数.所以只需mod在值上使用该函数即可.
| 归档时间: |
|
| 查看次数: |
11064 次 |
| 最近记录: |