制作画面の「自分の3Dモデルを使う」から、GLBと同じ名前のJSONを一緒に選びます。モデルはこのブラウザ内に保存され、スロットから参照できます。別の端末では同じファイルを再追加してください。
blade_needle.glb / blade_needle.json:軸スキン(性能固定)topping_shell.glb / topping_shell.json:具材(質量・重心・素材が性能に反映)stage_statue.glb / stage_statue.json:ステージ外周の装飾{
"name": "自作ホタテ",
"mass": 18,
"centerOfMass": {"x": 0, "y": 0, "z": 0},
"collider": {"type": "circle", "radius": 7},
"material": {"roughness": 0.45, "restitution": 0.3, "attack": 1.2},
"size": 18,
"rotation": [0, 0, 0]
}massはg、重心はピザの512×512座標系、sizeは表示サイズ、rotationはラジアン。凸包は "collider":{"type":"convex","points":[[-6,-4],[6,-4],[0,7]]} のように頂点を外周順に指定します。判定は3Dメッシュと別の2D形状です。軸の質量や攻撃補正は無視し、ステータスはピザ側だけで決めます。
BlenderなどからGLB 2.0として画像も埋め込み、Yが上向きの静的メッシュとして書き出してください。アニメーション・スキニング・Draco/外部画像は非対応。20MB以内、3万ポリゴン以下を推奨。3万超は警告、10万超は標準表示に戻します。失敗しても試合は続きます。
dist/assets/models/ にGLBとJSONを置き、manifest.jsonのmodelsに拡張子なしの名前を追加して再公開します。同じ名前のファイルを差し替えると、次のページ読み込みで新しい見た目と設定を使います。
{"models":["blade_needle","topping_shell","stage_statue"]}