Unity入門 - Photon Realtimeとの連携 -

最近のスマホ向けソーシャルゲームは、マルチプレイが主流になってきており
オンラインマルチゲームを作りたいと思ったときの選択のひとつとして
「Photon Realtime」の利用が挙げられます。

Photon Realtimeとは

PCやAndroid, iPhoneでリアルタイム通信を簡単に実装できるネットワークエンジン。
Unityをはじめとする主要プラットフォームに対応。
オンラインゲームによくあるチャットシステム、MMOゲームを作るために必要なネットワーク機能やサーバ機能を提供。
無料アカウントでは同時接続ユーザー数20まで対応。

Photon Realtimeの導入

Photon Realtimeサービスへの登録

使用するためにはアカウントを作る必要がある。
アカウント作成は無料で、フリーのメアドを使用できる。

ここから登録 -> Photon Realtime

f:id:hiro1986:20150623022036p:plain

メールアドレスを入力して「新規登録」ボタンをクリック。
届いたメールから本登録。

サインアップが完了したら、「ダッシュボード」->「Realtime」を選択。
アプリケーションIDを確認。
アプリケーションIDは、後ほどUnity側で設定が必要です。

Photon Unity NetworkingをAssetStoreからインポート

AssetStoreで「photon」と検索すると、「Photon Unity Networking Free」という
アセットがあるので、これをダウンロード。

f:id:hiro1986:20150623022659p:plain

PUN WizardでアプリケーションIDを設定

「Window」->「Photon Unity Networking」->「PUN Wizard」

f:id:hiro1986:20150623023152p:plain

「Setup Project」をクリック

f:id:hiro1986:20150623023336p:plain

アプリケーションIDを入力

Build SettingsにSceneを登録

f:id:hiro1986:20150623023619p:plain

「DemoWorker-Scene」「DemoWorkerGame-Scene」をそれぞれ登録しておく。

Unity上で「DemoWorker-Scene」を起動してみる

起動すると下記のようなロビー画面が表示される。

f:id:hiro1986:20150623023905p:plain

すべてデフォルト設定で問題ないので「Create Room」ボタンを押すと
ヘルメットをかぶった作業員が現れます。

f:id:hiro1986:20150623024026p:plain

WebPlayerプラットフォームとしてBuildする

「File」->「Build Settings」->「Build and Run」
でBuildして、ブラウザ上で同じ部屋に入ってみる。

すると先ほどの作業員の上に、ブラウザから入った作業員が現れます。(笑)

f:id:hiro1986:20150623024533p:plain

Unityとブラウザで色々動かしみる

Unity上と、ブラウザ上でウィンドウを並べるとリアルタイムで同期されることが分かります。

f:id:hiro1986:20150623025049p:plain

左下のチャット機能もしっかり動いてました。

次回はPhoton Realtimeを使って簡単なゲーム性のあるものを作ってみたいです。
すべて無料で試せてかつ、難しい設定はいらないので、軽く触ってみると面白いと思います!