网站大量收购闲置独家精品文档,联系QQ:2885784924

教学课件 18项目十八:贪吃蛇.pptxVIP

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

模块五:2D游戏项目十八:贪吃蛇UnityGameEngineUNITY

2D游戏项目十八:贪吃蛇游戏界面展示游戏构思设计游戏项目制作任务1任务2任务3

任务概述Unity虽然以3D功能而闻名,但它也可以用于创建2D游戏,2D游戏画面基于二维平面,通常只有水平和垂直的移动。本项目将以《贪吃蛇》案例的制作为例,介绍2D游戏的制作方法。行业PPT模板/hangye/

学习目标011.能够综合运用所学知识完成贪吃蛇游戏的制作2.能够进一步完善游戏的功能教学目标重难点重点:理解游戏逻辑难点:游戏功能的实现

项目实现02任务1:游戏界面展示

项目实现02任务2:游戏构思设计贪吃蛇游戏,分为边界模式和传送模式两种,在游戏中会实时显示蛇的长度及得分,游戏中会存在食物、随机奖励宝箱以及石头三种物体,蛇可以吃食物及宝箱,但不可以碰撞边界(有边界模式)、身体以及石头。在游戏过程中,背景会随着分数的变化而进行颜色的变化。1.游戏功能介绍(1)运行游戏,选择边界模式或传送模式后,单击按钮,即可开始游戏(2)玩家按下方向键或W、A、S、D键控制蛇身体的移动,按空格键加速移动。(3)边界模式不可以触碰到边界、身体以及石头,穿越模式蛇的身体可以穿越边界。(4)当食物出现的时候,有一定的机率可以出现石头或宝箱。(5)吃到食物的时候,蛇的身体长度会自动增加,同时分数也会相应增加。(6)当游戏分数达到500、800、1100、1400、1700分时,游戏背景会随着分数的变化而改变不同的颜色。(7)当蛇碰到边界(边界模式)、身体或石头时,会出现死亡界面。2.游戏流程设计

项目实现02任务2:游戏构思设计3.游戏脚本说明脚本名称功能介绍HeadMove.cs控制蛇头移动、蛇头穿越边界、吃食物长身体、分数计算等功能CreateFood.cs实现食物、宝箱或石头随机出现UIController.cs实现得分、长度显示、背景变色功能MainmenuController.cs实现边界判断及场景跳转

项目实现02任务3:游戏项目制作1.制作游戏界面(1)设置游戏界面大小为1280*720。(2)制作游戏开始界面。注意,标题文字添加了Outline(描边)和Shadow(阴影)组件,边界模式和传送模式为一组单选钮,需要为其添加ToggleGroup组件。(3)新建场景,制作游戏界面。制作步骤提示:

项目实现02任务3:游戏项目制作1.制作游戏界面(4)新建蛇头SnakeHead,为其添加Rigidbody2D组件,取消重力。(5)为蛇头添加BoxCollider2D组件,选中IsTrigger,保证蛇头在移动中能够与食物等发生交互。(6)新建2个空物体foodHolder和bodyHolder,分别用来储存食物和身体,新建一个空物体gameScript,用来添加脚本,同时将头、身体、食物、石头和奖励的宝箱都做成预置体,并分别为它们设置对应的标签,如宝箱的标签为box,石头的标签为stone,食物的标签为food,身体的标签为body。制作步骤提示:

项目实现02任务3:游戏项目制作2.实现蛇的移动(1)为蛇头添加HeadMove脚本。制作步骤提示:privatevoidKeyControl(){if(Input.GetKeyDown(KeyCode.Space)){CancelInvoke();//取消延时InvokeRepeating(StepMove,0,velocity-0.2f);}if(Input.GetKeyUp(KeyCode.Space)){CancelInvoke();InvokeRepeating(StepMove,0,velocity);}if(Input.GetKey(KeyCode.W)y!=-step){transform.localRotation=Quaternion.Euler(0,0,0);x=0;y=step;}if(Input.GetKey(KeyCode.A)x!=step){transform.localRotation=Quaternion.Euler(0,0,90);x=-step;y=0;}public

文档评论(0)

释然 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档