在UE4中想要在代码中动态改变材质的某些参数,可通过创建动态材质实例来获取指定材质参数的材质,然后将该材质实例赋给模型,以改变贴图和粗糙度为例

1、在编辑器中新建材质,这里的材质为NewMaterial,创建在Content目录,加入需要修改的参数的材质节点

2、在材质节点上点击鼠标右键,选择菜单项“Convert to parameter”,将材质节点转为参数节点,并命名参数,如图

3、材质创建完成,可以在代码中加载该材质并创建实例

UMaterialInterface* GetDynamicMaterialByParam(UTexture* Texture,float Roughness)
{static UMaterialInterface* TemplateMaterial = LoadObject(nullptr, TEXT("/Game/NewMaterial"));//父材质if (TemplateMaterial == nullptr){return nullptr;}UMaterialInstanceDynamic* MaterialInstance = UMaterialInstanceDynamic::Create(TemplateMaterial, nullptr);//创建动态材质实例if (MaterialInstance){//设置材质参数MaterialInstance->SetTextureParameterValue(TEXT("TextureParam"), Texture);MaterialInstance->SetScalarParameterValue(TEXT("Roughness"), Roughness);}return MaterialInstance;
}

调用该函数每次都会创建一个新的实例,如果只想在原实例的基础上修改参数,则可以获取材质并转成UMaterialInstanceDynamic类,然后调用SetTextureParameterValue和SetScalarParameterValue函数,SetTextureParameterValue函数设置贴图参数,SetScalarParameterValue函数设置数值参数

UE4之材质参数的使用相关推荐

  1. UE4 微笔记 之 调整网格材质参数

    简单记录一下调整网格(Mesh)材质参数的方法 修改网格材质参数一般有以下几个步骤: 首先创建材质参数(这里有较详细的说明) 创建动态材质实例(UMaterialInstanceDynamic) 设置 ...

  2. UE4从外部修改材质参数

    首先看效果图 动态修改材质无非就是修改图片和数值 如果需要改图片要先创建材质实例然后把贴图传到父类暴露出来的参数里 如果只是修改数值的话,可以创建一个材质参数集就好了

  3. UE4 动画曲线控制材质参数

    1.在SkeletalMesh的材质里创建材质参数,我这里在小白人的材质里创建了一个参数用来控制自发光 2.在小白人的动画序列里创建动画曲线,曲线名字和材质参数名字一样,并将曲线类型设为材质 3.点击 ...

  4. ue4玻璃材质_UE4-材质

    本文中,我们将首先讨论基于物理的渲染,什么是材质域,什么是材质,什么是材质实例,什么是主材质,我们将讨论材质的一些建议和禁忌.最后,我们将了解一些材质概念,你可以将其用于各类项目中的材质. 1.什么是 ...

  5. 室外建筑表现3Dmax和vray常用材质参数设置

    一. 木纹材质调整方法: 1. 木纹材质的肌理调整: A.使用过度色通道贴图后加入凹凸通道贴图,使木纹有凹凸感,肌理更明显凹凸通道强度通常为30% B.材质球的高光强度(specular level: ...

  6. UE4学习-材质快捷键及材质帮助手册

    文章目录 补充知识 AttachTo 替代函数 材质常用快捷键 材质官方帮助手册 补充知识 AttachTo 替代函数 4.25版本会提示AttachTo函数不再使用,这时候会提示修改成函数Attac ...

  7. 【虚幻引擎】UE4/UE5 材质

    一.材质基本节点  基础颜色(BaseColor):材质本身的颜色,例如绿色蓝色等 金属度(Metallic):金属度,材质是否含有金属光泽 粗糙度(Roughness):粗糙或者平滑度,物体表面的粗 ...

  8. 多维/子对象(镜子组合材质参数)

    选中组合物体,查看ID 打开材质编辑器,选择多维/子对象材质球→根据材质ID设置数量→添加子材质 金属材质参数 镜面材质参数 漆材质参数

  9. Unity 动态修改URP自带材质参数

    Unity 动态修改URP自带材质参数 前言 代码 Emission 参考连接 前言 修改此处默认参数 代码 Emission 启用自发光效果的代码是 material.EnableKeyword(& ...

最新文章

  1. mysql 慢日志 作用_MySQL慢查询日志的作用和开启
  2. oracle 优化器 失效,oracle 优化器 不走索引原因
  3. 28个MongoDB经典面试题
  4. ae toolbarcontrol运行时没有_想办法让AE跑起来
  5. 使用oprofile分析性能瓶颈
  6. python实例 81,82
  7. 麻省理工、微软为AI量身打造了一套leetcode编程题
  8. 把windows当linux用,把Windows Vista当成Linux系统来使用
  9. java 集成 v8_J2V8首页、文档和下载 - V8 的 Java 封装版本
  10. Vscode中HTML与CSS代码的快速写法
  11. texstudio 使用方法_TeXstudio怎么使用,TeXstudio使用教程解析
  12. 如何把多个pdf文件合并成一个?
  13. 从高盛AI报告看国内智能语音翘楚 但没有科大讯飞
  14. 网站运营手册_分享几款运营必备软件合集,欢迎补充
  15. tapd获取相应内容
  16. 墨刀导出html无法使用,墨刀用户必读,能解决你80%的问题(持续更新中)
  17. 一之续、A*,Dijkstra,BFS算法性能比较及A*算法的应用
  18. 电脑时间倒流,程序拒绝穿越:应用程序发生异常 未知的软件异常(0xe06d7363)
  19. 双系统 Win10下安装Linux(单/双硬盘)
  20. C语言Math函数库简介

热门文章

  1. 梦幻西游两个不同服务器的名字出现在跨服华山,系统会怎么处理,第36次合服表惊现跨区合服...
  2. 用PyTorch训练模型识别captcha库生成的验证码
  3. OPPO Reno4系列正式发布:深耕5G视频手机赛道,主打超级夜景视频
  4. 操作系统连续分配存储管理方式
  5. 微信生成带参二维码,加彩色logo
  6. iphone新旧手机数据传输已取消_两种方法轻松让iPhone实现APP互传,再也不羡慕安卓手机...
  7. DOS命令--隐藏命令
  8. 故障电弧探测器在某医院项目上的应用
  9. 奇安信(360)扫描漏洞解决办法
  10. 服务器内部复制文件慢,对文件复制速度较慢的问题进行Windows