当前位置:网站首页>UE4 - 河流流体插件Fluid Flux
UE4 - 河流流体插件Fluid Flux
2022-08-10 19:07:00 【MoonChildInSky】
Fluid Flux相关的一些笔记,归档发表;
可以模拟一定区域内的流体效果,由于使用顶视图所Capture的Heightfield信息,所以只支持室外开阔场景,不支持洞穴等室内场景:
整个项目由Blueprint配合C++编写,包括其中附带的一些工具;首先所需要激活的Plugin:
主要的使用方式是,首先用最核心的BP_FluxSimulation来计算模拟和规定流体所模拟的范围:
注意这个范围是一个体积框,是有高度值的:
然后是加入流体源相关Actor(BP_FluxModifierSourceActor)在模拟框内就可以看到运行后效果:
BP_FluxModifierSourceActor可以持续产生流体,相关参数是:

场景中BP_FluxModifierSourceActor模拟的任何一帧都可以使用相关Data Asset记录下来:
这个过程不用运行游戏,在Editor中的BP_FluxSimulation中模拟即可:

模拟到所需要的帧的时候,运行相关导出脚本,导出到相关Data Asset即可:
会自动生成Data Asset所需要的相关贴图:
可以把有烘焙数据的Data Asset加入到BP_FluxSimulation中,比如Initial State:
这样在运行的开始就有一个烘焙好的初始状态效果:
也可以在BP中直接调用烘焙Data:
需要修改水面的材质的话,相关的资源在Surface文件夹;要用到BP_FluxSurface_Water,放置其在场景中,用BP_FluxSimulation引用这个Actor:
水面的相关材质引用在BP_FluxSurface_Water中:
复制并修改这个相关材质的参数,再赋予给Actor即可:
还可以利用BP_FluxSurface_Water把模拟好的水面状态直接转为Static Mesh使用,在其被BP_FluxSimulation引用的情况下,可以在BP_FluxSurface_Water Actor参数下激活预览模式,预览被转换为Static Mesh后的状态:
然后在其相关的Component的参数栏中转换:

注意生成的新模型需要赋予其新的材质,使用一个水面的材质实例即可:
然后在BP_FluxSurface_Water中把相关模式切换为使用Mesh模式:
把Static Mesh赋予相关Component:
这样就直接可以在场景中使用Static Mesh代替特定的模拟结果了;
注意类似于BP_FluxSurface_Water的还有BP_FluxSurface_River等BP;
不用BP_FluxSimulation进行流体模拟的话,勾选Treat as Is Editor Only参数:
注意在BP_FluxSurface_Water中使用Static Mesh且BP_FluxSimulation又引用了这个BP_FluxSurface_Water Actor的时候,改变Treat as Is Editor Only参数可能会导致BUG,那就是Mesh的水面会产生错误(消失或效果出错),所以可以先断开其引用再来修改参数;
当然,也可以直接在场景中使用所生成的Static Mesh,但没有BP_FluxSurface_Water等BP的引用,那也就没有水面互动涟漪和水下效果等特性了;
注意假如只用单独的Statci Mesh,就不用勾选材质中的UseFluxState参数了;
官方文档:
https://www.youtube.com/watch?v=4SWe_DZshOw
边栏推荐
猜你喜欢
QoS Quality of Service Six Router Congestion Management
【LeetCode】42、接雨水
Optimization is a habit The starting point is to 'stand close to the critical'
你不知道的浏览器页面渲染机制
QoS Quality of Service Eight Congestion Avoidance
【知识分享】在音视频开发领域中SEI到底是个啥?
laya打包发布apk
[email protected] NPs)"/>
转铁蛋白修饰蛇床子素长循环脂质体/负载三七皂苷R1的PEG-PLGA纳米粒([email protected] NPs)
【毕业设计】基于STM32的天气预报盒子 - 嵌入式 单片机 物联网
QoS Quality of Service Seven Switch Congestion Management
随机推荐
Transferrin-modified vincristine-tetrandrine liposomes | transferrin-modified co-loaded paclitaxel and genistein liposomes (reagents)
dumpsys meminfo 详解
关于npm/cnpm/npx/pnpm与yarn
铁蛋白-AHLL纳米颗粒|人表皮生长因子-铁蛋白重链亚基纳米粒子(EGF-5Cys-FTH1)|铁蛋白颗粒包载氯霉素Chloramphenicol-Ferritin
flask生成路由的2种方式和反向生成url
The servlet mapping path matching resolution
Pt/CeO2 monatomic nanoparticles enzyme | H - rGO - Pt @ Pd NPs enzyme | carbon nanotube load platinum nanoparticles peptide modified nano enzyme | leukemia antagonism FeOPtPEG composite nano enzyme
Colocate Join :ClickHouse的一种高性能分布式join查询模型
FEMRL: A Framework for Large-Scale Privacy-Preserving Linkage of Patients’ Electronic Health Rec Paper Summary
大家要的Biotin-PEG3-Br/acid/NHS ester/alcohol/amine合集分享
【自然语言处理】【向量表示】PairSupCon:用于句子表示的成对监督对比学习
[Go WebSocket] Your first Go WebSocket server: echo server
[教你做小游戏] 斗地主的手牌,如何布局?看25万粉游戏区UP主怎么说
QoS服务质量七交换机拥塞管理
转铁蛋白(Tf)修饰去氢骆驼蓬碱磁纳米脂质体/香豆素-6脂质体/多柔比星脂质体
你不知道的浏览器页面渲染机制
@Autowired注解 --required a single bean, but 2 were found出现的原因以及解决方法
报错:runtime error: reference binding to null pointer of type ‘std::vector<int, std::allocator<int>>‘
idea汉化教程[通俗易懂]
小分子PEG CAS:1352814-07-3生物素-PEG6-丙酸叔丁酯