1

我正在尝试为 android 设计一个侧滚动条和一个用于 Windows 的关卡编辑器。两个程序之间的许多代码将是相同的。我目前正在进行的工作是绘制纹理。

我目前拥有的是一个库,其中包含与加载和绘制纹理信息相关的代码。我坚持的一点是如何将 OpenGL(用于 Windows)和 OpenGL ES(用于 android)合并到库中?

我想过拥有一个包含所有绘图功能的接口,然后在每个程序中分别实现该接口(因为一个将使用 OpenGL 和一个 OpenGL ES),但这仍然会产生大量重复的代码(并且有点违背了尝试的目的)创建这个共享库)。

有没有更好的方法来解决这个问题?我是不是试图让它变得过于灵活而使这变得过于复杂?我已经考虑了几天了,所以任何输入将不胜感激!

请问有什么不明白的地方!

4

1 回答 1

1

OpenGL 和 OpenGL-ES 非常相似,您可以共享大量代码库。由于您可能会以 OpenGL-ES-2 为目标,因此您可能会在桌面上使用 OpenGL-3。OpenGL-3 有很多 OpenGL-ES-2 有的东西。因此,我建议您主要为 OpenGL-ES-2 开发代码,然后仅针对与 OpenGL-3 的微小差异添加替代代码路径。

于 2013-01-05T13:31:38.570 回答