问题标签 [chipmunk]

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 投票
2 回答
326 浏览

objective-c - 从 Cocoa 中的 C 方法访问属性

我正在尝试学习 Objective C 和 Cocoa,但我无法访问对象内的属性。特别是来自 C 方法的对象。我正在使用花栗鼠动态库。

Chipmunk 有一个类似于 NSPoint 的东西,叫做 cpVect。现在我在我的对象中定义一个 cpVect 没有问题,但是当我尝试使用 @property 和 @synthesize 制作访问器时,我不断收到错误:所以

工作正常

给我错误"property 'forceVector' with 'retain' must be of object type"

所以没有“保留”我会得到一个不同的错误

我正在兜圈子试图弄清楚这一点,有没有我可以使用的特定类型,它是花栗鼠和可可之间的不兼容,还是......或者......我不知道。Chipmunk 对文档非常了解,我发现的所有示例似乎都没有使用对象,所有示例都只使用一个类来处理所有内容。

任何帮助,非常感谢。这件事快把我逼疯了。

0 投票
2 回答
3410 浏览

objective-c - 什么是花栗鼠?(除了是一个物理引擎)

希望这个问题不像我担心的那样愚蠢,但它可能仍然很愚蠢。

我是 Objective-C 和 Cocoa 的新手。事实上,总的来说,我对 C 完全陌生。我正在尝试使用Cocos2d-iPhone实现 iPhone 游戏。这是我以前用 Flash 制作的游戏,所以我认为这将是一个很好的方法来学习 Objective C、cocoa 和 cocos2d。

我遇到的一个大问题是理解为什么所有的Chipmunk代码看起来都与所有普通的 Objective-C 代码不同。例如,有类似的东西

我以为会是

chipmunkBody.position.x或者也许[[chipmunkBody position] x](可能是坏例子)。

一直在咬我的一种方法是使用 cpVect。cpVect 非常重要,但我一生都无法弄清楚如何传递它。CGPoint,没问题,我可以制作指针,在方法中传递它们等等,但是第二次我使用 cpVect 代替,它是“欢迎来到 Errorville,填充你”。

所以这就是问题,Chipmunk 是什么,所以我可以开始了解更多关于使用它的信息。

谢谢-t

0 投票
3 回答
152 浏览

c - 我的会员价值发生了什么变化?

那里有一个笑话。

随便。在以下代码中,该setForceVector方法对其尝试更改的成员的值没有实际影响。通过检查日志,我可以看到正在调用该函数(由另一个对象处理 a touchEvent)。

我已经使用 NSLog 来检查forceVectorfromControls实际是否按预期出现,并且确实如此。

如果我forceVectorinitstep方法中设置它的值,它会按预期工作。setForceVector但由于某种原因,它在方法中什么都不做。

cpVect是一个C结构,这和它有什么关系吗?

http://pastebin.com/m78f3d63e

我难住了。

0 投票
1 回答
1533 浏览

iphone - iphone碰撞检测问题使用花栗鼠

我有 2 个小问题: 花栗鼠碰撞检测:我正在开发一个游戏,我检测球和一些静态多边形形状之间的碰撞。这是有效的,但“部分”,这意味着它适用于大约 5 个游戏场景(例如 1 - 5 级)但在第 6 个场景中失败,然后在第 7 个场景中一切正常等等。基本上,碰撞检测有效,但有时会失败..

我不认为设置空间、身体等有问题。因为在一段时间内一切正常,并且在一系列“正确的场景”之后才发生一次错误。一开始我认为问题是我没有在场景结束后从空间中移除形状和身体,但是在从空间中移除身体和形状后问题仍然存在。

cocos2d:至于 cocos2d,我的印象是加速计激活有时会失败。

有没有人遇到过这些问题?欢迎任何建议,谢谢。

帖子:1 加入时间:2009 年 6 月 24 日星期三下午 2:34

0 投票
2 回答
1875 浏览

iphone - cocos2d iphone - 游戏架构:物理VS。代码模拟精灵行为

你好 stackoverflow 社区!

我试图弄清楚如何使用 cocos2d 构建我的游戏。

我的问题是 cocos2d 的物理引擎(我说的是花栗鼠)位于精灵背后的世界中。

当我移动精灵时,我想知道是否应该

*1) 通过在其后面的物理体上施加力来移动它

或者

2)如果我应该只通过代码模拟运动,那么只有在发生碰撞时才使用物理。*


我知道你可能会说这取决于我。但是 cocos2d iphone 开发时的预期行为是什么?

我提前谢谢你<3

0 投票
1 回答
2752 浏览

iphone - iphone cocos2d 的花栗鼠 - 重心

这是我的问题。我有一个花栗鼠的刚体(一个直立的汽水罐),我想将它的重心改变到物体的底部,这样当对它的上部施加力时它可以落在它的侧面。

我在正确的轨道上吗?

1)由于某种原因,我无法将身体的重心设置为特定值。请问有人有简单的解决方法吗?

2)精灵的重心呢?我是否也需要更改它?如果是这样,怎么做?

谢谢你澄清这一点。

约翰·T。

0 投票
3 回答
1034 浏览

iphone - iphone cocos2d 精灵消失

我一直在开发游戏并用花栗鼠实现物理东西。cocos2d 部分一切正常,直到与花栗鼠集成。一点背景:

游戏是一个有积木的游戏。级别在属性列表中定义,其中位置、块的大小、重力等都是为要在级别中显示的每个块定义的。

问题在于出现的块。我的 BlockLayer 类有一个方法,它是我游戏主场景的一部分。创建图层后,将读取属性列表,并创建所有块。调用以下方法来创建块:

使用上面的代码,精灵永远不会出现。但是,如果我注释掉“cpSpaceAddBody(space, blockBody);” 线,精灵出现。

块的位置和大小存储在 Block 类实例的“bounds”属性中,它是一个 CGRect。

不确定它是否重要,但应用程序的方向是横向左侧,所有坐标都基于该方向。

任何帮助将不胜感激。

0 投票
3 回答
942 浏览

cocoa-touch - 如何检测与花栗鼠物理引擎的永久碰撞

当球的形状击中任何其他类型的形状时,我正在尝试播放“boing”的声音。哪个有效。但是效果有点太好了......

当球静止或开始滚动时,它会与接触的任何物体发生永久性碰撞,因此“嘭”的声音不断响起。

我在花栗鼠文档中找不到任何东西可以告诉我两件事何时永久碰撞。所以我想我必须以某种方式自己弄清楚,可能使用某种计时器来比较上次碰撞与当前碰撞。但这对我来说听起来很奇怪。

有没有人解决过这个问题?你是怎么解决的?

0 投票
2 回答
298 浏览

iphone - 如何检测堆栈对象掉落

在我的游戏中,物体掉下来了,我必须抓住那个物体并且必须创建一个堆栈。我通过使用花栗鼠物理引擎来做到这一点。我能够创建堆栈,但我不明白如何检测堆栈正在像“Tower Bloxx”游戏一样下降。

如果有人知道,请帮助我。

0 投票
2 回答
1934 浏览

iphone - 使用花栗鼠的问题

我做了一个游戏,使用一个可以通过触摸屏幕向左或向右移动的角色,在角色上方是一个苹果,我需要的是苹果会掉下来,角色可以像打排球一样再次将苹果推起来. 这就是问题所在,我从“bounding ball”中学到的是给精灵一个形状和身体,然后它们会自动碰撞,当我给角色形状和身体时,动画不起作用,角色移动了第二他“跳”到起点,无论我使用setPosition或Action(MoveTo)来精灵也无用移动身体也不起作用。我使用touchmoved设置body-> p,它一直在摇晃,当我释放时按钮,它“飞”总是越界............谁能告诉我我该怎么做或举一个类似的例子(例如

我很感激,如果有人能帮我一把。