导入包
在Assets下右键选择导入包,选择Characters,导入以后,即产生如下图的文件目录:
第一人称的使用
按如下选择:
将RigidBodyFPSController.prefab拖拽到上面的场景编辑页面中(记得添加一个plane平面模型),你会发现它有一个相机的图标。尝试着运行看看。
你会发现并不能推动之前创建的cube,如何才能推动物体呢?我们可以添加一个钢体(物体受力(重力、阻力、旋转阻力等) Rigidbody),如下图所示:
钢体创建好以后,可以看见在Inspector窗口中多了以下组件:
Mass代表物体质量;Drag代表阻力,Angular Drag代表旋转阻力,Use Gravity代表是否使用重力。只有在添加了钢体以后,物体才会受力。现在运行程序,看cube是不是被推远了。
那么是不是有了钢体就一定会受力呢?受力的前提在于你能够触碰到它。这里有一个碰撞体(碰撞盒,物体与其它物体接触的大小 (看不见的) Box Collider)。你能够真实的感受物体的大小以及物体是否存在都依赖于该组件。
点击Edit Collider,能看见在模型周围有绿色的线框,此时就能够编辑钢体的大小,也可以通过size调节。尝试着把Box Collider前的勾去掉,是不是就直接穿过物体了。
其实不然,此时,你并不能看见任何物体,这是因为你使用了重力,物体会一直往下落,之前不下落是因为碰撞体的存在平面能够接住它。现在把RigidBody里的Use Gravity前的勾去掉,你就能看见物体并且穿过它了。
那怎样能够使物体不可见呢?这时有个渲染体(能够看见的实际大小(一般做空气墙) Mesh Renderer )
去掉渲染体前面的钩,运行以后,cube就看不见了。
如果你把碰撞体加上,那么你会发下你被“空气”阻隔了,这就是空气墙的原理。这时记得把钢体移除掉,不然物体会受力,被推动。
预设体
预设体:可以共享(网上下载的模型一般都是以预设体的形式存在的 。创建时 从scene(名字)窗口拖拽到project窗口,使用时从project窗口拖拽到scene窗口(图) 。
创建预设体时,一般在scene窗口,右键creaty empty。然后将组合好的模型拖拽到里面,形成一个整体模型。注意创建空的时候,其坐标应该移动到你将要组合的整体模型中间去。
列如:你用许多cube创建了一个房子,那么你可以创建一个empty来存放这些cube,empty的坐标应该移动到房子的中间。这样当你点击empty时,房子可以作为一个整体操作。然后如果你需要在其它场景中使用该房子的话,你可以从scene(名字)窗口拖拽到project窗口,使用时从project窗口拖拽到scene编辑窗口即可。
第三人称角色的创建
在创建第三人称角色之前,需要删除掉之前的第一人称角色。
目录如下图:
有没有发现,它其实就是一个预设体呢?拖拽到场景中,然后把main camera移动到人物背后,运行观察。
试着按wasd移动人物,你会发现人物可以移动,但相机是固定不动的。把scene窗口下的main camera拖拽到ThirdPersonController目录下即可,再运行,看人物是不是能够在场景中自由跑动了,相机也跟随着移动了呢?
在角色的Inspector窗口中都有一些参数可以调节,可以自己多尝试尝试。