图片由Matthieu Fiorilli提供

《Chasing the Unseen》用分形数学生成环境

独立游戏开发者Matthieu Fiorilli |
2022年11月23日
Strange Shift Studio是一家个人独立游戏工作室,由Matthieu Fiorilli于2022年在蒙特利尔成立。
《Chasing the Unseen》是一款关于攀爬巨型生物并探索异世界环境的游戏。游戏中的环境都是用分形数学生成的。作为一名个体游戏开发者,我知道开发这样一个野心勃勃的项目需要合适的工具。在这篇技术博文中,我将概述自己是如何应对《Chasing the Unseen》中的这些挑战的。
 

过去几年,那些赋予独立开发者强大能力的工具取得了长足的进步,最近,实现这类项目终于成为了可能。感谢Epic和SideFX等公司的不懈努力,让任何人都能取得这些强大的工具,这个项目也因此得以实现。

为了完成这个雄心勃勃的项目,我知道合适的工具是必不可少的,而我正是在虚幻引擎和Houdini相辅相成的关系中找到了我所需要的东西。

生物

首先,我们来看看生物和攀爬系统。
图片由Matthieu Fiorilli提供
游戏内截图
我的生物是在Houdini中使用各种工具制作而成的。以章鱼为例,我使用了Houdini的传统工具,以程序化方式为它建模,然后使用Houdini最近推出的多解算器Vellum进行模拟。模拟为我带来了非常自然和流畅的变形。接下来的挑战就是将它导入虚幻引擎,并添加可攀爬功能。为了完成这项任务,我使用了Dem Bones这款强大的工具。我在Houdini中的章鱼模拟太过复杂,几何体的每个点都有自己的动画,所以此时,我不能简单地将它放到游戏引擎中。Dem Bones的作用是以程序化方式生成一组骨骼和皮肤,以便使用对游戏引擎友好的数据重建模拟。这样一来,章鱼的128000个顶点/点就不需要都具备动画了,我只需确保大约600根骨骼拥有动画即可。
图片由Matthieu Fiorilli提供
使用Dem Bones烘焙的Vellum模拟
然后,我可以将这只生物导入虚幻引擎,并实时回放。我在这里使用状态机混合了不同的动画。基于通过Dem Bones生成的皮肤信息,我能够以程序化方式生成用于碰撞的凸包,然后通过自定义工具将其导入虚幻引擎。
图片由Matthieu Fiorilli提供
虚幻引擎中的碰撞网格体
我生成了较低分辨率的网格体,将它导入虚幻引擎,实现攀爬功能。为了将角色连接到生物身上,我结合使用蓝图和C++,让攀爬系统能够使用较低分辨率的网格体。
图片由Matthieu Fiorilli提供
使用蓝图和C++的攀爬系统

环境

在环境方面,我使用了分形数学和其他程序化技术。分形是一些简短的数学公式,能够生成无限自我重复的形状。其中最著名的是曼德博集合
图片由Wikipedia提供
维基百科的曼德博集合图片
曼德博集合是以本华·曼德博的姓氏命名的2D分形。在它被发现的数年后,人们又发现了一个类似的3D版本:曼德尔球

这就引出了一个问题,如何将分形添加到游戏中?通过将Houdini和虚幻引擎结合起来,我成功地解决了这个问题。在Houdini中,我使用Juraj Tomori的毕业项目“视效分形工具包”生成分形,然后围绕它开发了一套几何体制备管线,为在虚幻引擎中添加分形做好准备。这套管线可用在分形和其他程序化网格体的生成方法中(取决于关卡)。
图片由Matthieu Fiorilli提供
为游戏关卡生成的分形网格体
为了做好准备,将分形添加到虚幻引擎中,我必须完成许多不同的任务:去掉非常小的细节;创建平坦的可行走斜面;将网格体分割成块,以便在UE中实现正确的遮蔽;简化网格体;生成LOD、UV和光照贴图等等。这个过程是完全自动化的,并且经过定制,符合虚幻引擎的要求。
图片由Matthieu Fiorilli提供
其中一个关卡的游戏内截图
最后,在完成所有这些过程之后,我会在虚幻引擎中构建关卡,并使用光照系统烘焙光照贴图。由于关卡被分成了多个部分,虚幻引擎的遮蔽系统只会绘制我们在摄像机中看到的网格体,这样很好。而虚幻引擎的LOD系统会根据与摄像机的距离,以我所需的密度绘制网格体。对于碰撞,我生成了单独的低分辨率网格体。
图片由Matthieu Fiorilli提供
其中一个游戏关卡的游戏内截图

结束语

我在这里概述了我如何处理游戏中的生物、攀爬和关卡。以上就是我在整个游戏开发中所使用的核心工作流程,在需要时,我也可以为每个生物或关卡引入不同的变体。

为这些项目挑战想出解决方案非常不容易,但是作为一名独立开发者,我可以自由、灵活地使用最新工具实现我的目标。我希望这篇文章至少能够在总体上帮助大家了解这个项目的技术流程,并对大家有所启发,让大家认识到现有工具的能力范围。

谢谢阅读!《Chasing the Unseen》将在PC上发布,大家可以通过www.chasingtheunseen.com进一步了解这个项目的信息。

    立即获取虚幻引擎!

    获取全球最开放、最先进的创作工具。
    虚幻引擎包罗万象,并提供完整的源代码访问权限,开箱即用,诚意十足。
    虚幻引擎5.1现已发布!
    新闻
    11月15日

    虚幻引擎5.1现已发布!

    该版本在UE5发布的突破性功能集的基础上,提升了其在各个行业中的健壮性、效率以及通用性。立即了解有哪些新变化。
    虚幻引擎5.1现已发布!
    新闻

    虚幻引擎5.1现已发布!

    该版本在UE5发布的突破性功能集的基础上,提升了其在各个行业中的健壮性、效率以及通用性。立即了解有哪些新变化。
    虚幻引擎5.1带来电影、广播、动画和实况活动新功能
    新闻
    11月15日

    虚幻引擎5.1带来电影、广播、动画和实况活动新功能

    从通过摄像机内视效实现的虚拟制片,到动画项目以及激情四射的实况广播和活动,虚幻引擎为媒体和娱乐管线提供了更庞大、更健壮、更易用的工具集。来看看有哪些新功能吧。
    虚幻引擎5.1带来电影、广播、动画和实况活动新功能
    新闻

    虚幻引擎5.1带来电影、广播、动画和实况活动新功能

    从通过摄像机内视效实现的虚拟制片,到动画项目以及激情四射的实况广播和活动,虚幻引擎为媒体和娱乐管线提供了更庞大、更健壮、更易用的工具集。来看看有哪些新功能吧。
    精选免费商城内容 - 2023年2月
    新闻
    2月7日

    精选免费商城内容 - 2023年2月

    是时候用本月的免费虚幻商城3D资产给你的角色添加闪闪发光的特效、策划一场大劫案或是制作一些谜题了。快来看看本月所有可供挑选的内容吧!
    精选免费商城内容 - 2023年2月
    新闻

    精选免费商城内容 - 2023年2月

    是时候用本月的免费虚幻商城3D资产给你的角色添加闪闪发光的特效、策划一场大劫案或是制作一些谜题了。快来看看本月所有可供挑选的内容吧!