jstl动态取变量_UE4[蓝图]动态积雪材质的实现(二)

a3dd1e4ce3598070dcf1baf59ab29331.png

上篇讲完地面的材质,本篇来实现动态积雪效果。

物体上的积雪材质

新建一个材质,名为M_CobbleStone_Snow。

导入Starter Content內容包,里面有我们接下来要使用的贴图。

为了体现物体表面上的积雪效果,这里在材质属性中使用世界位移以及多边形细分乘数。

在Tessellation中启动Flat Tessellation。

422e5a522bae654fbf0d13f3b5507862.png

基本颜色,这里我使用的鹅卵石贴图,T_CobbleStone_Pebble_D。

129930cd1591630a9402c7409ea1486b.png

粗错度

01df6df9bf326407c9933e1a1b7170f6.png

法线

cc80a62a31329032c21f668b719abcdc.png

世界偏移

190e56733bc68e49b65725f9f01eebba.png

雪的数量,这里添加了一个标量,为接下来做准备

55fa0265f87eac60d897b3f4278275a7.png

雪的覆盖范围,这里添加了一个标量,为接下来做准备

cbe2ac3f4dfe83b030a03fd1f0a55dcb.png

9e35f6d8e3046404519dcea4178e9ad5.png

Clamp节点的值作为BaseColor、Normal等节点的Alpha

多边形细分乘数

02817c73e2f65e3096200980af9ca559.png

完整如下

981f0f698a8b455763381363ce9e9c1f.png

接下来,使用刚才创建好的材质创建一个材质实例,并给场景中Mesh使用该材质实例。

在场景中体现动态效果。

首先,给要产生积雪的效果的物体添加一个Actor Tag,在Details中可以看到。

Tag中输入:Snow

1107e3bfdf592b3401b474f78027af6b.png

打开关卡蓝图,在这里对材质中的参数进行更新,达到一个动态积雪的效果。

在BeginPlay事件中,使用创建动态材质实例节点对地面和物体进行初始化。

bc89aacd5e2d2c34e91c651ac0744d31.png

调用事件SnowFall和Create and Set Mat

15ba18600e64bcfe7f95ae9a82ef9e7d.png

SnowFall事件,这里添加了一个时间轴,使雪的数值随时间变化,达到积雪的效果。

d4e29a3064e613a4efb1f4cb987f7357.png

80d62b00b3d919abdf76040252e16207.png

时间轴,添加Float track ,设置下雪量和覆盖范围的参数

349696e230d6d6008f5ebd293a4c585c.png

Create And Set Mat事件,用来设置参数的一个事件。

26d3783faab1500d14824df5d6b71fb1.png

0d16185c0fac3ad8255876ef1eb7b71b.png

fd93982f2d31993ce40cec8bfec5d260.png

点击播放,配合空中雪花的飘落,我们就可以看到一个降雪——》积雪的效果了。

积雪材质这部分的教程到此告一段落了,虚幻引擎的材质真的很复杂,我也在不断的学习中,希望能给大家带来帮助。

帅/美的人——》

364ad76d651d89dbcaf82a1f67d16add.png
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值