【发布时间】:2016-07-13 03:35:09
【问题描述】:
我正在使用 Marmalade SDK,我的问题是,我可以只使用 cocos2d-x 和 Box2d,而不完全使用 Iw2d、IwGx、IwGL(反之亦然)吗?
如果我想使用 cocos2d-x 和 Box2d,而不是其他所有(反之亦然),我的选择取决于哪些因素?
P.S 我正在开发一款需要最少物理量的 2d 游戏
【问题讨论】:
标签: cross-platform cocos2d-x box2d marmalade
我正在使用 Marmalade SDK,我的问题是,我可以只使用 cocos2d-x 和 Box2d,而不完全使用 Iw2d、IwGx、IwGL(反之亦然)吗?
如果我想使用 cocos2d-x 和 Box2d,而不是其他所有(反之亦然),我的选择取决于哪些因素?
P.S 我正在开发一款需要最少物理量的 2d 游戏
【问题讨论】:
标签: cross-platform cocos2d-x box2d marmalade
你可以使用 Cocos2d-x 而不使用 Iw2D、IwGX 等。Cocos2d 应该为你抽象这些东西。 Cocos2D-x 是一个完整的游戏引擎,而 Iw2d 只是一个渲染系统,可以为您渲染 2d 精灵。
您想使用什么系统取决于您自己想完成多少低级工作。
如果您使用 Cocos2D-X,它将支持许多开箱即用的功能。比如场景、精灵渲染、骨架动画、效果、粒子等。
Iw2D 只是抽象了底层的 OpenGL-API,这样您就可以通过一个函数调用来渲染精灵。但它不支持动画和其他功能。因此,您必须包含其他项目或自己编写功能。
IwGx 是 OpenGL 的包装器,它引入了状态,以便 OpenGL-API 更易于处理。
IwGl 只是普通的 OpenGL,您甚至必须自己实现渲染。
使用哪一个取决于项目。当您只想制作 2d 游戏时,cocos-2d 或 Iw2D 应该为您提供足够的控制权以成功完成,并且您可以使用已经测试过的系统,从而节省时间。
Box2d 仅用于驱动游戏世界的物理模拟。您可以将它与所有这些系统一起使用。
根据您的 C++ 和游戏编程经验,我建议首先使用游戏引擎(如 cocos2d-x)或 Iw2D 来学习基础知识。对于您的第二个游戏,您仍然可以根据需要切换到更底层的 api。
【讨论】:
听起来您可以专注于 Quick 的 Marmalade 风味,其中 cocos2d 和 box2d 与 Lua 捆绑在一起。这将有助于轻松启动和开发。
【讨论】: