在用Unity开发游戏时,为了刺激玩家在游戏中消费和保持玩家的活跃度,通常会有幸运抽奖这样的环节,让玩家用最小的代价有一定几率获得游戏中的极品装备或者神级宠物等东西。那么我们应该如何把自己的这个想法在游戏页面实现呢?今天千锋Unity游戏开发讲师就分享下这一部分的知识。
第一步设置场景设置转轮
运用Unity,在游戏场景视图中设置幸运轮,确保幸运轮的每个部分大小一致。在幸运轮边缘建立圆形的小碰撞器(需要建立另一个空的GameObjects来存放碰撞器)并将它们作为幸运轮的子游戏物体。
保持层级视图整洁,建立一个空GameObject作为碰撞器们的父物体。
第二步箭头
简单用黑色立方体来代表箭头。为箭头添加一个BoxCollider2D和一个HingeJoint2D组件。如果以前没用过HingeJoint2D组件,它的工作方式就像门、窗的折叶、铰链一样。想得到你期望的效果,得花点心思在铰链组件的属性设置上。
最后,不要忘记为奖励列表设置合适的大小。现在看下Update()方法:包括2个随机数和一个协程。SpeenTheWheel()itemNumber设置在转轮停止转动时在指针下的项maxAngle(或者finalAngle)表示幸运轮在结束前最终旋转的角度。
现在看看协程SpinTheWheel():在第一个timer处,初始化startAngle 和maxAngle,之后随机选择一个幸运轮旋转的动画曲线。其中的While循环:内循环计算幸运轮z轴方向上的旋转角度。此处动画曲线的Evaluate()函数返回了给定时间下曲线上的值。至此,幸运轮旋转的实现逻辑就全部结束了。
看到这里估计大家都明白了,这只是利用Unity实现的游戏中的一个小功能,如果各位想要学到着色器,高光计算、菲尼尔色散、雾方程式等高阶知识,还是得来千锋Unity游戏开发培训班,聆听千锋大牛讲师的面授课程。
相关文章
了解千锋动态
关注千锋教育服务号
扫一扫快速进入
千锋移动端页面
扫码匿名提建议
直达CEO信箱