【发布时间】:2016-01-21 23:11:17
【问题描述】:
我正在 Unity 5.2 上创建一个快节奏的 2D 横向滚动游戏,用离散的“块”构建我的地形,每个块都有自己的 EdgeCollider2D 组件。
我的角色从一个街区穿越到另一个街区时遇到了一个问题(想象一下你的车在路上的减速带上行驶)。
这种情况不会一直发生。似乎是随机的,这更令人恼火,因为它使寻找解决方案变得更加困难。
我已经尝试了所有可以在本网站上找到的类似问题的建议,包括:
- 在角色上使用
CircleCollider2D's - 确保地形块及其对应的碰撞器完全对齐。随附的屏幕截图显示了其中一个路口。
- 将“惩罚的最小穿透”设置更改为允许的最小值 (0.0001)
- 在角色
RigidBody2D的离散和连续碰撞检测之间切换 - 增加角色
RigidBody2D的质量和重力比例
... 无济于事。
除了从头到尾使用单个边缘对撞机构建单个大型地形对象(我试图避免)之外,我已经没有想法了。还有什么我想念的吗?它只是一个 Unity 错误吗?
帮助!
【问题讨论】:
-
不是呃...100% 确定您的图像代表什么。看起来只是正交视口的屏幕截图...在一半视图中有一个对象?
-
@Serlite 这是两个地形块及其对撞机相交处的放大(和裁剪)屏幕截图 - 显示它们(全部)完全对齐。我已经编辑了问题并添加了第二张缩小的屏幕截图,希望它更清晰。
-
@user3071284 是的。我已经使用了顶点捕捉,并且还输入了所有传输点和碰撞点(通过脚本)以确保它们对齐。
-
尝试换成3D/透视相机,看看能不能再放大一点;有时我发现正交相机可能放大不了那么远。碰撞发生在所有块之间还是仅在不平坦的块之间发生?
标签: unity3d game-development unity3d-2dtools collider