- 作者
- Dan
- 译者
- HiTech0926
- 转载许可
- 允许转载,按照 CC BY-NC-SA 4.0 协议进行授权,转载本帖时须注明平台名称(HytBBS)以及本帖地址
世界生成的未来(The Future of World Generation)
大家好!我是Dan,Hytale的世界生成工程师。今天,我们的设计师Amber也会和我一起,从工程研发和设计两个视角,带大家深入了解我们的世界生成系统。在这篇博文中,我们想聊聊目前的进展以及未来的规划。目前,Hytale中共有两款世界生成器:
- V1版于2016年至2020年开发,是用于明确生成需求的原型版本。它能在探索模式(Exploration mode)中生成可游玩的内容,但当我们尝试创建更多区域(zones)和更复杂的生物群系(biomes)时,最终遇到了瓶颈。
- V2版自2021年起开始研发,旨在解决之前遇到的问题,实现我们的全局设计目标。准备就绪后,V2将完全取代V1,并成为我们后续重点支持的生成器。
Hytale上线时,探索模式将采用V1版生成器,因为它已具备多种生物群系和现成内容。目前,我们正在基于V2版打造Orbis世界。完成后,V2将成为主要世界生成器,大家将能进入全新的Orbis世界。届时V1将不再生成新的区块(chunks),但你之前的V1世界仍可访问。
在此期间,玩家可以通过探索模式中的“传送门(Gateways)”进入Orbis的碎片区域,提前体验仍在开发中的V2版内容。待准备就绪后,我们将在预发布版本(pre-release build)中开启Orbis世界的测试。
一名探索者踏入全新的Orbis世界。
刻意设计(Intentional Design)
(飞行视角展示河流与森林生物群系交界处的侵蚀效果)Hytale的世界始终致力于实现“精心策划+程序生成”的结合。这意味着,即便采用程序生成机制,设计师仍能对世界中出现的内容及其呈现方式拥有极大的控制权。这一理念影响了我们在V2版世界生成器中的诸多决策,包括赋予设计师比以往更强的控制权,让他们能更精准地掌控内容在世界中的呈现形式。这其中就包括优化资源分布平衡、为重要内容设置引导线索与标识等多种能力。
V2版中一个很好的例子就是模式扫描系统(pattern scanning system)——其核心思路是,我们可以配置一种模式,来决定道具(props)在世界中的生成位置。通常情况下,我们会先寻找“地面”:即下方有实心方块的空方块。我们还可以为模式扫描添加额外检查条件,以获取更多环境上下文信息。这些模式完全由创作者定义,这使得该系统极具实用性,也带来了广阔的可能性。

一种长有深色树叶和粗壮树根的树木仅在洞穴上方生成。这能帮助玩家标记洞穴的位置。
从这里我们可以看到,在深根生物群系(deeproot biome)中,灰树(ash trees)会生成在洞穴上方——这是因为它们在生成时会检测地面下方的空方块。这不仅是一个有趣的细节,还能让设计师创建出我们称之为“启发式线索(Heuristics)”的内容;这指的是能增强沉浸感并为 gameplay 带来优势的深层模式。在这个例子中,玩家可以了解到,平原区域地图上深色灰树下方,藏有富含特殊资源的深根洞穴。
我们的生成器中还有很多类似这样的模式案例,让设计师能通过各种你意想不到的全新沉浸式方式与玩家互动!

通过检测两岸位置,在河流上生成木桥(log bridge)。

一些雪松(cedar trees)底部周围的地面上,会生成黄蘑菇和几根树枝。

仅在遮蔽区域生成的发光蘑菇(Glowing mushrooms)。

在被小树和巨石环绕的低洼处,生成一片花田(meadow of flowers)。
代码模组(Code Mods)
借助V2版的应用程序接口(APIs),世界生成程序员可以开发模组(mods),这些模组能自动与节点编辑器(node editor)兼容,并接入其他原生功能(vanilla features)和模组功能。V2的架构通过实现简单、互联的组件,支持开发强大的功能。玩家和创作者可以无缝整合来自不同模组和基础游戏的功能。模组开发者(Modders)将能够调整、扩展和添加功能,以自定义现有的世界生成内容(如Orbis),或创建全新的世界生成内容。
我们的API还支持自动多线程(multithreaded),并提供对周围世界上下文的完整读取权限,这简化了逻辑编写,让模组开发者能专注于功能开发。
在这篇博文中,我们主要聚焦于目标和整体方向。上线后,我们将深入探讨技术细节!
内容创作(Creating Content)
无需掌握编程知识,任何人都能创作内容并修改世界生成——因为V2版可通过我们的节点编辑器直接编辑。创作者只需学习几个教程,再花些时间练习,就能快速上手。我们相信,创作者们会发现许多我们未曾想到的内容创作新技术和技巧,进一步拓展世界生成的可能性。
借助我们的可视化节点编辑器,创作者可以通过配置和连接简单的节点(nodes),构建复杂的程序生成内容。编辑世界生成时,游戏内的世界会实时重新加载(live-reloads),以反映编辑器中的修改。这一切都是为了让创建复杂生物群系变得更轻松、更快捷,拉近开发者与创作者之间的距离。
一名创作者已在翡翠荒野(Emerald Wilds)创建了一个基础生物群系,并正在编辑地形(terrain)。
创作者可以独立且高精度地控制每个生物群系的地形形状。在生物群系交界处,地形形状会从一种平滑过渡到另一种,实现特征的无缝融合。生物群系还可以在临近边缘时自定义地形,进一步优化生物群系过渡效果。
为悬崖添加自然的岩石表面。
创作者可以通过组合材质提供器节点(Material Provider nodes),完全控制地形的构成材质。材质提供器作为逻辑节点,拥有可配置的规则和地形上下文判断能力,例如方块在地下的深度或地面上方的空方块数量。
草皮材质(Grass material)被限制在上方空气不足10个方块的区域不生成。
通过道具系统,创作者可以生成本地化内容,如兴趣点(points of interest, POIs)、植被(vegetation)和装饰(decorations),并能精准控制它们的生成规则和在世界中的分布。道具分布在自定义的程序生成点网格上,每个点都会通过一套可自定义的规则来确定最佳生成位置。根据创作者的需求,道具生成的内容既可以来自预制件(prefabs),也可以通过更程序化的方式生成。
通过编辑树木位置掩码(tree location mask),扩大森林区域的规模。
我们对构建世界的资源进行了专门设计,让创作者能像我们一样轻松添加和编辑地形、道具、生物群系和区域。每个生物群系都被视为一个独立的“拼图块”,如同区域拼图中的一块;而每个区域又作为更大拼图中的一块,共同构成整个世界。这意味着添加新的生物群系或内容(如预制件)将变得十分简单——因为我们会为你提供所有我们内部使用的工具,让你可以随心所欲地创作。
此外,我们在Orbis中使用的每一个生物群系都会分享给社区。你可以通过节点编辑器查看、修改这些内容,尽情探索我们创作的所有素材,并将其与你自己的作品融合!
以下是一组实验性资源包(feature pack)示例,这些内容不代表冒险模式(Adventure)中最终会出现的内容。

某实验性地形包(terrain pack)的特写镜头,探索了更具随机性的堆叠地形设计思路。

某实验性地形包的远景镜头,探索了更具随机性的堆叠地形设计思路。

一个水下洞穴群,包含珊瑚(bracket coral)和一艘沉船(shipwreck)。

某实验性地形包,探索了拱门地形(arches terrain)主题。

某实验性地形包,探索了浮岛(floating island)主题。
某外星世界中程序生成的环形结构群。
未来规划(Going Forward)
请记住,目前我们仍处于早期访问阶段(Early Access),许多系统仍在积极开发中。在未来几个月内,随着核心功能的完善,资源结构(asset structure)将会频繁变动。我们会尽可能弃用被替换的功能,而非突然移除——因为对我们来说,支持创作者与支持我们自己的设计师同样重要。
为了在创作的每一步都为创作者提供支持,我们将发布官方教程、指南和文档,与社区一同成长。这些内容将涵盖从核心世界生成概念、设计师使用的特定技巧,到深入的系统文档和性能优化最佳实践等方方面面。
短期内,我们将重点关注性能优化、现有功能升级,以及让资源结构更具模块化(modular)和灵活性。长期来看,我们计划推出一系列非常酷的功能,例如引导玩家、连接不同地点的程序生成河流与路径、用于生成地牢(dungeons)、废墟(ruins)和建筑的程序生成建筑系统、能自然生长以增加多样性和连贯性的动植物群、瀑布(waterfalls)等等。社区的反馈和建议将直接影响Hytale世界生成系统的未来!
最后但同样重要的是,我们的设计师将致力于在新生成器中推出内容完整的Orbis世界。这意味着我们将全力创作新的预制件、生物群系、区域和地带,为大家带来充满新鲜感的探索体验——在那之前,我们下次世界生成主题博文再见!
在此期间,不妨欣赏一些我们正在开发中的生物群系快照,这些内容将面向未来的冒险模式版本推出。

翡翠荒野中以平原为主的生物群系。

低语寒霜边境(Whisperfrost Frontier)中针叶林(Taiga)为主的河流生物群系。

低语寒霜边境中一系列生物群系的远景镜头。

通过地形和位置字段(positions field)程序生成的树干(Trunk)。

低语寒霜边境中,通过地形和位置字段程序生成的大型立石(standing stones)。

呼啸沙丘(Howling Sands)中隐藏着一片郁郁葱葱的绿洲(Oasis)。

呼啸沙丘中仅在河流周围生成的黄色树木。
Simon的重要说明(An important note from Simon)
几天前我曾公开提及,这种全新的世界生成方法将重新定义方块游戏(block-game)类型。这是首次让艺术家和游戏设计师能够完全主导世界生成,对最终结果拥有绝对控制权。这标志着游戏世界的塑造方式发生了根本性转变——从几乎完全由程序员主导,转变为设计师主导。
基于这一理念,我很高兴地宣布,我们计划为Hytale团队新增一个在方块游戏领域几乎从未存在过的职位:世界设计师(World Designer)。早期访问版本发布后,我们计划扩充团队,招聘超过15名世界设计师。这些职位将主要从社区中招募——当艺术家和游戏设计师使用我们内部的工具学习、创作并选择申请时,我们将优先考虑他们。
Hytale的愿景是:在保持无限程序生成特性的同时,让游戏世界兼具精心手工打造的质感,且设计始终优先服务于玩法!
正如我们多年前设想的那样,我们的目标是不断拓展游戏的边界。除了Orbis,我们还计划探索其他世界、新维度(dimensions)和完全不同的空间。这些世界将为我们引入新的方块、物品、预制件、区域、地带、生物群系、非玩家角色(NPCs)、任务(quests)、故事和玩法系统提供空间。
并非所有概念最终都会落地,但这些概念共同代表了我们拓展游戏的方向。
Orbis的回响(The Echoes of Orbis)与Orbis本身,只是这段精彩旅程的开始。

