ネットゲームつくろうぜ on unity
DESCRIPTION
Unity でネットゲTRANSCRIPT
ネットゲーム作ろうぜ on Unity@shinriyo
2011年12月3日(土)
今日UnityGamesでリリースSaturday, December 3, 11
最初に
作り方と言うより、サンプルを動かすまでのHowToです。ハマりポイントなくせると思います。
XmasGameJam に参加して、さくらクラウドでも借りて、くにおくん的なネットゲを作りたいので調査で行いました。
Saturday, December 3, 11
XmasGameJamある専門学生から発足したXmasにゲームを作るゲームジャム(金~日の3日間?)
Twitterハッシュタグ#XmasGJ (本家) #XmasGameJam(こちらも一応ある)
Wiki http://www38.atwiki.jp/at10310/
Facebook http://www.facebook.com/groups/xmas.gj/Facebook
Saturday, December 3, 11
どんなサーバがある?photon・・クラウドサービス Unity公式サイトでも紹介されサンプルもある Hello Worldのやり方もあるし公式でもUnityロゴ
uLink・・・公式サイトさえどこか不明
SmartFox・・クラウド、公式にUnityロゴ
Node.js・・・関西の勉強会の資料を見たり「JavaScriptで MMOG をつくってみよう」で試したが挫折
ES5・・・http://www.electrotank.com/resources/
Saturday, December 3, 11
photon
Saturday, December 3, 11
How to use photonhttp://www.exitgames.com/
①まずはサインアップ“Sign Up”“Sign In”
②E-mailを入力
Saturday, December 3, 11
Application IDをゲット
これをメモしておく。クリップボードにコピー可
Saturday, December 3, 11
ダウンロードとインポート
⑤前ページのIDを入力
command + 9(Mac)、Ctrl + 9(Windows)
②photonで検索
④これはWeb登録と同じ手順なので無視
①Asset Store起動
③プラグインをダウンロードしてUnityへインポート
Saturday, December 3, 11
確認&テストシーンを開く
Host Type:PhotonCloudServer Address:app.exitgamescloud.com
ポート番号:50555
※localhostになってる場合がある
①設定ファイルの確認
②インスペクタの確認
③設定の確認
Saturday, December 3, 11
再生ボタン→部屋に入る
←(1)自分の名前部屋名、今回いじらない→
←(3)最後にGO(2)入力→
Saturday, December 3, 11
ファイル構成
◯Code_enabler・・ Code_gameと Code_menu切替◯Code_game・・ゲーム用GUI、チャットやゲームのスクリプトがアタッチ
◯Directional light・・ライト(平行光)◯Code_menu・・ログイン用GUI(MainMenu.cs)
◯Main Camera・・カメラ◯Plane・・地面
Chat.cs GameManager.cs
Playerプレハブを使用している↓
おなじみのキャラ
Saturday, December 3, 11
プレイヤーとの衝突・・
void OnControllerColliderHit (ControllerColliderHit hit) {
if (hit.gameObject.tag == "Player") {
Debug.Log("player hello");
}
ThirdPersonController.csにキャラクター操作を行う部分が記載されている
←このログが出ない!
教えてください!!
この太字のコードを追記したができない!
Saturday, December 3, 11
ES5(Electron Server)
Saturday, December 3, 11
ES5
http://www.electrotank.com/resources/downloads.html
まずはサーバーをDL。Mac版もあるよ。右側がオフラインインストール
ES5は、クラウドではなくJavaで動くインストールするサーバです。
Saturday, December 3, 11
サンプルは?
http://www.electrotank.com/docs/es5/manual/
ファイル名:RTSGame.zip
AvatarChat (ファイル名:AvatarChat.zip)も下の方にあるよ
Saturday, December 3, 11
RTSゲームのサンプル使用RTSGame.zipを解凍↓
※このディレクトリをProjectとしてUnityから開くのではない!
説明がある。これからスライドで説明する内容が書かれてる
・リアルタイムストラテジー(WIkipediaより)
リアルタイムストラテジー(Real-time Strategy、RTS)とはコンピュータゲーム(主にパソコン向け)のジャンルの一つ。命令および行動の順番が明確に決まっているターン制ストラテジー(Turn-Based Strategy、TBS)ゲームとは違い、プレイヤーはリアルタイムに進行する時間に対応しつつ、プランを立てながら敵と戦う。
サンプル内
on Mac
Saturday, December 3, 11
Unityのファイルはどれ?
このディレクトリをProjectとしてUnityからひらく
csharpをRTGameにリネームした
サンプル内
Saturday, December 3, 11
サーバーは?
先ほど説明したサーバをダウンロードしてインストールすると「/Applications」の中にES5がインストールされています(Mac)
このextensionsへサーバ用データをいれる(次スライドで説明)
/Applications
先ほどの「ElectroServer_5_3_1_64bit_OSX_Offline.dmg」をインストールした前提
Saturday, December 3, 11
サーバ用データはどこ?
extentionの略語と思われるextフォルダの中に入ってる
先ほどのES5の中にあったextentionsの中へフォルダごと入
れるextentionの略語と思われるextフォ
ルダの中に入ってる
ES5
サンプル
Saturday, December 3, 11
ES5を起動する!
$ cd /Applications/ElectroServer_5_3_1/server/
$ java -jar lib/ElectroServer5-bootstrap.jar -config config/Configuration.xml
詳しい設定方法やオプションはこのhtmlかpdfを参考にして下さい。
Saturday, December 3, 11
Unityサンプルでの設定
Server URLにはelectrotank社が提供している84.73.228.85のIPアドレスが書かれてるのでifconfigとかで自分のIPを調べて変更する。
(一応そのままのIPでも動く)
loginシーン
Saturday, December 3, 11
実行
※注意
IPアドレスをミスっても・・・何も警告メッセージ出ません、遷移しないだけ
重複するユーザ名がいても・・・何も警告メッセージ出ません、遷移しないだけ
入力を促す” | “の点滅が始まるのみ。
Saturday, December 3, 11
ゲーム開始
Web Playerに吐き出して、Unity EditorとWeb Playerで対戦やWeb Player同士でもOKです。ゲームの遊び方はわかりません
待受画面
WebPlayer用に吐き出すとなぜかjsが??
WebPlayerで吐き出した
Saturday, December 3, 11
日本語やハングルも入る
Saturday, December 3, 11
AvatarChaton Windows
[Start]メニューからリンクをたどる
ElectroServer_5_3_1_32bit_Windows_Offline.exeをインストールしてる前提、
Windows版はサーバアプリケーションにはGUIツールがある!
Saturday, December 3, 11
AvatarChat
実は、ここにサンプルっぽいのがある
今回は使わないし、未検証
Saturday, December 3, 11
AvatarChatのzipを展開
サンプルのzipフォルダの、server->java->dist->extの中
サンプルzip内
Saturday, December 3, 11
サーバ側へデータ格納
Macと同様、先ほどのextの中にあったAvatarChatをディレクトリごとextensionsフォルダへ格納する
[続行]ボタンを押す
Saturday, December 3, 11
サーバを起動しておくこいつを起動
Saturday, December 3, 11
サービスなど
Saturday, December 3, 11
一方、クライアントはclient->unity->csharpディレクトリをUnityでプロジェク
トとしてひらく
↑今回もcsharpをAvatarChatへリネームした
Saturday, December 3, 11
シーンを開く
ex5_loginシーンを開く、今回のサンプルはインスペクタでの設定はない
Saturday, December 3, 11
実行
・ログイン名
・IPアドレス
・ポート番号
ログイン時に以下を問われます
ipconfigコマンドで自分のIPを取得して書き換える
Saturday, December 3, 11
ゲーム画面
スクリーンショット撮り忘れました
Saturday, December 3, 11
以上
何かわかれば教えてください
Saturday, December 3, 11