Vector3 center = GetComponent<MeshFilter>().sharedMesh.bounds.center; 得到的是0
时间: 2024-04-14 18:31:25 浏览: 31
如果你得到的几何中心位置是 `(0, 0, 0)`,可能有几个原因导致这种情况发生:
1. 网格(Mesh)的几何中心本身就是 `(0, 0, 0)`。这意味着网格的顶点分布在以原点为中心的对称区域内,并且它们的平均位置正好是 `(0, 0, 0)`。在这种情况下,得到几何中心位置为 `(0, 0, 0)` 是正常的。
2. `MeshFilter` 组件没有正确的分配网格(Mesh)。请确保你的物体上有一个 `MeshFilter` 组件,并且已经分配了一个有效的网格。如果未分配网格,或者分配了一个没有顶点的空网格,那么得到的几何中心位置可能会是 `(0, 0, 0)`。
3. 物体本身的变换(Transform)可能导致几何中心位置不正确。请确保物体的比例、旋转和位置没有被修改,否则可能会影响到几何中心位置的计算。
你可以通过检查以上问题来确定为什么得到的几何中心位置是 `(0, 0, 0)`。如果问题仍然存在,请提供更多关于你的物体和场景设置的信息,以便我能够更好地帮助你。
相关问题
m_Mesh = GetComponent<MeshFilter>().mesh;
这行代码的作用是获取当前游戏对象上的MeshFilter组件,并从中获取到Mesh对象赋值给m_Mesh变量。
首先,使用GetComponent<MeshFilter>()方法获取到当前游戏对象上的MeshFilter组件。MeshFilter组件用于在游戏对象上储存和管理网格数据。
然后,通过调用mesh属性,从MeshFilter组件中获取到对应的Mesh对象。这个Mesh对象包含了网格的顶点、三角形索引等相关信息。
最后,将获取到的Mesh对象赋值给m_Mesh变量,以便在后续的代码中使用。请确保当前游戏对象上存在MeshFilter组件,并且已经成功加载了网格数据。
MeshFilter meshFilter = GetComponent<MeshFilter>();
`GetComponent<MeshFilter>()`是Unity中的一个方法,用于获取游戏对象上的MeshFilter组件。MeshFilter组件用于存储网格数据,包括顶点、法线、UV等信息。
在上述代码中,使用`GetComponent<MeshFilter>()`获取当前游戏对象上的MeshFilter组件,并将其赋值给`meshFilter`变量。这样就可以通过`meshFilter`来访问该网格的顶点数据。
需要确保你将脚本组件附加到具有MeshFilter组件的游戏对象上,否则`GetComponent<MeshFilter>()`方法将返回null。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)