自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(388)
  • 收藏
  • 关注

原创 houdini 柔体Vellum 学习笔记 To Unreal

这里的意思是,选择从第二个,到倒数第二个的所有,然后逆向选择,就是选择第一个点和最后一个点作为锚点,并加入组Pins。这个蓝色的盒子就是我们的box,柔体模拟会与我们的BOX产生碰撞,这个也让我们的HDA资产作为一个第二输入接口。在resample增加line的两个端点之间的点数过后,进行删选锚点(所谓的pin)左边连接的subnet的第二输入,是一个box,是用来判断柔体模拟输入的碰撞信息。设置至少一个输入,最多两个输入,意思就是形状必须有,碰撞是输入的可选项。首先,放一条线作为柔体的形状输入。

2025-06-25 14:55:15 115

原创 UE5 小技巧 通道选取

摘要:当采样器类型为color时,使用RGBA与Param取dot可直接获取通道值,其他采样器类型无法实现类似效果。虽然可通过mask转换实现同等效果,但会新增材质变体占用内存。因此,针对color采样器类型采用该方式选择通道,能有效优化虚幻引擎性能,是更推荐的实现方案。

2025-06-19 11:04:21 240

原创 houdini 简单流体模拟 学习笔记

摘要:Houdini流体模拟教程展示了如何使用Emitter创建发射源。首先用Sphere制作形状,通过flipsource转换为VDB数据,再用add节点生成点数据作为粒子发射器。在Simulation部分,设置DOPNetwork进行流体解算,调整可视化物体形状和边界碰撞(ClosedBoundaries)。通过flipsolver解析粒子并施加重力,最终实现动态流体效果。关键参数包括jitterseed设为帧数实现随机发射,以及在30帧前持续生成粒子。

2025-06-15 18:09:01 180

原创 UE5 Niagara 如何让四元数进行旋转

AxisAngle中X/Y/Z表示旋转轴向,W表示旋转角度(无需除以2)。将计算好的四元数与目标四元数相乘,即可实现绕指定轴旋转目标角度的效果。该过程直接使用原始角度值进行运算,简化了旋转计算流程

2025-05-28 15:36:21 447

原创 UE5 Mat HLSL - Load

Load()和Sample()是两种不同的纹理数据获取方式。

2025-05-27 23:08:12 385

原创 UE 骨骼模型 会没有face index的原因

UE 骨骼模型 会没有face index的原因

2025-05-26 16:41:14 161

原创 UE5 Niagara Advance 学习笔记

文章介绍了UE5中Niagara粒子系统的关键功能实现方法。重点讲解了NiagaraParticleAttributeReader工具的作用,包括实现粒子间属性数据共享和跨发射器交互。同时详细说明了向量安全处理技术,如使用GetSafeNormal()避免零向量崩溃,以及IsNearlyZero()进行无效向量判断。还涉及了InitializeMeshReproductionSprite函数中粒子大小调整的优化方案,以及VectorToNearestSurface等NiagaraScript节点的应用场景。

2025-05-26 16:37:17 565

原创 UE4 Simulation Stage 制作 平流

Simulation Stage学习

2025-05-22 21:25:24 396

原创 UE5 matcap学习笔记

没难度节点,但是要记住这种思维,移动端常用:

2025-04-09 19:40:40 363

原创 UE5 Simulation Stage

在发射器位置我们设置我们的OutputRT,首先大小还是和我们最开始建立的Grid2D大小一致,用于Pixel的一一对应的关系映射,将Render Target User Parameter设置为我们的TRT。将我们的Grid的下标除以我们RT的大小,转成我们所需要的UV信息,在上一个模块输出的Color(Stack)信息中取值,最后去设置我们的RT的颜色信息,绘制出来就完成啦。开始将Grid2D的像素绘制到我们的RT中去,创建我们的模块Render To RT。然后开始编写我们的自定义模块。

2025-04-03 15:21:56 578 1

原创 SD 重温学习笔记

step使用,如果Mode为Greater那么大于Threshold的值就为1,否则为0,当然mode有很多种。Swirl GrayScale可以让它旋转起来。点击反向节点,黑色变白色,白色变黑色。这里选择镜像轴,注意,两个都要调整!可以通过四个点进行形变,十分好用!shape拓展,增加三维Z轴的厚度。这也可以把四个角给磨平滑。

2025-04-03 14:48:35 217

原创 UE5 RVT 制作场景交互 - 遮罩

中等场景的可交互草,雪地的交互,都可以在上面进行绘制,由于RVT使用了PAGE的机制,性能会消耗小很多,但是太小的RVT切换PAGE依然消耗性能,需结合实际项目进行使用。现在放一个平面到Runtime Virtual Texture Volume的包围盒内。最后将小球需要在RVT绘制的贴图给放进去,就可以有一层遮罩啦!RVT可以通过物体制作场景的RVT的贴图遮罩绘制。新建一个这样的材质,这里命名为DeubgRVT。现在放一个小球在平面上,现在没有任何效果。现在再创建一个新的材质!

2025-03-11 18:14:13 531

原创 UE5 Computer Shader学习笔记

专门用于标识计算着色器,这是一种不直接参与图形渲染的着色器,而是用于通用计算任务(如 GPU 加速计算)。结合纹理采样、法线贴图、粗糙度等参数实现复杂表面效果(如金属、皮肤、布料)。:光线追踪管线的起点,定义如何生成初始光线(如相机射线、阴影射线)。处理半透明材质(如玻璃、水、粒子效果)的Alpha混合。从点数据生成复杂几何体(如毛发、草地、粒子轨迹)。:计算每个像素的最终颜色,处理光照、纹理、材质等。屏幕空间效果(如景深、模糊、颜色分级、HDR)。程序化调整顶点位置(如挤压、膨胀、扭曲效果)。

2025-02-25 16:31:12 1397

原创 UE5 RayMarching 球体 纹理平铺的两种方法

主要利用法线然后pow让x,y,z的值尽量不重合然后再归一化,使得边缘值增大来合成。方法二:Tri Plannar Mapping(三平面映射)

2025-02-11 11:44:28 347

原创 UE5 径向模糊

【代码】UE5 径向模糊。

2025-01-23 10:39:09 192

原创 UE5 渲染管线 学习笔记

兰伯特SSS为散射的意思。

2024-12-23 10:52:48 430

原创 UE5 材质里面画圆锯齿严重的问题

可以用smoothstep,做值的平滑过渡(虽然不是模糊,但是类似)直接这么画圆会带来锯齿,我们对锯齿位置进行模糊。

2024-11-15 18:23:56 718

原创 UE5 HLSL 学习笔记

all的意思是bool数组里面所有变量都为true,返回值才为true,有一个为false都为false。访问可以.xyzw,也可以.rgba,也可以[index],且顺序可以变,比如说.yzwx。half的取值范围是整形的-60000 到 60000,考虑带宽的情况下使用half。声明数组,声明十个vector类型的数组,声明10个float4类型的数组。第一行代表声明了一个2行3列的浮点数矩阵。第二行代表声明了一个3行3列的浮点数矩阵。第三行代表声明了一个4行4列的浮点数矩阵。

2024-11-08 16:20:04 874

原创 同一个模型之间,半透明材质乱序问题解决

同一个模型之间,半透明材质乱序问题解决

2024-10-24 15:20:51 406 1

原创 UE5 阴影通道

Shadow Pass Switch节点中。Shadow代表阴影的生成遮罩效果。Default代表模型遮罩的效果。

2024-09-13 15:28:19 770 1

原创 UE5 半透明阴影 快速解决方案

将半透明材质给到模型后,设置光照的Shadow Resolution Scale,越大,阴影的效果越好。

2024-09-08 13:47:04 2320

原创 UE5 程序化批量导出staticmesh为FBX

前提申明,该文章只为了学习,该功能,UE自己就可以全选导出。

2024-07-02 18:52:40 919

原创 UE5 渲染性能优化 学习笔记

按住Ctrl + shift + ,(逗号)就可以看GPU Visualizer来看GPU的消耗了。调用Set Material这个过程就是CPU向GPU传达命令,重新绘制物品的新材质。尽量减少光照影响范围相交的部分,这样会造成光照计算的复杂度飙升,且效果也只是提亮而已。那么CPU向GPU传达去渲染的这个过程就叫DrawCall。3、GPU Time:就是GPU所渲染需要花的时间。2、Draw:CPU为GPU准备数据所做的工作。1、Game:CPU对游戏代码的处理工作。打开Statistics。

2024-06-11 22:30:21 1851

原创 UE5 体积云

写好的体积材质放这里面。

2024-04-29 17:10:44 917

原创 UE5 材质通过WPO进行旋转

【代码】UE5 材质通过WPO进行旋转。

2024-04-26 14:29:53 1028

原创 UE5 噪点(vector noise)

瓷砖状Noise方块状噪点。

2024-04-22 11:21:17 974

原创 C++ 协程 学习笔记

写成的返回值需要实现promise_type结构体以及内部这几个函数,第一个是初始化时即会调用该函数,第二个结束时调用该函数,第三个是异常处理函数,第四个是CoRet被作为返回值抛出的返回值函数。如果c++函数里有co_await、co_return、co_yield就会自动判定为协程。协程的优势就是比线程切换的时间少很多,协程的切换时间是纳秒,而进行切换的时间是微秒。co_yield和co_await可以将协程暂停下来。单线程用协程可以轻松的处理并发任务。协程若不写函数返回值,它会自动返回。

2024-04-20 21:38:26 350

原创 UE5 HLSL 详细学习笔记

这里的POSITION是变量Position的语义,告诉寄存器,此变量的保存位置,通常语义用于着色器的输入和输出,以冒号“:”的方式进一步说明此变量,COLOR也类似。

2024-04-14 16:30:43 1962 1

原创 编译原理 学习笔记

先Current_Node是根节点乘号,乘号,是中缀运算符,找左子节点,是加号,加号是中缀表达式,再去找加号的左子节点,是1,右子节点是2,OK,1+2=3,由此可知乘号的左子结点是3,右子节点也是3,那么3*3=9,完成语法树递归下降求值。

2024-04-11 22:26:49 329

原创 Games104 听后笔记

因为传统的STL库中,例如:vector,它一般采用的是双倍扩容法,加入1000个数据装满了,现在需要又加一个,那么就开辟了2000个数据的空间,那么当前就又999的数据空间暂时浪费掉了,这是实时渲染不希望看见的,这样会非常消耗性能,从而偏离实时的要求。这个和UE5的世界分区有点像,UE5世界分区是先将世界分成多个正方形,然后根据调整的距离Distance进行剔除,超过这个距离的正方形的物体就进行剔除,看不见的也剔除。它是模块逐级处理,而不是处理一个物体的所有行为,然后再处理其它物体的所有行为。

2024-03-28 19:04:25 477

原创 C++ Thread 源码 观后 自我感悟 整理

Thread的主要数据成员为_Thr里面存储的是线程句柄和线程ID先看看赋值运算符的移动构造最开始判断线程的ID是否不为0_STD就是使用std的域如果线程ID不为0,那么就抛出异常这里_New_val使用了完美转发,交换_Val和_New_val的值这里应该是把_Other._Thr的值赋值给_Thr,然后将_Other._Thr的值置空最后返回线程本身第一个判断我们已经看了,就是判断_Thr_Id!= 0如果_Thr_Id == 0了,则抛出异常。

2024-03-23 21:24:51 611

原创 UE5 GameMode C++函数 学习

类描述符加了noplaceable过后即使是Actor也不能放到场景中了,关卡蓝图,GameMode,GameState这些就不能放场景中了。已经尝试,确实能重启游戏。

2024-03-22 14:36:32 670

原创 图形学 总结 - 老是忘

通过近似的算法直接算出来对应的数值SDF(p)就是P1P2或者P2P3,p-o就是oP1 oP2 oP3这样的值,这样的比例去做近似表达角度大小的数值,角度越大,值越大,阴影越柔软,K值是为了让更多位置大于1,更多位置为硬阴影,k值越大,阴影外轮廓柔度越低,1为最黑的阴影,0~1根据值的大小,线性决定阴影强弱。在摄像机看到的像素对周围做N * N的卷积,在最外侧的阴影则会和没有阴影的一起做平均,则产生了软阴影,N值越大,性能消耗越高,软阴影效果越明显。上面实现的事硬阴影,如何实现软阴影?

2024-03-18 14:41:11 900

原创 UE5 获取各个信息的像素

这里使用Windows的HDC来获取屏幕中所有像素,这个不适合获取屏幕上所有像素,速度很慢,适合做取色器来获取其中鼠标中的一个像素。获取场景捕获器中,捕获的RT中所有的像素。二是UMediaTexture的像素。一个是UTexture2D的像素。这里有两个类型的像素。

2024-03-12 13:18:42 836

原创 Houdini学习笔记

按住Alt再点击Translation的任意,修改任意数值,它将变绿,帧也会变绿,这代表该帧已经被K好了。Alt + G跳出Houdini自带的材质,选择需要的材质,往右边空白处拖。调整这些参数,让Translation的操作具有噪点的性质,就更随机一些。这里有对应的层级关系,类似于树形结构,可以一层包一层往里面塞东西。点了这个锁定,在你所在的Camera会跟着你的视角动,否则不会。空格 + G键,可以跳转到合适的观察位置,类似于UE的F键。这里可以调整对应的动画曲线,可以调整整体变动的速率。

2024-03-01 13:28:19 912

原创 Shadow Map

Shader Map学习笔记

2024-02-28 11:35:00 247

原创 UE5 Chaos系统 学习笔记

chaos破裂后的模拟物理在绿色范围内禁止模拟物理。破裂效果的力,但是由中心向外,力的大小逐渐衰弱。在锚点场范围内的物体静止且不被其他力场损坏。

2024-01-25 17:38:15 1735

原创 UE5 动画 学习笔记

把右下角的资产拖出去就会播放一次该动画,如果想循环播放,在细节面板上把循环动画选为true,则循环播放动画。把它拖到动画蓝图里面,这里就有一个引脚为Speed,可以通过动画蓝图传入到混合空间,对对应姿势进行混合。在混合空间中,这里有一个水平轴的名字,自己取的Speed。在混合空间的这里,速度越快,越偏向于右边的动画。在动画蓝图里面计算速度和方向。把混合空间连到动画空间内。

2024-01-09 11:08:00 1694

原创 UE5 如何只捕获人物

2024-01-03 14:00:18 557

原创 UE5 水材质注意要点

勾为false,即可有非常真实的材质上的反射效果。1、两个法线反向交替流动,可以去观感假的现象。折射要整体质量至少在High才有效果。改为半透明材质没有法线信息?2、水面延边的透明度低。3、增加水面延边的浪花。

2023-12-19 16:49:35 1389

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除