材质实例化(Material Instancing)【UE4】

简介: 材质实例化(Material Instancing)【UE4】

普通的材质通常使用常量来定义某些属性,这样有个缺点当材质被编译完后,该属性是不能修改的,即游戏运行中无法动态变化;

但材质被实例化之后,我们只需编译父材质,那么它的子材质们就无需再次编译,这样如果有较多子材质的话,就可以大大提高游戏的性能

image.png

例如,上图父材质为“金属”特效,我们可以再创建两个子材质,让它们“继承”父材质的金属特性,然后通过调整这些特性(参数),我们可以得到自己想要的其他效果,比如“铜”材质和“铝”材质

下图为父材质的示例,注意其中的 Parameter 类型:

image.png

创建完父材质之后,右键点击并选择“Create Material Instance”

image.png


然后将其拖动到模型的 Material 项目上(Parent_Inst)

image.png

接着我们再双击刚刚拖进来的材质图标,会弹出一个窗口,如图:

image.png

它是 Material Instance Editor与我们之前常见的 Material Editor 界面略有不同左侧列出了之前在 Parent 材质使用的一些 Parameters

image.png

要修改相应的 Parameter,只需 check 对应的项,然后就可以进行实时调整了,主窗口模型也能实时变化,无需频繁的 Apply 和等待,我们可以轻松的 tweak 出理想的效果。

20170314132025390.gif


注: win + -> 或 win + <-  可以让窗口如图对齐

我们还可以从 Parent 材质实例化一个新的子材质,而且这两个子材质是相互独立的,只要父材质编译过,它们都可以实时 tweak,互不影响。

最后,我们再回到 Parent 材质

image.png


值得注意的是,其中有一个 Group 条目,我们根据自己的设计来命名它,

它会反映到 Material Instance Editor 的Parameter Group菜单中,便于我们对参数的管理。

image.png

相关链接:http://blog.csdn.net/panda1234lee/article/details/60963323

(完)

目录
相关文章
|
数据采集 机器学习/深度学习 人工智能
Python简直是万能的,这5大主要用途你一定要知道!
Python简直是万能的,这5大主要用途你一定要知道!
1145 0
|
开发工具 Android开发 开发者
Android Studio详细下载,安装使用教程
Android Studio详细下载,安装使用教程
5499 0
|
存储 Linux C语言
Linux C/C++之IO多路复用(aio)
这篇文章介绍了Linux中IO多路复用技术epoll和异步IO技术aio的区别、执行过程、编程模型以及具体的编程实现方式。
691 1
Linux C/C++之IO多路复用(aio)
|
10月前
课时53:字符串替换
今天我分享的内容是字符串替换以及相关内容,我将围绕以下三部分部分向大家逐一介绍。 1. 字符串替换的概念 2. 主要替换方法介绍 3. 替换操作示例及意义
112 4
|
存储 弹性计算 固态存储
阿里云服务器按量付费是什么?划算吗?
阿里云ECS按量付费模式,先使用后付费,按小时结算,适合临时扩展、测试、电商抢购等短期应用。开通需账户余额不低于100元。实例、镜像、云盘、带宽等支持按量计费,价格根据配置和地区而异。可随时转为包年包月。
2295 1
|
前端开发
ThreeJs通过canvas和Sprite添加标签
这篇文章介绍了在Three.js中利用Canvas和Sprite实现动态文本标签的方法,使得标签可以跟随模型并在3D空间中始终保持面向摄像机。
680 0
ThreeJs通过canvas和Sprite添加标签
|
JavaScript 前端开发 开发者
如何在 Visual Studio Code (VSCode) 中使用 ESLint 和 Prettier 检查代码规范并自动格式化 Vue.js 代码,包括安装插件、配置 ESLint 和 Prettier 以及 VSCode 设置的具体步骤
随着前端开发技术的快速发展,代码规范和格式化工具变得尤为重要。本文介绍了如何在 Visual Studio Code (VSCode) 中使用 ESLint 和 Prettier 检查代码规范并自动格式化 Vue.js 代码,包括安装插件、配置 ESLint 和 Prettier 以及 VSCode 设置的具体步骤。通过这些工具,可以显著提升编码效率和代码质量。
2444 4
|
消息中间件 Java Kafka
kafka Linux环境搭建安装及命令创建队列生产消费消息
kafka Linux环境搭建安装及命令创建队列生产消费消息
420 4
|
算法 定位技术
路径规划算法 - 求解最短路径 - A*(A-Star)算法
路径规划算法 - 求解最短路径 - A*(A-Star)算法
3135 1
|
算法 定位技术 C++
A* 算法详解(超级详细讲解,附有大图)
A* 算法详解(超级详细讲解,附有大图)
9227 0