unity3d 一个unity物体穿地有速度穿过另一unity物体穿地的问题(钻孔)

版权声明:本文为博主原创文章遵循 版权协议,转载请附上原文出处链接和本声明


??在unity中,经常遇到的一个问题就是unity物体穿地移动的问题Unity引擎给出了很多种解决方案,这里先给大家介绍一种——Transform.Translate函数

??在Unity中这是最基础的一种unity物体穿地移动的方式之一,unity物体穿地会按照你给的速度方程移动

??首先,我们先创建一个场景加入一个Terrain或者是Plane,这里我加的是Terrain为了美观,我在Terrain上刷了一层草地绘制了一个小山包,然后添加一个Sphere莋为我们要移动的对象。新建一个脚本move.cs绑定到脚本上,并在vs中打开:

//使小球按照y轴正方向以每帧1的单位长度移动


??transform.Translate()函数中前一个变量是unity物体穿地的移动速度,这里的速度是一个矢量既包含大小写包含方向,后一个变量是相对坐标系这里的相对坐标系有两个值,一個是世界坐标一个是自身坐标,如果第一个坐标不填写的话默认为自身坐标系。这里我们将坐标体系修改为自身坐标系看一下效果:


??这里我为了看到效果将小球按照x轴旋转了90°。


??通过这个函数,我们可以将控制unity物体穿地按照任何方向进行移动

发布了51 篇原创文嶂 · 获赞 26 · 访问量 8万+

建立场景后在场景中导入unity自带嘚第三人称人物模型,有时候会出现穿过墙壁房屋或者其他unity物体穿地这个时候,给这些unity物体穿地添加box collier属性即可解决穿过问题

我要回帖

更多关于 unity物体穿地 的文章

 

随机推荐