coffeecup_3をUnityへ。スキャンモデルに命を吹き込む
LOG85R2R2R2026/3/10

coffeecup_3をUnityへ。スキャンモデルに命を吹き込む

LOG84でスキャン精度が最も高いと確認した coffeecup_3(カップを回す撮影方式)を、いよいよUnityにインポートした。 単にファイルを入れるだけでなく、スケール合わせ・Collider構築・Rigidbody設定まで一気に完了し、Prefab化まで持っていった。

※注釈:デジタルツイン学習(R2R2R)の検証プロセス 本プロジェクトは、AIの判断を物理的動作へ変換する設計を検証するものです。現実空間をデジタルツイン化し、仮想空間での大量試行(Real-to-Render)から得た最適解を、実世界のモーター駆動(to-Real)へ還元する「R2R2Rパイプライン」の実装過程を記録・考察します。

作業ログ

VCS Check-in(Changeset 7)

作業開始前のCheck-inは鉄則。LOG83のgit clean災害以来、この手順は絶対に省かない。

3DpressoからFBXをダウンロード

3Dpresso上でcoffeecup_3を確認。エクスポート設定は以下:

  • File Format:FBX(OBJではなくFBXを選択)

  • Level of Detail:High

  • Texture Resolution:4k

OBJとFBXの違いを改めて整理すると、OBJはテクスチャが別ファイルに分離され、軸方向の情報も持たない。FBXはメッシュ・マテリアル・テクスチャが1ファイルにまとまり、Unityが軸方向を正しく解釈しやすい。Collider構築まで行うことを考えるとFBX一択だった。

Unityへインポート

Assets/Models/CoffeeCup/ フォルダを新規作成してFBXをドラッグ&ドロップ。 Import Settingsで以下を確認:

  • Read/Write Enabled:ON

  • Generate Colliders:OFF

Applyして設定を保存。

スケール合わせ

デフォルトのScale 100では画面を埋め尽くす巨大なカップが出現。

実寸からScaleを計算した:

  • kobachi_2の実寸 = 105mm、Scale = 2.9

  • 1 Scale単位 ≈ 0.036m

  • coffeecup_3の目標高さ = 85mm = 0.085m

  • 0.085 ÷ 0.036 ≈ 2.36

最終的なTransform設定:

X

Y

Z

Rotation

-90

0

0

Scale

2.36

2.36

2.36

Rotation Z が 60 になるケースもあったが、これは3Dpressoのスキャンデータ自体の微妙な傾きをUnityが自動補正した結果。意図的なものとして確認・許容した。

Collider構築

当初の計画はMeshCollider Convex + BoxCollider × 3(取っ手の穴を囲む)だったが、Scale 2.36 + Rotation X -90 の座標変換が絡み、BoxColliderの手動調整が想定より複雑になった。

設計思想に立ち返った:

精度より体験の成立を優先する。精度はあとからお金で解決できる。

PickAndPlaceの動作確認が目的であれば、MeshCollider Convexのみでカップ本体の把持は機能する。取っ手の穴を精密に再現するColliderは、実際に問題が出た時に対処すれば十分という判断でBoxColliderは削除した。

最終的なCollider構成:

  • MeshCollider(Convex:ON)のみ

Rigidbody追加

  • Mass:0.15kg

  • Use Gravity:ON

  • Automatic Center Of Mass:ON

Play着地確認

Playボタンを押してcoffeecupがPlane上に正常着地することを確認。転倒もなく安定。✅

VCS Check-in(Changeset 8・9)

作業区切りごとにCheck-in。Changeset 8でCollider・Rigidbody設定、Changeset 9でPrefab化を記録。

Prefab化

Assets/Prefabs/coffeecup_3.prefab として保存。HierarchyからPrefabsフォルダへのドラッグ&ドロップで完了。Scale・Rotation・Collider・Rigidbodyすべての設定が保持されている。

今日の学び

FBX vs OBJ の使い分け Unityへのインポートには迷わずFBX。軸方向・スケール情報・テクスチャの統合という3点でOBJより確実。

Scaleと座標系の罠 3DpressoのFBXはデフォルトでScale 100相当でエクスポートされることがある。実寸から逆算してScaleを決める習慣が重要。

BoxColliderは「問題が出てから」 完璧なColliderを最初から作ろうとすると時間を消耗する。MeshCollider Convexで体験が成立するなら、それで十分。精度の追求は後でいい。

並行タスク進捗

  • coffeecup_4スキャン進行中:カラーシール(青・赤・緑)を台座に配置した撮影を実施。特徴点が増えてスキャン精度が向上している手応えあり。台座の自動除去はまだできていないが、輪郭がはっきりしてきたのでEdit Modeでのクロップが楽になりそう。