如何在Unity中翻转对撞机网格的法线

问题描述 投票:0回答:2

我在 Unity 中有一个球体,并使用脚本翻转法线,因此我可以在内部看到一个 360 度纹理。我这样做是因为最终我想在里面播放视频,并且帽子内的其他球体可以被扔到周围并从外球体的内壁反弹。问题是,尽管球体的法线朝内,但碰撞仍然是标准的。球体内的物体直接掉落。

我需要添加到我的脚本中以包含碰撞网格吗?

unity3d 3d mesh normals
2个回答
0
投票

你不能让非凸面 MeshColliders 在 Unity 中表现得像 Rigidbodies,你需要将墙壁伪造成一系列凸面碰撞器,近似于盒子碰撞器?


0
投票

假设你为渲染重新计算了反转法线的网格,现在只需使用 GetComponent 获取游戏对象的网格碰撞器,然后将其共享网格设置为上面计算的网格。

MeshCollider abcd = this.GetComponent();

abcd.sharedMesh = 网格;

这里的“newmesh”是我用翻转法线计算的渲染网格

© www.soinside.com 2019 - 2024. All rights reserved.