欢迎光临散文网 会员登陆 & 注册

游戏原型系列 vol.19 在Unity中创建解谜跳台游戏

2021-01-15 10:30 作者:NXL2  | 我要投稿

摘要

    这是综合运用各种Unity功能,来探索如何制作小项目的系列教程。    

    我们本次将介绍如何制作一款2.5D平台游戏,其中用到了一些解谜元素以及专业独立开发者的一些建议。我们将创作过程分解为几个部分。首先是,如何获取创建原型所使用的资源,如何使用Unity官方可视化编程工具,来改善项目的视觉效果。

    详细内容请参考官方视频。


教程

    在Unity中新建项目时,有一套可用来设计主要游戏机制的资源,总是很有帮助的

    资源商店就是寻找道具和角色的好地方,对于这个项目来说,我们下载了3D Beginner Tutorial资源,来开始构建原型

    我们还创建了高清渲染管线的项目,因为3D Beginner资源有一种卡通风格的外观,我们希望试验一下这个管线,在改善游戏光照效果,制作逼真外观上会带给我们多大帮助,这个项目的主要设置,就是角色具有用于运动和其他物理对象交互的刚体,当然,为了控制角色,我们还要为它添加一些行为,通常,我们会通过C#脚本来实现,但现在Unity有一款官方的可视化工具,供大家使用,就是BOLT。

    使用BOLT就能创建游戏机制和交互系统,无需写一行代码,在角色的Main Scripting Graph中

    我们可以更新角色的Rigidbody velocity

    做法是获取键盘信息,即水平轴输入

    再与Speed变量相乘,我们还可以使用这些参数,来设置角色动画的当前状态

    对于跳跃行为(Jump behavior),我们使用Button Input节点

    来为刚体和Y轴添加力,它可以确保角色仅在落地时跳跃

    并使用Sphere Cast节点,作为跳跃发生的条件。

    我们还想添加可以打开门的小触发器,来为游戏添加解谜元素

    因此,我们创建了一个新的Scripting Graph,并使用On Collision Stay节点,来检测当有物体在它的上面时

    启用名为isPressed的布林(Boolean)函数

    对于门这个对象,我们创建了另一个Graph,并引用了触发器对象的isPress函数,这个触发器对象将决定对象旋转的插值。

    为了优化项目的视觉效果,如果要创建震撼的视觉视觉效果,需要强调三个基本原则,颜色原理,光照对比,视差的深度。

    第一个原则,因为角色是淡黄色的,蓝色会是不错的颜色组合,这是因为蓝色在色轮正好与黄色相对,可以互补,调整全局的雾效和光照设置,让整个环境都具有朦胧的蓝色。

    接下来,对比(Contrast)或负空间(Negative Space),会让对象在拥挤的环境中凸显出来,我们希望能够轻松看到角色的轮廓,所以我们添加大大的窗户让光照进来,并在角色跑过窗户时凸显它的轮廓。

    我们不希望黄色被阴影遮住,所以添加了白色点光源来跟随角色,电影摄影技师将这个称之为“用光作画(Painting with light)“,这也可以用在游戏上。

    最后,可以制造视差(Paralax)来 添加深度错觉(Illusion of depth),我在靠近摄像机的位置添加了椅子和蜡烛台

    用有起伏山脉的简单Unity地形作为背景,景深(Depth of field)效果也会让我们聚焦在角色上

    山上隐约可见的房屋让毛骨悚然的感觉更加立体。

    可以看到,在HDRP工作流中稍作调整,就会为原型带来完全不同的外观,创建一个更加吸引人的世界。这个原型设计项目非常有趣,尤其是能够使用Bolt以可视化的方式组合代码。

游戏原型系列 vol.19 在Unity中创建解谜跳台游戏的评论 (共 条)

分享到微博请遵守国家法律