我在Google提供的Lunar Lander演示之后对我的游戏建模,它使用Canvas和onDraw()方法,但我想通过使用Opengl获得更好的性能。
将它转换为Opengl需要多少工作?我可以用opengl的纹理方法替换ondraw方法吗?或者我是否必须完全重建游戏?
因为我已经实现了surfaceview,我以为我读过Opengl使用它的地方。
对不起,我是Opengl的新手。如果有人能指出我正确的方向,我会很感激!
我看了
http://blog.jayway.com/author/pererikbergman/
但这些都是3d,我希望实现一种绘制2D图形的方法。
答案 0 :(得分:2)
在openGL中2D和3D之间没有区别:如果你可以在3D中绘制任何多边形,你可以绘制它们以便它们与屏幕对齐。
看看NeHe关于2D文本的教程。删除所有3D部分。更改代码以仅显示四边形,而不显示每个都有自己纹理的显示列表。尽可能地清理代码,应该剩下很少的行。添加一些代码以便能够旋转每个四边形。
我建议你不要尝试在嵌入式设备上进行开发(即使使用模拟器。它仍然非常痛苦)。
完成后,从演示中创建一个小型的openGL应用程序。您必须处理以下部分:窗口,输入和显示。
当你这样做时,你会发现移植Lunar Lander非常容易(我认为)