MyMallow - RealityKitで実装した3Dキャラクター感情日記
(blog.devstory.co.kr)ユーザーが自分の感情を3Dキャラクターとして擬人化し、直接カスタマイズできるiOSアプリ、MyMallowを紹介します。2か月間進めたプロジェクトで、単に日記を書くことを超えて、「ユーザー参加型3Dコンテンツ制作」 に焦点を当てて開発しました。
主な機能
- カスタムテクスチャ: ユーザーがキャンバスに描いた絵をVisionフレームワークで分析し、3Dモデルのマテリアルにリアルタイムでマッピングします。
- 自分だけのモーションキャプチャ: 内蔵された195種類のモーションに加えて、ARKitのBody Position Trackingを活用し、ユーザーの動きを直接録画してキャラクターに適用できます。
- 自律行動NPC: GameplayKitの状態マシン(State Machine)と経路探索を組み合わせ、キャラクターたちがたき火の近くで踊るなど、環境に合わせて自律的に行動します。
コア技術の実装ポイント
- RealityKit & 3Dパイプライン: Blenderで制作したモデルを
.usdzに変換して使用し、ランタイムでモデルのテクスチャとリギング構造を動的に制御します。 - モーション最適化: キャプチャしたデータのノイズを減らすため、Low-passフィルタとSlerp(球面線形補間) を適用して滑らかなアニメーションを実現しました。
- 物理および空間オーディオ: Collision Detectionベースの物理シミュレーションとSpatial Audioに対応したパーティクルシステムにより、没入感のある3D空間を構成しました。
- ボーン(Bone)構造の統合: Mixamo(65個)とApple ARBody(91個)の異なるボーン構造の問題を解決するため、状況に応じてリギング済みモデルを切り替える方式を採用しました。
単なる記録ツールを超えて、RealityKitのさまざまな可能性を探ってみたプロジェクトです。
1件のコメント
印象的ですね。該当ライブラリにはこれまであまり関心を持っていませんでしたが、よく整理されたこの記事のおかげで、視野をもう少し広く持てるきっかけになりました。