Amazon Lumberyard と Twitch の連携を試してみる　（Lumberyardセットアップ編）

Amazonから新しくゲーム開発のクラウドプラットフォームAmazon Lumberyardが出たので、早速触ってみました。
Amazon Lumberyardと一緒に連携サービスの情報も出ていたので、簡単にまとめてみます。

#### Amazon Lumberyard 
 + 3Dゲーム開発エンジン　CryEngineが基らしい
 + 料金は無料
 + 対応Platformは、PC,PS4,Xbox (iOS,Android　VR向けにも対応予定)

#### Amazon GameLift
 + マルチプレイヤーゲーム向けの運用とスケールをセッションベースで変更できる開発エンジン
 + サーバーがスケーラブルなため、ゲーム開発者は使った分の費用だけを支払えば良い
 + 料金は、1000デイリー・アクティブ・ユーザーごとに1.50ドル　（＋　サーバー、DB等の料金）

#### Twitch
 + ゲームストリーミングサービス
 + Amazon Lumberyardと連携出来る
 + 開発者はTwitchにいる月間ゲーム配信ユーザー170万人と月間視聴者1億人以上に向けたゲームプレー機能を構築することができる
  - Twitch ChatPlay  
配信者が同エンジンで開発されたゲームを配信している場合、投票によってゲームの進行を変化させたり、特定のプレイヤーをパワーアップさせるといった視聴者がゲームに参加できる
  - Twitch JoinIn  
マルチプレイ対応ゲームで配信者がファンを招待し、サイド・バイ・サイドのゲームプレイ映像を配信できる

参考：
　http://jp.techcrunch.com/2016/02/10/20160209aws-announces-new-set-of-integrated-services-aimed-at-game-developers/
　http://japan.cnet.com/news/service/35077640/

# Twitch ChatPlay を試してみる
ゲームを配信しながら視聴者もゲームに参加できる Twitch ChatPlay は、新しいゲームの楽しみ方が作れそうで面白そう！と思ったので、早速触ってみることにしました。

今回は、Amazon Lumberyard のダウンロードから、Twitchのコメントを拾って動作するプログラムを作りました。
所要時間は、90分ほど。※ネットワーク速度等に大きく左右されます

## Amazon Lumberyard のダウンロード
Amazon Lumberyard のページからZIP形式でダウンロードできます。
https://aws.amazon.com/jp/lumberyard/downloads/

ダウンロードが終わったら、ZIPを解凍します。

**解凍中にエクスプローラーが応答なしになってしまう場合．．．**
ほかの解凍ツールを使用するか、圧縮フォルダ内を開いて（ZIPファイルをダブルクリック　下画像参照）1項目ごとコピーしていけば問題なく解凍？できると思います。
<img height="150" alt="ZIP_Exproller" src="http://cl.ly/420q1H162a3x/01_install-02.jpg">


## Amazon Lumberyard のセットアップ
1. ランチャー起動
Amazon Lumberyard のZIPファイルの中身は画像のようになっていると思います。
<img height="150" alt="LumberyardFolder" src="http://cl.ly/420q1H162a3x/01_install-02.jpg">
この中の、`LumberyardLauncher.bat` を実行すると、Lumberyard のランチャーが起動します。

2. 使う機能の選択
Get Startedの画面が開いていると思うので、Lumberyardのパスの確認と、使う機能の選択をします。
Lumberyardのパスは、変なことをしていなければデフォルトで良いはずです。
使う機能は、今回はエディタ起動とコンパイル・実行くらいができればよいので、上3つにしました。
（下図参照）
<img height="150" alt="LumberyardLancher_GetStarted" src="http://cl.ly/0F380o2P3k2B/01_install-06.jpg">

3. 必要なソフトウェアのインストール
使う機能を選択すると、必要なソフトウェアが自動でリストアップされます。
左の`Required Software`のタブでその一覧が確認できます。
今回は、最低限必要な DirectX と VisualStudio のみインストールしました。
<img height="150" alt="LumberyardLancher_RequireSoftware" src="http://cl.ly/1T2r3b0l3q1C/01_install-07.jpg">

4. いざ起動！
左の`Required Software`のタブの赤×マークが消えたら、`Summary`のタブを選択します。
ウィンドウ右上に`Lanch editor`というボタンが出ていると思うので、おもむろにクリックしてみてください。Lumberyard Editorが起動します。
<img height="150" alt="LumberyardLancher_Summary" src="http://cl.ly/3m2r2B160f0D/01_install-09.jpg">

5. AWSのアカウントを入力
Editorが起動すると、AWSアカウントのメールアドレスとパスワードを聞かれますので、ささっと入力してしまいます。
<img height="150" alt="LumberyardEditor_Login" src="http://cl.ly/0h1v0R1t2U26/02_exec-01.jpg">

## Amazon Lumberyard のプロジェクト選択
ログインを済ませると、Level（ゲームの1ステージ分のデータのようなイメージ？）選択画面が出てきます。
<img height="150" alt="LumberyardEditor_SelectLevel" src="http://cl.ly/3O17441t411w/02_exec-02.jpg">
今回は一から作る気はさらさらないので、サンプルプロジェクトを使います。
`OpenLevel`を選択し、`Sample/Movers_Sample`を選択します。
<img height="150" alt="LumberyardEditor_OpenLevel" src="http://cl.ly/2B160D3n390W/02_exec-03.jpg">

少し待つと、Levelが読み込まれます。
`Ctrl + G` でゲームを実行できます。R2○2に似ているようで似ていないロボットがぬるぬる動かせます。`Esc` でゲームを終了します。
<img height="150" alt="LumberyardEditor_LoadLevel" src="http://cl.ly/1M2K0h153I2Q/02_exec-04.jpg">

なんだかこれだけでも達成感がありますね。何も作ってないですが。
だいぶ長くなってしまったので、プログラミングとTwitchは後編で説明します。