にっき

Looking Glass Portraitを買って自分の3Dキャラクターを裸眼で立体的に見られるようになったよ

7月15日は以前にKickstarterで購入もといクラウドファンディングでバックしていたLooking Glass Portraitが届いたよ。簡単にいえばデジタルフォトフレームみたいなものだけど、特別なメガネなどを使わずに裸眼で3Dを立体的に見ることができてしまう不思議なフォトフレームなんだよ。

デココくんが映っているLooking Glass Portrait

本来だったら4月頃に届く予定だったけど、新型コロナウイルスによる影響で部品の供給が滞ったことで、お品物の到着が今になったんだ。

開封して中身を見てみよう

とうとう届いたよ。どうやら香港から来たらしい。運送業者がFedExから西濃運輸に変わったり、税関を潜り抜けたりしているおかげで、箱の伝票部分にはベタベタと沢山のラベルが貼られているよ。今更ながらこういった個人的な荷物ひとつでここまで色々と潜り抜けていることに驚いてしまったね。

そっけない段ボール箱から中身を取り出すと、AppleやMicrosoftのSurface製品並の奇麗な化粧箱が姿を現したよ。さらに開けると、Looking Glass Portraitの本体が出てくるんだ。本体に被っているビニールのカバーにはスタンドの組み立て方のシールが貼られていて、手順の3番目でネジをドライバーで回さないように禁止マークのようなものが示されているね。スタンドを組み立てるときは気を付けよう。

ネジを回してはいけないのに回して解体する羽目になったよ

そんなオレはネジをドライバーでクルクルと回してしまって、ネジの奥にネジを固定するパーツが外れるような音がしたんだ。これは絶望ものだよ。ダメもとで調べてみると、ツイッターに対処の術を書かれている人がいて助かったね。ありがとう。

ドライバーで回してはいけないネジの下にある2か所の深い穴からネジをドライバーで取り出して、2番目の写真のようにスライドさせよう。ある程度スライドさせるとピタッと止まるから、そこでパカッと引っ張れば開くよ。フラットケーブルの断線に気を付けてね。

3枚目は開いた様子の写真で、実はもう対処済みなのはごめんね。問題のネジの場所は写真でいうと中央部分の上と下辺りの2か所ある小さな長方形の空間だよ。ネジを固定するためのパーツがピンセットで取れる位置にあるならすぐに取り出そう。長方形の空間にスポッと入れたら、ピンセットとかで支えながらネジを回してパーツとネジを固定させよう。しっかりと固定できたらおしまい。お疲れさまでした。このネジは罠だよ。もっと何かいい策があった気がする。

Unityで立体的に見られる映像を書き出そう

デジタルフォトフレームのように足を組み立てて机とかに置けるようになったら、今度はPCとLooking Glass Portraitをケーブルで繋ぎ、3Dの映像が見られるようにデータを転送するよ。最終的にはLooking Glass Portraitと電源ケーブルを繋げた状態で電源を入れたら始まるスタンドアロンモードでの3Dデータの再生を目指そう。

やり方についてはLooking Glass Factoryの「Getting Started with the HoloPlay Unity Plugin」を観ながら実際に進めたから、これも絶対に見てね。

必要なソフトのダウンロード

必要なソフトをインストールする必要があるけど、その前にまずはLooking Glass PortraitとPCをHDMIケーブルとUSBケーブルで繋いでおこう。どちらかではなく両方とも繋ぐ必要があるみたい。

HDMIケーブルとUSBケーブルをPCに刺そう

繋ぎ終えたら、Looking Glass FactoryのSoftwareのページまで向かい、「HoloPlay Service」「HoloPlay Studio」をダウンロードしよう。今回はUnityというゲーム開発向けソフトウェアを利用して3Dのデータを作成するので、「HoloPlay Unity Plugin for the Looking Glass」もダウンロードしよう。終わったら、まずは「HoloPlay Service」と「HoloPlay Studio」をインストールしてね。 Looking Glass Portraitとのデータのやり取りに必要だから必ずインストールしておこう。

Unityの環境を整えよう

ここからはUnityでの作業をするよ。Unityには沢山のバージョンがあるけど、今回はかなり新しい長期サポートバージョン「2020.3.5f1」を使うね。とりあえず問題なく動いてくれたよ。Looking Glass Factoryのドキュメント「Getting Started with the HoloPlay Unity Plugin」の動画に映るUnity Hubを見てみると「2019.4.11f1」を使っているから、完全に公式通りに合わせるならそのバージョンを使うといいと思うんだ。

該当バージョンのUnityのインストール方法については詳しい説明は省くけど、Unity Hubを通してUnityのバージョン「2019.4.11f1」 をインストールしたい時は、「Unity QA – LTS releases – Unity」から該当バージョンを選択して、「LTS リリース版 2019.4.11.f1」を探し出し、「Unity Hub」のリンクを選択しよう。すると、自動でUnity Hubが起動してインストールの案内が始まるから進めてね。

HoloPlay Unity Plugin for the Looking GlassをUnityにインポートしよう

Looking Glass Portraitのアニメーション作成用のプロジェクトを作ったら、さっきダウンロードした 「HoloPlay Unity Plugin for the Looking Glass」 のUnityパッケージをインポートしよう。メニューバーの「Assets」から「Import Package」と来て「Custom Package…」をクリックして、さっきダウンロードしたUnityパッケージを選択すると、インポートするファイルの一覧が表示されるよ。全てインポートをする必要があるから「All」を選択してからインポートボタンを押してもよさそう。

インポートが完了すると、「HoloPlay Settings」というウインドウが表示されるよ。なんとなく英語で「3Dデータを作成するUnityプロジェクトのオススメの設定を施してあげるね。」ということをいっている気がするんだ。ここは「Apply Changes」を押していい気がする。これで「HoloPlay Unity Plugin for the Looking Glass」のインポート作業はおしまい。

HoloPlay CaptureのPrefabをHierarchyのシーン内にドラッグアンドドロップしよう

左のHierarchy内のシーンにHoloPlay CaptureのPrefabを追加するよ。ファイル自体はAssets->Holoplay->Prefabs内にあるけど、Projectタブの上にある虫メガネマークがある検索バーから「holoplay capture」と入れればファイルが出てくるよ。出てきたPrefabをHierarchy内のシーンにドラッグアンドドロップで追加しよう。すると、1枚目のスクリーンショットのようになったと思うんだ。

hierarchyのHoloplay Captureを選択すると、右側のInspector欄に色々な設定項目が出てくるよ。今回はオレの好みで、シーン背景の青空も3Dの映像に含めたいから、「Holoplay (Script)」の「Clear Flags」を「Skybox」に切り替えたよ。

同様に、ProjectタブからAssets/Holoplay/Scripts内の「HoloplayRecorder.cs」をHoloPlay Captureにコンポーネントとして追加しよう。 hierarchyのシーン内からHoloplay Captureを選択した状態で、Inspectorの下にある「Add Component」から「Holoplay Recorder」と入力して追加しよう。

Holoplay RecorderはVP8やH.264などのコーデックの種類を選んだり、3Dのアニメーションが生成されるファイル名を指定したり、アニメーションのフレームレートを指定できるよ。スクリーンショットではフレームレートが30のままだけど、やっぱりヌルヌル動くのが好きだから、あとで60にしました。

recordQuilt.csを作成して新しいオブジェクトに追加しよう

UnityのProjectタブの方から右クリックして、Create -> C# Scriptと辿ってC#の空ファイルを作成して、ファイル名は「recordQuilt.cs」としよう。「recordQuilt.cs」のコードは、Looking Glass Factoryの「Getting Started with the HoloPlay Unity Plugin」 内にある「5. Recording your scene with HoloPlay Recorder」の下に書かれたソースコードをそのままコピーペーストしてね。

今度はHierarchyのシーンを右クリックして「Create Empty」から空のオブジェクトを作るよ。名前は何でもいいけど、今回は「Record」とするね。新たに作ったオブジェクトにInspectorからAdd Componentで「Record Quilt」を追加しよう。ファイル名と名前は違うけど「recordQuilt.cs」が追加されているよ。

Looking Glass Portraitに映すキャラクターの配置やアニメを設定したよ

これでLooking Glass Portrait向けの3Dの写真やアニメーションを記録したりする準備ができたから、ここからは映したい3Dのキャラクターやオブジェクトなどを追加して作品を仕上げよう。オレの場合は自前のキャラクターが動いているところを見てみたいから、動かしたいhumanoidボーンが組み込まれた3Dモデルをプロジェクト内とHierarchyのシーン内に追加したよ。

このままだと両腕を左右に広げたキャラクターが全く動かずじまいだから、キャラクターにAnimatorControllerを追加で設定して、プログラムが走っている最中は指定したアニメーションが動くようにしたよ。今回利用したアニメーションは、Humanoidの準じたキャラクターモーションを沢山配布しているmixamoというサイトからいただきました。ありがとうmixamo。あとは画面内にいっぱいにキャラクターが動くように大きさや位置を調整して準備OK。

緑色の枠線内にオブジェクトを配置すればしっかり映ると思うよ。ピンク色の線が描かれている側が正面。Looking Glass PortraitをUSBケーブルとHDMIケーブルで繋がっている状態で再生ボタンを押すと実際にどう表示されるか見られるからやってみよう。

ちなみにLooking Glass Portrait側の表示スケーリングがおかしいと、3枚目の画像のように全部が表示されないことがあるから、そんな時はLooking Glass Portraitのモニター設定の表示スケールが100%になっているかどうか確認しよう。 そもそも再生ボタンを押しても全く反応がないときは、UnityのメニューバーのHoloplayのSetup player Settingsから、「Apply Changes」を押して再度推奨設定にしてみよう。もしくは、HierarchyのHoloplay Captureを選択した状態で表示されるInspectorからHoloplayのコンポーネントから「Reload Calibration」を押したらうまくいくかも。

再生ボタンを押してアニメーションの記録を始めよう

全ての準備が終わったら、再生ボタンを押してアニメーションを動かそう。問題なく動いたら、あらかじめ指定されたキーを押して記録しよう。さっきのrecordQuilt.csのコードのコメントアウト部分や「Getting Started with the HoloPlay Unity Plugin」の説明を見てもらえたら分かるけど、「1」キーが記録、「2」キーが一時停止、「3」キーが再開、「4」キーが録画終了だよ。記録中にUnityの再生ボタンを再度押して停止させてしまうとファイルが作成されないから注意してね。

記録を終えたら、今のプロジェクトのAssetsフォルダに作られるよ。Unityの画面上では追加されていないように見えるけど、Windowsのエクスプローラーから見るとしっかり確認できるよ。Holoplay RecorderのPresetをVP8にしていたから、ファイルの拡張子はwebm。

スタンドアロンモードで見られるように映像を端末に転送しよう

webmのファイルが出来上がったら、今度はあらかじめインストールしておいたHoloplay Studioを起動しよう。うまく繋がっていてエラーも何も出なければ、右上にある四角が沢山並んでいるアイコンを選択して「Quilt Photo and Video」と表示されている状態にしよう。その状態で「IMPORT FILE」を押して、さっきのwebmのファイルを選べば準備OKだよ。ちなみに、このHoloplay Studio上でも下の再生ボタンなどを押すとLooking Glass Portraitからプレビューができるんだ。

ちなみにLooking Glass Portraitの初期状態ではあらかじめ沢山の3Dの動画や写真のサンプルが組み込まれているよね。ところでこのHoloplay Studioはプレイリスト方式で管理するみたいだから、下の写真のようにさっき「IMPORT FILE」で追加したファイルだけの状態で先に進めてしまうと、サンプルのものは見られなくなってしまうから気を付けてね。また見たくなったときはLooking Glass Factoryの「Demo Holograms」から落とせるから落としておこう。

「SYNC PLAYLIST」を押すと同期が始まるよ。「Syncing from your computer to your Looking Glass Portrait」と表示されている間は同期中。同期する分量によるけど、結構時間がかかるよ。たまにプログラムが応答なし状態になることがあるけど、ちゃんと動いているから待とう。終わると「Sync complete!」表示になるよ。

PCとLooking Glass Portraitを繋いでいたHDMIケーブルとUSBケーブルを外して、スタンドアロンモードで動作するように電源アダプターとUSBケーブルとLooking Glass Portraitを繋ぎなおして確認してみよう。

この通り動画が再生されていれば成功。お疲れさまでした。今はこのキャラクターの3Dの動画ひとつだけだけど、それだけだと寂しいからどんどん追加していこうかな。できれば延々とループしても飽きないくらいに。

ところで、今はKickstarter以外にMakuakeの方でもクラウドファンディングで同じものが売られているから、気になる人は購入しよう。URLに”gen2″と書かれているから、ネジ問題が対策されていたら嬉しいね。

コメント&トラックバック

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください