Script Graph

使用指南

资产 / 材质 / Material节点

资产 / 材质 / Material 节点手册,包含 15 个节点的用途、引脚、使用场景和注意事项。

16

学习目标

读取和验证 Cocos 资产对象,把图片、音频、材质、Prefab 等资源接入工作流逻辑。

覆盖范围

  • 节点数量:15
  • 分类路径:资产 / 材质 / Material

典型使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

通用注意事项

  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

节点索引

节点节点 ID输入/输出执行方式
初始化材质materialInitialize3 / 2立即继续
初始化默认材质materialInitDefault3 / 2立即继续
获取 Effect 名称materialGetEffectName1 / 1立即继续
获取 EffectAssetmaterialGetEffectAsset1 / 1立即继续
获取 Material HashmaterialGetHash1 / 1立即继续
获取 Pass 数量materialGetPassCount1 / 1立即继续
获取 Shader 属性materialGetProperty3 / 1立即继续
获取 Technique 索引materialGetTechnique1 / 1立即继续
获取所有属性materialGetProperties1 / 6立即继续
拷贝材质materialCopy4 / 2立即继续
设置 Shader 属性materialSetProperty5 / 2立即继续
设置所有属性materialSetProperties7 / 2立即继续
校验材质materialValidate1 / 1立即继续
新建材质materialCreate1 / 2立即继续
重置 UniformsmaterialResetUniforms3 / 2立即继续

初始化材质

调用 initialize(info: IMaterialInfo),将 新建材质 产生的空材质绑定到指定 effect 并完成初始化配置。 重要限制:引擎仅允许对尚未初始化的空材质调用此方法;若目标材质已被初始化(如加载好的材质),引擎会打印警告并提前返回,不会生效。 若要修改已有材质,请改用 拷贝材质 或 设置所有属性。

节点信息

字段
节点 IDmaterialInitialize
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口-可选
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填
materialInfo材质信息数据struct / IMaterialInfo材质信息
包含 effectAsset / effectName、technique 索引、宏定义(defines)和管线状态(states)的初始化参数结构体。
请通过 构造结构体 节点填写后连接到此端口。
仅对 新建材质 输出的空材质有效;对已初始化材质无效且引擎会警告。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流执行完成-可选
material材质数据cc.Asset / MaterialMaterial 材质(透传)
把当前操作的 Material 实例原样传出,便于将多个配置节点串联在一起。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

初始化默认材质

调用 initDefault(uuid?),将目标材质整体重置为内置默认效果(默认为 builtin-unlit,引擎同时会把 mainColor 设为洋红色)。 注意:这是整体重置操作,会覆盖材质的全部数据,而不是局部补齐。若要基于现有材质做局部修改,请改用 拷贝材质 或 设置所有属性。 若需指定其他内置 effect,可通过 builtinUuid 端口传入对应 uuid 字符串;空字符串时沿用默认行为。

节点信息

字段
节点 IDmaterialInitDefault
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口-可选
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填
builtinUuid内置 UUID数据string内置 Effect UUID
可选参数。传入要初始化的内置 effect uuid 字符串;空字符串时沿用默认行为,初始化为 builtin-unlit(主色变洋红)。
输入框
默认值:""
可选
默认隐藏

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流执行完成-可选
material材质数据cc.Asset / MaterialMaterial 材质(透传)
把当前操作的 Material 实例原样传出,便于将多个配置节点串联在一起。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

获取 Effect 名称

读出当前材质所绑定的 effect 名称字符串(来自 effectAsset?.name)。 常用于调试、日志输出或根据 effect 名称走不同分支。

节点信息

字段
节点 IDmaterialGetEffectName
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
effectNameEffect 名称数据stringEffect 名称
材质绑定的 effect 名称字符串,例如 “builtin-unlit”。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

获取 EffectAsset

读出当前材质所绑定的 EffectAsset 实例。 可把输出连接到 EffectAsset 系列节点,进一步读取 effect 的 techniques、shaders 等配置信息。 若材质尚未绑定 effect,此端口输出 null。

节点信息

字段
节点 IDmaterialGetEffectAsset
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
effectAsset效果资产数据cc.Asset / EffectAssetEffectAsset
材质绑定的效果资产实例。可连接到 EffectAsset 系列节点读取 effect 配置信息;未绑定时为 null。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

获取 Material Hash

读出当前材质的渲染 hash 值。 hash 值由引擎根据材质配置自动计算,用于批次合并与渲染优化。相同 hash 的材质可进行 draw call 合批。 该值是只读的,不应直接用于业务数值计算;通常只在性能分析、两个材质是否可合批判断等场景中使用。

节点信息

字段
节点 IDmaterialGetHash
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
hashHash 值数据numberMaterial Hash
材质的渲染 hash 值,由引擎自动计算,用于合批判断。只读,不应参与普通数值运算。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

获取 Pass 数量

读出当前材质的渲染 pass 数量(通过 material.passes.length 派生)。 大多数材质只有一个 pass(单 pass 渲染)。特殊效果如轮廓、多层混合可能有多个 pass。 首版不直接暴露 Pass[] 原始数组,因为 Pass 类型依赖内部渲染系统,当前项目无稳定消费链路。

节点信息

字段
节点 IDmaterialGetPassCount
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
passCountPass 数量数据numberPass 数量
材质的渲染 pass 数量(整数)。由 material.passes.length 派生;首版不暴露 Pass[] 原始数组。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

获取 Shader 属性

调用 material.getProperty(name, passIndex?),按属性名读取材质的 shader uniform 值。 支持的值类型:数字、向量、颜色、矩阵、四元数、纹理或 null。首版使用 ANY 类型端口,不做静态类型检查。 passIndex 语义:未公开(不连接)时,引擎搜索全部 pass 返回第一个命中值;公开并传入具体值时,只在指定 pass 上查询。 该节点有执行头(SET_STYLE),因为其行为依赖查询条件。

节点信息

字段
节点 IDmaterialGetProperty
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填
propertyName属性名数据string属性名
要查询的 shader uniform 名称字符串,例如 mainColor、mainTexture。名称区分大小写,需与 effect 中声明的 uniform 完全一致。
输入框
默认值:""
必填
passIndexPass 索引数据numberPass 索引(可选)
指定要查询的 pass 下标。默认不公开:不连接时引擎搜索全部 pass 并返回第一个命中值;公开并传入具体值时只在指定 pass 上查询。
输入框
默认值:0
可选
默认隐藏

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
value属性值数据any属性值
读取到的 shader uniform 值。类型为 ANY(引擎异构联合类型,首版不做静态推断)。支持数字、向量、颜色、矩阵、四元数、纹理或 null。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

获取 Technique 索引

读出当前材质使用的 technique 索引(整数),对应 EffectAsset.techniques 数组中的下标。 大多数材质只有一个 technique(索引为 0)。多 technique 的材质通常用于表示不同渲染质量级别。

节点信息

字段
节点 IDmaterialGetTechnique
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
techniqueTechnique 索引数据numberTechnique 索引
当前材质使用的 technique 索引(整数),对应 EffectAsset.techniques 数组下标。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

获取所有属性

一次性读出 Material 的全部常用属性:effectAsset、effectName、technique、hash、passCount 与 isValid。等同于连接多个 获取类节点,但只用一个节点即可。 适合需要同时读取多个属性的场景,例如调试面板、批量比较、序列化预览。

节点信息

字段
节点 IDmaterialGetProperties
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
effectAsset效果资产数据cc.Asset / EffectAssetEffectAsset
材质绑定的效果资产实例。
-可选
effectNameEffect 名称数据stringEffect 名称
材质绑定的 effect 名称字符串。
-可选
techniqueTechnique 索引数据numberTechnique 索引
当前材质使用的 technique 索引。
-可选
hashHash 值数据numberHash 值
材质的渲染 hash,用于合批判断。
-可选
passCountPass 数量数据numberPass 数量
材质的渲染 pass 数量。
-可选
isValid是否有效数据boolean是否有效
true:材质合法可用;false:无效或未初始化。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

拷贝材质

调用 material.copy(sourceMaterial, overrides?),把 sourceMaterial 的全部配置复制到 material,可同时通过 overrides 部分覆盖初始化参数。 这是对已加载材质做”安全复制后再定制”的推荐入口:先从原始材质拷贝,再通过 overrides 指定要改动的字段,其他字段保持原样。 overrides 端口为可选 STRUCT(IMaterialInfo);不连接时按源材质原样复制。

节点信息

字段
节点 IDmaterialCopy
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口-可选
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填
sourceMaterial源材质数据cc.Asset / Material源材质
要复制配置的来源 Material 实例。必须是已加载的材质。复制完成后,目标 material 的 effect、technique、宏定义和 uniform 将与源材质一致(可通过 overrides 局部覆盖)。
-必填
overrides覆盖参数数据struct / IMaterialInfo覆盖参数(可选)
IMaterialInfo 结构体,用于在复制基础上局部覆盖初始化参数(如 effectAsset、technique、defines 等)。
不连接时直接按源材质原样复制。
-可选

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流执行完成-可选
material材质数据cc.Asset / MaterialMaterial 材质(透传)
把当前操作的 Material 实例原样传出,便于将多个配置节点串联在一起。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

设置 Shader 属性

调用 material.setProperty(name, value, passIndex?),按属性名写入材质的 shader uniform 值。 支持的值类型:数字、向量、颜色、矩阵、四元数、纹理或 null。value 端口不提供内联控件,请从上游节点连入。 passIndex 语义:未公开(不连接)时,引擎对全部适用 pass 写入;公开并传入具体值时,只写入指定 pass。

节点信息

字段
节点 IDmaterialSetProperty
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口-可选
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填
propertyName属性名数据string属性名
要写入的 shader uniform 名称字符串,例如 mainColor、mainTexture。名称区分大小写,需与 effect 中声明的 uniform 完全一致。
输入框
默认值:""
必填
value属性值数据any属性值
要写入的 shader uniform 值。类型为 ANY,支持数字、向量、颜色、矩阵、四元数、纹理或 null。不提供内联控件,请从上游节点连入。
-必填
passIndexPass 索引数据numberPass 索引(可选)
指定要写入的 pass 下标。默认不公开:不连接时引擎对全部适用 pass 写入;公开并传入具体值时只写入指定 pass。
输入框
默认值:0
可选
默认隐藏

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流执行完成-可选
material材质数据cc.Asset / MaterialMaterial 材质(透传)
把当前操作的 Material 实例原样传出,便于将多个配置节点串联在一起。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

设置所有属性

通过组装 IMaterialInfo 覆盖对象,基于 material.copy(material, overrides) 批量修改材质的常用属性:effectAsset、effectName、technique、defines、states。 遵循公开引脚语义:除 exe 与 material 外,其余可写输入默认 isPublic: false——只有被显式公开(连线或配置 isPublic: true)的引脚才参与游戏运行时写入。未公开的字段不参与 overrides 组装,保持材质原值。 注意:defines / states 首版以 OBJECT 类型建模;effectAsset 不提供内联 picker。

节点信息

字段
节点 IDmaterialSetProperties
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口-可选
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填
effectAsset效果资产数据cc.Asset / EffectAsset效果资产(可选)
要替换的 EffectAsset 实例。默认不公开;公开后才参与 overrides 写入。不提供内联 picker,请从上游节点连入。
-可选
默认隐藏
effectNameEffect 名称数据stringEffect 名称(可选)
要替换的 effect 名称字符串。默认不公开;公开后才参与 overrides 写入。
输入框
默认值:""
可选
默认隐藏
techniqueTechnique 索引数据numberTechnique 索引(可选)
要使用的 technique 下标。默认不公开;公开后才参与 overrides 写入。
输入框
默认值:0
可选
默认隐藏
defines宏定义数据object宏定义(可选)
MacroRecord 类型,动态 key 字典对象。默认不公开;首版以 OBJECT 建模,不提供内联编辑器。
-可选
默认隐藏
states管线状态数据object管线状态(可选)
PassOverrides 类型,渲染管线状态覆盖对象。默认不公开;首版以 OBJECT 建模,不提供内联编辑器。
-可选
默认隐藏

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流执行完成-可选
material材质数据cc.Asset / MaterialMaterial 材质(透传)
把当前操作的 Material 实例原样传出,便于将多个配置节点串联在一起。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

校验材质

检查材质实例是否处于合法可用状态。 常用于条件分支判断:加载后先校验再决定是否继续后续材质操作。 返回 true 表示材质已正确初始化并可安全使用;返回 false 表示材质无效或尚未初始化。

节点信息

字段
节点 IDmaterialValidate
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
isValid是否有效数据boolean是否有效
true:材质处于合法可用状态;false:无效或未初始化。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

新建材质

在游戏运行时创建一个全新的空 Material 实例,初始未绑定任何 effect。 新建的材质没有可用内容,后续通常接 初始化材质(绑定 effect 与配置)或 拷贝材质(从已有材质拷贝)。 若要加载已有材质文件,请改用 加载资产(类型选 MATERIAL)。

节点信息

字段
节点 IDmaterialCreate
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口-可选

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流执行完成-可选
material材质数据cc.Asset / MaterialMaterial 实例
新建的空材质实例。连接到 初始化材质 或 拷贝材质 节点为其填充内容。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。

重置 Uniforms

调用 material.resetUniforms(clearPasses),重置材质的 uniform 绑定状态。 clearPasses 说明:

  • true(默认):同时清空 pass 实例,材质将在下次使用前重新编译 pass。
  • false:只重置 uniform 数据,保留 pass 实例。 常用于游戏运行时”脏重置”场景:在大幅修改材质配置后,通过 resetUniforms 清除旧的 uniform 绑定,避免残留数据干扰渲染。

节点信息

字段
节点 IDmaterialResetUniforms
分类资产
二级分类材质
分组Material
是否需要等待结果
是否需要先选择目标

输入引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
exe-执行流执行流执行入口-可选
material材质数据cc.Asset / MaterialMaterial 材质
这里需要连接一个已经加载好的 Material 实例。
该端口没有”选择资产”按钮,请先使用以下方式获取 Material 实例:
- 加载资产:把”类型”选为 MATERIAL,从资产包按路径异步加载。
- 获取资产:取出资产包里已加载的 Material。
- 新建材质:创建一个空材质实例,再通过 初始化材质 或 拷贝材质 填充内容。
-必填
clearPasses清空 Pass数据boolean清空 Pass
true:同时清空 pass 实例,下次使用前重新编译(默认推荐);false:只重置 uniform 数据,保留 pass 实例。
开关
默认值:true
必填

输出引脚

引脚 ID名称连接方式值类型用途默认或选择连接要求
out-执行流执行流执行完成-可选
material材质数据cc.Asset / MaterialMaterial 材质(透传)
把当前操作的 Material 实例原样传出,便于将多个配置节点串联在一起。
-可选

使用场景

  • 读取音频时长、图片尺寸、材质参数等资产信息
  • 校验加载结果是否可用
  • 创建或传递特定类型的资产实例

注意事项

  • 适合的工作流类型:component、library、method、function、class。
  • 资产节点通常要求连接已加载的资产实例。
  • 父类 Asset 生命周期能力应优先使用通用资产管理节点。