我已经开始了一个新项目,我想在其中使用多重纹理。我之前做过多重纹理,并且我的 OpenGL 版本支持
在标题中我有:
GLuint m_TerrainTexture[3];//heightmap, texture map and detail map
GLuint m_SkyboxTexture[5]; //left, front, right, back and top textures
PFNGLMULTITEXCOORD2FARBPROC glMultiTexCoord2fARB;
PFNGLACTIVETEXTUREARBPROC glActiveTexture;
在构造函数中,我有:
glActiveTexture = (PFNGLACTIVETEXTUREARBPROC) wglGetProcAddress((LPCSTR)"glActiveTextureARB");
glMultiTexCoord2fARB = (PFNGLMULTITEXCOORD2FARBPROC) wglGetProcAddress((LPCSTR)"glMultiTexCoord2fARB");
if(!glActiveTexture || !glMultiTexCoord2fARB)
{
MessageBox(NULL, "multitexturing failed", "OGL_D3D Error", MB_OK);
}
glActiveTexture( GL_TEXTURE0_ARB );
...
这显示消息框“multitexturing failed”,glActiveTexture 的内容为 0x00000000
当它到达 glActiveTexture( GL_TEXTURE0_ARB ); 我收到访问冲突错误
我正在实现 MVC 图,所以这一切都在我的地形视图类中