跳转到内容

Parameter Collector

作用

本目录中的脚本用于采集模型的非PBR贴图参数,配合 EZMenu 实现贴图切换功能。

通过运行脚本,您可以快速获取当前模型的贴图设置参数,并配合 EZMenu 的 non-pbr/SetTextureAdv 功能,将采集到的参数粘贴到 SetTextureAdvParameters 参数框中,从而实现参数的保存。当您通过软件生成脚本后,只需点击对应的菜单项,即可将模型的贴图恢复到保存的参数状态。

使用说明

在运行参数采集脚本之前,请确保每个链接的物件(link prim)在其描述(description)字段中写上一个以 ez: 开头,以;结尾的名字,例如 ez:dengxin;

为什么要这样做?因为脚本会根据这个名字来识别每个链接的物体,并采集其贴图参数。如果没有正确命名,脚本将无法正确识别物体,导致采集失败。

你可以使用脚本文件夹中的 1.AutoPrimTag 脚本来自动为每个链接的物体添加 PrimTag。

参数采集

参数采集脚本在 **2.Parameter Collector (For Non-PBR)**目录中。将这个脚本放入模型中,点击模型,脚本会自动采集模型的贴图参数。采集完成后,脚本会在 Nearby Chat 中输出采集到的参数。 将这些参数复制到 EZMenuSetTextureAdvParameters 属性框中,即可配置完成。

默认采集的是设置好的以下参数:

  • Diffuse
  • Normal
  • Specular
  • Glow
  • Full Bright
  • Tint Color

如果某个Face不需要采集,可以将其Diffuse设置为Default或者Blank贴图,脚本会自动跳过这个Face的采集。

Parameters 目录

如果您不需要采集全部参数,只需部分参数,可以在 Parameters 目录中找到对应的独立脚本。将这些脚本与 ParameterCollector 一起放入模型中,即可仅采集您需要的参数部分。

3. 使用参数

参数采集后,脚本会在 Nearby Chat 中输出采集到的参数,这些参数会以 ==== Parameters Begin ==== 开头,以 ==== Parameters End ==== 结尾。将这些参数复制到 EZMenuSetTextureAdvParameters 属性框中,即可配置完成。

你获取到的参数应该类似这样的格式:

==== Parameters Begin ====
#t|1|0|<1.0, 1.0, 1.0>|1.0;t|1|1|<1.0, 1.0, 1.0>|1.0;t|1|2|<1.0, 1.0, 1.0>|1.0;t|1|3|<1.0, 1.0, 1.0>|1.0;t|1|4|<1.0, 1.0, 1.0>|1.0;t|1|5|<1.0, 1.0, 1.0>|1.0;t|1|6|<1.0, 1.0, 1.0>|1.0;t|1|7|<1.0, 1.0, 1.0>|1.0
#t|2|0|<1.0, 1.0, 1.0>|1.0
#t|3|0|<1.0, 1.0, 1.0>|1.0;t|3|1|<1.0, 1.0, 1.0>|1.0;t|3|2|<1.0, 1.0, 1.0>|1.0;t|3|3|<1.0, 1.0, 1.0>|1.0;t|3|5|<1.0, 1.0, 1.0>|1.0
#t|4|0|<1.0, 1.0, 1.0>|1.0
#t|5|0|<1.0, 1.0, 1.0>|1.0
==== Parameters End ====

relationship

如果你得到的参数不是我这样的格式,每一行不是以 # 开头,而是每一行都有消息的时间和名字的话,类似这样:

[04:47] YUSR-Hexagonal wooden palace lantern-01: #d|0|0|a7b3c9d2e4f5g6h7i8j9k0l1m2n3o4p|<1.0, 1.0, 0.0>|ZV|0.0;d|0|1|q1w2e3r4t5y6u7i8o9p0a1s2d3f|<1.0, 1.0, 0.0>|ZV|0.0;d|0|2|z9x8c7v6b5n4m3l2k1j0h9g8f7|<1.0, 1.0, 0.0>|ZV|0.0
[04:47] YUSR-Hexagonal wooden palace lantern-01: #n|0|0|p0o9i8u7y6t5r4e3w2q1a2s3d4f|<1.0, 1.0, 0.0>|ZV|0.0;n|0|1|g5h6j7k8l9m0n1b2v3c4x5z6a7|<1.0, 1.0, 0.0>|ZV|0.0;n|0|2|NK|<1.0, 1.0, 0.0>|ZV|0.0
[04:47] YUSR-Hexagonal wooden palace lantern-01: #s|0|0|m8n9b0v1c2x3z4a5s6d7f8g9h0|<1.0, 1.0, 0.0>|ZV|0.0|<1.0, 1.0, 1.0>|51|0;s|0|1|j1k2l3m4n5b6v7c8x9z0a1s2|<1.0, 1.0, 0.0>|ZV|0.0|<1.0, 1.0, 1.0>|51|0;s|0|2|NK|<1.0, 1.0, 0.0>|ZV|0.0|<1.0, 1.0, 1.0>|51|0
[04:47] YUSR-Hexagonal wooden palace lantern-01: #g|0|0|0.0;g|0|1|0.0;g|0|2|0.0
[04:47] YUSR-Hexagonal wooden palace lantern-01: #f|0|0|0;f|0|1|0;f|0|2|0
[04:47] YUSR-Hexagonal wooden palace lantern-01: #t|0|0|<1.0, 1.0, 1.0>|1.0;t|0|1|<1.0, 1.0, 1.0>|1.0;t|0|2|<1.0, 0.9, 0.8>|0.7

那么你需要到FireStorm的设置里面更改一下聊天记录风格(假如你是用FireStorm的话)。

relationship

请将这个Use V1 style chat headers的勾去掉。

否则采集到的参数会有时间和模型名字,导致无法正确识别。

4. 使用 EZMenu

EZMenuSetTextureAdv 节点放入模型中,将 Parameters 属性框中填入采集到的参数即可。

relationship


注意事项

  • PrimTag优先:务必在运行参数采集脚本前完成 link prim 的 PrimTag 工作。如果采集参数后再修改 PrimTag,可能会导致参数无法正确映射到对应的物件从而无法正常工作。
  • 兼容性:脚本设计时已考虑了 description 字段中可能存在的其他信息,不会与其他功能脚本使用description属性冲突。
EZMenu

© 2025 EZMenu. All Rights Reserved.

Power by LiteGraph.js | Electron | Astro Starlight