ue4 加载材质_Houdini Terrian & UE4 (六)制作Flowmap

本文介绍了如何使用Houdini创建基于地形的Flowmap,以实现更真实的水流效果。通过Game Shelf在UE4中制作基础地形,然后在Houdini中计算Flowmap,最终将flowmap信息导入UE4,实现高度相关的水流表现。文章包含从创建地形到烘焙Flowmap的详细步骤,并提示了在处理过程中需要注意的坐标轴旋转、尺寸调整等细节。
摘要由CSDN通过智能技术生成

b20eae83189e9d4605bcace61a8eeed6.png

导言

对于游戏场景来说,水流是动景很重要的一环。

传统的水面制作中,一般是做2-3个方向的波叠加,或者制作一个随机的flowmap,这样做出来的水面自然是没有灵魂的【手动滑稽】。

所以,这里我们用houdini来制作一个基于地形的flowmap,让场景拥有基于高度的水流效果。

首先,制作flowmap需要用到官方的Game Shelf,下面是github的链接,下载后按照说明加载到houdini环境即可。

sideeffects/GameDevelopmentToolset​github.com
5f0a4ec04d5deeeb1e63914cc4166968.png

准备一个基础地形

还是一如既往的按照最简(lan)单(duo)的方法创建一个地形。

93920c7314a512ca837c426b3d010e97.png

把hda扔进UE4,找一个河流,在上面铺上一层地形样条曲线。

18576cc9e3640cd63af55cdaa0aee6a9.png

为了方便看出水流情况,我们做一个比较明显的贴图。

970b33849e252a25be5a7459ad143217.png

制作一个最简单的panner 材质

7f41cce43f746ffe9ba06535d36694de.png

嗯。初始的样子大概就是这样了,可以看出,相当的没有灵魂。

c3a27c15e42db6b3154e277a2f28fefe.png

在houdini中制作flowmap

最上面的FlowMapTest就是我们上面所用到的基础地形节点。当然,也可以从UE4中把高度图导出到houdini。

我们把Hightfield转化为polygon,用于后续计算顶点数据。

可以用subdivide将整个地形分的更细,提高分辨率。

然后就进入计算flowmap了,这里我们用到了GameDev Flowmap节点,然后选择从Slope生成flowmap信息,勾上Visualize后就可以在houdini里看到顶点上的一根根“毛”了。毛的方向和颜色就是当前点的flowmap方向。

然后用Flowmap Color方法把顶点上的flowmap信息保存为Point的Cd颜色属性。

利用Attribute Promote将Point的Cd给到Vertex。

最后利用GameDev Simple Baker节点,配置一下生成的信息和生成路径,点击Render就可以生成Flowmap到指定位置了。

c5a5bc34fb645875040b9cf0787d3283.png

emmmm这里因为不明所以的坐标轴问题,导出的图片要顺时针旋转90度才能和游戏中的地形对上。

利用UE4的Flowmap_Simple就可以把flowmap的信息和我们前面做的贴图叠加后输出材质了。

这里只是最最最最基础(实在是太懒了)的节点了,法线贴图,像素偏移和DepthFade折射都没有做。

【注:为了取到正确的信息,这里世界位置要准确的除以地形尺寸*100(这里是100900),如果地形不在000点,要把ObjectPosition也考虑进去】

【注:需要翻转y方向】

【注:红绿通道要剪去0.5来判断方向正负】

8a9cc295cdba14a150359104472d11b3.png

下面就是见证奇迹的时刻了。

2f750a603257c0f1de8bfb56b29b5e4b.png

8875e175c93547f313c2f80a508077c2.gif
gif限制10M压缩的细节都没了,凑合看个意思吧。

后记

上面只是Flowmap的最基本使用,在houdini中flowmap还有下面这些节点可以用,比如画刷,阻挡计算和引导线的节点,可以利用更多参数来制作flowmap。

比如我们做出来的波纹只有斜率方向的明显波动,就可以利用flowmap guide节点来赋予一个主体流向。

de679a17ddd1712f9926690c59859bfe.png

最后一点:请用一台好一点的机器来跑houdini部分,并且注意保存!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值