calibrate-model について
アプリ内で GLB モデルを一貫して配置するためのキャリブレーションスキルです。アセットごとに計測した境界、目標サイズ、スケール、位置、向きを記録し、アニメーションモデルや支持点の扱いも示します。
主な機能
- 01GLB を一度ずつ計測
- 02アセットごとの調整値を記録
- 03スケールと垂直オフセットを算出
- 04アプリ内で向きを確認
- 05ルート、ヨー、表示変換をネスト
- 06アニメーション中の接触を確認
活用シーン
- 01実寸または相対寸法に合わせたモデル調整
- 02計測済みの支持点にモデルを一貫して配置
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ playcanvas/ skills --skill calibrate-modelインストール後、Claude Code で/calibrate-modelを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/direct-engine.mdreact.mdweb-components.md詳細
モデルのキャリブレーション
inspect-glb で固有の各 GLB を一度だけ測定し、boundsSource が
vertices の場合に限りバウンディングボックスを信頼して、アセットごとに調整記録を 1 つ保持します。
const ASSET_TUNING = {
model: {
boundsSource: 'vertices', dims: [8, 7, 18], center: [0, 2.5, 0], groundOffset: 1,
intended: { dimension: 'length', size: 18 }, scale: 1, y: 1, yaw: 180
}
} as const;
- モデルの実寸を定義する寸法を選びます。単位はメートル、またはキャリブレーション済みのモデルに対する相対値とします。
scale = intendedSize / measuredDimensionを設定します。床に置くモデルでは、y = groundOffset * scaleとします。床に接地させないモデルには、意図的なオフセットを記録します。- 起動中のアプリで向きを一度確認し、
yawを記録します。
3 階層にネストし、どのアセットでもルート位置が同じ意味になるようにします。セマンティックルート、ヨー回転のラッパー、次にスケールとローカル位置 (-center.x * scale, y, -center.z * scale) を設定したビジュアル子要素の順にします。キャリブレーションは一度だけ適用し、インスタンスごとには適用しないでください。
ルートは、グローバルな AABB の最大値ではなく、マウントポイントやレイキャストなど、測定された支持点に配置します。スキン付きモデルのバウンディングボックスはバインドポーズの推定値です。アニメーション中のポーズで接地を確認してください。
コードに対応するリファレンスだけを参照してください。直接 Engine を使う場合、React、または Web Components。
コメント
Markdown 対応