cg纹理绑定顺序的一个错误

如果希望在程序里动态的绑定纹理,绑定的代码,一定要写在所有的cg纹理参数绑定的前面,否则会出错。
以下代码正确:
glBindTexture(GL_TEXTURE_2D, m_xxxTexId);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 256,256, 0, GL_RGBA, GL_UNSIGNED_BYTE,m_xxxTex);
cgGLSetTextureParameter( cgGetNamedParameter(m_raycastFrag,"xxx"),m_xxxTexId);
cgGLEnableTextureParameter(cgGetNamedParameter(m_raycastFrag,"xxx"));

cgGLSetTextureParameter( cgGetNamedParameter(m_raycastFrag,"xxxx"),  m_xxxxTexId);
cgGLEnableTextureParameter(cgGetNamedParameter(m_raycastFrag,"xxxx"));

如果把绑定放在cgGLSetTextureParameter之后,纹理绑定都会出错。

你可能感兴趣的:(顺序)