关于这个问题,其实解决方法很简单,我们只需要在着色器程序中加入一行代码就可以解决
#version 120
原因是这样子的因为gl_PointCoord是在着色器版本为1.2的版本的时候引入的,具体原因可以参考这个讨论
下面是我们原本的程序,执行的时候会报Use of undeclared identifier ‘gl_PointCoord’
varying vec4 vStarColor;
uniform sampler2D starImage;
void main(void)
{
gl_FragColor = texture2D(starImage, gl_PointCoord) * vStarColor;
}
现在我们改为如下所示,在最前面加一行就可以了
#version 120
varying vec4 vStarColor;
uniform sampler2D starImage;
void main(void)
{
gl_FragColor = texture2D(starImage, gl_PointCoord) * vStarColor;
}