unity3D本科生实训总结报告.docx
- 文档编号:5777378
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:7
- 大小:616.51KB
unity3D本科生实训总结报告.docx
《unity3D本科生实训总结报告.docx》由会员分享,可在线阅读,更多相关《unity3D本科生实训总结报告.docx(7页珍藏版)》请在冰豆网上搜索。
unity3D本科生实训总结报告
实训汇报
题目:
untiy3D游戏实训小结
实训方法 导师制
班级 (级数媒1班)
届别 ()
学号
姓名
指导老师(导师制导师/预就业导师/统一实训导师)
计算机学院
9月
一、实训目标
1.1、了解使用Unity3D制作游戏基础过程和方法。
1.2、了解Unity3D软件操作界面
1.3、掌握地形创建和简单编辑方法
1.4、掌握游戏场景中光源添加和设置方法
1.5、掌握场景中简单对象创建和属性设置方法
1.6、掌握场景中玩家角色创建和设置
1.7、掌握基于碰撞检测游戏逻辑脚本编程实现
二、实训意义
2.1、落实坚强实践步骤和理论联络实际教学标准,增加学生对专业感性认识深广度,利用所学知识和技能为后续课程奠定很好基础。
2.2、经过实训,开阔学生眼界和知识面,取得计算机硬件安装和系统维护感性认识。
和此同时安排适量讲课或讲座,促进理论同实践结合,培养学生良好学风。
2.3、实中进行专业思想和职业道德教育,使学生了解专业、热爱专业,激发学习热情,提升专业适应能力,初步含有职业道德观念。
2.4、经过对专业、行业、社会了解,认识以后就业岗位和就业形式,使学生确立学习方向,努力探索学习和就业结合点,而发挥学习主观能动性。
三、实训内容
3.1场景搭建
3.1.1利用基础物体搭建场景:
游戏对象Transform属性能够进行位置、旋转、大小设置。
属性:
1、transform.position在世界空间坐标transform位置
2、transform.rotaition//旋转3、transform.scale//缩放
方法:
1、位移:
transform.Translate2、旋转:
transform.Rotate
3、围绕旋转:
transform.RotateAround
查找:
Transform.Find //经过名字查找子物体并返回它
3.1.2搭建地形
1、地形绘制
2、草地绘制
3、添加树木
4、添加天空盒子
5、增加雾气和水湖
3.2利用基础物体制作小游戏:
3.2.1gameobject随机生成
GameObject是Unity场景里面全部实体基类.
对象创建:
GameObject cube=GameObject.CreatePrimitive (PrimitiveType.Cube);
克隆对象:
GameObject.Instantiate (cube);//克隆一个cube对象
销毁对象:
GameObject.Destroy (cube, 2f);//两秒以后cube对象销毁
对象查找:
GameObject go=GameObject.Find ("Cube");
GameObject go2=GameObject.FindWithTag ("cube")
3.2.2碰撞检测
碰撞器(Collision)
OnCollisionEnter(Collision col){}//进入
OnCollisionStay(Collision col){}//逗留
OnCollisionExit(Collision col){}//退出
触发器(Trigger)
OnTriggerEnter(Collider col){}//进入
OnTriggerStay(Collider col){}//逗留
OnTriggerExit(Collider col){}//退出
区分:
是否勾选IsTrigger,触发器必需勾选上Is Trigger,碰撞器不需要。
3.3UI设计
1.游戏开始按钮2.介绍按钮3.设置按钮(音量控制)4.切换动画录制
3.4小游戏具体设计
分数统计
publicstaticintscore=0;
publicGameObjectscorer;
最高分纪录
highscore.GetComponent
if(score>=target){NextButton.SetActive(true);}
else{OverButton.SetActive(true);}
时间控制:
InvokeRepeating("CountDown",0,1);
voidCountDown()
{
time-=1;
}
Time.deltaTime //计时
游戏暂停:
游戏进行中,玩家可点击暂停按钮,出现暂停界面,并出现对应按钮选项。
游戏结束,
当剩下时间为0时,游戏结束,显示目前得分和最高得分。
达成目标值,进入下一关,若没达成目标值,进入结束界面。
3.5实训最终游戏设计
3.5.1游戏介绍:
游戏开始,玩家可经过WASD键控制player进行上下左右移动控制
游戏进行中,会随机产生多种物体,如海藻,海星,硬币,碰撞将会产生不一样效果,增加得分或生命值。
若碰到炸弹则将破坏船体。
若达成关卡所需分数,游戏短暂暂停,增加分数值和生命值,达成下一关炮弹出现数量及速度增加,即游戏难度增加。
3.5.2游戏开始界面:
包含下拉式菜单栏,最高分统计,开始按钮,音量设置。
主菜单栏:
设置有出现动画,包含shop按钮和missions按钮
Shop:
菜单:
我物品:
显示我目前拥有物品,包含生命值,加速器,防护罩及财富数量。
玩家能够依据需要和自己目前财富值购置所需物品,用于接下来游戏。
CURRENTMISSIONS:
用于显示玩家目前需要完成任务。
3.5.3游戏进行
点击开始按钮,游戏开始,开始动画开启,游戏界面展开。
floatamtToMove=backspeed*Time.deltaTime;
transform.Translate(Vector3.right*amtToMove);
if(transform.position.x<-19.3f)
{
transform.position=newVector3(26.03f,transform.position.y,0);
}
游戏背景控制:
由两张背景图片组成,进行无缝连接,不停循环运动,和潜艇产生相对运动。
预设体产生:
以小组为单位,每隔一定时间,随机产生已经设置好物体队形。
产生物体,同一组以相同时间向右运动,十秒后销毁物体。
不一样组别物体从不一样初始位置产生。
游戏暂停界面:
时间暂停,能够选择游戏重新开始或退出游戏。
碰到炸弹,触发爆炸效果,潜艇失控,下沉,游戏结束。
游戏结束,显示目前所得分数,若生命值大于1,玩家可选择消耗爱心,从游戏结束位置继续前行,分数,距离等数据累计,不清零。
若目前无爱心值,则游戏根本结束。
若潜艇前进距离达成目标值,显示get界面,增加对应生命值和财富值,选择下一个关卡,游戏继续,同时游戏速度增加,难度加大。
对应目标值增加。
四、心得和体会
刚开始实训时候,其实心里是比较恐惧,因为对Unity 3D这么软件完全没有认知,对于这门课程学习也处于比较茫然状态,能够说是抱着尝试心情开始这门课程学习。
开始使用软件时候,不知道从何下手,于是慢慢跟着老师进行操作,逐步地,我发觉其实并没有我想象中那么困难,通常操作还是能够在书本上学到,可能最终完全掌握会有难度,不过对于现在要求,还是比较易于实现。
在学习并实践过程中,可能在脚本游戏代码编写上还是出现最多问题,有时候就是照搬书本上代码,也会犯错,不仅仅是粗心,也是我对于代码并不熟悉造成,在一遍遍修改中,我对代码编写也愈加熟练,相比较之前生疏,现在算是比较得心应手了。
另外,比较困扰我就是摄像机位置各方面调整,有时候极难调整到想要角度,最终只能将就,这点让我很是纠结。
对于这种情况,我试着多种方法达成理想效果,假如说我改变不了摄像机,那我只能改变我设置场景、对象位置了,即使这么方法比较笨,而且可能会比较繁琐,不过最终也帮助我实现了想要达成效果。
我最终还是自己尝试着学习了Unity 3D操作,可能我所做所学全部是基础知识,相对简单,不过我还是学到了很多,不能说了解但也是熟悉了这个软件。
期望在以后工作中能够好好利用此次实训所学习到内容。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- unity3D 本科生 总结报告