Итак, я хотел запрограммировать простую игру с помощью lwjgl, однако столкнулся с проблемой еще до фазы пре-пре-пре-альфа, в самом начале.
Поскольку у меня нет текстуры для него, я хотел нарисовать игрока, используя простой прямоугольник. Однако мой код ничего не делает.
вот мой код инициализации openGL:
glMatrixMode(GL_PROJECTION);
glOrtho(0, 640, 480, 0, 1, -1);
glMatrixMode(GL_MODELVIEW);
glEnable(GL_TEXTURE_2D);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
и вот основной цикл:
while(!Display.isCloseRequested()) {
//Main loop
glClear(GL_COLOR_BUFFER_BIT);
player.update();
Display.update();
Display.sync(60);
}
Display.destroy();
System.exit(0);
Функция player.update() проверяет ввод и вызывает функцию рисования, которая выглядит следующим образом:
public void draw() {
glBegin(GL_QUADS);
glVertex2f(x * World.TILE_SIZE, y * World.TILE_SIZE);
glVertex2f(x * World.TILE_SIZE + World.TILE_SIZE, y * World.TILE_SIZE);
glVertex2f(x * World.TILE_SIZE + World.TILE_SIZE, y * World.TILE_SIZE
+ World.TILE_SIZE);
glVertex2f(x * World.TILE_SIZE, y * World.TILE_SIZE + World.TILE_SIZE);
glEnd();
}
Мне это кажется очень простым lwjgl-кодом, который должен работать без проблем, но это не так. При выполнении он просто дает мне черное окно без каких-либо нарисованных прямоугольников. Какие-либо предложения?
заранее спасибо
-v0xelDev