• ブログTOP
  • AI・ディープラーニング
  • AR
  • VR
  • WEBサイト
  • WEBマーケティング
  • SEO
  • SNS
  • その他
  • お問い合わせ

ALAKI株式会社

COZIKEEいつまでも使えるTech情報発信ブログ

リクルートサイトはこちら >

Unity Netcode for GameObjects (NGO) (旧MLAPI)× Relayでマルチプレイを実装する

2022年10月30日

  • このエントリーをはてなブックマークに追加

こんにちは!
XRクリエイターの伊東(@ALAKIWebVRAR1)です。

※TwitterでもWebXRの事を中心に情報発信中です。
よかったらフォローお願いします!
Follow @ALAKIWebVRAR1

Unityでマルチプレイを実装する方法はいくつかありますが、その中でも「Netcode for GameObjects (※以下NGO)」と「Relay」を使った実装方法をご紹介します。

ここでは大枠の概要をご説明しつつ、細かい説明に関しては参考記事をご紹介いたします。

この記事の目次

  • 1 NGOとは
  • 2 Relayとは
  • 3 マルチプレイ実装までの流れ

NGOとは

「NGO」は、マルチプレイを実装するためのUnityパッケージです。
元々は「MLAPI」という名前のパッケージでした。

2022年6月末に、正式なバージョン1.0.0がリリースされました。

大まかにいうと、NGOは以下の2つの役割を担います。

ローカルネットワーク内の接続

同じネットワーク環境、例えば、同じ職場のネットワークに接続している2つの端末同士を接続して、マルチプレイを実装することができます。
最初の1台目がホストとなり、他の複数台がホストとして接続する形になります。

「ローカルネットワーク内」という制限があり、全く違うネットワークに繋がっている端末同士の場合、NGOではマルチプレイを行うことができません。

Gameobjectの同期

NGOを使うと、ホストとクライアントが接続されている状態で、UnityのGameobjectの同期が簡単に行うことができます。

トランスフォームの値を同期したり、アニメーションを同期させるということができます。

Relayとは

先ほど、「NGOではローカルネットワークを超えた接続ができない」という旨をご説明しました。違うネットワーク下にある端末同士を接続するには、ホストとクライアントが直接つながる形ではなく、中継する「リレーサーバー」という存在が必要になります。

そこで、そのリレーサーバーを簡単に利用できるサービスが「Relay」です。

Relayの利用は無料枠ありの「従量課金制」になっています。
詳しくは以下をご確認ください。

https://unity.com/solutions/gaming-services/pricing

「Relay」を使って違うネットワーク下のホストとクライアントを接続し、「NGO」を使ってプレイヤーとなるGameobjectを同期させてマルチプレイを実装する、というのが今回の主旨になります。

マルチプレイ実装までの流れ

NGOとRelayの大枠がざっくり掴めたところで、具体的な実装の流れをご紹介します。

Relay導入

Relayの設定の流れについて、まずは流れを羅列します。
①Relayのパッケージインストール
②Relay用のUnityプロジェクトセッティング
③Unity Dashboard(Webブラウザでアクセス)からRelayサービスを有効化

①〜③の部分までは、以下の記事がとても詳しく書いてくださっているのでリンクを貼っておきます。
https://xrdnk.hateblo.jp/entry/2021/10/30/175456

※ベータ版の内容ですが、2022年10月30日現在は導入までの流れに大差ありませんでした。

NGO導入

NGOのインストールと初期の設定に関して、また、動作のイメージを掴んでいただくには、ここで文章でご説明するよりも以下の動画をみていただくのが一番手っ取り早いです。

https://www.youtube.com/watch?v=GRUtGLL8iMQ&t=2079s

※Unity Japanさん公式の動画です

RelayとNGOの連携

上記動画の最後の部分で、少しだけNGOとRelayの組み合わせに関して説明がありますが、ここではもう少し概要をご説明しようと思います。

Unityシーン側の設定、ネットワーク設定用のゲームオブジェクトを用意したり、プレイヤー用のPrefabを用意したりといった前準備は、NGOの担当範囲となります。ここは先ほどの動画でしっかりと説明されています。

次に、実際にホスト、またはクライアントとしてマルチプレイに参加するためのUIを用意します。

スクリーンショット 2022-10-30 6.40.52

ホストは、「Create」ボタンを押してマルチプレイ用の部屋を新しく立ち上げるイメージです。立ち上げに成功すると、部屋の番号が取得でき、UI側に出力します。

クライアントは、ホストが作成した部屋の番号を何らかの方法で受け取り、番号を手入力してから「Join」ボタンを押して部屋に入室します。

「Create」「Join」を押した後、
①それぞれホストとクライアントで認証の手続きをし
②完了すれば入室
③そしてNGOのGameobjectの同期を開始する
という流れになります。

上記①〜③に関して、実際にサンプルとなるコードをご紹介します。

https://github.com/wotakuro/NetcodeForGameObjects_UnitychanSample/blob/main/Assets/Sample/Scripts/RelayUtility.cs

以上がNGO × Relayでマルチプレイを導入するまでの流れになります。
初見ではややこしい部分がありますが、大枠の流れを把握して、NGO、Relayの役割をしっかりと理解しておくと、実装が容易になるかと思います。

本記事がその手助けになることを願っています!

  • ツイート
  • このエントリーをはてなブックマークに追加

Tags: Unityマルチプレイ

You may also like...

  • スクリーンショット 2022-11-03 6.44.07

    OpenStreetMapから3Dモデル(OBJ)を生成してUnityにインポートする

    3 11月, 2022

  • スクリーンショット 2018-08-17 8.11.37

    さらに万能になったBootstrap4を使いこなす

    17 8月, 2018

  • 8542e99874865ca981e0a84b47a70cf5_m

    Ajax処理を実装しよう!(フロントエンド編)

    11 9月, 2017

デザイナー募集
プログラマー募集
  • Next story Unity Starter AssetsのThird Person Character Controllerで三人称視点を簡単に実装する
  • Previous story FirebaseをUnity(iOS)に導入するまで

弊社サービス

MONJI+ MUGHEN ALAKI クラウド型受発注システム さよなら過去のAR。WebARがイベント集客に革命を起こします。

運営会社

ALAKI株式会社 ALAKI株式会社採用サイト

人気の記事

  • alaki1462_A_businessman_who_works_logically_1da80a2e-c297-4911-bdd6-feba0ebf1357

    仕事術

    【書籍要約】数学的な仕事術大全

    4 11月, 2024

  • fv-main-img-min

    空間コンピューティング

    世界初!「空間コンピューティング」を専用端末不要、スマホのWebブラウザのみで実現する『Web XR Site』を公開しました

    22 6月, 2023

  • Virtual reality players isometric vector illustration. VR UI and navigation. Futuristic digital technology. Virtual screen. Mixed reality 3d concept. Person in VR headset. Web banner idea

    AR

    Appleから新世代MRグラス「Vision Pro」の登場 – デジタルと現実世界が融合する新時代へ

    6 6月, 2023

  • AWE

    未分類

    ARアプリ『MUGHEN』が世界最大のAR/VRアワード「AWE」のファイナリストに選出されました!

    26 5月, 2023

  • python-logo-master-v3-TM

    pyhotn / 業務効率化

    「SwinIR」で高画質化した画像を pythonを使用して一括で元のサイズに戻す方法

    2 2月, 2023

カテゴリー

  • AI・ディープラーニング
  • AR
  • BtoB
  • CMS
  • Git
  • Google AdWords
  • gulp
  • Javascript
  • Laravel
  • Photoshop
  • Pug
  • pyhotn
  • Sass
  • SEO
  • SNS
  • Twitter広告
  • VR
  • Web3.0
  • WEBサイト
  • WEBマーケティング
  • YouTube
  • コーディング
  • システム開発
  • スマートフォンサイト
  • セキュリティ
  • セミナー
  • その他
  • ツール
  • デザイン
  • ベトナムレポート
  • 仕事術
  • 未分類
  • 業務効率化
  • 空間コンピューティング
  • 色

アーカイブ

  • 2024年11月
  • 2023年6月
  • 2023年5月
  • 2023年2月
  • 2023年1月
  • 2022年12月
  • 2022年11月
  • 2022年10月
  • 2022年9月
  • 2022年2月
  • 2021年12月
  • 2021年9月
  • 2021年7月
  • 2021年6月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年6月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月
  • 2018年2月
  • 2018年1月
  • 2017年12月
  • 2017年11月
  • 2017年10月
  • 2017年9月
  • 2017年8月
  • 2017年7月
  • 2017年6月
  • 2017年4月
  • 2017年3月
  • 2017年2月
  • 2017年1月
  • 2016年12月
  • 2016年11月
  • 2016年10月
  • 2016年9月
  • 2016年8月
  • 2016年7月
  • 2016年6月
  • 2016年5月
  • 2016年4月
  • 2016年3月
  • 2016年2月
  • 2016年1月
  • 2015年12月
  • 2015年11月
  • 2015年10月
  • 2015年9月
  • 2015年7月
  • 2015年3月
  • 2015年2月
  • 2015年1月
  • 2014年12月
  • 2014年11月
  • 2014年10月
  • 2014年9月
  • 2014年8月
  • 2014年7月
  • 2014年6月
  • 2013年10月
  • 2013年9月

Facebook

お問い合わせ

お問い合わせ

人気の記事

  • 【書籍要約】数学的な仕事術大全
  • 世界初!「空間コンピューティング」を専用端末不要、スマホのWebブラウザのみで実現する『Web XR Site』を公開しました
  • Appleから新世代MRグラス「Vision Pro」の登場 – デジタルと現実世界が融合する新時代へ
  • ARアプリ『MUGHEN』が世界最大のAR/VRアワード「AWE」のファイナリストに選出されました!
  • 「SwinIR」で高画質化した画像を pythonを使用して一括で元のサイズに戻す方法

カテゴリー

  • AI・ディープラーニング
  • AR
  • BtoB
  • CMS
  • Git
  • Google AdWords
  • gulp
  • Javascript
  • Laravel
  • Photoshop
  • Pug
  • pyhotn
  • Sass
  • SEO
  • SNS
  • Twitter広告
  • VR
  • Web3.0
  • WEBサイト
  • WEBマーケティング
  • YouTube
  • コーディング
  • システム開発
  • スマートフォンサイト
  • セキュリティ
  • セミナー
  • その他
  • ツール
  • デザイン
  • ベトナムレポート
  • 仕事術
  • 未分類
  • 業務効率化
  • 空間コンピューティング
  • 色

検索

ALAKI株式会社 © 2025. All Rights Reserved.