本文上篇分为4个部分:动画驱动材质,虚拟纹理,Rendertarget,以及其他杂项的地编ta干货整理。(其中RT部分基本为UOD重要截图摘录)
本文下篇为:skylight和directional light的区别,未完待续
part 1: 动画驱动材质
目的是在Niagara粒子中让粒子也拥有3d动画。
结合了虚幻引擎自带的Anim to Tex插件,需要把官方插件包中的部分材质函数节点,复制到自己的材质中,让其具备受动画驱动的能力。
以及Trash praxis制作的烘焙Anim to tex数据的外部插件,该外部插件可以烘焙Texture和整理data包,以符合虚幻官方的Anim to tex蓝图中需要的素材格式。
注意不要给做好后的材质选分级Lod,因为其动画材质不是针对其它lod都能正确显示的。模型变成刺球就是这个原因。
part 2: 虚拟纹理
目的是比如 做阴影,混合地形材质,沿着地形高度浮动的物体。
实时虚拟纹理体积是相机,RVT是其底片。一个Volume对应一个RVT。可以用两个Volumn一个竖直拍摄地形用于混合颜色/法线(可以直接用一个blend mask直接混合,或者用节点按照高度深浅混合)
阴影
- 用斜着的Volume拍摄 树木阴影的RVT
- Domain是正常surface的情况可以添加Runtime virtual texture output节点。在树木材质中使用RVT OUTPUT节点,只连了BaseColor就只有底色信息
- 在地皮材质中使用RVT Sample节点采样上图的Output


为什么要用RVT做阴影:
RVT的尺寸是可以非常非常大的,然后也是以svt的形式存储的。通过虚拟化技术动态分配纹理资源,按需加载高精度阴影数据,避免全局高分辨率贴图的浪费。
优化方式:中远处用SVT存储
Part 3 Render Target
UE5的Render Target(渲染目标)是一种纹理资源,用于存储渲染输出(如场景截图、后期效果或动态贴图)。它允许将3D场景或特定对象渲染到纹理上,常用于实现镜子、UI交互、动态投影等效果。通过蓝图或代码(如`Draw Material to Render Target`节点)可实时更新内容,支持后期处理和多通道渲染,是动态视觉效果和交互设计的核心工具之一。
绘制相关笔记截图:
RT无法一边采样一边绘制,如何保存最小值
RT的格式
8位 只支持 【0,1】(2^8=256精度),16f可以存储负数
虚化雪地
*雪地材质制作*
- Vector noise normal texture
- pixel depth
- 3s
1.Vector noise贴图制作冰晶质感


2.雪地材质需要Subsurface Scattering。依据如下:
1. 雪的物理特性与光的相互作用
- 半透明性:雪由冰晶和空气组成,光线进入雪层后会经历多次散射和折射。冰晶的高透明度使得光线能穿透表面,在内部扩散(类似皮肤或蜡的3S效果)。
- 体积感:真实雪地中,阳光会渗入表层以下,形成柔和的漫反射光晕,而非仅停留在表面。3S算法模拟了这种光在材质内部的传播。---
2. 视觉效果
- 柔和阴影与高光:无3S的雪地会显得“死板”,仅依赖表面反射(如Phong或GGX模型)。加入3S后,光线在雪内部散射,产生自然的光线衰减和柔化边缘(如雪堆凹陷处的蓝灰色调)。
- 颜色渗透:雪在薄区域(如边缘或裂缝)会因光线透射呈现淡蓝色(波长较短的蓝光散射更强),3S可通过调整散射颜色参数实现这一效果。---
3. 环境光照的响应
- 全局光照(GI)适配:在动态光照环境下(如黄昏或多云),3S材质能更准确地响应环境光变化。例如,低角度阳光会增强雪的次表面散射,产生“自发光”般的柔和亮部。
4.散射参数设置:
- 散射半径(Scatter Radius):雪需较大的半径值(如5-10cm),模拟光在松散雪层中的长距离扩散。
- 散射颜色(Scatter Color):通常用淡蓝或浅灰,对应冰晶的米氏散射(Mie scattering)特性。
5.性能优化:游戏引擎中可通过简化3S模型(如屏幕空间次表面散射,SSSS)平衡效果与性能。
6.若关闭3S,雪地会呈现不真实现象:
- 阴影边缘过于锐利(缺乏内部散射柔化)。
- 表面反光过强(类似塑料),而实际雪的反光因内部散射更弥散。
Pixeldepth混合此效果,远距离时过渡到普通的雪地材质上,防止远处效果不好。
地编相关杂项TA干货
- 添加地图包后 白屏,可以删除PPV
- 鼠标中键拖出来可以测量数值
4个插件
选项模式插件:Thether缆绳插件 和物理笔刷插件
外部插件:Ultra动态天空插件 和UAssetBrowser资产快速导入插件。
物理笔刷
建模模式将fab资源用simplify按照UE标准减面20%
物理笔刷模式一边刷一边bake定型的部分防止UE崩溃
合并完的堆堆右键转成nanite
Layout
polycut进行雕刻
体积雾重要参数
- 散射分布(均匀)
- 消光范围
- 雾高度衰减
天光实时捕获关掉则不会改变反射
大气高度改成1近似像月球没有大气
directional light中光照 光照函数: 光照材质函数 用黑白遮罩来控制阴影
布料用编辑模式创建 导出 再导入时勾选骨骼网格体,就获得了骨骼网格体,level搜索wind可以加入风场。
不使用DCC便捷旋转UV
表面对齐
输出Sequence:
运动物体比较多的情况下,把空间采样数采样提高到16,临时采样数到2,这样运动模糊精度会高一点。
物体距离相机太远影子飘逝的问题(代码如图)
下半场
Skylight和directional light的区别
UE中,Sky Light(天空球的光) 和 Directional Light(定向光) 是两种不同的光照组件,它们的核心区别在于光源类型、光照行为和应用场景。
1. Sky Light(天空球的光)
Sky Light 是一种基于环境的光照系统,它从天空球(Sky Sphere/Sky Atmosphere)或HDRI贴图捕获环境光,并将其作为间接光照应用到场景中。
它主要用于模拟全局环境光照(如天光、大气散射、云层反射等)。
特性
-
间接光照:不直接投射阴影,而是提供柔和的、无方向的漫反射光。
-
动态或静态:
-
静态(Static):烘焙光照贴图(Lightmass),适合静态场景。
-
动态(Dynamic):实时更新(如随时间变化的天空颜色)。
-
-
依赖天空球:
-
如果使用 Sky Atmosphere(动态天空系统),Sky Light 会自动捕捉天空颜色和亮度。
-
也可以手动指定 Cubemap(HDRI) 作为光源。
-
-
无直接阴影:仅影响间接光照,不会产生直接阴影。
典型用途
-
自然光照(如白天的天光、黄昏的环境光)。
-
补充间接照明,使阴影区域不会完全黑暗。
-
配合 Sky Atmosphere 实现动态昼夜变化。
2. Directional Light(定向光)
Directional Light 模拟无限远的光源(如太阳或月亮),所有光线平行照射,方向一致。
它是直接光照的主要来源,直接影响物体的亮面、阴影和高光。
特性
-
直接光照:
-
产生清晰的直接阴影(可通过 Cascaded Shadow Maps, CSM 优化)。
-
影响漫反射、高光反射(PBR材质)。
-
-
无衰减:光线强度不随距离变化(因为是“无限远”光源)。
-
可调角度:
-
通过旋转控制太阳高度(模拟日出、正午、日落)。
-
配合 Sky Atmosphere 可实现动态太阳位置变化。
-
-
动态或静态:
-
Movable(动态):实时计算阴影(适合昼夜循环)。
-
Stationary(静态):部分烘焙,部分实时(混合光照)。
-
典型用途
-
模拟太阳/月亮光照(户外场景)。
-
提供主要的直接阴影和高光效果。
-
动态光照(如昼夜交替系统)。
3. 核心区别对比
特性 | Sky Light(天空球) | Directional Light(定向光) |
---|---|---|
光照类型 | 间接光照(环境光) | 直接光照(太阳/月光) |
阴影 | 无直接阴影 | 产生直接阴影(CSM优化) |
光源依赖 | 依赖天空球或HDRI贴图 | 仅依赖方向(旋转控制) |
动态更新 | 可实时或烘焙 | 可实时(Movable)或混合 |
主要用途 | 补充环境光,柔化阴影 | 提供主光源和清晰阴影 |
4. 如何配合使用?
在典型的户外场景(如开放世界游戏)中,Sky Light 和 Directional Light 通常一起工作:
-
Directional Light 作为太阳,提供直接光照和阴影。
-
Sky Light 捕捉天空颜色,提供柔和的间接光,使阴影区域不会完全黑暗。
-
如果启用 Sky Atmosphere,两者可以动态联动(如太阳位置变化时,天空颜色和光照自动更新)。
示例(UE5 设置):
-
添加 Directional Light → 调整角度模拟太阳。
-
添加 Sky Light → 设置为 Dynamic,自动捕获 Sky Atmosphere 的光照。
-
启用 Lumen 或 Ray Tracing 可进一步提升动态全局光照质量。
总结
-
Sky Light = 环境光(间接照明,无阴影)。
-
Directional Light = 太阳光(直接照明,有阴影)。