【Unity】UNETについてわかったことメモ【P2P】
今年の夏くらいにUnity5.1から実装されたマルチプレイ用のネットワークシステムUNETですが
思ったよりネットの文献も少ないし本も出てないし公式マニュアル読んでもよくわからんしで
色々自分なりに調査してみた結果をまとめてみます
そもそもUNETとは?
マルチプレイ用ゲームのネットワーク関連の機能を実装できるクラス
マルチプレイとは言うのもの、基本的にはプレイヤーのうち誰かがホストとなり、ゲストプレイヤーがそれにぶら下がるP2P通信タイプのゲームのこと
ホストの接続が落ちたらそれにぶら下がったゲストプレイヤーも接続が切れるやつである
サーバ→クライアントのような方式には出来ないのか?
出来るには出来る
しかしnode.jsやサーバサイド開発言語などを使った一般的なリアルタイムゲーム(白猫みたいな)とは大きな違いがある
まずサーバ用の言語を必要とせず、サーバで動くのはクライアント用にビルドしたものと同じUnityのプロジェクトだ
イメージ的にはP2Pのホストプレイヤーの役割をサーバが行っている感じだ
Minecraftやterrariaのようなプレイヤーが一時的にサーバとなり、そこに他のプレイヤーが接続するゲームの開発を想定しているのだろう
確かにそういったゲームを作るならお手軽感がある
サーバを経由せず通信を行うため、ハッキングに弱いのではないかと思われる。自分がホストになってしまえばある意味やりたい放題出来る可能性がある。