OpenGl ошибка в отражении текстур
Вот примерная схема кода -
Код:
public void goGame() throws IOException, LWJGLException
{
try {
Display.setDisplayMode(new DisplayMode(1280,800));
Display.setTitle("Engine");
Display.create();
} catch (LWJGLException e) {e.printStackTrace(); }
dispX=Display.getWidth();
dispY=Display.getHeight();
glLoadIdentity();
gluPerspective((float)30, (float)dispX/(float)dispY, 0.1f, 250000);
glBlendFunc(GL_ONE, GL_SRC_COLOR);
glEnable(GL_BLEND);
glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glEnable(GL_DEPTH_TEST);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glMatrixMode(GL_MODELVIEW);
glEnable(GL_TEXTURE_2D);
while (!Display.isCloseRequested())
{
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
glPopMatrix();
glPushMatrix();
showMap();
Display.update();
Display.sync(60);
}
Display.destroy();
}
public void showMap()
{
texture.bind();
glBegin(GL_QUADS);
// showQuads - glTexCoord2f(); glVertex3f (); ...
glEnd();
}
{
try {
Display.setDisplayMode(new DisplayMode(1280,800));
Display.setTitle("Engine");
Display.create();
} catch (LWJGLException e) {e.printStackTrace(); }
dispX=Display.getWidth();
dispY=Display.getHeight();
glLoadIdentity();
gluPerspective((float)30, (float)dispX/(float)dispY, 0.1f, 250000);
glBlendFunc(GL_ONE, GL_SRC_COLOR);
glEnable(GL_BLEND);
glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glEnable(GL_DEPTH_TEST);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glMatrixMode(GL_MODELVIEW);
glEnable(GL_TEXTURE_2D);
while (!Display.isCloseRequested())
{
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
glPopMatrix();
glPushMatrix();
showMap();
Display.update();
Display.sync(60);
}
Display.destroy();
}
public void showMap()
{
texture.bind();
glBegin(GL_QUADS);
// showQuads - glTexCoord2f(); glVertex3f (); ...
glEnd();
}