3d跑酷游戏 [专栏作家]使用Unity创建3D无尽跑酷游戏(上)
相信每个人都至少经历过一次跑酷比赛。一般3D跑酷游戏都有第三视角的摄像头,顺着主角的某个方向。在游戏过程中,主角要尽量避开身边的各种危险物品,这样会导致主角的死亡。游戏级别可以是改变火车轨道避开障碍物(比如“地铁里的酷跑”),或者在拐角处左转或右转,从而安全地沿着设计好的路径(比如“逃离寺庙”)。
RedBorder预制部件
文章图片
红色边框组件
【3d跑酷游戏 [专栏作家]使用Unity创建3D无尽跑酷游戏(上)】红色边框脚本关联红色边框游戏对象。Max遇到RedBorder就死了,游戏结束。
游戏经理
游戏管理器脚本用来保存一些基本属性,比如游戏状态和玩家的“死”方法。脚本代码如下:
文章图片
游戏管理器脚本是单一实例,在整个游戏过程中只有一个实例。这个单一实例可以通过实例静态属性获得。要了解关于单例模式的更多信息,请查看统一维基。
文章图片
构造函数被声明为受保护的,因此外部类不能初始化一个新的游戏管理器类(这是实现单例所必需的)。GameManager包含一个GameState枚举,一个bool值canswing,用来控制是否接受玩家输入(只有“旋转道路”级别),还有一个public方法Die,在Max碰到障碍物死掉后调用。它会改变游戏状态,在UI上显示Max死亡的相关信息。
未筛选材料
随机材质是用来为地板上的盒子随机选择一些颜色。
文章图片
旋转道路水平,你可以看到道路上随机的颜色块
文章图片
六种材料被用来给道路上色
这些资料位于“资源”文件夹中,并加载了以下代码:
文章图片
在清醒状态下,它会为游戏对象分配一个随机的材质进行随机着色。
糖果
为了让玩家开心,大多数游戏都有办法提高玩家的分数。例如,允许玩家相互竞争以增强可玩性。在这个游戏中,选择一些精彩的3D糖果来帮助玩家得分,当Max击中糖果时,得分增加。
下面列出了candy模型/预制件和candy_01的组件(其他三个类似)。
文章图片
四个糖果预制件
文章图片
糖果成分
文章图片
Candy脚本沿着Y轴连续旋转candy,让玩家更容易发现。公共变量ScorePoints保存玩家的分数,Candy也是触发刚体。当Max击中Candy时,Candy对象被破坏,玩家得分。
UIManager
几乎所有的游戏都有平视显示器(Head Display),比如一些2D文本或图片,用来通知玩家关于游戏的信息。使用统一的用户界面系统实现两个非常简单的文本:
推荐阅读
- TikTok游戏话题浏览时长上涨533%背后,中国厂商的出海新机会
- 王者荣耀:游戏按键皮肤改造,瑶妹遇见神鹿李信一念神魔
- 《2021年全球移动游戏玩家白皮书》,发掘移动游戏领域与TikTok间的新机遇
- 王者荣耀连续推出防沉迷措施,不能因为玩游戏荒废了自己一生
- 当独立游戏被陈设在艺术馆中
- 茅永辉专栏|我家毛毛
- 游戏主机硬件选购指南
- 暗黑2牛场女王-电标马
- 掀起《歪小子斯科特对抗全世界》热潮的主机游戏
- dk踩雷史上最菜上单