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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
sotanmochi
February 19, 2019
Technology
1.8k
0
Share
VRMを使ったAR/MR撮影ツールを試作開発してみた話 / Prototype of Mobile Mixed Capture
sotanmochi
February 19, 2019
More Decks by sotanmochi
See All by sotanmochi
URP/HDRPを使ったVRM対応アプリの開発方法 / VRM Importer Extension
sotanmochi
0
1.7k
画像処理から始めるコンピュートシェーダ / Introduction to Image Processing using Compute Shader
sotanmochi
2
2.7k
Diminished Reality 入門 / Introduction to Diminished Reality
sotanmochi
2
9.3k
Unityでテクスチャにお絵描きするための線分描画アルゴリズムの話 / Line drawing algorithm using fragment shader
sotanmochi
2
3.9k
MagicOnionでマルチプレイゲームを作ってみる / Introduction to developing multiplayer games using MagicOnion
sotanmochi
1
2.5k
SmartRig Bipedを使ってみよう / Introduction to SmartRig Biped
sotanmochi
0
3.4k
リアルとバーチャルの融合によって越えられない壁を壊す / TechCafe vol.8 LT
sotanmochi
0
290
ユニティちゃんと鬼ごっこができるMRゲームと戦術位置解析システム / Mixed reality game and tactical position analysis
sotanmochi
0
700
Research modeで取得した深度(Depth)データを可視化する / Depth data visualization for Hololens RS4 Research mode
sotanmochi
0
200
Other Decks in Technology
See All in Technology
AWSで2番目にリリースされたサービスについてお話しします(諸説あります)
yama3133
0
120
Datadog で実現するセキュリティ対策 ~オブザーバビリティとセキュリティを 一緒にやると何がいいのか~
a2ush
0
190
Podcast配信で広がったアウトプットの輪~70人と音声発信してきた7年間~/outputconf_01
fortegp05
0
230
機能・非機能の学びを一つに!Agent Skillsで月間レポート作成始めてみた / Unifying Bug & Infra Insights — Building Monthly Quality Reports with Agent Skills
bun913
5
3k
レガシーシステムをどう次世代に受け継ぐか
tachiiri
0
260
推し活エージェント
yuntan_t
1
820
AI時代に新卒採用、はじめました/junior-engineer-never-die
dmnlk
0
120
15年メンテしてきたdotfilesから開発トレンドを振り返る 2011 - 2026
giginet
PRO
2
280
AIにより大幅に強化された AWS Transform Customを触ってみる
0air
0
310
遊びで始めたNew Relic MCP、気づいたらChatOpsなオブザーバビリティボットができてました/From New Relic MCP to a ChatOps Observability Bot
aeonpeople
1
170
OPENLOGI Company Profile for engineer
hr01
1
62k
BIツール「Omni」の紹介 @Snowflake中部UG
sagara
0
190
Featured
See All Featured
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
190
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.7k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
310
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
430
The World Runs on Bad Software
bkeepers
PRO
72
12k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
170
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
54k
Designing for humans not robots
tammielis
254
26k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Code Review Best Practice
trishagee
74
20k
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
ありがとうございました