发布与展示馆收录

zip 压缩包结构规范、官方展示馆收录申请流程、审核基准、版本维护与开源许可政策。

zip 压缩包结构与格式约束

向用户分发着色器包或申请收录进官方展示馆时,必须打包为 .zip 格式。MMDX12 安装管理器在导入时执行严格的安全校验:

压缩包内部结构

压缩包内可包含一个顶层文件夹 <id>/ 并将所有文件置于其内,亦可直接将文件置于压缩包根目录下:

my_pack.zip
└── my_pack/
    ├── pack.json
    ├── surface.hlsl
    ├── preview.png (可选)
    ├── README.md (可选)
    └── LICENSE (可选)

文件规则

  • 允许的扩展名:pack.json、*.hlsl、*.hlsli、*.png、*.jpg、*.jpeg、*.md、*.txt、LICENSE*。
  • 禁止包含项:严禁包含任何符号链接、可执行二进制文件(.exe、.dll 等)或未知文件类型。一旦发现非法文件,安装程序将立即拒绝安装。
  • 文件体积与数量限制:解压后总容量不得超过 32 MB,总文件数量不超过 200 个。

提交收录至官方展示馆

若希望将着色器包收录进 MMDX12 软件内置展示馆与 Web 索引(https://mmdx.codingbot.kr/shader-packs/):

  1. 前往 MMDX12 GitHub Issues 页面。
  2. 提交新 Issue,标题采用 Shader pack: <着色器包名称> 格式。
  3. 在 Issue 正文中附带以下信息:
    • 打包好的 .zip 文件附件(或公开代码仓库链接)
    • 前后对比截图(MMD 默认着色对比着色器包渲染效果)
    • 明确的开源再分发许可协议(如 MIT、Apache-2.0、CC-BY 等)
    • 适用模型说明与推荐参数配置建议

维护者审核基准

所有申请入馆的着色器包均须满足以下审核要求:

  1. 编译测试:必须通过 pack_check.exe <pack.zip> --compile 校验,退出代码为 0 且无任何报错。
  2. 版权与许可合规:
    • 许可协议必须允许公开再分发。
    • 严禁未经授权抄袭、盗用第三方受版权保护的代码或商用资产。
  3. 预览图规格:preview.png 或 preview.jpg 需符合 16:9 宽屏比例(推荐 1280x720 或 1920x1080)。
  4. 多语言清单:鼓励在 name、description、recommendedFor 及参数 label 中尽可能完善各语言翻译(ko、en、ja、zh)。
  5. GPU 性能开销:
    • 着色器仅在 GPU 端执行,无文件系统或网络访问权限。
    • 严禁编写可能导致显卡死锁的无界循环,确保代码轻量、稳定,避免帧率剧烈波动。

版本演进与自动更新

  • 语义化版本号:每次更新着色器代码或调整清单后,请相应递增 pack.json 中的 version 字段(如 1.0.0 升至 1.0.1)。
  • 展示馆版本索引:官方展示馆为每个版本生成独立的 ZIP 压缩包与 SHA-256 校验码,并记入 index.json。
  • 软件内更新提示:用户的 MMDX12 软件在启动与检查更新时会对比本地与云端版本号。一旦发现新版,卡片上会自动亮起**更新(업데이트)**按钮。