前回はiOSアプリを申請する際の注意点についてご紹介しましたが、Oculusを利用した
ストリーミング再生の話しに戻しましょう。
今回は、現在のストリーミング再生の仕組みとして利用している、Unity+Oculusの構成を
見直してみたいと思います。
これまでの記事で、ある程度の速度や品質を保って、動画をストリーミング再生できる
環境を構築してきましたが、商用化を見据えた場合Unityのライセンスとして、Proライセンスを
取得する必要があります。
そこで、商用利用も可能かつ、これまでUnityで実現してきたストリーミング、3Dパノラマ、
Oculus再生が実現できて、ライセンスフリーな開発ツール(FrameWork、Engine)がないか、
検討した結果、UnrealEngineならすべてを満たせるのではと思い至り、調べてみました。
UnrealEngineの特徴としては、以下のようなものがあります。
・比較的歴史のある、ゲームエンジン
・3Dゲームエンジンである事から、Oculus利用を目的としたコンテンツ制作も可能
・2015年以降、無償で制限なく利用が可能(一部ロイヤリティ有)
・開発言語がC++
・様々なプラットフォーム向けの開発をサポート
これを、Unityと比較してみると、UnrealEngineでは、商用利用であっても一定額以上の利益が
発生するゲームコンテンツを除いて、ロイヤリティが発生しないという利点があります!
そして、開発手順や使用言語は異なれど実現できることに大きな差がないこともわかりました。
#さらに、弊社技術者は、組み込み制御経験者が半数おりC++での開発は利点となります。
ということで、UnityからUnrealEngineへ移行します!
UnrealEngineは初めて触るので、少しでも早く移行が完了できるよう、要点を押さえて、
今後も何度か分けて、記事にしていこうと思います。 よろしければ、ご参考ください。
早速ですが、なにを利用するにしてもまず初め行うのは、環境構築ですので、公式サイトからセットアップツールを
ダウンロードしてきます。 このあたりは、いろいろなサイトで詳しく紹介されているので省略します。
では、セットアップツールを実行してみます。
上記の画像を見てわかるとおり、UnrealEngine自体がダウンロードされているわけではなく、AdobeでいうCreativeCloudの
ようなランチャーツールを利用してセットアップできる形になります。
このランチャーから、UnrealEngineをダウンロードしたり、プロジェクトを作成、Aseetsを購入できますので、
早速、UnrealEngineをダウンロードして、プロジェクトを作成しようと、思いましたが 「まずはここから」という
項目が目に入り、ついついクリックしてしまったところドキュメントらしきサイトに飛びました。
こちらです
このサイトを参考にすると、各種DLに関する説明や、ツール操作方法、開発ガイドなどが整理されていて、
自身が知りたい情報が探しやすく、作業がスムーズに進められそうです。
それでは、ドキュメントを参考しつつ、プロジェクトを作成にしてみましょう。
画面のUI上、「起動」を押すと、既存プロジェクトか新規プロジェクトが選べるのですが、初めから空のプロジェクトで始める勇気を
持てなかった私は、FirstPersonというあらかじめ既存の素材が入っているプロジェクトを開いてみたいと思います。
画面下に作成するディレクトリや名前を決め、「CreateProject」を押します。
実際にプロジェクトが開くと、Unityの構成とよく似た画面が表示されます。
Unityを触ったことがない方や、初めてこういったツールをご利用になる方だと、「なんだこの画面は!」と思われるかもしれません。。。
ここで、役に立つのが先ほどのドキュメント情報です。
画面内の、どの部品を利用して、どういった機能が利用できるのかといった情報が掲載されているので、参考にしながら行えます。
先ほど少し触れましたが、UnrealEngineで使用するプログラミング言語は、C++になります。
残念ながら、まだプロジェクト内がどういった構成で、どこに制御ソースが配置されているのかは把握できていませんが、
そこは、実際に解析してみていくとして、その前に戦わなければならない「強敵」がいます!
「BluePrint」 さんです!
下図は、今回開いたサンプルプロジェクトで使用されている、「銃から射出される弾」を表現している「BluePrint」画面の
スクリーンショットです。
初見で上図をみると、なにがなんだかという感じで、どういった仕組みでどのように動作するのかといった事を、調べていくのは
今後、大きな課題になるなぁと感じました。
#Pepperの記事に登場した、「Choregraph」という統合環境に似ています。 当時も慣れるまで手こずりました。
取り急ぎ、セットアップして画面をみることはできましたが、今後はOculusへの表示、ストリーミング再生などの機能をUnityから
移行するのと併せて、「BluePrint」さんとの戦いに挑んでいきたいと思います。
ざっくりとした、概要の紹介ではありますが、利用可能言語やライセンス条件、機能を比べる限り、慣れてくれば、Unityと同等か
弊社にとっては、さらに使い勝手が良いものとなる気がします。
今後もちょこちょこと情報を記事として公開しますので、ぜひご期待ください。
最後までご覧いただきありがとうございます。
弊社では全国各地の請負い(ご自宅)で作業協力頂ける、フリーランスエンジニアの方を常時探しております。
ご興味ある方は、お気軽にお問い合わせ下さい。