2

我正在制作一个第一人称射击游戏,并且我有一个玩家模型(3D),被操纵,上面有动画和一个蒙皮网格渲染组件。我尝试了 Mesh Collider 组件,但它对游戏性能(动画、每秒帧数)有很大的负面影响。所以我想,一定有办法制作自己的 Raycast System(Script, Variable),但我不知道从哪里开始。有没有办法查看 Unity 的 RaycastHit 组件脚本,或者你们有什么想法如何开始制作自己的 Raycasting 脚本,它不需要碰撞器,但支持 Skinned Mesh Renderer 组件?

PS我需要它来射击球员。

4

1 回答 1

0

不要在由骨骼动态控制的网格(装配网格)上使用网格碰撞器。这对大多数计算机来说太重了。我建议四肢和头部使用多个胶囊对撞机,胸部/胃部使用 1 或 2 个盒式对撞机。将这些碰撞器附加到骨骼上,以便碰撞器与动画一起移动。这样你就可以使用统一的默认光线投射系统:Physics.Raycast

于 2021-11-17T21:33:48.110 回答