Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何通过脚本向GameObject添加组件_C#_Unity3d - Fatal编程技术网

C# 如何通过脚本向GameObject添加组件

C# 如何通过脚本向GameObject添加组件,c#,unity3d,C#,Unity3d,我目前正处于制作游戏的早期阶段。我开发了一个程序生成的网格。接下来我要做的就是在脚本中添加一些碰撞器。我相信我需要以某种方式使用AddComponent,但这不起作用。当我放置mesh.AddComponent时,我得到一个错误,说mesh不包含“AddComponent”的定义。任何帮助都会很好。谢谢。要动态添加碰撞器,请不要使用mesh.AddComponent,而是 MeshCollider collider = mesh.gameObject.AddComponent<MeshCo

我目前正处于制作游戏的早期阶段。我开发了一个程序生成的网格。接下来我要做的就是在脚本中添加一些碰撞器。我相信我需要以某种方式使用AddComponent,但这不起作用。当我放置mesh.AddComponent时,我得到一个错误,说mesh不包含“AddComponent”的定义。任何帮助都会很好。谢谢。

要动态添加碰撞器,请不要使用mesh.AddComponent,而是

MeshCollider collider = mesh.gameObject.AddComponent<MeshCollider>();
// Now you can toggle options of that collider, like by doing
collider.convex = true;
MeshCollider-collider=mesh.gameObject.AddComponent();
//现在,您可以切换碰撞器的选项,如
collider.凸面=真;

如果您的脚本已附加到相应的游戏对象,您也可以只使用
gameObject.AddComponent()
。(请注意,当对象还使用非运动学刚体时,碰撞器必须使用
凸面
才能工作。)

什么是“网格”作为变量,无论将网格添加到何处,都要将(可能是网格碰撞器)添加到该变量中。。除了网格外,我的对象仍然会穿过我创建的网格。我现在在网格上有一个网格碰撞器,在网格顶部的对象上有一个球体碰撞器。但是这个物体还是掉了下来。我的网格生成器类的start函数中有网格碰撞器。@TylerThompson。祝你好运