首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Cos2d-x3碰撞

Cos2d-x3碰撞
EN

Stack Overflow用户
提问于 2014-06-21 05:49:16
回答 1查看 184关注 0票数 0

首先,我刚刚开始进行游戏编程,所以请放心吧。我已经决定使用cocos2d-x3使用c++,这样我就可以用一个代码库为多个平台构建它。我已经建立了一个小游戏,在哪里碰撞工作,但我不认为我做得对,大多数教程是为旧版本,并没有完全解释碰撞部分,我的理解。我有两个问题:

1.)物体是按长方形打的,但我需要它们打成一个圆圈。

  • 我试过使用可可工作室,但我似乎不太明白如何使长方形成为一个圆。我已经能够让动画运行,但当它们碰撞,你可以知道它是在矩形,而不是实际的对象。
  • 我也试过使用物理编辑器,但它要求它使用Box2D,这是可以的,但这是我的第二点。另外,使用物理编辑器,如果不创建一个单独的资源,我就无法运行我想要的动画(我假设是这样的)。

2.)探测碰撞。

  • 我不太清楚如何正确地做这件事。我已经看到你可以用Box2D来做这件事,但是我只是在使用下面的代码
  • 现在,根据我所读到的,您可以使用box2d和设置来完成它,这样它们只会与某些对象发生冲突,但这一切都让我感到困惑。

以下是代码:

代码语言:javascript
运行
复制
CCRect ballRect = ball->getBoundingBox();
CCRect enemyRect = enemy->getBoundingBox();
if(ballRect.intersectsRect(enemyRect)){
  //collision
}

如果有人能帮帮我,那就太好了。我愿意接受一些工具的使用,或者我可以遵循的教程来解释这一切是如何工作的。另外,我发现的另一件奇怪的事情是,我不得不从这里提取物理编辑器的代码,https://github.com/CodeAndWeb/PhysicsEditor-Cocos2d-x-Box2d,以便从物理编辑器导出的plist加载Box2D中的“固定装置”。我不知道这是否正确,我认为Box2D可以加载它本身(我在这里也可能错了,因为我只是不知道)。在这件事上任何帮助都是非常感谢的。只是想让这个设置正确,其他的一切都是轻而易举的。只是似乎不知道如何正确定义碰撞矩形和正确的方法来检测碰撞。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-21 18:54:39

尽管看看这些,它们可能会有所帮助。

  1. 它有可下载的cocos2d-x项目文件。版本可能是旧的。http://www.gmtdev.com/blog/2011/08/19/how-to-use-box2d-for-just-collision-detection-with-cocos2d-x/10
  2. 这是cocos2d,它是obj-c.但是他已经讨论了帮助创建更精确的碰撞参数的顶点助手工具。

http://www.raywenderlich.com/606/box2d-tutorial-for-ios-how-to-use-box2d-for-just-collision-detection-with-cocos2d-iphone

如果你只需要一个圆圈,像一个完美的圆圈?您可以使用box2d进行碰撞,并将您的身体定义为b2Circle。这会给你一个完美的回击。

您可以查看每个cocos2d-x下载的test项目,以获得最新的语法和基本教程。他们也有box2d测试。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24338705

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档