-
-
Notifications
You must be signed in to change notification settings - Fork 49
INPデータ置換フォーマット
Luna edited this page Sep 3, 2021
·
2 revisions
INP(Inochi Puppet)は、Inochi2Dパペットデータを置換するためのフォーマットです。VRM/gITFと似た形式です。
注意*: Inochi2Dに新しい機能が追加された場合、本フォーマットは変更されることがあります。*
注意*: 数字はビッグエンディアンでエンコードされます。*
長さ(バイト) | コンテンツ | 備考 |
---|---|---|
8 | TRNSRTS\0 |
INPファイルのマジックバイト。INPローダーにそれがINPファイルであることを伝える (Trans Rights!) |
4 | JSONペイロードの長さ | |
ペイロードの長さ | JSONデータ | 全モデルデータを含む内部JSONデータ |
8 | TEX_SECT |
テクスチャセクションヘッダ |
4 | テクスチャカウント | テクスチャセクションに格納されているテクスチャの数量 |
テクスチャブロブの終わりまで | テクスチャブロブ | テクスチャブロブセクションは、パペットのテクスチャIDの後に順序付けられたパペットへのテクスチャブロブを含む |
8 | EXT_ESCT |
(任意)アプリケーションが規定するパペットの設定のための任意のEXTended Vendor Dataセクション |
4 | ペイロードカウント | (EXTが存在する場合)このEXTセクション中のJSONペイロードの数量 |
EXTセクションの終わりまで | EXTセクションブロブ | (EXTが存在する場合)このEXTセクションのEXTセクションブロブ |
テクスチャブロブの各テクスチャのエントリーには以下のエンコーディングがあります。
長さ(バイト) | コンテンツ | 備考 |
---|---|---|
4 | テクスチャペイロードの長さ | |
1 | テクスチャエンコーディングタイプ | 使用されているテクスチャエンコーディングを定義する。テクスチャエンコーディングの項を参照 |
ペイロードの長さ | テクスチャデータ |
長さ(バイト) | コンテンツ | 備考 |
---|---|---|
4 | 名前の長さ | EXTペイロードの名前の長さ |
名前の長さ | 名前 | EXTペイロードの名前 |
4 | ペイロードの長さ | EXTペイロードの長さ |
ペイロードの長さ | ペイロード | EXTペイロードのJSONコンテンツ |
Inochi2Dは次の3種類のテクスチャフォーマットに対応しています。
ID | Format |
---|---|
0 | PNG - ポータブル・ネットワーク・グラフィックス(非可逆圧縮) |
1 | TGA - トゥルーヴィジョン・グラフィックス・アダプター(可逆圧縮) |
2 | BC7 - BPTCテクスチャコンプレッション(非可逆圧縮) |