一、实验概述
1.1实验名称:
Roll a ball
1.2实验目的:
本次实验的总的目的是通过具体的程序的编写与unity软件相结合,将所学的知识内化,即将在课堂上学到的知识集成在一起,并实现相关功能,从而锻炼自己的程序编写、程序调试能力以及对unity的掌握能力。
1.3实验内容:
实验内容是使用Unity软件完成一个小球滚动吃掉小立方体的游戏。
本次实验是以windows操作系统为平台,通过unity软件进行本次实验的项目实现,unity是一个十分优秀的全面整合的专业游戏引擎。通过unity软件和编程工具的结合可以轻松创建各种3D模型,模拟模型动态以及插入互动内容。
1.4实验要求:
基本要求:
1.构建一个小球滚动的游戏场景;
2.创建一个小球,按键盘上的上下左右键,小球会朝相应的方向移动,小球移动的时候相机也要相应移动。
3.在场景中创建多个立方体,每个立方体都在旋转;小球与立方体发生碰撞的时候,立方体消失,计分板上得分加“1”。
4.当得分达到“5”分时,在屏幕上显示“XXX同学,你赢了!”,如果不能输出中文,可以用英文代替。
加分项目:
添加小球和立方体发生碰撞的特效,添加立方体随机生成,添加小球撞击阻碍物的物理效果。
你能想到的可以实现的其他效果。
1.4实验开发步骤指导
l 创建地面并贴上纹理
l 创建player
l 设置摄像机
l 随机创建食物
l 设置碰撞
l 得分音效
l 计分板与获胜
l 随机阻碍物
l player和food触发特效
l 设置退出和重新开始
二、实验过程
提前导入unitychan的包
1.创建地面并贴上纹理
(1) 创建plane并修改大小至合适
(2) 创建材质GroundMaterial并在Albedo处添加贴图
2.创建player
(1) 设置player,放入场景
(2) 创建Animation Controller(player),添加Animator中的controller
(3) 添加rigidbody 并取消Use Gravity。
否则由于重力原因会使unitychan下坠
(4) 设置animator
A.创建BlendTree,添加动作
B.调整PosX和PosY
C.设置参数inputH和inputY,分别代表水平方向和竖直方向,通过这两个个参数的改变,可以调整动作的状态。
(5) 添加脚本使人物可以进行移动
代码思路:从键盘的上下左右键获取用户的输入,通过blendTree控制向前向后向左向右的四个运动状态,同时发生一定的旋转,改变方向。
1.//从键盘获取获取inputH和inputV
2.inputH = Input.GetAxis("Horizontal");
3.inputV = Input.GetAxis("Vertical");
4.//设置值
5.ani