SuperAPI AI 工具集

unity-material

设计与创作

查看项目

更新于 10-15 18:45

技能介绍

这是 Unity 编辑器内的材质处理技能模块,用于在不同渲染管线(Built-in/URP/HDRP)下编辑材质与 Shader 属性。

用途:调整物体外观、修改材质参数、切换 Shader。操作 2 个及以上对象或材质时应优先使用 *_batch 批量技能。

主要能力:material_create / _batch 创建材质(自动识别管线,savePath 支持 Assets/... 或本地包目录,只读包会被拒绝);material_assign / _batch 把材质资产赋给对象渲染器;material_set_color(0-1 范围,支持 HDR intensity)、material_set_colors_batch、material_set_emission / _batch(可自动开启 _EMISSION);material_set_texture、_texture_offset、_texture_scale;material_set_float / _int / _vector / _keyword / _shader / _render_queue / _gi_flags;material_get_properties、material_get_keywords 用于查询;material_duplicate 复制材质。

使用方式:调用前应先取得参数定义(如 GET /skills/recommend?includeSchema=true),不要凭名称猜参数。默认 Approval 模式下所有写操作需用户授权,授权后服务端单次执行;查询技能为 SemiAuto,无需授权。示例命令:material_create(name="Red", savePath="Assets/Materials")、material_set_color(path="Assets/Materials/Red.mat", r=1, g=0, b=0)、material_assign(name="Cube", materialPath="Assets/Materials/Red.mat")。

限制与注意:不存在 material_set_metallic/smoothness,应改用 material_set_float 并设置 _Metallic 与 _Glossiness(Standard)或 _Smoothness(URP);不存在 material_set_property 和 material_get_color。按 GameObject 定位实际写入的是材质资产而非单个物体实例,使用 sharedMaterial,新建图元共用 Default-Material 时改色会影响全项目;建议先 create、按路径改色再 assign。material_get_properties 的 properties 为 colors/floats/vectors/textures/integers 分组;materialPath 为空表示内置材质或嵌入其他资产的材质,无法按路径回填。批量中某项失败会整体回滚。本模块不含删除、PlayMode、Reload 等高危技能,删除材质需调用 asset 模块。管道相关属性名差异需查看兼容表。