跳跳涂鸦跳跳涂鸦——向上跳动游戏(学习笔记)
一、需求分析
(一)、游戏的主要玩法
1、是一款2D向上跳动游戏
- 主要玩法:player向上跳动,然后有五种类型的砖块,每个砖块有不同的属性、砖块上面有怪物,也有相应的道具,吃了道具有不同的效果。
- 附加玩法:通过吃金币来购买皮肤
- 拓展玩法:死亡后花钱复活,可以花钱买道具、总之可以在核心晚上的基础上加上其他的类型。还可以添加双人模式等…
2、 五种砖块的属性
- 第一种:普通的,就是站上去向上跳
- 第二种、跳不上去
- 第三种:跳上去之后让主角向上跳一次,然后就下落
- 第四种:跳上去之后高度是第一种的1.5倍
- 第五种:在第一种的基础之上添加左右移动,和上下移动。
3、游戏物体
- 砖块、敌人、主角、各类UI面板
二、知识点
(一)、原理知识
1、添加专门的背景相机
- 因为游戏人物要向上移动,所以背景会离开相机的照射范围
- 解决方案有两个,一、添加两个相机。二、背景跟随相机移动
- 使用添加两个相机来解决,先让背景能正常的在主相机上面显示,然后新建一个相机,位置信息跟主摄像机位置保持一直,然后设置背景的渲染层级(layer)为water,然后背景相机的culling Mask 只勾选water照射层级跟背景一样,然后再设置主相机的模式为Depth only。Culling Mask 不勾选water.
2、设置底部图片跟随相机的变动而变动长度
-
原理:图片的宽高能转化成相机照射的宽高,然后窗口的宽高跟相机照射宽高一样,在图片不能适应屏幕比例或者相机照射窗口的时候,可以通过比例调节图片的宽高以达到跟相机照射宽高一样。
-
这里实际上是固定了屏幕比例,然后让图片适应相机照射范围。让相机照射范围的比例,跟图片转化到屏幕比例的大小一致。通过改变图片的宽高来达到一致。
(二)、插件知识
1、使用了iTween来控制MainUI中的player跳动
-
换装界面的动画也是使用iTween来设置的
-
GameOver面板的弹出也是通过iTween来设置的
iTween.MoveBy(gameObject, iTween.Hash( "y", offsetY, "easeType", iTween.EaseType.easeInOutQuad, "loopType", iTween.LoopType.pingPong, "time", time ));
(三)、操作知识
1、UI面板的搭建
- 根据需求来制定游戏面板
- UI面板主要有Main、InGame、Pause、GameOver、Skin五个
- 五个之间的切换有两种方式
- 第一种:通过删除在穿件的方式来确定,和通过setactive来设置
- 第二种:通过CanvasGroup里面的alpha来设置
2、通过简单的UI框架来控制UI之间的切换
- 设置GUIManager来控制,通过一个List和Stack来装UI面板。
- 通过出栈和如栈来控制显示。