【实战指南】修改材质参数方法总集---包教包会的UE5虚幻引擎秘籍!


请添加图片描述

  • 🙋‍♂️ 作者:海码007
  • 📜 专栏:UE虚幻引擎专栏
  • 💥 标题:【实战指南】修改材质参数方法总集—包教包会的UE5虚幻引擎秘籍!
  • ❣️ 寄语:人生的意义或许可以发挥自己全部的潜力,所以加油吧!
  • 🎈 最后:文章作者技术和水平有限,如果文中出现错误,希望大家能指正

1 应用场景

  • 通过场景中事件触发的方式,在运行时修改模型的材质(例如,玩家走到按钮附近,按钮变色)
  • 通过UMG用户控件修改模型的材质(例如,车辆模型预览,通过界面修改汽车的材质)
  • 等等

2 方法

2.1 使用材质参数集修改参数值

核心原理:该方法可以通过蓝图直接修改材质参数集中的参数值,然后影响使用了该材质参数集的材质并不是直接修改某个模型的材质。

具体的实现步骤如下:

  1. 创建材质参数集
    在这里插入图片描述
  2. 材质参数集可以存放很多的参数,有标量参数(一维)和向量参数(四维)。作为测试,分别创建一个Opacity变量参数和BaseColor向量参数。
    在这里插入图片描述
  3. 创建两个材质,并在材质编辑器中使用MaterialParams材质参数集。输入Collection Parameter即可找到材质参数集变量。
    在这里插入图片描述
    设置材质1
    在这里插入图片描述
    设置材质2
    在这里插入图片描述
  4. 在蓝图中修改材质参数集中的参数值(本文使用关卡蓝图,通过键盘事件来触发参数值修改),使用设置标量参数值(Set Scalar Parameter Value)和设置向量参数值(Set Vector Parameter Value)。
设置标量参数值
设置向量参数值

如上图,选择Collection(就是材质参数集),选择设置的参数名还有参数值

在这里插入图片描述

2.2 修改在材质编辑器中创建材质参数

核心思想:通过蓝图获取网格体组件,通过组件访问材质参数,修改参数值。

知识前瞻:在材质编辑器中可以创建标量参数和矢量参数,和材质参数集中类似。
在这里插入图片描述
步骤:

  1. 在材质中创建两个参数,分别是标量参数(GlowingParam)和矢量参数(BaseColorParam),控制基础颜色,还有自发光颜色。
    在这里插入图片描述
  2. 在蓝图中使用在材质上设置向量参数值(Set Vector Parameter Value On Materials)和在材质上设置标量参数值(Set Scalar Parameter Value On Materials)函数修改
    在这里插入图片描述

2.3 运行时修改材质实例的参数值而不影响父材质中的值

应用场景:有时候使用别人插件的时候,别人提供了很多预设的材质实例让我们使用,不同材质实例都有很多的参数,当我们某个模型使用其中一个材质实例想要动态的修改其中的参数。

实现方法:UE中材质实例(也就是在编辑器中创建的材质实例)都是静态常量,是不能在运行时修改的,这时候就需要使用到动态材质实例技术。动态材质实例可以在运行时创建,可以在运行时修改参数。

注意:动态材质实例是根据现有材质创建的,修改了动态材质实例并不会将常量材质修改。
在这里插入图片描述
注意:使用的设置向量参数值(Set Vector Parameter Value)函数目标是材质动态实例

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值