Конвертировать Lunar Lander для использования Opengl - PullRequest
1 голос
/ 05 августа 2010

Я смоделировал свою игру после демонстрации Lunar Lander, которую предоставляет Google, и в ней используются методы Canvas и onDraw (), но я хочу повысить производительность с помощью Opengl.

Сколько стоит конвертировать его в Opengl? Могу ли я просто заменить методы ondraw на методы текстуры opengl или что-то еще? Или мне нужно полностью воссоздать игру?

Потому что у меня уже реализован SurfaceView, и я подумал, что где-то читал, что Opengl также использует это.

Извините, я совершенно новичок в Opengl. Если бы кто-нибудь мог указать мне правильное направление, я был бы признателен за это!

Я смотрел на

http://nehe.gamedev.net/

http://blog.jayway.com/author/pererikbergman/

Но это все 3d, я собираюсь реализовать способ рисования 2D-графики.

1 Ответ

2 голосов
/ 05 августа 2010

Нет различия между 2D и 3D в openGL: если вы можете нарисовать любой многоугольник в 3D, вы можете нарисовать его так, чтобы он выровнялся по экрану.

Взгляните на учебник NeHe по 2D-тексту. Удалить всю 3D часть. Измените код, чтобы отображать только четыре квадрата, а не списки, каждый со своей текстурой. Очистите код настолько, насколько вы можете, должно быть действительно несколько строк. Добавьте код, чтобы можно было вращать каждый квад.

Я предлагаю вам не пытаться разрабатывать на встроенном устройстве (даже с эмулятором. Это все еще довольно болезненно) раньше.

Как только вы закончите, создайте крошечное приложение openGL из демоверсий. Вам приходится иметь дело со следующими частями: управление окнами, ввод и отображение.

Когда вы сделаете это, вы обнаружите, что перенос Lunar Lander довольно прост (я думаю)

...