我不确定标题是否正确(如果不正确,请发表评论)。我有一个精灵(矩形体),我正在对其施加力以使其从左向右移动,然后向后移动。该平台由几个大小相同的矩形块组成,排列成一排,它们之间没有距离。它们形成的是一条完美的直线。平台可以是平的或倾斜的。
我想要的是
精灵在平台上顺畅地前后移动。
实际发生了什么
精灵有时会在从一个块移动到另一个块时被阻塞,即使块之间根本没有空间。有时也会在那时记录碰撞。
我试图搜索并找到一个叫做“内角”的东西,但不知道如何解决这个问题。有办法绕过吗?谢谢!
我不确定标题是否正确(如果不正确,请发表评论)。我有一个精灵(矩形体),我正在对其施加力以使其从左向右移动,然后向后移动。该平台由几个大小相同的矩形块组成,排列成一排,它们之间没有距离。它们形成的是一条完美的直线。平台可以是平的或倾斜的。
我想要的是
精灵在平台上顺畅地前后移动。
实际发生了什么
精灵有时会在从一个块移动到另一个块时被阻塞,即使块之间根本没有空间。有时也会在那时记录碰撞。
我试图搜索并找到一个叫做“内角”的东西,但不知道如何解决这个问题。有办法绕过吗?谢谢!
要正确解决此问题,您需要使用链形或边缘设置正确的“幻影顶点”来制作地面。查看 Box2D 手册以获取有关什么是幻影顶点的详细信息。链形状基本上是一堆边缘形状,但它会为您设置它们的幽灵顶点。
根据您处于项目的哪个阶段,切换到使用边缘/链可能会很麻烦。下一个最好的计划是从卡住的形状的角上剪下一块,以帮助它们更容易地相互移动。最后的选择是使用圆形而不是矩形。
也可以看看:
http://code.google.com/p/box2d/wiki/FAQ
http://box2d.org/forum/viewtopic.php?f=3&t=3048
http://www.cocos2d-iphone.org/forum/topic/31787
http://www.cocos2d-iphone.org/forum/topic/29462
http://www.box2d.org/forum/viewtopic.php?f=3&t=8409
http://www.box2d.org/forum/viewtopic.php?f=3&t=7935
http://www.box2d.org/forum/viewtopic.php?f=8&t=7917
http://www.box2d.org/forum/viewtopic.php?f=3&t=7805