我计划为手机开发一款游戏。我的目标平台是iOS和安卓。我希望能够在windows和/或linux上进行测试。除了一般的游戏开发经验之外,所有的技术对我来说都是相当新的。我做了大量的研究,并得出结论,游戏应该用C++编写/移植到engine,以确保我的大部分引擎可以轻松地移植到多个设备上。
我更喜欢的另一件事是最初用java编写游戏,并将其移植到C++,因为这是我最喜欢的,也是最快完成的。
现在我有一个问题,是选择使用游戏引擎,如cocos2d-x,还是从头开始编写引擎并使用OpenGL ES 2.0进行渲染。最初,我认为使用cocos2d-x会更好,因为我没有太多使用OpenGL的经验。然而,
我正在使用花栗鼠物理引擎编写一个游戏,我想在每个人的userData字段中存储一个指向object对象的指针。我知道我需要使用桥接方式在id和void *之间进行转换,但我不确定我这样做的方式是否安全:
// When body is created
cpBody *body = cpBodyNew(...);
UserData *userData = [[UserData alloc] init];
cpBodySetUserData(body, CFBridgingRetain(body));
...
// When body is destroyed
UserData *userDa