Collision detection Unity3D第一人称控制器碰撞检测

Collision detection Unity3D第一人称控制器碰撞检测,collision-detection,unity3d,Collision Detection,Unity3d,我试图让第一人称控制器与立方体碰撞。立方体和控制器都应用了刚体,运动学设置为false,它们在物理上碰撞,但没有调用我的函数。(我已经包含了我们尝试使用的所有函数。) 我有一个配置为触发器的第二个多维数据集,它可以工作。我的讲师和我自己都不知道为什么它不起作用 应用于多维数据集的代码如下所示: 以下是我的项目设置的屏幕截图: 另外,我在unity的Windows版本中遇到了这个问题,我已经创建了一个新的项目来完成这两次 **编辑:**我忘了提到,如果立方体碰到其他物体(例如,如果立方体的重力打

我试图让第一人称控制器与立方体碰撞。立方体和控制器都应用了刚体,运动学设置为false,它们在物理上碰撞,但没有调用我的函数。(我已经包含了我们尝试使用的所有函数。)

我有一个配置为触发器的第二个多维数据集,它可以工作。我的讲师和我自己都不知道为什么它不起作用

应用于多维数据集的代码如下所示:

以下是我的项目设置的屏幕截图:

另外,我在unity的Windows版本中遇到了这个问题,我已经创建了一个新的项目来完成这两次


**编辑:**我忘了提到,如果立方体碰到其他物体(例如,如果立方体的重力打开,则会调用平面),这让我相信第一人称控制器中缺少了一些东西。

在JavaScript中缺少碰撞参数,请尝试:

function OnCollisionEnter(collision : Collision) { 

缺少冲突参数,在JavaScript中请尝试:

function OnCollisionEnter(collision : Collision) { 

我发现了我的问题。我需要在第一人称对撞机上添加一个胶囊对撞机。它需要添加,而不是替换,因为其中一个脚本依赖于另一个脚本,而另一个脚本无法完成它的工作

胶囊对撞机需要比控制器大一点,立方体的刚体碰撞检测必须设置为连续离散

也许不是最好的解决方案,但它是有效的


我发现了我的问题。我需要在第一人称对撞机上添加一个胶囊对撞机。它需要添加,而不是替换,因为其中一个脚本依赖于另一个脚本,而另一个脚本无法完成它的工作

胶囊对撞机需要比控制器大一点,立方体的刚体碰撞检测必须设置为连续离散

也许不是最好的解决方案,但它是有效的


如果我要使用以下函数,它仍然没有检测到冲突:
函数onCollisionCenter(碰撞:碰撞){print(collision.gameObject.name);}
我没有将参数放入,因为我不打算在函数本身中使用它们。另外,我觉得这个网站的回复方式很烦人。我似乎只能使用内联代码方法,回车提交回复,双空格不换行,四个空格不换行:/令人惊讶的是,我从不使用JS,而是使用C#。如果我在C#版本的OnTiggerEnter中省略了一个参数,它肯定不会被调用。如果我使用以下函数,它仍然不会检测到冲突:
函数onCollisionCenter(碰撞:碰撞){print(collision.gameObject.name);}
我没有输入参数,因为我不打算在函数本身中使用它们。另外,我觉得这个网站的回复方式很烦人。我似乎只能使用内联代码方法,回车提交回复,双空格不换行,四个空格不换行:/令人惊讶的是,我从不使用JS,而是使用C#。如果我在C#版本的OnTiggerEnter中省略了一个参数,它肯定不会被调用。