2010年2月12日星期五

编写GLSL及其glew需要注意的几个问题

GLSL
1.uniform variable is read-only.
2.给float变量赋值要加.0
3.类型转换是int(variable)而不是(int)variable
4.数组index若用vaiable访问(no matter read or write) 则必须事先定义好大小.若index只用constant则不必

glew
1.要在main中调用glewInit(),否则程序运行到某些库函数时会产生异常,但编译不会报错
2.setShader()部分要在glutMainLoop()之前,否则shader会不起作用
3.GLboolean glewIsSupported (const char* name)可用来检测是否对某个extension支持
4.某些extension对其余extension会有dependence.这时需要在shader起始位置加上类似下面的语句

#extension GL_EXT_gpu_shader4 : enable

没有评论:

发表评论