UE4 材质学习笔记10(程序化噪波/覆雪树干着色器/岩层着色器)

一.程序化噪波

柏林噪波是一种能生成很好的随机图案的算法,它是一个无限的、不重复的图案,可以采用这种基础图案并以多种方式对其进行修改,

将它缩放并进行多次组合,就可以创建一个分形图案。这些组合的缩放等级称为一个Octave

这是产生柏林噪波基础图案的核心公式(优化版本)

当这段代码被编译时,会产生下面的消耗,并且这只是核心图案,你通常把这个东西循环三到四次 甚至多达八次,所以你可以使用多达488个指令和64个纹理采样,所以这是非常耗能的

有一个解决办法是在3D空间中渲染一系列的噪波切片,并创建一个体积纹理,这将61个指令和8个纹理采样分解为1个纹理采样

这种技术耗能很低,但也有一些缺点,我们必须让它在三个维度都进行平铺,所以它也不再是一个无限不重复的图案了

在虚幻引擎的噪波节点里面附带有函数“快速渐变-3D纹理,选择这个就是在采样柏林噪波体积纹理

这个节点需要绝对世界位置作为 生成噪波的种子,图案非常小可以乘上一个小数值放大图案

接着我们设置Function为3D纹理,它们在3D空间中对噪波切片进行采样,并将这些切片组合成一个体积纹理,并不是做大量的计算,下面的等级越大,就越消耗性能,默认六级,所以它仍然在做6个纹理采样和96个指令,每个等级1个纹理采样和16个指令,然后还可以设置最小和最大的输出值

function的Voronoi(沃罗诺伊)创造了这种类似细胞的结构,某些情况很有用

程序化噪波可以是体积的(或者说可以是三维的),当球体在场景中移动时,它就是在噪波的体积当中移动,因此噪波是存在于世界空间中的,当我的模型表面与它相交时,在世界空间中特定位置的噪波图案是什么样子的,就会跟着应用到模型的表面上,所以移动模型时就得到了不同的图案

二.覆雪树干着色器

我们的目标是创造一个白雪皑皑的森林,如果你想让森林中的每一棵树都不一样,需要单独打开每棵树并设置独特的纹理,这显然不太现实,但是程序化噪波可以为每一棵树生成不同的外观。

首先将绝对世界位置连接噪波节点,图案并没有发生变化,因为这是默认使用的内容,所以要乘上一个值得到合适的大小。然后将噪声的level设置为3,并且不需要湍流,并且设置乘3D纹理,然后限制到0-1之间,用power提高对比度。

然后就可以根据噪波纹理进行插值,设置一个雪的颜色,比白色深一点,因为PBR的颜色值不会一直上升到白色,然后在这再加一点淡淡的蓝色,这只是因为雪会反射天空

然后修改一下世界位置的缩放和树皮的平铺

但是我想确保树干的底部总是有雪,我可以乘以世界空间位置的Z分量,如果我想让融化的雪在树干的某一面出现,我可以用雪的蒙版乘以法线的Y分量。

如果放置一棵树在场景中,雪的位置就会根据世界位置改变,所以每一棵树都会有不同的雪的图案。

三.岩层着色器

需要用这个纹理来模拟岩层。

我想让这些岩石在任意方向旋转的同时,仍然能投射出地质岩层并且保持它的一致性。所以我需要使用绝对世界坐标来采样纹理。

接下来加入噪波,将噪波乘上一个常量以后与z值相加。现在就好像不同岩层的岩石互相混合了

但我认为混合的比例仍然是不合适的,还要修改一下噪波的大小,所以将绝对世界位置乘上一个常量以后连接到噪波

ok,现在可以把这个纹理与采样的岩石纹理进行混合,无论怎么旋转,都会有一种统一感。并且可以无限叠加创造不同的岩石资产

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

守护“视界”,手持式视力筛查仪解决方案

根据国家卫健委数据显示,2022年我国儿童青少年总体近视率为53.6%,整体近视率呈低龄高发态势,其中小学生为35.6%,初中生为71.1%,高中生甚至近视率高达80.5%。随着电视、电脑、平板、手机等电子设备深度侵入人们的生活&a…

力扣题31~40

题31(中等): 分析: 其实这题题目比较难懂,题目还是挺简单的 我们可以从后面末尾开始,如果前一个大于后面的,说明后面不用动,如果小于,那就找仅仅大于它的数字放前面&…

iOS 18升级:避免常见陷阱,顺利完成升级

随着iOS 18的发布,许多用户都希望尽快体验到新系统带来的新功能和改进。然而,升级过程可能会因为准备工作不足或对步骤的不熟悉而变得复杂。本文旨在为用户提供一个清晰的升级指南,确保升级过程既平滑又安全。 升级前的准备工作 在开始升级之…

Linux操作系统小项目——实现《进程池》

文章目录 前言:代码实现:原理讲解:细节处理: 前言: 在前面的学习中,我们简单的了解了下进程之间的通信方式,目前我们只能知道父子进程的通信是通过匿名管道的方式进行通信的,这是因…

JAVA自动化测试TestNG框架

1.TestNG简介 JAVA自动化测试最重要的基石。官网&#xff1a;https://testng.org 使用注解来管理我们的测试用例。 发现测试用例 执行测试用例 判断测试用例 生成测试报告 2.创建Maven工程 2.1创建一个maven工程 2.2设置maven信息 2.3设置JDK信息 2.4引入testng依赖 <dep…

软考高级系统规划与管理师,都是精华知识点!

知识点&#xff1a;信息的定义和属性 1、 信息的基本概念 l 信息是客观事物状态和运动特征的一种普遍形式&#xff0c;客观世界中大量地存在、产生和传递着以这些方式表示出来的各种各样的信息。 l 维纳&#xff08;控制论创始人&#xff09;&#xff1a;信息就是信息&#…

指针——数据结构解惑

文章目录 一.取指针和解指针二.为什么用指针&#xff1f; 指针存的是地址 一.取指针和解指针 int main() {int a0;int * p ;//声明int类型的**指针**char * m ;//声明char类型的**指针**&a;//a是个变量&#xff0c;&a&#xff0c;把地址取出来p&a;//p指针存的a的地…

双十一性价比高的宠物空气净化器推荐,希喂、美的、352测评分享

不知不觉这一年就要过去了&#xff0c;别问我为什么这么感伤&#xff0c;因为双十一要来了&#xff0c;我要开始”剁手“了&#xff0c;尤其是必须得买宠物空气净化器。 因为我家里养了两只猫&#xff0c;超级爱掉毛&#xff0c;每天为了清理这些猫毛我都要烦死了&#xff0c;…

LangChain4j使用阿里云百炼 进行AI调用

LangChain4j 介绍 LangChain4j 是一个专为Java开发者设计的开源库&#xff0c;旨在简化将大型语言模型&#xff08;LLM&#xff09;集成到Java应用程序中的过程。它于2023年初开发&#xff0c;灵感来源于Python和JavaScript的LLM库&#xff0c;特别是为了填补Java领域在这一方面…

支持阅后即焚的笔记Enclosed

什么是 Enclosed &#xff1f; Enclosed 是一个简约的网络应用程序&#xff0c;旨在发送私人和安全的笔记。所有笔记均经过端到端加密&#xff0c;确保服务器和存储对内容一无所知。用户可以设置密码、定义有效期 (TTL)&#xff0c;并选择在阅读后让笔记自毁。 软件特点&#x…

软考高项一年只考一次,2025 年会更难考吗?

根据近几年的考试情况来看&#xff0c;可以推测25年的高项考试可能会更加困难。值得关注的是2024年的考试情况&#xff0c;当年的高项考试是第二次机考&#xff0c;考试形式已经相对稳定。上午考试的科目知识点分布保持稳定&#xff0c;包括1道综合计算题和2道分析题的案例分析…

决策树和集成学习的概念以及部分推导

一、决策树 1、概述 决策树是一种树形结构&#xff0c;树中每个内部节点表示一个特征上的判断&#xff0c;每个分支代表一个判断结果的输出&#xff0c;每个叶子节点代表一种分类结果 决策树的建立过程&#xff1a; 特征选择&#xff1a;选择有较强分类能力的特征决策树生成…

【工欲善其事】巧用 PowerShell 自动清除复制 PDF 文本时夹杂的换行符号

文章目录 巧用 PowerShell 自动清除复制 PDF 文本时夹杂的换行符号1 问题描述2 解决方案3 具体步骤4 效果测试5 小结与复盘 巧用 PowerShell 自动清除复制 PDF 文本时夹杂的换行符号 1 问题描述 不知各位是否也为复制过来的文本中夹杂的回车换行符抓狂过&#xff1f;就是在复…

python 爬虫 入门 一、基础工具

目录 一&#xff0c;网页开发者工具的使用 二、通过python发送请求 &#xff08;一&#xff09;、get &#xff08;二&#xff09;、带参数的get &#xff08;三&#xff09;、post 后续&#xff1a;数据解析 一&#xff0c;网页开发者工具的使用 我们可以用 requests 库…

国际期货收费行情源CTP推送式/期货配资软件开发对接行情源的技术性说明

在现代金融市场中&#xff0c;期货交易因其高风险和高回报特性而备受关注。为了满足期货交易者的需求&#xff0c;开发高效、稳定和安全的期货交易软件变得尤为重要。本文将对国际期货收费行情源CTP推送式及期货配资软件的开发对接行情源的技术细节进行详细说明。 一、CTP&…

2024双十一值得购买的好物有哪些?看完这五款好物让你不后悔!

随着一年一度的双十一购物狂欢节即将拉开帷幕&#xff0c;作为一名热衷于分享购物心得的博主&#xff0c;我今天特别想在这里为大家详细介绍五款我个人非常期待入手的好物。这些产品都是经过我精心挑选和试用的&#xff0c;我相信它们不仅能够满足我的需求&#xff0c;同样也能…

visio导出pdf公式变形问题杂谈

其实不会变形。 我自己的情况是直接用edge PDF阅读器打开pdf看到的是公式有变形&#xff08;常见是字体、形状变了&#xff09;&#xff0c;但换一个pdf阅读器如adobe的就是正常的了 不过大家一般是用edge pdf阅读器直接打开查看&#xff0c;所以通过visio打印的方式导出pdf可…

力扣46~50题

题46&#xff08;中等&#xff09;&#xff1a; 分析&#xff1a; 见注释 python代码&#xff1a; class Solution:def permute(self, nums: List[int]) -> List[List[int]]:#长度小于6&#xff0c;不就是告诉我用递归嘛res[]#递归函数def call_back(p_list,n_list):#判断…

Cesiumlab发布3dtiles白膜流程与前端可视化加载

Cesiumlab发布3dtiles白膜流程与前端可视化加载 1.前置准备 1.1 安装CesiumLab并注册(CesiumLab安装、CesiumLab账号注册以及不同授权类型的说明 CesiumLab系列教程 - 知乎 (zhihu.com))&#xff1b; 1.2 最好安装有Qgis可以进行简单数据处理&#xff08;如果有完整数据可以…

可以在桌面上用的倒计时提醒app下载

在忙碌的工作日常中&#xff0c;我们常常需要记住各种截止日期和重要事件。为了确保这些任务按时完成&#xff0c;一款桌面倒计时提醒应用变得尤为重要。想象一下&#xff0c;当你在电脑桌面上就能清晰地看到剩余时间&#xff0c;这无疑会增加你的工作效率和紧迫感。 敬业签就…