Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
VRMを使ったAR/MR撮影ツールを試作開発してみた話 / Prototype of Mobi...
Search
sotanmochi
February 19, 2019
Technology
0
1.7k
VRMを使ったAR/MR撮影ツールを試作開発してみた話 / Prototype of Mobile Mixed Capture
sotanmochi
February 19, 2019
Tweet
Share
More Decks by sotanmochi
See All by sotanmochi
URP/HDRPを使ったVRM対応アプリの開発方法 / VRM Importer Extension
sotanmochi
0
1.6k
画像処理から始めるコンピュートシェーダ / Introduction to Image Processing using Compute Shader
sotanmochi
2
2.5k
Diminished Reality 入門 / Introduction to Diminished Reality
sotanmochi
2
8.9k
Unityでテクスチャにお絵描きするための線分描画アルゴリズムの話 / Line drawing algorithm using fragment shader
sotanmochi
2
3.7k
MagicOnionでマルチプレイゲームを作ってみる / Introduction to developing multiplayer games using MagicOnion
sotanmochi
1
2.3k
SmartRig Bipedを使ってみよう / Introduction to SmartRig Biped
sotanmochi
0
3.2k
リアルとバーチャルの融合によって越えられない壁を壊す / TechCafe vol.8 LT
sotanmochi
0
270
ユニティちゃんと鬼ごっこができるMRゲームと戦術位置解析システム / Mixed reality game and tactical position analysis
sotanmochi
0
650
Research modeで取得した深度(Depth)データを可視化する / Depth data visualization for Hololens RS4 Research mode
sotanmochi
0
180
Other Decks in Technology
See All in Technology
20250807_Kiroと私の反省会
riz3f7
0
250
生成AI活用のROI、どう測る? DMM.com 開発責任者から学ぶ「AI効果検証のノウハウ」 / ROI of AI
i35_267
3
110
LTに影響を受けてテンプレリポジトリを作った話
hol1kgmg
0
380
【新卒研修資料】数理最適化 / Mathematical Optimization
brainpadpr
29
14k
「AIと一緒にやる」が当たり前になるまでの奮闘記
kakehashi
PRO
3
170
九州の人に知ってもらいたいGISスポット / gis spot in kyushu 2025
sakaik
0
190
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
6.4k
事業特性から逆算したインフラ設計
upsider_tech
0
170
LLM 機能を支える Langfuse / ClickHouse のサーバレス化
yuu26
9
2.6k
AIに目を奪われすぎて、周りの困っている人間が見えなくなっていませんか?
cap120
1
690
Agent Development Kitで始める生成 AI エージェント実践開発
danishi
0
160
「Roblox」の開発環境とその効率化 ~DAU9700万人超の巨大プラットフォームの開発 事始め~
keitatanji
0
140
Featured
See All Featured
Become a Pro
speakerdeck
PRO
29
5.5k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Navigating Team Friction
lara
188
15k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Practical Orchestrator
shlominoach
190
11k
For a Future-Friendly Web
brad_frost
179
9.9k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
It's Worth the Effort
3n
186
28k
Building Applications with DynamoDB
mza
96
6.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Transcript
2019/02/19 sotan (@sotanmochi) VRMを使ったAR/MR撮影ツール を試作開発してみた話
自己紹介 • sotan (@sotanmochi) • TIS株式会社・戦略技術センター • xR(VR/AR/MR)技術に関する応用研究・プロトタイプ開発 2019/02/19 VRM勉強会
2 https://www.microsoft.com/store/apps/9P4XXMW3F1GC 現実空間をフィールドにしてユニティちゃんと鬼ごっこができるHoloLens用アプリなどを趣味で作ってます
話の流れ • 実現したいこと • デモ動画 • AR/MR撮影ツールの構成 • 開発Tips •
まとめ 2019/02/19 VRM勉強会 3
実現したいこと 2019/02/19 VRM勉強会 4 屋内外の色々な場所で バーチャルキャラクターのAR/MR動画を撮影したい
実現したいこと AR撮影システムを「個人」で「ワンオペレーション」で実現したい 2019/02/19 VRM勉強会 5 http://dwango.co.jp/pi/ns/2018/0625/index.html 【先行事例】 http://panora.tokyo/66291/
試作開発中のAR/MR動画撮影ツール • キャラクターと現実を合成した動画を撮影(デバイスの動画キャプチャ機能) • キャラクターの身体を動かす(モーションキャプチャ) • キャラクターの位置と方向を変える(コントローラー操作) 2019/02/19 VRM勉強会 6
AR/MR動画撮影ツールのデモ動画 Mobile Mixed Capture (仮称) のデモ動画 • 複数のデバイスで撮影 • カメラマン視点と客観視点の映像
2019/02/19 VRM勉強会 7 デモ動画(HoloLens) https://youtu.be/b55dc6V3jvg デモ動画(iPad) https://youtu.be/XmKdsECYGf0
AR/MR撮影ツールの構成 2019/02/19 VRM勉強会 8
ハードウェア構成 2019/02/19 VRM勉強会 9 RealSense D435 (モーションキャプチャ) Joy-Con (L)/(R) (キャラクター操作)
iPad or HoloLens (動画撮影用) モバイルノートPC GPD Pocket 2 (入力・データ配信用) Wi-Fi (データ通信用) 自撮りバックパック SHOOT
• 開発環境:Unity2018.3.4f1 ソフトウェア構成 2019/02/19 VRM勉強会 10 iOSアプリ HoloLensアプリ Windows10 PC用アプリ
(入力・データ配信用) キャラクターの姿勢 キャラクターの相対位置 モーションキャプチャ キャラクターの移動・回転 デバイスの相対位置・回転 上半身と下半身の モーション合成 基準位置調整(手動) 基準位置設定 VRMモデル読込 (ランタイム) キャラクターの姿勢 キャラクターの相対位置 デバイスの相対位置・回転 基準位置調整(手動) VRMモデル読込 (ランタイム)
ソフトウェア構成 利用している主なアセット・ライブラリ • UniVRM • Mirror(ネットワークライブラリ) • JoyconLib(Joy-Conライブラリ for Unity)
• Kinect v2 Examples with MS-SDK and Nuitrack SDK (モーションキャプチャ用のアセット) • Nuitrack(3Dトラッキング用のミドルウェア) 2019/02/19 VRM勉強会 11
開発Tips 2019/02/19 VRM勉強会 12
キャラクターの姿勢を同期させる • HumanPoseのデータを同期用オブジェクトで送受信 • HumanPoseTransferを使ってHumanPoseをキャラクターに反映 2019/02/19 VRM勉強会 13
• HumanPoseのデータを同期用オブジェクトで送受信 • HumanPoseTransferを使ってHumanPoseをキャラクターに反映 同期用オブジェクト(Clone) HumanPose Transfer キャラクターの姿勢を同期させる 2019/02/19 VRM勉強会
14 iOS or HoloLens用アプリ PC用アプリ VRMモデル 同期用オブジェクト(Clone) 操作用キャラクター HumanPose Transfer
キャラクターの位置を同期させる • HumanPoseで位置を同期させようとしても一致しない • Animator.humanScaleの違いによって移動する距離に差が出る • HumanPoseのbodyPositionを固定、位置の同期用オブジェクトを追加 2019/02/19 VRM勉強会 15
キャラクターの姿勢を合成する • 上半身をモーションキャプチャ、下半身をアニメーションで動かす • 上半身用モデルと下半身用モデルのHumanPoseから必要なmusclesを取得する 2019/02/19 VRM勉強会 16 上半身用モデル 下半身用モデル
操作キャラクター
キャラクターの姿勢を合成する • 上半身をモーションキャプチャ、下半身をアニメーションで動かす • 上半身用モデルと下半身用モデルのHumanPoseから必要なmusclesを取得する 2019/02/19 VRM勉強会 17 【参考】 HumanTrait.MuscleNames.csv:
https://gist.github.com/neon-izm/0637dac7a29682de916cecc0e8b037b0
パフォーマンスチューニング • HumanPoseのmusclesをfloat型(32bit)からhalf型(16bit)に変換してデータ削減 • とりすーぷ(@toRisouP)さんのスクリプトを参考にしました • https://gist.github.com/TORISOUP/464e64313ad8da544729549452878e6d 2019/02/19 VRM勉強会 18
C#にはhalf型がないのでshort型で代用
パフォーマンスチューニング • 精度の違いを考慮し忘れて float → half の変換処理で躓いた 2019/02/19 VRM勉強会 19
送信側 受信側 実質0の小さい値が正しく変換できてなかった
パフォーマンスチューニング • 絶対値が 1.0 × 10−4 より小さい値を0に変換することで対応した 2019/02/19 VRM勉強会 20
4.0 × 10−5 程度までは half型で表現できていた 【参考】シェーダーのデータ型と精度 https://docs.unity3d.com/ja/current/Manual/SL-DataTypesAndPrecision.html
VRMモデルの髪と顔が消える • キャラクターの髪と顔が消えてしまうことがある(現象の発生条件が不明) • VRMをランタイムロードした後に updateWhenOffscreen = true で暫定対応 2019/02/19
VRM勉強会 21 updateWhenOffscreen = true updateWhenOffscreen = false
まとめ 2019/02/19 VRM勉強会 22
まとめ • 屋内外の色々な場所で使えるAR/MR撮影ツールを試作してみた • 個人で購入できるハードウェアの組み合わせで実現した • ワンオペレーションでAR/MR動画を撮影できた • モーションキャプチャの精度向上など、いくつか課題を解決すれば 実用化できそう(自分以外のニーズがあるか不明)
2019/02/19 VRM勉強会 23
ありがとうございました