我正在使用 Kobold2D/cocos2D 为 iOS 制作 2D 游戏。现在我决定也尝试添加一些 3D 建筑(想想 GTA1/2 除了建筑之外一切都是 2D 的)。
我知道 OpenGL 是如何工作的,但我在尝试实现它时遇到了各种错误。
我的问题是: cocos2d 会阻止我使用正常的 OpenGL 调用吗?或者如果它正确完成,它应该工作正常吗?我发现的每个教程/示例都使用一些 cocos2d 包装器来混合 opengl 和 cocos..
如果您以前这样做过(将您自己的 OpenGL ES 2.0 代码与 cocos2d 混合使用),您能指出正确的方向吗?
最佳答案
只要您使用的是 cocos2d/Kobold2D v2.x,就可以使用 OpenGL ES 2.0。您可以覆盖/实现任何 CCNode 类的 -(void) draw
方法并破解。
只有一个警告:您应该更喜欢使用 cocos2d 提供的“ccStuffStuff”方法(例如 ccDrawColor)而不是 OpenGL ES 方法,因为出于性能原因和兼容性考虑,它们包装了一些幕后内容。检查任何现有的 cocos2d 绘图代码以获取示例。一个这样的例子是来自 cocos2d+Box2D 项目的 GLES-Render.cpp,或者 ccDrawingPrimitives.m 文件。
关于ios - 我可以在 iOS 上将普通的 OpenGL ES 2.0 与 Kobol2D/cocos2d 混合使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16468547/