动态材质实例(Dynamic Material Instance)【UE4】

简介: 动态材质实例(Dynamic Material Instance)【UE4】

本例将通过 “靠近影响椅子的颜色” 来展示什么是 动态材质实例(Dynamic Material Instance)

20170314144431319.gif

如图,它通常是用一个参数化的材质实例 + 蓝图 来实现的

image.png

首先,我们搜索椅子模型——SM_Chair,双击打开它的材质——M_Chair

image.png

可以看到 ColorSeats 参数影响着椅子的颜色,记住它的名字。


接着,我们创建一个继承自 Actor 的蓝图类,将椅子的模型拖入新建的蓝图类

image.png

然后,我们为其顶一个触发区域,这样当我们靠近它时,将会触发一个事件,如图:

image.png

调整合适的大小和位置

image.png

接着,我们切换到 Construction Script 界面


用它来决定蓝图使用哪一个材质


将椅子模型拖入空白处,选择 Get,然后从他拉出一条线,选择 Create Dynamic Material Instance


再从其 return value 上拉出一条线选择 Promote To Variable,结果如图:


image.png

image.png

下一步我们再回到 Event Graph

选中 Box,右键点击空白处,选择 Add On Component Begin Overlap

image.png

选中我们之前在 Construction Scirpt 创建的变量,将其拖动进来,并拉出一条 Set Vector Parameter Value 线,并将这个新节点的 exec pin 和 OnComponentBeginOverlap 的 exec pin 相连。


最最重要的是,Set Vector Parameter Value 的 Parameter Name 改为 “ColorSeats”,即我们之前在椅子模型材质中看到的参数名


最后我们在定义一个随机颜色,结果输出到 Set Vector Parameter Value中。

image.png

(完)

目录
相关文章
|
6月前
|
设计模式 编译器 API
【C/C++ Pimpl模式】隐藏实现细节的高效方式 (Pimpl Idiom: An Efficient Way to Hide Implementation Details)
【C/C++ Pimpl模式】隐藏实现细节的高效方式 (Pimpl Idiom: An Efficient Way to Hide Implementation Details)
501 1
|
5月前
|
存储 图形学
【unity小技巧】unity中导入下载的3D模型及albedo/baseColor、normal 、AO/Occlus、metallic、roughness贴图纹理设置
【unity小技巧】unity中导入下载的3D模型及albedo/baseColor、normal 、AO/Occlus、metallic、roughness贴图纹理设置
88 0
UE DT Load Texture 运行时加载纹理图片 插件说明
UE DT Load Texture 运行时加载纹理图片 插件说明
160 0
268Echarts - GL 关系图(GraphGL - Large Internet)
268Echarts - GL 关系图(GraphGL - Large Internet)
113 0
uiu
|
JavaScript
【Svelte】-(7)绑定|Each 块绑定 / audio video 媒体标签绑定 / client offset 尺寸绑定 / this / 组件绑定
【Svelte】-(7)绑定|Each 块绑定 / audio video 媒体标签绑定 / client offset 尺寸绑定 / this / 组件绑定
uiu
106 0
【Svelte】-(7)绑定|Each 块绑定 / audio video 媒体标签绑定 / client offset 尺寸绑定 / this / 组件绑定
|
Web App开发 移动开发 前端开发
【译】媒体查询特性 - 适应用户偏好 | perfers-reduced-motion | prefers-color-scheme | Save data
【译】媒体查询特性 - 适应用户偏好 | perfers-reduced-motion | prefers-color-scheme | Save data
190 0
【译】媒体查询特性 - 适应用户偏好 | perfers-reduced-motion | prefers-color-scheme | Save data
后期处理材质(Post Process Material)【UE4】
后期处理材质(Post Process Material)【UE4】
438 0
后期处理材质(Post Process Material)【UE4】
后期材质(PostProcess Material)+ Custom Node 实现"描边"和"马赛克"效果【UE4】
后期材质(PostProcess Material)+ Custom Node 实现"描边"和"马赛克"效果【UE4】
333 0
后期材质(PostProcess Material)+ Custom Node 实现"描边"和"马赛克"效果【UE4】
材质实例化(Material Instancing)【UE4】
材质实例化(Material Instancing)【UE4】
295 0
材质实例化(Material Instancing)【UE4】
|
图形学
Unity组件:Fixed Joint 固定关节
Fixed Joints restricts an object's movement to be dependent upon another object. This is somewhat similar to Parentingbut is implemented through physics rather than Transform hierarchy.
1896 0