UE5.2 | PCG资产制作【树根生长蘑菇】重要功能之一
Game艺视界原创文章原创 39293 0
实名

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

发布于 2023-4-28 16:14:57

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

x

本期笔记分享* 如何从现场获取演员
* 如何在网格上采样点
* 如何将一个点云转移到另一个点云参考
* 使用随机噪声或使用带有参考向量的点积进行密度过滤
* 在另一个图中使用一个图,以链接计算

今天我们将了解如何对景观以外的其他事物进行采样,我们还将了解如何创建子图以及如何使用它们,因为 Geometry scripts 是另一个插件,并且为了避免在 PCG 插件中给我们带来太多依赖在 5.2 的最终版本中,将有一个下面这个辅助插件。如果您使用的是较新版本并且想要使用 Mesh Sampler,则需要启用它,这将添加一个名为“Mesh Sampler”的新本地节点,这是蓝图节点的 C++ 版本,具有新的采样方法

1476593600854f66a07a4517021e468d.png

今天我们做什么?您会看到我有一根木头,上面有一些蘑菇 我们将首先尝试创建一根木头,然后使用我们为一根木头创建的图表来生成多个蘑菇请注意,这是向程序集迈出的一步,就像在 State of Unreal 演示中展示的那样对于网格,我仍在使用名为 Forest Undergrowth 的 megascans它包含原木和蘑菇


777b2e61b3fcf9ddf1b4c27530766f7a.png

对于这一部分,我们还不会使用任何输入,我们将专注于一个点我们将占据体积的中心为了获取我们的体积,我将引入一个新节点“Get Actor Data(获取演员数据)”使用此节点,您可以使用演员过滤器查询演员的数据



现在它是“self”它表示PCG组件附加到的actor,如果 PCG 组件附加到子actor,您可以将其更改为父级,它将寻找其父级 Root 是层次结构顶部的父级;All WorldActors 意味着它将解析所有的演员:如果他们很多,可能会很慢如果您在未分区的卷中,则Original 与“Self”相同,我们还没有看到分区卷,但对于分区参与者来说,这意味着原始卷而不是本地卷
所以我们今天要坚持“自我(self)” 在当前模式“解析 Actor 组件”中,节点的输出取决于实际的actor在这种情况下,我们的参与者是一个 PCG 体积,因此输出将是一个体积如果演员是样条曲线,它将是样条曲线并且输出是一个集合这意味着如果您的 actor 上有多个样条线,它将返回多个样条线



我们更改下获取演员数据”节点上的模式还有其他几种模式:



Parse Actor Components
分析参与者组件
Get Single Point
获取单点
Get Data from Property
从属性获取数据
Get Data from Pcgcomponent
从Pcgcomponent获取数据
Get Data from Pcgcomponent or Parse Components
从Pcgcomponent获取数据或分析组件

对于我们的使用,我们将只使用get single point 所以我们有一个单点,然后我们可以生成我们的网格,我将只添加一个静态网格生成器节点并添加一根树枝,有点小我们添加修改器:缩放于旋转



再次添加一个显得边界修饰符节点




现在我们的边界与网格匹配



如果我们有多个输入点,我们希望通过缩放确保我们没有重叠,所以只是为了确保我会在变换点和静态网格生成器之间添加一个自修剪节点



现在我们有一根木头,具有正确的边界和正确的转换我还将重新组织图表,请注意,在这种情况下,我将使用网格采样器而不是网格到点,因为它是原生的,所以速度更快,但大多数选项都是模拟网格到点 因此,我们将介绍我们的Mesh Sampler 所以我有一个错误,因为我没有提供任何网格



将使用另一个名为“复制点”的节点试,切换回坐标显示我们大概可以看到有多少点



它会为每个三角形生成一个点,您可以决定每个顶点使用一个点;或者仅在您可以访问物件采样的网格采样器上;您还可以选择先对网格进行体素化



所以我们有太多点,需要进行一些过滤,过滤点的一种方法是使用“法向密度” 在您可以看到我出现了不同的颜色如果我回到比例方法,绝对的比方说0.1或更小的0.01,我日志上的所有点都有不同的颜色,上面的是白色的,表示密度高,下面的是黑色的,表示密度低默认情况下,它会计算参考法线与点法线之间的点积,并将结果存储在密度中因此,之后我们可以过滤非常高的密度以仅保留将位于网格顶部的点



我们使用密度过滤器;我只有真正在木头顶部的点,而我在下面什么都没有,密度法线和密度过滤器的组合是过滤点的强大工具,它也可用于拟合景观中过于陡峭的斜坡上的点!




点仍然太多了,我们将通过在这个集合中选择随机点来增加更多的随机性,我们将通过密度过滤器重复使用相同的技巧,但这次密度将是随机设置而不是正常设置 这可以通过密度噪声和密度滤波器来实现。因此,在这种情况下,密度噪声只会在我们设置的范围0和1之间分配一个随机密度



它会产生不同的结果为了过滤,我们将添加一个密度过滤器我们保持,比方说 0.8所以我们有 182,现在我们已经过滤了我们的点,我们将使用变换点、边界修改器和自修剪的组合对我们的树叶进行相同的操作,以使我们的点适应蘑菇网格在这种情况下,我已经设置了值,所以我将添加它们



我们将添加一个变换点,正如我们所说的那样,我们希望在 Z 轴上进行随机旋转,或者缩放比例将为 0.2、0.3,因为蘑菇要小得多 然后我们可以在这种情况下添加边界修饰符,就像 0.4 0.9 这些数字已经预先计算好了然后我们当然不想重叠,我们只做自我修剪现在你可以看到我树枝上有分散的点,我有合理数量的点,大概有24个现在我们可以添加蘑菇,所以我们只需添加一个静态网格生成器放入我们的蘑菇



这样你就有了一个 PCG资产来生成一根木头,如果我回到我的内容浏览器,我可以拖放一根木头,我有随机的蘑菇,上面有随机的蘑菇位置



点击阅读原文观看视频版
坚持与您分享最有价值“干货”内容,本期分享就到这里,我们下期见!

评分

参与人数 3元素币 +16 活跃度 +8 展开 理由
生如夏埖... + 5 + 3 好帖子
yangzzzzzh + 7 + 3 现在都这么卷了吗?
zhaodezhu + 4 + 2 打开格局

查看全部评分

微信公众号:Game艺视界
使用道具 <
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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