1

我根据 Google 提供的 Lunar Lander 演示对我的游戏进行建模,它使用 Canvas 和 onDraw() 方法,但我想通过使用 Opengl 获得更好的性能。

将其转换为 Opengl 需要多少工作?我可以用opengl的纹理方法或其他方法替换ondraw方法吗?还是我必须完全重新创建游戏?

因为我已经实现了surfaceview,并且我认为我在某处读到Opengl 也使用了它。

抱歉,我是 Opengl 的新手。如果有人能指出我正确的方向,我将不胜感激!

我看过

http://nehe.gamedev.net/

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

但这些都是 3d 的,我希望实现一种绘制 2d 图形的方法。

4

1 回答 1

2

在 openGL 中 2D 和 3D 没有区别:如果您可以在 3D 中绘制任何多边形,则可以将它们绘制成与屏幕对齐。

看看 NeHe 的 2D 文本教程。删除所有 3D 部分。更改代码以仅显示四边形,不显示列表,每个都有自己的纹理。尽可能多地清理代码,剩下的行应该很少。添加一些代码以能够旋转每个四边形。

我建议您不要尝试在嵌入式设备上进行开发(即使使用模拟器。它仍然很痛苦)。

完成后,从演示中创建一个小型 openGL 应用程序。您必须处理以下部分:窗口、输入和显示。

完成此操作后,您会发现移植 Lunar Lander 非常容易(我认为)

于 2010-08-05T08:04:24.763 回答