1. 创建第一人称角色控制器
为了能够更好地在场景中漫游,可以在场景中创建第一人称角色控制器。
(1)打开工程TerrainDemo,打开场景Terrain1。
(2)导入角色控制器资源包。在Project视图中,右击“Import Package”→“Characters”,将资源导入到项目中。
(3)在Project视图中,依次打开文件夹“Standard Assets”→“Characters”,可以看到在Characters 文件夹下有 FirstPersonCharacter( 第一人称角色控制器)文件夹和ThirdPersonCharacter(第三人称角色控制器)文件夹,如图4-32 所示。
图4-32 导入角色控制器
图4-33 角色漫游
(4)将“FirstPersonCharacter”→“Prefabs”文件夹中的RigidBodyFPSController 预设体拖动到Scene 视图中。在RigidBodyFPSController 的Inspector 视图中,将Transform 组件下Position 的Y 值设置为13,得到更高的视觉。
(5)由于第一人称角色控制器自带摄像机,所以把Hierarchy 视图中的主摄像机Main Camera 删除,即右击“Main Camera”,在快捷菜单中选择“Delete”命令。单击工具栏中的运行按钮,在Game 视图中,通过W、A、S、D 键或者方向键控制角色的移动,空格键控制跳跃,鼠标控制视野方向,如图4-33 所示。
(6)按下[Ctrl+S],保存场景。
2. 添加小地图
添加小地图,可以在地图中查看角色在场景中所在的位置。
正如电影中的镜头用来将故事呈现给观众一样,Unity3D的相机用来将游戏世界呈现给玩家。摄像机是Unity的核心组件之一,每一个新建的工程都默认创建有一个主摄像机。显示场景中,摄像机所照射的部分是向玩家捕获和显示世界的设备,通过自定义和操纵摄像机,可以使游戏表现得具有独特性,并且场景中摄像机的数量不受限制,可以设定成任意的渲染,持续到屏幕上的任意地方。摄像机的属性如图4-34 所示,其参数如表4-13 所示。
图4-34 摄像机组件(www.xing528.com)
表4-13 摄像机参数列表
了解了摄像机的属性,接下来给场景右上角添加一个小地图,查看角色在场景中的位置情况。
(1)打开工程TerrainDemo,打开场景Terrain1
(2)在Porject视图中点击“Create”→“Camera”创建一个摄像机,调整摄像机的位置,使得在地形的正上方,拍摄地形。设置属性值Clear Flags为Depth Only(仅深度);Projection为Orthographic(正交);调整摄像机视图在屏幕中的位置X:0.8,Y:0.8,宽度W:0.3,高度0.3;同时调整摄像机的视野Size使整个场景都在视野范围内;将摄像机的深度Depth设置为2,使之在其他摄像机之后渲染,具体设置如图4-35 所示。
图4-35 地图摄像机属性设置
(3)这时候已经能在Game 视图的右上角看到场景的小地图了,为了能看到角色,在角色游戏对象RigidBodyFPSController下创建一个Plane,命名为“PlaneMask”,并设置Scale为(2,2,2),以便在小地图中显示得更清晰。在Hierarchy 视图中选择PlaneMask,在Inspector 视图中点击Layer旁边的按钮,选择“UI”,则将标识角色用的PlaneMask设置为“UI”层,如图4-36 所示。
图4-36 设置层
图4-37 剔除遮罩
(4)在Main Camera中剔除遮罩。选择角色身上的Main Camera游戏对象,设置它的Culling Mask 属性,取消勾选“UI”,如图4-37 所示,这样主相机就不会渲染到这个层,即主相机不会渲染到用于标识角色用的P1aneMask。
(5)按下[Ctrl+S],保存场景,运行游戏如图4-38所示。
图4-38 小地图效果
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。