问题标签 [box2d-iphone]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
109 浏览

objective-c - 使用 Box2D 在 Cocos2D 项目中包含 GameLayer.h 时编译错误

所以我在一个名为 mainMenu 的文件中有以下代码:

我有#import "GameLayer.h"。GameLayer.h头文件中包含 cocos2d、box2d、GLES-Render。

因此,每当我在 mainMenu 文件 ( .m) 中包含 GameLayer 并尝试构建应用程序时,它都会返回关于 b2d(b2settings、b2math 等)的大约 360 个错误。有人知道我做错了什么吗?

注意 mainMenu 代码在不包含 GameLayer 的情况下工作得非常好,GameLayer 也不包含 mainMenu!

0 投票
2 回答
1126 浏览

cocos2d-iphone - 如何给 Box2d Kinematic body 一个预定义的曲线路径

我是使用 Box2d 的新手,真的找不到我的问题的一致答案,所以请原谅。

我正在为 iPhone 编写一个游戏——现在不是——我正在使用 Cocos2d 和 Box2D。我有在游戏中四处移动的物体,我想给它们更多的弯曲路径。根据我的研究,我知道我应该使用 b2_kinematicBody 类型的体,它允许我改变每个滴答声的线速度,并防止它们与我的其他飞行体发生碰撞。我确实明白,如果我知道我当前的位置 (x,y) 和我在步骤 (x1,y1) 中的下一个位置,我将能够计算速度矢量。有没有人有一个好方法给一个对象一个定义的弯曲路径?我认为它必须是某种参数方程。

0 投票
1 回答
1120 浏览

cocos2d-iphone - cocos2d中的水波实现

我正在开发一个游戏(cocos2d+box2d),我想在其中实现类似于以下链接的波浪, http: //jayisgames.com/cgdc8/ ?gameID= 7 上面的游戏使用 World Construction Kit for flash 完成了它。

是否有任何人移植了与 cocos2d 类似的东西,或者任何人知道我如何使用 cocos2d 实现类似的功能,请帮助我。

0 投票
1 回答
798 浏览

box2d - 物体被磁化时box2d抖动

所以我有一些身体(我可以在运行时创建越来越多的身体),我需要将它们磁化到屏幕中心。让它成为世界空间中的 (480/2 / WORLD_SCALE, 320/2 / WORLD_SCALE)。我是 box2d 的新手,所以也许有一种简单的方法可以实现这一点,但我正在尝试按以下方式进行操作:

  1. 我减去每个身体的位置和屏幕中心位置 - 以获得我需要将身体移动到的方向。
  2. 归一化方向向量(我在第 1 页找到)
  3. 将此归一化向量乘以我的重力功率值
  4. 将向量(我在第 3 页中得到的)添加到当前身体的速度

所以在那之后我得到了我想要的——物体确实会磁化到屏幕中心,我还添加了一些摩擦和阻尼,这样物体就可以停止。但是,正如我所假设的,由于我的重力矢量是恒定的长度 - 我不能强迫身体完全停止移动。它总是试图将自己移动到屏幕中心,并且它们的最小速度是这个重力矢量的长度。

如果我只有一个身体,当身体更靠近屏幕中心时,我不会执行步骤 2,3,那么重力大小是。但是我不能将身体的位置绑定到磁场中心,因为这两个身体永远不会占据屏幕中间的确切位置,因为它们会相互碰撞。所以我不能让我的重力矢量可变,并且玩弄任何摩擦都不能解决问题,也许一些步骤黑客可能会有所帮助,但我认为我需要的是实现某种弹跳反作用力或类似的东西。

我是box2d的新手,对物理不是很好。

同样重要的是我使用 SetLinearVelocity 方法设置了身体速度。

也许我只是错过了一些东西,也许 box2d 有一些原生的方法来实现这一点。任何帮助表示赞赏。

0 投票
1 回答
771 浏览

objective-c - Objective-C 和 Box2D 多精灵触摸检测

我创建了一系列敌人,当我添加一个敌人时,我添加了适当的 box2d 代码,但是我发现我的所有敌人都无法被触摸,我不确定是什么原因造成的,但据我所知,它永远不会返回一个夹具。

我尝试设置用户数据,但没有得到多个项目。

这就是我添加精灵等的方式

然后我使用我的触摸处理程序尝试返回已触摸的项目

0 投票
1 回答
797 浏览

cocos2d-iphone - 如何使 box2d 鼠标关节的工作类似于 box2d 设置位置

我想让 b2mouse 关节的工作类似于 b2setposition,虽然我知道在鼠标关节中施加了力,所以不可能像 setPosition() 那样没有任何延迟就达到所需的点,但我想让它像 b2setPosition( )。因此,我应该在哪些mousejoint/body 属性上工作,以便它与b2setposition 一样接近。

感谢您的回答。

0 投票
1 回答
3257 浏览

cocos2d-iphone - Cocos2d Box2d 多个b2circle形夹具一体带定位

有人知道如何将 2 个圆形夹具添加到一个具有所需定位的 b2body 上吗?我知道如何使用m_centroid. 但是我怎样才能为圆形夹具做到这一点。

任何答案将不胜感激。我想把一些物体粘在一起。我试过关节,但它们都是有弹性的。我想要距离静态。

谢谢大家!

0 投票
1 回答
4055 浏览

objective-c - Box2D 世界大小

我创建了一个 box2d 世界,我想限制世界的高度。我确实搜索了谷歌,显然在以前版本的 box2d 中有一个选项,你必须定义你的世界的大小,但我不确定你是否能够设置世界的高度,但在当前版本中他们有完全取消了该选项。

所以我只是在寻找一种限制高度的方法,因为我的球员是一个上下跳跃的球,我想限制它可以跳多高(跳跃是由物理和重力以及球的速度完成的,所以经过几次良好的跳跃后,随着速度的增加,球跳得非常高,我不想限制速度)并把边界放在让说y=900

0 投票
2 回答
7720 浏览

cocos2d-iphone - Cocos2D 和 Box2D 的光照和阴影

我目前正在使用 Cocos2d 和 Box2d 为 iPad 和 iPhone 开发游戏。实现像本视频中那样的照明效果会非常酷:

http://www.youtube.com/watch?v=Elnpm-gNI04

在这个链接上:

http://www.catalinzima.com/2010/07/my-technique-for-the-shader-based-dynamic-2d-shadows/

我可以尝试从链接中的描述中复制 Cocos2d 和 Box2d 的效果,但我不确定我是否能够走得很远。它看起来非常先进和沉重。

我怎样才能以“简单”的方式实现这一目标?有谁知道这样的 Cocos2d 版本,或者有没有人有一些指针可以指出我正确的方向?

0 投票
1 回答
299 浏览

objective-c - Box2D 多边形没有正确碰撞

我正在尝试在 iOS 上使用 Box2D 保存场景并重新加载它,但我遇到的问题是从文件中读取场景后,多边形没有正确碰撞。这是一种或半碰撞,就好像多边形是凹的一样。然而,它们确实使用 GLESDebugDraw 正确呈现。我以与它们写入相同的顺序读取多边形的顶点,这与它们的存储顺序相同。在这一点上,任何关于正在发生的事情的想法都会很有用。谢谢。