Unreal5.3 PCG 笔记

目录

  • ElectricDreams场景功能
    • 移动中间山体向周围随机生成倒下的树干
    • 树干上随机生成的植被

ElectricDreams场景功能

移动中间山体向周围随机生成倒下的树干

  • 配置内容
    • 中心山体Spline
    • 周围沟渠Spline(土堆)
    • PCG规则
  • 主要功能节点
    • SplineSample(从Spline中指定长度或百分比取采样点,包含朝向信息)
    • GetActorProperty(获取树干的长度信息)
    • Bounds Modifier(修改“PCG点”数据的长宽高信息)
    • Inner Intersection(求体积层面上的交集,保留第一个输入节点的数据)
  • 思路
    • 通过中心山体的Spline,按距离采样获得围绕中心山体的一系列点
      • 从这些点向外做一个延长,距离在actor上配置
    • 同时沟渠Spline做一样的采样,并做通过配置设定一个长方体
    • 把中心向外的PCG点和沟渠上的点做一个交集运算,保留能够相交的来自中心山体的点
    • 按这些点的信息生成倒下的树干

树干上随机生成的植被

  • 配置内容
    • FallenTree关卡(导出PCGSetting)
    • 元素Tag(如悬挂的藤蔓给与VineRoots、HangingVine1-5)
  • 主要功能节点
    • Point Filter
    • Copy Points
    • Attribute Noise
    • Density Filter
    • Apply Hierarchy
    • Static Mesh Spawner ( MeshSelectorType:PCGMeshSelectorByAttribute)
  • 思路
    • 在关卡中配置基础的组合

      • 藤蔓想要各自有360°旋转的随机,给需要旋转的节点打上Rotate标签
      • 导出成PCGSetting
      • 在这里插入图片描述
    • 在PCGGraph中想要生成的位置复制PCGSetting

    • 针对想要调整的节点进行操作

      • 通过AttributeFilter进行筛选,判断标签名是否1,如下图VineRoots1
      • 在这里插入图片描述
      • 使用Transform Points进行形变和转换
      • 使用Attribute Noise和Density Filter,可以产生随机0-1值再筛选来达到随机决定生成与否的效果
    • 使用PCGSetting的信息生成模型

      • 使用PCGMeshSelectorByAttribute模式生成时,模型和贴图会参考配置关卡中的信息,因此不需要额外考虑

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/265801.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于Java web的住院管理系统论文

目 录 目 录 I 摘 要 III ABSTRACT IV 1 绪论 1 1.1 课题背景 1 1.2 研究现状 1 1.3 研究内容 2 2 系统开发环境 3 2.1 vue技术 3 2.2 JAVA技术 3 2.3 MYSQL数据库 3 2.4 B/S结构 4 2.5 SSM框架技术 4 3 系统分析 5 3.1 可行性分析 5 3.1.1 技术可行性 5 3.1.2 操作可行性 5 3…

Linux 操作系统(用户注册、删除、权限修改等)

添加用户 格式:useradd 用户名 ( 添加用户 ) passwd 用户名 (给用户设置密码) Linux 用户切换原则: 高权限向低权限切换无需输入密码 低权限向高权限或同级用户切换需要输入密码 用户切换:su su – 用户名 (用户切换&#x…

【经典LeetCode算法题目专栏分类】【第9期】深度优先搜索DFS与并查集:括号生成、岛屿问题、扫雷游戏

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能AI、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推荐--…

蓝牙技术在物联网中的应用

随着蓝牙技术的不断演进和发展,蓝牙已经从单一的传统蓝牙技术发展成集传统蓝牙。高速蓝牙和低耗能蓝牙于一体的综合技术,不同的应用标准更是超过40个越来越广的技术领域和越来越多的应用场景,使得目前的蓝牙技术成为包含传感器技术、识别技术…

DRF从入门到精通三(反序列化数据校验源码分析、断言Assert、DRF之请求、响应)

文章目录 一、反序列化数据校验源码分析二、断言Assert三、DRF之请求、响应Request类和Response类请求中的Request 能够解析前端传入的编码格式响应中的Response能够响应的编码格式 一、反序列化数据校验源码分析 反序列化数据校验,校验顺序为:先校验字段…

懂机器学习?先来回答这三个问题 >>

机器学习是一种数据分析技术,让计算机学习人类和动物与生俱来的能力:从经验中学习。 机器学习算法使用计算方法直接从数据中“学习”信息,而不依赖于预定方程作为模型。 随着可用于学习的样本数量的增加,算法也会相应地提高性能。…

探索栈数据结构:深入了解其实用与实现(c语言实现栈)

上次结束了链表部分的内容:链接未来:深入理解链表数据结构(二.c语言实现带头双向循环链表) 然而,当我们涉及特定问题时,另一个非常有用的数据结构也开始显得至关重要——栈 栈与链表有着截然不同的特性&a…

MySQL数据库基础和基本的增删改查操作

目录 前瞻 数据库的基本概念 数据库管理系统(DBMS) 数据库系统(DBS) 数据库类型和常用数据库 关系型数据库 SQL 非关系型数据库 NoSQL SQL语句 简介 SQL语句分类 常用的数据类型 MySQL的六大约束特性 SQL语句的使用 创建及删除数据库和表 …

H5小游戏加固方案

今年的中国游戏产业年会上,小游戏成了万众瞩目的行业新风口。据伽马数据统计:2023年小游戏市场规模可达200亿元,同比增长300% 。 小游戏有着分发更精准、用户转化率更高、研发成本更低、场景适用性更强等优势,具备巨大的市场潜力…

openGauss学习笔记-171 openGauss 数据库运维-备份与恢复-导入数据-深层复制

文章目录 openGauss学习笔记-171 openGauss 数据库运维-备份与恢复-导入数据-深层复制171.1 使用CREATE TABLE执行深层复制171.1.1 操作步骤 171.2 使用CREATE TABLE LIKE执行深层复制171.2.1 操作步骤 171.3 通过创建临时表并截断原始表来执行深层复制171.3.1 操作步骤 openGa…

服务器数据恢复-昆腾存储StorNext文件系统下raid5数据恢复案例

服务器数据恢复环境: 昆腾某型号存储,StorNext文件存储系统。 共有9个分别配置了24块磁盘的磁盘柜,其中8个磁盘柜存放普通数据,1个磁盘柜存放元数据。 存放元数据的磁盘柜中的24块磁盘组建了8组RAID1阵列和1组4盘RAID10阵列&#…

Java 虚拟机中的内存结构

1 内存结构 1.1 程序计数器 1.1.1 定义 Program Counter Register 程序计数器(寄存器) 作用:是记住下一条 jvm 指令的执行地址 特点: 是线程私有的(每个线程独有自己的一份)不会存在内存溢出 1.1.2 作…

、写入Shellcode到注册表上线

其实本质就是将shellcode写入到注册表中,然后读取注册表中的shellcode,然后创建线程去执行shellcode。 如下图: 写入注册表shellcode 这里将shellcode写入到注册表中,在我们需要的时候再去读取然后执行。 这里用到如下两个Windows API函…

Zookeeper-应用实战

Zookeeper Java客户端实战 ZooKeeper应用的开发主要通过Java客户端API去连接和操作ZooKeeper集群。 ZooKeeper官方的Java客户端API。 第三方的Java客户端API,比如Curator。 ZooKeeper官方的客户端API提供了基本的操作:创建会话、创建节点、读取节点、更新数据、…

Leetcode—415.字符串相加【简单】

2023每日刷题(六十八) Leetcode—415.字符串相加 实现代码 class Solution { public:string addStrings(string num1, string num2) {string ans;int len1 num1.size();int len2 num2.size();int i len1 - 1, j len2 - 1;int sum 0, c 0;while(i…

面试题 01.01. 判定字符是否唯一(优质解法)

链接:面试题 01.01. 判定字符是否唯一 代码: class Solution {public boolean isUnique(String astr) {//s[i]仅包含小写字母,数据范围小于 32 位,我们可以使用 int 变量的比特位来代替数组// 每个小写字符对应 bitMap 中的一个比…

DETR 【目标检测里程碑的任务】

paper with code - DETR 标题 End-to-End Object Detection with Transformers end-to-end 意味着去掉了NMS的操作(生成很多的预测框,nms 去掉冗余的预测框)。因为有了NMS ,所以调参,训练都会多了一道工序&#xff0c…

小程序本地文件读、写、追加数据操作,以及修改文件内容

小程序系统文件管理器 FileSystemManager 要操作/读取本地文件,首先需要创建文件或文件夹,然后再对文件进行读写操作; 首先创建文件 FileSystemManager.writeFile 可直接创建文件并写入内容 定义文件路径,此路径在读写操作时保持一致 const path = `${wx.env.USER_DATA…

在Jetpack Compose中使用ExoPlayer实现直播流和音频均衡器

在Jetpack Compose中使用ExoPlayer实现直播流和音频均衡器 背景 ExoPlayer与Media3的能力结合,为Android应用程序播放多媒体内容提供了强大的解决方案。在本教程中,我们将介绍如何设置带有Media3的ExoPlayer来支持使用M3U8 URL进行直播流。此外&#x…

html网页编写语言

html是一门语言,所有的网页都是用html这门语言编写出来的。 HTML(HyperText Markup Language):超文本标记语言。 超文本:超越了文本的限制,比普通文本更强大。除了文字信息,还可以定义图片&…