【发布时间】:2011-11-06 06:29:44
【问题描述】:
在 Cocos2D 中,我正在使用 (0,1) 的锚点创建我的 CCSprite,这与 UIKit 的做法类似。无论如何,我正在尝试更改 Box2D 中的锚点,这可能吗? 如果是这样,我将如何使用 (0,1) 的锚点来做到这一点?
谢谢!
【问题讨论】:
标签: ios cocos2d-iphone box2d points
在 Cocos2D 中,我正在使用 (0,1) 的锚点创建我的 CCSprite,这与 UIKit 的做法类似。无论如何,我正在尝试更改 Box2D 中的锚点,这可能吗? 如果是这样,我将如何使用 (0,1) 的锚点来做到这一点?
谢谢!
【问题讨论】:
标签: ios cocos2d-iphone box2d points
Box2D 实体没有锚点。
anchorPoint 是节点纹理相对于节点位置的偏移量。 Box2D 物体没有纹理,因此没有锚点。
一般来说,通过将anchorPoint 从其默认的0.5,0.5 位置更改,您将会使很多事情变得更加困难。例如,导致您提出这个问题的问题。
【讨论】:
改变身体形状的锚点:
做一个for循环得到最小的x顶点和最大的,减去得到宽度,你可以在同一个循环中得到最小的y顶点和最大的和减去,
如果您随后移动所有具有差异的顶点,您会将形状定位在 0,0 中。
不确定是否是最佳解决方案。
【讨论】: