我想用GWEN在我的opengl场景上绘制一些GUI元素。它似乎已经正确设置,但gwen没有任何实际上正在绘制(至少明显)。我使用的是自定义渲染器,它本质上是GWEN的stock opengl渲染器,但是具有用于加载纹理的不同功能。和OpenGL ::开始()和OpenGL ::结束()替换这些:gwen + opengl看不到任何东西
void coRenderer::Begin()
{
glUseProgram(0);
glDisable(GL_DEPTH_TEST);
glDepthMask(0);
glEnable(GL_BLEND);
glMatrixMode(GL_PROJECTION); // Select The Projection Matrix
glPushMatrix(); // Store The Projection Matrix
glLoadIdentity();
glOrtho(0, screen->w, screen->h, 0, -1, 1);
glMatrixMode(GL_MODELVIEW);
glActiveTexture(GL_TEXTURE0);
}
void coRenderer::End()
{
Flush();
glMatrixMode(GL_PROJECTION); // Select The Projection Matrix
glPopMatrix(); // Restore The Old Projection Matrix
glDisable(GL_BLEND);
glEnable(GL_DEPTH_TEST);
glDepthMask(1);
glEnable(GL_TEXTURE_2D);
}
为Gwen的OpenGL渲染的代码是在这里:
http://gwen.googlecode.com/svn/trunk/trunk/gwen/Renderers/OpenGL/OpenGL.cpp
顺便说一句,我使用OpenGL 2.1不是3.0+
谢谢,我检查使用gDebugger和纹理加载罚款。我会进一步研究。你有任何代码可以帮助我吗? – PgrAm
@PrrAm截至目前我还没有,因为除了最初尝试使用引擎工作外,我还没有亲自使用过GWEN。只要检查GUI的绘制位置,我怀疑它不是绘图的问题,这是绘制在哪里的问题。 – Ner0