Unity+Node.jsを使ってリアルタイム通信を試みる その2(Unityメイン)


Unityを使ってNode.jsでリアルタイム通信を試みます
前回作成したサーバーを利用するのでSocket.ioを使いたいのですが、Unity側では「Socket.IO for Unity」というアセットを利用します。



Unityの
Window>Asset Store
から「socket.io」で検索すれば出てくると思います。

カラのプロジェクトを作成したら、Socket.IO for Unityをimportしてください。
中にSocketIOTestというシーンフィアルがあるので開いてください。

HierarchyにSocketIOというオブジェクトがあるでその設定を変更
中にあるSocketIOComponentのurlを以下に変更
ws://192.168.33.40:3000/socket.io/?EIO=4&transport=websocket
スクリーンショット 2015-03-29 22.40.58
192.168.33.40に関しては用意した環境に合わせるようにしてください

次にSocketTestオブジェクトにTestSocketIOというスクリプトがはっついて無かったらコンポーネントを追加してください。
スクリプトの中を少し編集します
メッセージを受信した時の関数を追加してます。2箇所あるので注意してください

ちなみにサーバー側の内容が以前のサーバーとなっていれば、Unityを起動すると時間をずらしながらBeepのコマンドを5回投げます。
ちょっと見づらいですが、Unityとブラウザを同時に立ち上げてるとBeepで送られてくるメッセージが表示されます。
また、ブラウザからメッセージを発信するとUnity側ではデバッグログに送っている内容が届いているのがわかります。

スクリーンショット 2015-03-30 21.55.04

あとはゲームの中でどうやって使うかはまた別のお話ですね。
とりあえずサーバー側とクライアント側でのやりとりが確認出来ました。
簡単なアプリを使ってWebGLとかにして公開しようか検討中・・・
パソコンショップ「ドスパラ」が一押しする、今話題沸騰中のスティック型PC!!




コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">