使用指南
资产 / 着色器 / EffectAsset节点
资产 / 着色器 / EffectAsset 节点手册,包含 15 个节点的用途、引脚、使用场景和注意事项。
学习目标
读取和验证 Cocos 资产对象,把图片、音频、材质、Prefab 等资源接入工作流逻辑。
覆盖范围
- 节点数量:15
- 分类路径:资产 / 着色器 / EffectAsset
典型使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
通用注意事项
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
节点索引
| 节点 | 节点 ID | 输入/输出 | 执行方式 |
|---|---|---|---|
| 初始化默认 Effect | effectAssetInitDefault | 3 / 2 | 立即继续 |
| 获取 Combinations | effectAssetGetCombinations | 1 / 1 | 立即继续 |
| 获取 Shaders | effectAssetGetShaders | 1 / 1 | 立即继续 |
| 获取 Techniques | effectAssetGetTechniques | 1 / 1 | 立即继续 |
| 获取编辑器可见性 | effectAssetGetHideInEditor | 1 / 1 | 立即继续 |
| 获取内置 Effect | effectAssetGetBuiltin | 1 / 1 | 立即继续 |
| 获取全部内置 Effect | effectAssetGetAllBuiltins | 0 / 1 | 立即继续 |
| 获取所有属性 | effectAssetGetProperties | 1 / 5 | 立即继续 |
| 设置 Combinations | effectAssetSetCombinations | 3 / 2 | 立即继续 |
| 设置 Shaders | effectAssetSetShaders | 3 / 2 | 立即继续 |
| 设置 Techniques | effectAssetSetTechniques | 3 / 2 | 立即继续 |
| 设置编辑器可见性 | effectAssetSetHideInEditor | 3 / 2 | 立即继续 |
| 设置所有属性 | effectAssetSetProperties | 6 / 2 | 立即继续 |
| 校验 EffectAsset | effectAssetValidate | 1 / 1 | 立即继续 |
| 新建效果资产 | effectAssetCreate | 1 / 2 | 立即继续 |
初始化默认 Effect
调用 initDefault(uuid?),将目标 EffectAsset 整体重置为内置默认效果(默认为 builtin-unlit)。 注意:这是整体重置操作——会覆盖目标 effect 的 name、shaders、combinations、techniques 等全部数据,不是局部补齐。 若需指定其他内置 effect,可通过 builtinUuid 端口传入对应 uuid 字符串;空字符串时沿用默认行为(初始化为 builtin-unlit)。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetInitDefault |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产 这里需要连接一个已经加载好的 EffectAsset 实例。 EffectAsset 是材质和渲染效果的模板资产,描述了 shader、pass 技术与宏定义组合。 该端口没有”选择资产”按钮,请先使用以下方式获取实例: - 加载资产:把”类型”选为 EFFECT_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 EffectAsset。 - 新建效果资产:创建一个空实例。 - 获取内置 Effect:按名称从全局注册表查找。 | - | 必填 |
builtinUuid | 内置 UUID | 数据 | string | 内置 Effect UUID 可选参数。传入要初始化的内置 effect uuid 字符串;空字符串时沿用默认行为,即初始化为 builtin-unlit。 | 输入框 默认值:"" | 可选 默认隐藏 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产(透传) 把当前操作的 EffectAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取 Combinations
读出 EffectAsset 的 combinations 数组——宏定义组合的原始字典数组。 首版仅支持整体读取/整体替换,不支持字段级可视化编辑。该数据通常来自高级配置或调试链路,普通业务场景可能不需要直接操作 combinations。 每个元素为 IPreCompileInfo(动态 key 字典),首版以 OBJECT[] 建模。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetGetCombinations |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产 这里需要连接一个已经加载好的 EffectAsset 实例。 EffectAsset 是材质和渲染效果的模板资产,描述了 shader、pass 技术与宏定义组合。 该端口没有”选择资产”按钮,请先使用以下方式获取实例: - 加载资产:把”类型”选为 EFFECT_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 EffectAsset。 - 新建效果资产:创建一个空实例。 - 获取内置 Effect:按名称从全局注册表查找。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
combinations | 宏定义组合 | 数据 | object / array | 宏定义组合 宏定义组合的原始字典数组。首版仅支持整体读取/整体替换,不支持字段级可视化编辑。通常来自高级配置或调试链路。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取 Shaders
读出 EffectAsset 的 shaders 数组,每个元素为 IShaderInfo 结构体,描述 effect 实际使用的 shader 配置清单。 输出类型为 IShaderInfo[](STRUCT 数组),可连接到 解构结构体 节点进一步读取 name、hash、attributes 等字段。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetGetShaders |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产 这里需要连接一个已经加载好的 EffectAsset 实例。 EffectAsset 是材质和渲染效果的模板资产,描述了 shader、pass 技术与宏定义组合。 该端口没有”选择资产”按钮,请先使用以下方式获取实例: - 加载资产:把”类型”选为 EFFECT_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 EffectAsset。 - 新建效果资产:创建一个空实例。 - 获取内置 Effect:按名称从全局注册表查找。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
shaders | 着色器列表 | 数据 | struct / array / IShaderInfo | 着色器列表 描述 effect 实际使用的 shader 配置清单的结构体数组。每个 IShaderInfo 包含 name、hash、attributes、defines 等信息。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取 Techniques
读出 EffectAsset 的 techniques 数组,每个元素为 ITechniqueInfo 结构体,描述 effect 的 pass 技术组织。 输出类型为 ITechniqueInfo[](STRUCT 数组),可连接到 解构结构体 节点进一步读取 passes 与 name。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetGetTechniques |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产 这里需要连接一个已经加载好的 EffectAsset 实例。 EffectAsset 是材质和渲染效果的模板资产,描述了 shader、pass 技术与宏定义组合。 该端口没有”选择资产”按钮,请先使用以下方式获取实例: - 加载资产:把”类型”选为 EFFECT_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 EffectAsset。 - 新建效果资产:创建一个空实例。 - 获取内置 Effect:按名称从全局注册表查找。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
techniques | 技术列表 | 数据 | struct / array / ITechniqueInfo | 技术列表 描述 effect 的 pass 技术组织的结构体数组。每个 ITechniqueInfo 包含 passes 列表与可选的技术名称。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取编辑器可见性
读出 EffectAsset 的 hideInEditor 布尔值:true 表示该 effect 在编辑器材质选择器中被隐藏,false 表示正常显示。 这是一个编辑器可见性标志,不影响游戏运行时渲染行为。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetGetHideInEditor |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产 这里需要连接一个已经加载好的 EffectAsset 实例。 EffectAsset 是材质和渲染效果的模板资产,描述了 shader、pass 技术与宏定义组合。 该端口没有”选择资产”按钮,请先使用以下方式获取实例: - 加载资产:把”类型”选为 EFFECT_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 EffectAsset。 - 新建效果资产:创建一个空实例。 - 获取内置 Effect:按名称从全局注册表查找。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
hideInEditor | 编辑器隐藏 | 数据 | boolean | 编辑器隐藏标志 true:该 effect 在编辑器材质选择器中被隐藏;false:正常显示。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取内置 Effect
从全局 EffectAsset 注册表中按名称查找已注册的内置 effect。 该查询先按注册名查找,找不到时引擎会继续按 uuid 查找。默认值 builtin-unlit 是最常用的内置 effect。 输出找到的 EffectAsset 实例;若注册表中无匹配项则输出 null。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetGetBuiltin |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
name | 名称 | 数据 | string | Effect 名称 全局注册表中的 effect 名称或资产 uuid。优先按名称查找,找不到时引擎会继续按 uuid 查找。常用值:builtin-unlit、builtin-standard、builtin-sprite。 | 输入框 默认值:“builtin-unlit” | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 实例 从注册表中找到的内置 effect;未匹配时为 null。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取全部内置 Effect
读出全局 EffectAsset 注册表的完整快照,输出为 Record<string, EffectAsset> 形式的对象。 该节点偏高级能力,适合调试、注册表遍历、批量检查。首版以 OBJECT 类型建模,不提供字典编辑器。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetGetAllBuiltins |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
无。
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
allEffects | 全部 Effect | 数据 | object | 全部内置 Effect Record<string, EffectAsset> 形式的注册表快照。不提供字典编辑器,仅供调试、枚举与高级脚本处理。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
获取所有属性
一次性读出 EffectAsset 的全部常用属性:techniques、shaders、combinations、hideInEditor 与 isValid。等同于连接多个 获取类节点,但只用一个节点即可。 适合需要同时读取多个属性的场景,例如调试面板、批量比较、序列化预览。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetGetProperties |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产 这里需要连接一个已经加载好的 EffectAsset 实例。 EffectAsset 是材质和渲染效果的模板资产,描述了 shader、pass 技术与宏定义组合。 该端口没有”选择资产”按钮,请先使用以下方式获取实例: - 加载资产:把”类型”选为 EFFECT_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 EffectAsset。 - 新建效果资产:创建一个空实例。 - 获取内置 Effect:按名称从全局注册表查找。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
techniques | 技术列表 | 数据 | struct / array / ITechniqueInfo | 技术列表 effect 的 ITechniqueInfo 结构体数组。 | - | 可选 |
shaders | 着色器列表 | 数据 | struct / array / IShaderInfo | 着色器列表 effect 的 IShaderInfo 结构体数组。 | - | 可选 |
combinations | 宏定义组合 | 数据 | object / array | 宏定义组合 IPreCompileInfo 字典数组。 | - | 可选 |
hideInEditor | 编辑器隐藏 | 数据 | boolean | 编辑器隐藏标志 true:隐藏;false:可见。 | - | 可选 |
isValid | 是否有效 | 数据 | boolean | 是否有效 true:EffectAsset 合法可用;false:无效。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置 Combinations
整体替换 EffectAsset 的 combinations 数组。输入为 OBJECT[](IPreCompileInfo 字典数组)。 执行后目标 effect 的 combinations 将被输入值完全覆盖。该操作通常用于高级配置或调试场景。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetSetCombinations |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产 这里需要连接一个已经加载好的 EffectAsset 实例。 EffectAsset 是材质和渲染效果的模板资产,描述了 shader、pass 技术与宏定义组合。 该端口没有”选择资产”按钮,请先使用以下方式获取实例: - 加载资产:把”类型”选为 EFFECT_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 EffectAsset。 - 新建效果资产:创建一个空实例。 - 获取内置 Effect:按名称从全局注册表查找。 | - | 必填 |
combinations | 宏定义组合 | 数据 | object / array | 宏定义组合 要写入的 IPreCompileInfo 字典数组。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产(透传) 把当前操作的 EffectAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置 Shaders
整体替换 EffectAsset 的 shaders 数组。输入为 IShaderInfo[] 结构体数组。 执行后目标 effect 的 shaders 将被输入值完全覆盖。该操作通常配合 techniques 一起使用,确保 pass 引用的 shader 索引与新数组匹配。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetSetShaders |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产 这里需要连接一个已经加载好的 EffectAsset 实例。 EffectAsset 是材质和渲染效果的模板资产,描述了 shader、pass 技术与宏定义组合。 该端口没有”选择资产”按钮,请先使用以下方式获取实例: - 加载资产:把”类型”选为 EFFECT_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 EffectAsset。 - 新建效果资产:创建一个空实例。 - 获取内置 Effect:按名称从全局注册表查找。 | - | 必填 |
shaders | 着色器列表 | 数据 | struct / array / IShaderInfo | 着色器列表 要写入的 IShaderInfo 结构体数组。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产(透传) 把当前操作的 EffectAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置 Techniques
整体替换 EffectAsset 的 techniques 数组。输入为 ITechniqueInfo[] 结构体数组。 执行后目标 effect 的 techniques 将被输入值完全覆盖。请确保输入数据结构完整(每个 ITechniqueInfo 包含有效的 passes 列表)。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetSetTechniques |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产 这里需要连接一个已经加载好的 EffectAsset 实例。 EffectAsset 是材质和渲染效果的模板资产,描述了 shader、pass 技术与宏定义组合。 该端口没有”选择资产”按钮,请先使用以下方式获取实例: - 加载资产:把”类型”选为 EFFECT_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 EffectAsset。 - 新建效果资产:创建一个空实例。 - 获取内置 Effect:按名称从全局注册表查找。 | - | 必填 |
techniques | 技术列表 | 数据 | struct / array / ITechniqueInfo | 技术列表 要写入的 ITechniqueInfo 结构体数组。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产(透传) 把当前操作的 EffectAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置编辑器可见性
设置 EffectAsset 的 hideInEditor 布尔值。设为 true 将在编辑器材质选择器中隐藏该 effect。 这是一个编辑器可见性标志,不影响游戏运行时渲染行为。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetSetHideInEditor |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产 这里需要连接一个已经加载好的 EffectAsset 实例。 EffectAsset 是材质和渲染效果的模板资产,描述了 shader、pass 技术与宏定义组合。 该端口没有”选择资产”按钮,请先使用以下方式获取实例: - 加载资产:把”类型”选为 EFFECT_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 EffectAsset。 - 新建效果资产:创建一个空实例。 - 获取内置 Effect:按名称从全局注册表查找。 | - | 必填 |
hideInEditor | 编辑器隐藏 | 数据 | boolean | 编辑器隐藏标志 true:在编辑器材质选择器中隐藏;false:正常显示。 | 开关 默认值:false | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产(透传) 把当前操作的 EffectAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
设置所有属性
批量修改 EffectAsset 的常用属性:techniques、shaders、combinations 与 hideInEditor。 遵循公开引脚语义:除 exe 与 effectAsset 外,其余可写输入默认 isPublic: false——只有被显式公开(连线或配置 isPublic: true)的引脚才参与编译期保留与游戏运行时写入。 适合需要在一个节点中快速修改多个属性的场景。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetSetProperties |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产 这里需要连接一个已经加载好的 EffectAsset 实例。 EffectAsset 是材质和渲染效果的模板资产,描述了 shader、pass 技术与宏定义组合。 该端口没有”选择资产”按钮,请先使用以下方式获取实例: - 加载资产:把”类型”选为 EFFECT_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 EffectAsset。 - 新建效果资产:创建一个空实例。 - 获取内置 Effect:按名称从全局注册表查找。 | - | 必填 |
techniques | 技术列表 | 数据 | struct / array / ITechniqueInfo | 技术列表 要写入的 ITechniqueInfo 结构体数组。默认不公开,需显式连线或配置后才参与游戏运行时写入。 | - | 可选 默认隐藏 |
shaders | 着色器列表 | 数据 | struct / array / IShaderInfo | 着色器列表 要写入的 IShaderInfo 结构体数组。默认不公开。 | - | 可选 默认隐藏 |
combinations | 宏定义组合 | 数据 | object / array | 宏定义组合 要写入的 IPreCompileInfo 字典数组。默认不公开。 | - | 可选 默认隐藏 |
hideInEditor | 编辑器隐藏 | 数据 | boolean | 编辑器隐藏标志 默认不公开。 | 开关 默认值:false | 可选 默认隐藏 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产(透传) 把当前操作的 EffectAsset 实例原样传出,便于将多个配置节点串联在一起。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
校验 EffectAsset
调用 validate() 语义,输出一个 BOOLEAN 值表示当前 EffectAsset 是否为合法可用状态。 常用于条件分支判断:加载后先校验再继续后续材质配置流程。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetValidate |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 效果资产 这里需要连接一个已经加载好的 EffectAsset 实例。 EffectAsset 是材质和渲染效果的模板资产,描述了 shader、pass 技术与宏定义组合。 该端口没有”选择资产”按钮,请先使用以下方式获取实例: - 加载资产:把”类型”选为 EFFECT_ASSET,从资产包按路径异步加载。 - 获取资产:取出资产包里已加载的 EffectAsset。 - 新建效果资产:创建一个空实例。 - 获取内置 Effect:按名称从全局注册表查找。 | - | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
isValid | 是否有效 | 数据 | boolean | 是否有效 true:EffectAsset 处于合法可用状态;false:无效或数据不完整。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。
新建效果资产
在游戏运行时创建一个全新的空 EffectAsset 实例,初始 techniques、shaders、combinations 均为空数组。 若要加载已有效果资产,请改用 加载资产(类型选 EFFECT_ASSET);若要获取引擎内置 effect,请使用 获取内置 Effect。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | effectAssetCreate |
| 分类 | 资产 |
| 二级分类 | 着色器 |
| 分组 | EffectAsset |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 执行入口 | - | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
out | - | 执行流 | 执行流 | 执行完成 | - | 可选 |
effectAsset | 效果资产 | 数据 | cc.Asset / EffectAsset | EffectAsset 实例 新建的空效果资产实例。连接到后续节点继续配置。 | - | 可选 |
使用场景
- 读取音频时长、图片尺寸、材质参数等资产信息
- 校验加载结果是否可用
- 创建或传递特定类型的资产实例
注意事项
- 适合的工作流类型:component、library、method、function、class。
- 资产节点通常要求连接已加载的资产实例。
- 父类 Asset 生命周期能力应优先使用通用资产管理节点。