Unityを使って、Spatial Reality Display用のサンプルアプリを作ってみました
Unityを使って、Spatial Reality Display用のサンプルアプリを作ってみました
ELF-SR1一式
この記事では Unity でELF-SR1の開発を行う際の 環境構築とサンプルシーンのビルドまでを行います。
筆者は人生で一度も記事を書いたことがないど素人なので拙い部分が存在するかと思いますが暖かい目で見守って頂けると幸いです。
・OS:Windows 10 (64-bit)
・CPU:AMD Ryzen 5 3600X以上 (6 Core以上)
・GPU:GeForce RTX2060以上
・Memory:8GB以上
・Storage:SSDを推奨
・Unity 2018.4, 2019.4, 2020.1
・Unreal Engine 4.24, 4.25
・OS:Windows 10 (64-bit)
・CPU:Intel Core-i7 10750H
・GPU:GeForce RTX 2070 super
・Memory:16GB
・Storage:SSD
・Unity2019.4.15f1
・Visual Studio 2019
ちなみにWindows上でしか動かないです(泣)Bootcampを使用したMacで動くかどうかはまだ不明です。そのうちやります。スペック次第ですが望み薄です。
やることをすごくざっくり説明すると
です。
以下詳しい説明と画像です。
画像1
画像2
①ELF-SR1をWindows PCと接続した状態でディスプレイの設定を行います。画像2のようにELF-SR1の画面サイズを100%、解像度を3840x2160、画面の向きを横に変更します。その後マルチディスプレイの設定を「表示画面を拡張する」に変更します。
※ 今回はELF-SR1を横にして使用しますが縦でコンテンツを制作することも可能です。縦て展示などする場合は画面の向きを縦に変更してください。
画像3
② https://www.sony.net/Products/Developer-Spatial-Reality-display/jp/develop/Setup/DownloadInfo.html から開発に必要なプラグインとドライバーをダウンロードします。
以下内容物の説明です。読まなくても大丈夫です。
SR Display Runtime Installer には以下の2つのソフトウェアが含まれています。
・SR Display Runtime libraries & device drivers
・SR Display Settings application
SR Display Runtime libraries & device driversはunity上でビルドする際に必要なライブラリとELF-SR1用のドライバーです。インストールすることでELF-SR1で開発を行うことができるようになります。
SR Display Settings applicationはSR Displayの設定値の調整や高速ビジョンセンサーがユーザの顔を認識できているか確認することができるアプリです。
SR Display Plugin for Unity は Unityで開発を行う際に必要なものを詰め込んだzipファイルのようなものです。4. Unity上の操作で使用します
画像4 ELF-SR1のビジョンセンサーのステータスバー
画像5 カメラのキャプチャ画像ウィンドウ
③ WindowsボタンからSR Display Settingsを起動し、動作確認を行います。自分の顔に赤枠が表示されて入れば確認完了です。
以下各ボタンなどの説明です。
ステータスバーのCamera Gain settingではカメラ光量を調整することが可能です。 自分の顔がきちんと見える光量に調整してみましょう。Auto Exposureにチェックをいれると自動で調節してくれます。
Crosstalk Correctionはノイズなどを修正してくれるシステムです。Application Cotrolledを選択するとunity側の設定がCrosstalk Correctionに反映されます。 offはCrosstalk Correctionがない状態になります。
新規プロジェクトを作る→プロジェクトの設定をする→サンプルシーンをビルド の3ステップでやっていきます。
画像6
プロジェクト名は何でも大丈夫です。全角文字やスペースはよく悪さをするのでできるだけ半角文字を使用しましょう。保存先も自由に決めて大丈夫です。決めたら作成ボタンをクリックします。
画像7
プロジェクトの作成に成功し、シーンが展開されたらとりあえずツールバーのFile→Saveで保存しましょう。
画像8
Saveができたら3.PC上のセットアップの際にダウンロードしたSR Display Plugin for Unity を作成したシーンにインポートします。
画像9
SR Display UnityPluginはWindows x86_64アーキテクチャのみ対応しているので設定が違うとインポートの際に画像9のように警告がでます。okを押すと自動で設定を変更してくれます。
画像10
ELF-SR1用にプロジェクトの設定を変える必要があるのでツールバーのEdit→Project Settingを開きましょう。
画像11
Qualityを選び、その後画面下部のVSync CountがEvery V Blankになっていると思うので赤枠のようにDon’t Syncに変更しましょう。
これでunityプロジェクトの設定は完了です。 次は実際にシーンをビルドしてディスプレイ上で動いているところを見 てみましょう。
画像12
画像11のようにProjectウィンドウからAsset欄を開きSRDisplayUnityPlugin →Samplesy→0_SRDSampleHome→Scenes→SRDisplaySampleHomeを開きましょう。
画像13
ツールバーのFile→Build settingを開きましょう。Scenes In Buildに6種類のシーンが追加されていること、PlatformがPC Mac & Linux Standaloneになっていることを確認してたらBuild and Go をクリックしましょう。
画像14 人間の目に合わせているのでカメラをむけると高確率で歪みます(泣) 写真上手く撮れる用に精進します。
Buildすると画像14のような画面が出てきます。数字の1〜5を押すことで色々なサンプルが体験できます。
画像15 ELF-SR1を用いた地球しか見えないプラネタリウム
画像16 hierarchyとInspector
SRDisplayBoxの壁に合わせて内側にquadを配置し、quadのテクスチャーを変更することことで画像16のように背景を作ることができます。またleap motion などのガジェットと合わせることで活用の幅が広がるのでぜひ色々試してみてください。
お疲れさまでした!
最後まで読んでいただきありがとうございます。 今回は公式が出しているドキュメントを見ながら制作しました。 少しでも参考なれば嬉しいです。
Sony Global - SPATIAL REALITY DISPLAY | Overview
Sony ELF-SR1の環境構築と実機でサンプルを動かすまで was originally published in Kadinche Engineering on Medium, where people are continuing the conversation by highlighting and responding to this story.