NTTドコモR&Dの技術ブログです。

低コストクラウドレンダリングの発表で社外LT会に参加してみた〜Unreal Engine KYUSHU〜

本記事は第2回 Unreal Engine KYUSHU LT会 in 鹿児島への参加報告とそこで発表してきた内容を解説します。

導入

1年目からずっとR&Dで勤務しており、Unreal Engineに関わる業務をさせていただいていて、今4年目となりました。

アドカレについては3回目の参戦です!
毎年UEについて記事を書いている人となっております。

そんなことをしていると、ついに社外のコミュニティ主催のUEに関するLT会に参戦する機会がありましたので、その参加報告と何を発表してきたかを記事にさせていただきます。

本題

参加したコミュニティについて

私が参加してきたのは、Unreal Engine KYUSHUという九州のUnreal Engineコミュニティです。

概要

(Connpassから引用(リンク)

九州のUnreal EngineやUEFN使用者をもっと盛り上げていきたいというコミュニティ主催のLT会です。

Unreal Engineを使用してる方はもちろん、Unreal Engine使い始めたばかりで知見を吸収したり、同じUnreal Engineを使う仲間を増やしたいという方でも参加お待ちしております!

Unreal EngineやUEFNを利用した内容であれば、ゲーム・ノンゲームやLT経験の有無、経験年数に関係なく登壇いただけますので、お気軽に登壇参加もお待ちしております。 また、オンライン対応もしますので、居住地は九州外でも九州の企業に勤めている、出身が九州、さつま揚げ大好きなど九州と繫がりあれば登壇可能です!

画像は第3回のアーカイブから引用(リンク)

上記からわかるようにLT会や参加型のイベントを開催していまして、今までの開催履歴は、下記のようになっております。(2024年12月時点)

画像はConnpassから引用(リンク)

参加の経緯

縁ありまして福岡県からのリモートワークをしている&元々UEに興味を持っていたこともあり、UE×九州という面白そうなLT会を発見することができ第1回から参加しました。

第1回は画像では76人参加、とありますがオンライン参加が56人と多く、現地では割と暖かい雰囲気で皆さんの素晴らしい発表を聞くことができました。

その暖かい雰囲気のおかげもあり、懇親会まで参加させていただき帰宅する頃には「次があったら自分も発表側になりたい!」と熱く心に誓っていました!

そして、第2回の告知を見つけたのでLT発表者として最後の1枠をいただき、参加登録をしました。
第2回はなんと、鹿児島開催です!

参加した会の概要

詳細は以下です。

第2回 Unreal Engine KYUSHU LT会 in 鹿児島

開催日時:2024 年 7 月 6 日(土)14:00 ~ 19:00

会場:リコーITソリューションズ(株) 鹿児島事業所

この回は、LT会だけでなく初心者向けハンズオンも開催されており、第1回に比べて規模が大きくなっている印象でした。

アーカイブやまとめ、Web記事がありますので、ご興味ある方はそちらもご覧いただければと思います。

発表した内容

では、いよいよ発表した内容の解説に移っていこうと思います。

一応動画が残っているのですが、想像以上に規模が大きかったことで緊張してしまっています・・・

できれば、本記事での解説と併用していただくとわかりやすいかと思います。

動画アーカイブ

発表したタイトルは

弊社のメタバースで活用されている技術で遊んでみた ~低コストPixel Streaming マルチプレイ〜

です。

Pixel Streaming の解説を行った後、システム上の理想的な体験設計の説明を行い、今回説明する技術の何がすごいのかを言及します。

MetaMeとは

まずは、MetaMeについて説明します。

MetaMeとは「ドコモが企画・開発し、パートナー企業であるRelic社が運営するコンシューマ向けコミュニケーション空間サービス」です。

「MetaMeって何?」と興味を持っていただいた方は、ぜひLPや下記Noteなどを訪れていただけると嬉しいです。 note.metame.ne.jp

MetaMeには様々な空間があり、Youtube等で動画視聴ができるスペックの端末であればブラウザから体験できます。

MetaMeの画面構成(左:3人称カメラ、右:定点カメラ)

このようにブラウザから3次元空間の映像を体験できる技術の1つとして、クラウドレンダリングという手法があります。

PixelStreamingとは

UEにおいて、クラウドレンダリング(クラウドゲーミング)のことをPixelStreamingと呼称しています。

詳細は公式(リンク)が詳しいですが、ざっくりと当日利用したスライドで説明すると下記のようになります。

PixelStreamingとは

理想のゲーム体験と現実

これは、主観も多く入っているのですが、実際の体験と理想の体験を比較すると次のようになると考えています。

ローカル Pixel Streaming 理想
環境の制約 ユーザーの端末・ネット環境依存 ブラウザが動いて動画ストリーミングができればよい 端末・環境非依存
ユーザーのコスト ゲーミングPCが必要な場合もあって高くなりがち スマホでも動作自体は可能で低め 安ければ安いほどよい
提供者の維持コスト クライアントアプリと同期サーバーが中心 クライアントアプリとそのレンダリングサーバーと同期サーバー 安ければ安いほどよい
ローディング クライアントアプリに含んだり、ローディングしてローカルに保持したりすることで削減可能 ブラウザの機能依存、ローカルよりは多くなりがち ローディングによる待機時間はなければないほどよい

MetaMeでは、Pixel Streamingが持つ環境非依存のメリットを維持しながら、課題となるコストと待ち時間の問題解決にチャレンジしています。

新技術でできること

MetaMeではPixel Streamingの既存の手法に手を加えて、1つのGPUサーバで複数のユーザを収容できる独自技術を適用しています。

これにより、単純に5人分を1つのサーバで捌けるのであればサーバが5分の1になるだけでなく、同じサーバで発生している事象は他と共有する必要がないため同期サーバの負荷も下げることが可能です。

MetaMeで利用されている新技術の特徴

実際にやってみた

今回はあくまで実験的な殺風景な背景ではありますが、ローカルで用意できるゲーミングノートPCのスペックでマルチプレイを4台捌くことに成功した様子がアーカイブにありますので、ご覧ください。

www.youtube.com (ここは、動画を見ていただいた方がわかりやすいかと思います!)

利用していたPCのスペック詳細は下記です。

メモリ 64GB
CPU Core i9-10980HK
GPU NVIDIA GeForce RTX 3080 Laptop GPU

この仕組みは、UnrealEngineのサンプルの中でもレンダリングの質が高く、容量が多いことで有名なCitySampleでも同様に動作することも分かっています。

www.fab.com

やってみて困ったことや制限事項

一見、ローリスクハイリターンの仕組みのように思えるのですが、それなりに課題も発生しています。

特に

  • パラメーターチューニングが大変(適正値がなかなか見つからない)
  • 使われている技術が多岐にわたり、全体把握が大変

あたりでつまずき、デバックが非常に大変になる場面もあります。

今後

本技術は超多人数同時接続技術と呼ばれていまして、これを広く提供ような準備を進めておりますので、乞うご期待ください!

超多人数同時接続空間のオープン化

まとめ

本記事では、入社後の4年ほどUEを触り続けた結果、自社の技術を社外のLT会に発表したその経緯を書かせていただきました。

今後は、取り急ぎ直近に迫ったUE九州の長崎会に向けて準備を進めていきたいと思います! (長崎会は年明けに実施予定)

UE九州@長崎

ちなみに、Unreal Engine KYUSHUへの参加資格は「何らか九州に関わりがあること」なので幅広い方々が参加可能です。

居住地は九州外でも九州の企業に勤めている、出身が九州、さつま揚げ大好きなど九州と繫がりあれば登壇可能です!

これをお読みいただいた方は、少なからずUEにご興味があると思いますので、長崎にてお会いできるのを楽しみにしています!

ここまでお付き合いいただきありがとうございました。