UE4 - 河流流体插件Fluid Flux

Fluid Flux相关的一些笔记,归档发表;

可以模拟一定区域内的流体效果,由于使用顶视图所Capture的Heightfield信息,所以只支持室外开阔场景,不支持洞穴等室内场景:

整个项目由Blueprint配合C++编写,包括其中附带的一些工具;首先所需要激活的Plugin:

主要的使用方式是,首先用最核心的BP_FluxSimulation来计算模拟和规定流体所模拟的范围:

注意这个范围是一个体积框,是有高度值的:

然后是加入流体源相关Actor(BP_FluxModifierSourceActor)在模拟框内就可以看到运行后效果:

BP_FluxModifierSourceActor可以持续产生流体,相关参数是:

注意参数在Actor的Component中,值为-1的时候无限产生流体;

场景中BP_FluxModifierSourceActor模拟的任何一帧都可以使用相关Data Asset记录下来:

这个过程不用运行游戏,在Editor中的BP_FluxSimulation中模拟即可:

BP中的相关模拟按钮;

模拟到所需要的帧的时候,运行相关导出脚本,导出到相关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的参数栏中转换:

注意要在Stop Simulation的情况下相关的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参数了;

官方文档:

Fluid Flux – Imaginary Blend

https://www.youtube.com/watch?v=4SWe_DZshOw


  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DoomGT

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值