首先打开资源包里的四号坦克的预制件,将其拖拽到场景里。
为其添加上Box Collider立方体型碰撞体,点击edit collider可以在场景里拖拽编辑它的范围,将坦克包围起来。

为其添加上rigidbody刚体组件。
组件中Mass的单位是kg,所以我调整成了25000。
Use Gravity 要勾选上。这个物体就会受到重力作用。
其它就保持原样就好了。
这时候可以点一下运行,一切顺利的话,坦克是不会掉下去的。(如果掉下去了,检查地面有没有加上碰撞组件)
终于要开始放代码了!!新建一个C#脚本,命名为TankControl(实际上,我是用预制件中MS_1的自带脚本魔改了一下,大家也可以参考那个脚本写)我们将在这个脚本里实现对坦克运动的控制。先将其挂在坦克上再说。然后写脚本。
首先,想按w让坦克前进。
先申明要用到的东西。
public GameObject[] LeftWheels;//存储左侧的轮子,在场景中把坦克的轮子一一拖上来就好,也可以写代码自动加载,我没写
public GameObject[] RightWheels;//同上
public GameObject LeftTrack;//左侧的履带,这个用来获取表面图案,将其运动,模拟出履带运动的感觉
public GameObject RightTrack;//同上
public float wheelsSpeed = 4f;//轮子旋转的速度,可以自己改数值
public float tracksSpeed = 3f;//履带运动的速度
public float forwardSpeed = 0.2f;//前进的最大速度
public float rotateSpeed = 1f;//最大的旋转速度
private float TempForwardSpeed;//临时前进速度(每帧的移动距离

本文从零开始教你使用Unity开发《坦克世界》,介绍如何为坦克添加Box Collider和Rigidbody组件,并编写C#脚本来控制坦克的前进、旋转,解决旋转与移动结合时的方向问题,实现平滑停止的效果。
776

被折叠的 条评论
为什么被折叠?



