SuperAPI AI 工具集

simready-foundation-conform-fet-006-openpbr

智能体与模型

查看项目

更新于 10-16 07:24

技能介绍

用途:当所选 profile、验证报告或用户请求指明 FET_006_OPENPBR 时,使用该技能在材质上添加或修复 OpenPBR 最终表面,且不改动 UsdPreviewSurface 预览(FET_006_STANDARD)与 MDL 表面(FET_006_MDL)。未指定版本时默认 FET_006_OPENPBR@0.1.0;报告指向其它 FET_###_RUNTIME 时应改用对应技能。

权威资料:修改前先读 nv_core/tiers/simready_foundation_tier_core/simready/foundation/tier_core/features/FET_006_OPENPBR-0.1.0.json(需求 ID 以 JSON 清单为准)与同名 .md(契约细节、需求链接、样例与基准)。0.1.0 依赖为无,需求含 com.nvidia.usd.VM.BIND.001/002、VM.MAT.001、VM.PBR.001/002/003、VM.TEX.001/004。

用法:捆绑脚本 assets/scripts/migrate_to_openpbr.py 会从材质已有的 UsdPreviewSurface、MDL 表面或两者派生 OpenPBR 表面,仅识别 OmniPBR、OmniGlass、SimPBR、SimPBR_Translucent 四种 MDL 模型,其它模型只报告不改动。常用命令:python migrate_to_openpbr.py <path> --verify(只报告一致性,不写入);--dry-run(只报告将写入的内容);不带参数(迁移并携带纹理);--no-textures(把纹理驱动通道压平为常量);--shared-materials migrate(同时写入资产外共享材质所在图层)。路径可为 USD 文件或目录,脚本需要 USD Python(pip install usd-core)。

主要能力:默认按 OpenPBR nodedef 单输出 out 连接 OpenPBR_Shader.outputs:out;为纹理输入编写 MaterialX 读取节点(ND_texcoord_vector2、ND_tiledimage_color3/float/vector3、ND_separate3_vector3、ND_normalmap_float);打包贴图(ORM)读到一次、拆分一次;映射范围受 VM.PBR.002 约束,越界值会被裁剪。

适用场景:SimReady 材质的 OpenPBR 一致性迁移与修复,包括跨变体(--variants selected/all)、共享材质库的受控迁移。

限制:只重写脚本自己创建的表面;已在其它 prim 名下存在 OpenPBR 表面、或 OpenPBR_Shader 名上已有它类表面时报告 CONFLICT 并保留原样,需手工处理。共享材质默认跳过。重跑会重写二进制图层、文件哈希改变,应比较压平后的 USD 而非哈希。geometry_normal 无常量形式,压平运行时不写入。SimPBR 的 emissive_color、emissive_intensity 与透明度输入须按其布尔开关判断是否迁移;coat 需依 SimPBR 语义设置 coat_darkening 为 0。其它未在资料中说明的细节暂未提供。