More Related Content
PDF
MRTK-Unreal(UX Tools) を利用した HoloLens 2 アプリ開発 | UNREAL FEST EXTREME 2020 WINTER PDF
徹底解説 Unity Reflect【概要編 ver2.0】 PDF
点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】 PDF
Node-REDのノード開発容易化ツールNode generator PDF
PDF
Immersal で広がる Magic Leap の拡張範囲 PDF
【Unity道場 建築スペシャル2】点群ビジュアライゼーション PDF
聖剣伝説3でのUE4利用事例の紹介~Making of Mana | UNREAL FEST EXTREME 2020 WINTER What's hot
PDF
PDF
UE4で学ぶ水中表現(UE4 Environment Art Dive) PDF
PPTX
多脚移動ロボットの脚先センサの開発と各脚における複数の局所制御の統合 PDF
PDF
コンテンツサンプルを楽しむ"超"初心者の為のNiagara PDF
Lightmass Deep Dive 2018 Vol.1: Lightmass内部アルゴリズム概要(Lightmap編) PDF
新しいエフェクトツール、Niagaraを楽しもう! ~Niagara作例のブレイクダウン~ PDF
わからないまま使っている?UE4 の AI の基本的なこと PDF
FMI-Ver 1.0 FMI for Model Exchange のモデルについて PDF
【Unite Tokyo 2019】HDRPコワクナイ! HDRPで目指す小規模で高品質な映像制作 PPTX
UE4のライティング解体新書~効果的なNPRのためにライティングの仕組みを理解しよう~ PDF
PPT
PDF
豚×京都 ~UE4でなろう破壊神~ (UE4 VFX Art Dive) PPTX
Python / BlueprintによるUnreal Engineの自動化 / GTMF2019 PPTX
PDF
Lightmass Deep Dive 2018 Vol. 2: Lightmap作成のためのLightmass設定方法 PPTX
PPTX
[DL輪読会]MetaFormer is Actually What You Need for Vision Similar to First vr sdk_introduction
PDF
PDF
PDF
Unityで意外と簡単・・・だけど難しいVRコンテンツ PDF
第1回 【初心者向け】Unity+Oculus Riftで次世代の3Dゲームを作って感じるワークショップ PDF
PDF
VR道場 Unity × Oculus Touch ~VRで手を動かしてみよう~ PDF
UnityでVRアプリを作ってみよう! (講演編) PPTX
PPTX
Unity + AndroidでモバイルVRハンズオン PDF
Oculus 体験・勉強会「VRコンテンツ制作入門」 2015/05/13 PDF
モバイルVR「Daydream」でVRの世界にふれてみる PDF
Unityを使ったVRアプリ作成入門 ABCD2015金沢編 PDF
Part3 unityを使ったvrアプリ作成入門 PPTX
PDF
Unity + iOS/Android VR ことはじめ PDF
PDF
【第2回】VR道場 Unity × Oculus Touch ~VRで手を動かしてみよう~ PDF
Unity&VR初心者が
UnityでVRゲームを
つくってみたい #sa_study PDF
プログラミング不要!!VRコンテンツ作成入門 PPTX
DK2 ポジトラでモデルを動かし た か っ た … First vr sdk_introduction
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
1. Unityプロジェクト作成
17
STEP 5.ユーザの操作画面となるScreen Space上に
ボタンを配置するための設定
②Canvas>Render Modeで
“Screen Space - Overlay”を選択
①“ConnetionCheck”
を選択する
- 18.
- 19.
1. Unityプロジェクト作成
19
STEP 7.4つボタンを作成し,
ボタンとボタンのテキストに名前をつける.
①ボタン作成 Hierarchyウィンドウ>Create>UI>Button
ボタンの名前は“Reset”, “Recenter”,
“TargetBtn”, “NonTargetBtn”
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
2. FirstVR(FVR)とオブジェクト(Cube)を接続
25
手のオブジェクト(Cube)
C# Script“TestFVR”
hand: 手の動きをバーチャルで
表現するゲームオブジェクト
fvr : FVRConnectionのインスタンスFVRConnection
(FVRゲームオブジ
ェクトにアタッチさ
れている)
FIRST
VR gesture : FVRGestureのインスタンス
STEP 1. FirstVR(FVR)とバーチャルなオブジェクト(Cube)を
どのように接続するか理解しましょう
プレファブ(FVR)とデー
タをやりとして,
FirstVRとオブジェクト
(Cube)を接続します
データのやりとり
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
2. FirstVR(FVR)とオブジェクト(Cube)を接続
38
STEP 1.ジェスチャ認識のスクリプト
ジェスチャのキャリブレーション時に使う
秒数を扱う変数たち
ジェスチャを登録する際に使うボタンを扱
う変数たち
ジェスチャをチェックするためのテキスト
ボタンやテキストなどのUIを使うので忘れずに
ターゲットジェスチャを登録す
る関数
ノンターゲットジェスチャを
登録する関数
ジェスチャの学習器
をリセットする関数
ジェスチャを登録す
るときに呼ばれるコ
ルーチン
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
- 46.
- 47.
- 48.
- 49.
- 50.
- 51.
- 52.
- 53.
- 54.
- 55.
- 56.
Editor's Notes
- #2 これからFirstVRのSDKの導入について説明させていただくインターンの細野です。
よろしくお願いします。
- #3 まずはSDKのダウンロードからお願いします。
- #4 上のリンクにいってもらってまずSDKをダウンロードしてください。
- #5 開発者登録をしていない方はまず登録フォームを埋めていただいて登録をお願いします。
- #6 そしたら左側のタブからダウンロードをお願いします。
ちなみにみなさんダウンロードできていますか?
- #7 次にダウンロードしてきたフォルダを開いて中に以下のフォルダが入っているかどうかチェックをお願いします。
- #8 一応ここまでをとりあえず動画で振り返ってみます。
ここまではダウンロードだけなのでもしどこからダウンロードするかわからなかったら教えてください。
- #9 SDKをダウンロードしたらまずFirstVRを使うアプリを作成する上で必要になる機能について説明していきます。
FirstVRでコンテンツを作成する際にはリセンターと腕の回転の同期、ジェスチャー認識の以上の3つの機能が重要になってきます。
1つ目としてはまずリセンターの機能が必要になってきます。リセンターはOculusGoとかでも正面を直したりコントローラーの向きをちょこちょこ設定し直したりするやつと同じでFirstVRも使っているうちに向きが若干ずれるのでセンタリングをやり直してあげる必要があります。
2つ目のとしては腕の回転の同期です。手を直接表示するVRコンテンツの様なものを作る際には特にこの機能は重要になってきます。
3つ目はジェスチャー認識です。ジェスチャー認識に関してはこのデバイスのキモであり、実装がちょっと難しいのでこのあとで出来るだけ丁寧に説明します。
- #10 そしたら具体的に開発する際につかっていくクラスの説明をします。
今回はこのマークのついているクラスをメインに使っていくのでこれからの話をするなかでそれを意識して話を聞いてもらえるとありがたいです。
このマークがついているクラスを使って腕や手のジェスチャや回転を取得します。
- #11 とりあえずここまででわからないことはありますか?
- #12 ここから実際にFirstVRを使ったアプリケーション作成の話に入っていきます。
ここでは実際に手のジェスチャと腕とFirstVRの回転の同期を埋め込んだサンプルを作っていきます。
- #13 ではまず初めにFVRSDKのプロジェクトを開いてください。
- #14 そしたら自分で作ったシーンやスクリプトを入れおくためのフォルダを作成してください。
ここではAssetsフォルダの下にScenesフォルダとScriptsフォルダを作成しています。
- #15 フォルダの作成が終わったら、Scenesフォルダの中に適当な名前でシーンを作成してください。
- #16 そしたらFVRフォルダの中にあるPrefabフォルダの中のConnnectionCheckPrefabとFVRContairnerプレファブをシーンに配置してください。
ConnnectionCheckPrefabは繋がっているかどうかを確認する用でFVRContainerはFirstVRと直接データをやり取りする部分になっています。
- #17 プレファブの配置が終わったら、手の回転の動きを同期させるオブジェクトを配置します。
手のモデルの代わりにここではCubeを使います。
なのでヒエラルキータブのCreateからCubeを作成してください。
- #18 そしたら次にこれからジェスチャを登録したり、リセンターしたりするためのボタンを配置するために配置したコネクションチェックというプレファブのCanvasという部分のRenderModeをScreen-Space-Overlayに変えてください。
これをしないとあとあとボタンを配置したときにボタンが押せなくなってしまいます。
- #19 変えたらもう一手間必要で申し訳ないのですが、繋がっているかどうかをみて確かめるためのオブジェクトであるVisualの位置を調整してゲームタブにしっかり表示できているか確認してください。
とりあえずインスペクタからz軸の位置を0にしてもらってから調整するとやりやすいと思います。
- #20 次にリセンターとジェスチャ登録に使うためのボタンが必要なので計4個のボタンを配置してください。
Cubeの時と同様にヒエラルキータブから作成できます。
で配置が終わったらゲームビューのところを見ながらボタンが被らないように位置を整えてください。
ちなみにこのボタンの役割としてはリセンターを行うためのボタンとターゲットジェスチャーを登録するボタン、ノンターゲットジェスチャを登録するボタン、ジェスチャのデータをリセットするボタンになっています。
- #21 そしたら先ほど配置したボタンがしっかり機能するために必要なEventSystemをヒエラルキータブに追加してください。
これがないとビルドしてもボタンを押すことができません。
- #22 次にコードを書いていくための準備をします。
なので初めに作ったScriptsフォルダの中にC#ファイルを作ってください。
- #23 ここまでを動画で一度振り返ってみます。
- #25 ここからはFirstVRを扱うためのスクリプトを書いていきます。
- #26 まずスクリプトを書きはじめる前にどうやってFirstVRのデータを受け渡すかについて軽く説明をします。
仕組みとしては先ほど配置したFVRContainerの子オブジェクトであるFVRDeviceオブジェクトのさらに子オブジェクトのFVRゲームオブジェクトにあタッチされているFVRConnectionというクラスの持っている変数や関数を利用してデータを受け取ります。
- #27 ではとりあえずさっき作成しておいたスクリプトを腕を同期させるゲームオブジェクトにアタッチします。
やり方としてはヒエラルキータブのCubeをクリックしてインスペクターのアドコンポーネントをクリックすることで行けると思います。
- #28 ようやくですがここからスクリプトを書いていくので作成したC#のファイルを開いてください。
- #29 ここからは書き終わったコードを見ながら話していきたいと思います。
まずは手の動きと手のゲームオブジェクトとFirstVRの動きを同期させるためのプログラムとリセンターの関数についてみていこうと思います。
まずはFVRConnectionと手のゲームオブジェクト(ここではCube)を扱うためのインスタンスを作成してください。
作成が終わったら次はリセンターの関数を作ってください。
ここの赤い枠線の中です。
あとでUnityEditorから紐付けを行うのでpublicにするのを忘れずにお願いします。
- #30 そしたらUnityに戻ってもらってCubeのインスペクタからAdd Componentをしてもらって先ほど作ったスクリプトをアタッチしてください。
- #31 アタッチが終わったら次はアタッチされたスクリプトの変数の紐付けを行なっていきます。
まずはFVRConnectionの紐付けを行います。
- #32 次にFirstVRと回転を同期させるゲームオブジェクトを紐付けます。
- #33 今度はリセンター用に作成したボタンにリセンターの関数を紐付けます。
- #34 この時点で書き出せばリセンターと回転の同期ができる状態ができました。
- #35 この時点で書き出せばリセンターと回転の同期ができる状態ができました。
- #39 ジェスチャの認識の際はまずボタンとチェック用のテキストを使うためにUnityEngine.UIをインポートしてください。
そしたら次にジェスチャを登録する際に使うFVRGestureの変数を用意してあげて、ボタンやチェック用のテキストも用意します。