PART 1: 使用Houdini构建程序化开放世界——构建世界和地形生成...
Thepoly 40719 0
实名

通过了实名认证的内容创造者

发布于 2022-4-24 00:55:36

您需要 登录 才可以下载或查看,没有账号?注册

x

81206981b603f57a91c07389ac43df78.jpg

Hello . 大家好
今天跟大家继续聊开放世界的搭建
关于地形生成

a8e7f8990925571c6f19c9a600dbce26.png




我们进入Houdini并使用 Heightfield节点来设计Landscape,并制作出侵蚀效果并将其打包成 HDA,然后,将其导入虚幻引擎。

注意:统一系统单位(转换单位):在我们深入研究 Houdini 或 Unreal 之前,要留意一个重要步骤,就是确保两个软件之间的单位和比例是正确的。为此,我使用在 Houdini 中创建的简单BOX的 HAD,并将其导入 Unreal 中,测试它是否是正确的比例大小。我在虚幻中以第一人称和第三人称玩了关卡,以确保一切都正确缩放。当然,默认情况下,HEngine 负责所有单位转换,因此,我们无需过于担心它。


1概述



我们将创建一个生成地形的HDA,并有两个input节点。
1.        空网格/平面,作为要生成的heightfield landscape的基本尺寸。
2.        手动放置基础模型,勾勒出山脉和丘陵。

这两个input将在虚幻引擎中分别指定为landscape和geometry。此外,我们还将一些参数,例如,侵蚀模拟和Heightfiled Layers计算范围,加载到HAD开放参数里面,以便我们可以在虚幻引擎中调整它们。

2基本Heightfield雕刻



Input:Heightfield(HF)和手动放置的对象。然后,这些对象可以作为参照物从Unreal Engine输入。将参照物映射到Heightfield(HF)上,并使用带有映射方式的遮罩节点来平滑边缘。使用HeightField Blur 来模糊投影的边缘。


使用放置的对象进行Heightfield雕刻。

3 Heightfield Noise雕刻
我们使用三个subnetworks(子网络)节点——每个子网络都包含一个Height Field Noise节点(或类似节点)来制作和建立不同级别的细节。我遵循使用了这种subnetworks的方法,因为,如果我想在不影响景观整体形状的情况下,添加不同级别的细节,它可以让我在以后获得最大的灵活性。

1. Low Level Noise:在景观上建立更大的形状——山脉、山谷、丘陵等。这有助于塑造景观的整体形状。
2. Mid Level Noise:在景观上建立中层形状并添加一些次级细节。
3. High Level Noise:建立更精细的景观细节。其中大部分将会被侵蚀掉,但是,这使我们能够添加更精细的土地特征。


Heightfield Noise 雕刻

4 侵蚀
我们可以使用 Heightfield Erode节点快速添加一些非常好的细节。这个节点会形成侵蚀高频,并且是多个HF层,包括水、碎屑和沉积物。我们将在项目的后期阶段使用这些HF层,因为我们试图在虚幻引擎中建立树叶和材料层。
与上一步一样,我已将Erosion Node放在subnetwork中,这样我们就可以在需要的时候,随时可以对侵蚀子系统进行修改。

我们将在项目的下一个部分:生物群落生成部分,更深入的探讨建立HF层。现在,我们已经建立了一些placeholder landscape层。


Heightfield Erosion.

5Unreal Engine
接下来,我们将所有内容打包到 HDA 中,并通过 HEngine Houdini 插件将其带入虚幻引擎。

在HDA细节面板中,我们可以选择在UE4 World中,手动放置一些对象作为新landscape的山脉、丘陵和山谷。


在Unreal Engine生成地形

本章节主要节点:


- End -

喜欢Thepoly的可以通过三种方式与我们建立联系。分别是公众号、微信群以及QQ群。公众号是我们最为官方的窗口,更多内容都必须关注公众号后才能获取。另外现已开通网站:www.thepoly.cn更多精彩请关注我们。
         

本帖被以下画板推荐:

还没有设置签名!您可以在此展示你的链接,或者个人主页!
使用道具 <
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表