我正试图再次为2.5D平台重新发明轮子。
我尝试使用CharacterController进行了一些操作,但它只发送了“sides”信息,而不是它是专门向左或向右进行的。
所以现在我正在使用RigidBody和OnCollisionEnter()函数
所以事情是,collision.contacts返回的所有点似乎都有一些优先级。这是我在游戏中的内容
collision.contacts
的接触点
如你所见,如果我触摸墙壁,所有接触点都位于Box的“地面”侧。
如果我跳:
我有点需要它们(这里是左侧),因为在空中。但是一旦我触地,我就会丢失返回阵列中的所有左/右点。所有要点都回到我们在第一个屏幕截图中看到的内容。
所以当我的侧面(特别是左侧或右侧)触摸Box时,我什么都不知道。
有什么想法吗?还是更好的方法?
谢谢!
答案 0 :(得分:0)
我认为你可以尝试用
来做你的事情OnCollisionStay()
获取所有联系人积分。 来自http://unity3d.com/support/documentation/ScriptReference/CharacterController.html