配布とギャラリー掲載
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など)、許可外の拡張子が含まれる場合、インストーラーは即座に導入を拒否します。 - 容量およびファイル数: 解凍後総容量 32MB 以下、総ファイル数 200 個以内。
公式ギャラリーへの掲載申請
MMDX12 公式オンラインギャラリー(https://mmdx.codingbot.kr/shader-packs/)への掲載を希望する場合、GitHub Issue から申請します:
- MMDX12 GitHub Issues を開きます。
- タイトルを
Shader pack: <パック名>とした新規 Issue を作成します。 - 本文に以下の内容を記載します:
- 完成した
.zipアーカイブの添付(または公開リポジトリの URL) - 適用前後の比較スクリーンショット(MMD 標準シェーディングとの比較)
- 明確な再配布ライセンス(MIT、Apache-2.0、CC-BY 等)
- 推奨モデルやパラメータ設定の案内
- 完成した
メンテナーによる審査基準
掲載前に以下の項目について審査が行われます:
- コンパイル検証:
pack_check.exe <pack.zip> --compileを実行し、終了コード 0 でエラーなく通過すること。 - ライセンスと権利関係:
- オープンな再配布を認めるライセンスであること。
- 第三者のシェーダーコードや商用アセットを無断転載・剽窃していないこと。
- プレビュー画像サイズ:
preview.pngまたはpreview.jpgはアスペクト比 16:9(1280x720 や 1920x1080)であること。 - 多言語マニフェスト:
name、description、recommendedFor、パラメータlabelに可能な限り多言語(ko,en,ja,zh)の翻訳を用意することを推奨します。 - GPU 負荷と安全性:
- シェーダーは GPU 上でのみ動作するため、ローカルファイルやネットワークへのアクセスはできません。
- ただし、過剰な無限ループなどはフレームレート低下を招くため、ループ回数は適切に制限してください。
バージョン管理と自動更新
- セマンティックバージョニング: パックの修正や機能追加を行うたびに、
pack.jsonのversionを引き上げてください(例:1.0.0から1.0.1)。 - ギャラリー配布: 公式ギャラリーでは各バージョンを個別の ZIP ファイルとして保持し、
index.jsonに SHA-256 チェックサムを記録します。 - アプリ内更新案内: MMDX12 はインデックスを照合し、インストール済みより新しいバージョンが公開されている場合に自動で「업데이트(アップデート)」ボタンを表示します。