【GDC 2011】 記事チェック
記事リンク集+簡単な感想。随時追記予定。
★付きはオススメ。
- 【GDC2011】2010年の革新的なゲームデザインを振り返る
- ★ 【GDC2011】ゲームは様々な分野に活用できる・・・Gamificationという考え方
- ゲーム自体の活用事例を知ることによって、ゲームそのものを知ることができる。
- 【GDC2011】グーグルが語るスマートTVにおけるゲーム
- X端末とかクライアントPCとか言われてたものが、いよいよ表舞台にといったところでしょうか。
- 【GDC2011】ブースを初めて出展したグーグル、「Google TV」のゲームなどで注目を集める
- ★ 【GDC2011】ジンガが振り返る『FarmVille』と『CityVille』で得た教訓
- 大きな声を発して響くことが大事。リーダーシップ論は学部レベルでちゃんとやったほうがいいと思う。
- 「SOCIAL & ONLINE GAME SUMMIT」レポート その1 Zyngaの2大ヒット作「FarmVille」と「CityVille」の開発環境を比較
- ★ 「SOCIAL & ONLINE GAME SUMMIT」レポート その2 マネタイズ、Flash、ゲームデザインなどソーシャルゲームを取り巻く諸要素を考察
- 【GDC2011】みんなで描くピクセルの絵・・・果たして完成するのは
- →要結果追跡
- 【GDC2011】大成功の前には51本の失敗が・・・ゲームを超えて飛躍する『Angry Birds』
- 諦めないための「手法」が知りたいな。
- ★ 【GDC2011】グリーとUnityが技術提携・・・ iOS/Android向け開発を容易に
- 競合さんがどうするかが見物。
- ★ 【GDC2011】勢いを感じられたUnity、GREE対応や時期バージョンをチェック
- ★ 【GDC2011】多言語音声収録ミステリーツアー、5カ国のローカライズ担当者が語る効率の良い音声収録の方法論
- 多言語に限らず、単一の言語でも充分参考になります。
- 【GDC2011】PlayStation Homeのv1.5が発表、FPSやレースゲームも可能に
- 【GDC2011】 「Unreal Engine 3」がDirectX 11に対応、Epicのブースではデモも披露へ
- 【GDC2011】ゲーム体験だけでなくローカライズも新次元に導いたキネクト
- ★ 【GDC2011】ゲーム作りの方法を変える・・・スマートフォンで活躍するZynga with Friends
- ゲーム開発ゲリラ戦の戦い方。
- 【GDC2011】EAパートナーズ、モバイルやソーシャルゲームにも拡大
- 大資本が参入してくるのは歴史の必然。
- 【GDC2011】ビジネスに重要なのは愛だろ、愛!BioWareにおけるローカライズプロセスについて
- 【GDC2011】ビジネスに裏打ちされたローカライズ・・・NC Softの『Guild Wars』
- 【GDC2011】Xperia Playを初体験・・・Havokがサポート、MLGでプロモーション
- 【GDC2011】任天堂・岩田社長の基調講演は日本時間の3日2時より・・・ライブ中継あり
- 【GDC2011】ゲーム性を活用して地域活性化に・・・「メイコン・マネー」の実例
- 【GDC2011】hi5、新たな収益モデルとして「SocioPay」を導入
- 何度見ても、このロゴには笑ってしまう。
- ★ 【GDC2011】ゲーミフィケーション、明日から使える60のハウツー
- 【GDC2011】「Xperia Play」の戦略をソニー・エリクソンが語る
- 【GDC2011】マネージドサービスやソーシャル版も登場、生産性を追求したゲームエンジン「HeroEngine」
- ★ 【GDC2011】ソーシャルゲームで致命的に重要な7つの指標
- どんなものでもちゃんと定量化するのが偉い。
- 【GDC2011】求人数は回復傾向? 熱気が戻ったキャリアパビリオン
- 日本で同じような事をやるとするなら、会社間での仕事の融通の話になるんだろうなぁと思った。
- 【GDC2011】SCEA、PC上でPS Move用のアプリケーションを開発できる「Move.Me」を発表
- ★ 【GDC2011】米国でNGPが初お披露目・・・技術面を中心に紹介
- さりげに前より詳細な情報がでてるのがいいですね。
- 西川善司の3Dゲームファンのためのグラフィックス講座【GDC特別編】 今さら聞けないNGPスペック講座 そのスペックは携帯ゲーム機としての新しい遊びを訴求するためのもの
- 【GDC2011】クールなGDCグッズも売っている「GDC STORE」をチェック
- さすがに饅頭はうってないよね?
- 【GDC2011】Tシャツとポスターを忘れずゲットせよ
- ★ 【GDC2011】43歳の女性が遊びたいゲームとは?Zyngaの女性プロデューサーが語る「萎え」と「萌え」
- 【GDC2011】中東諸国のゲーム市場の現状と課題・・・いずれは成長市場に?
- アフリカのゲームの話とかも聞いてみたくなる。
- 「Localization Summit」レポート アラブ人はPS3が好き!? 最新データから見る中東ゲーム市場
- ★ 【GDC2011】Crytek、 「CryEngine 3」の最新テクノロジーデモ映像を公開
- 【GDC2011】北朝鮮がサンフランシスコに侵攻!? 『HOMEFRONT』の攻勢が凄い
- 【GDC2011】SCEブースでは「Move.me」でラジコンを動かすデモが
- ★ 【GDC2011】ゲームを面白くするためのデータ解析・・・『Dead Space 2』の実例
- 改善すら自動化されるのも時間の問題ですね。
- ★ 【GDC2011】DirectX 11に対応したUnreal Engine 3の実力に度肝を抜かれる
- ★ 【GDC2011】コンテンツ作成からゲーム開発全体まで・・・オートデスクの戦略を聞く
- コンテンツ・パイプラインにも手を出すみたいですしね。
- 【GDC2011】毎日1億回以上遊ばれる不朽の名作パズル『Bejeweled』の10年を振り返るポストモーテム
- 【GDC2011】ゲーム開発者が選んだ2010年のベストゲームとは? 鈴木裕氏がパイオニア賞
- 【GDC2011】天才ゲームプロデューサー、マーク・サニーが語る彼のゲームデザイン手法の基礎
- 何故かはわからんが、週刊アスキーの「なれる!SE」の初めて触ったPC編の連載を思い出した。
- 【GDC2011】5日間の日程を終了・・・来年の開催日程も発表に
- 花粉症の転地療法としてもよさそうだよね、と思ってみたり。
- 【GDC2011】英国、ドイツ、フランスだけでない欧州市場・・・デジタル流通に大きな期待
- 【GDC2011】ディズニー傘下のPlaydomが語ったソーシャルゲームマーケティング
- 【GDC2011】遮蔽物を計算することでレンダリングを効率化するミドルウェア「Umbra 3」
- CC2の松山氏と竹下氏が「ナルティメットストーム2」で講演 アニメの「神作画」を3DCGで再現する数々のアイデアを披露
- ちゃんと要素に分けて1つ1つを丁寧に考えることが大事。
- Wii「ドンキーコング リターンズ」Retro Studiosの開発秘話 北米デベロッパーに輸出された任天堂の独特な開発手法とは
- ゲリラ戦にも総力戦にも強いわけだ。
- スクエニ鈴木光人氏が語った「ファイナルファンタジー」の音楽の作り方「PS3 and NDS, the Two Extreme FINAL FANTASY Series」
- ★ GDC2011、NVIDIAブースレポート 未発表のウルトラハイエンド、GeForce GTX 590がプライベートルームで実動公開! TEGRA3のスペックも少しずつ明らかに!
- ★ バイオフィードバックでゲームの完成度を高めろ! ValveとEAが取り組む、生理学的な指標をゲーム体験向上に繋げる方法
- テストにリソースを投入するのは「当然」であって、失敗できないタイトルであれば、定量化して計測して評価して反映するという一連のプロセスをシステム化した上にリソース投入してまでやるのも必然。でも、我々はそのまま後を追うだけでは追い抜けない。
- 「ニンテンドー3DS」総合プロデューサーの紺野秀樹氏が講演 通信機能やARなど、裸眼立体視以外の魅力をアピール
- “GAIKAI”が示した衝撃的なクラウドゲーミングの世界「Cloud Gaming: 10x the Audience for your PC games」
- 2K Games、「The Darkness II」ファーストルック 闇の力、銃、そして環境要素を駆使する多彩なアクション! 激しすぎるバイオレンス表現はローカライズの障害になるか?
- 西川善司の3Dゲームファンのためのグラフィックス講座【GDC特別編】NGPに採用されたGPUの開発元に聞くPowerVR SGX543MP4+の全て NGPよりも世代の新しいGPUを早くも発表!?
- 岩谷徹氏が「パックマン」を語り尽くした「ClassicPost Mortem 『PAC-MAN』」レポート 「パックマン」は女性向けにデザイン、次回作は“歌うパックマン”?
- EA、「Battlefield 3」の最新映像を公開。衝撃的なクオリティ! プレイ料金無料のオンライン版「Battlefield Play4Free」は4月サービス開始
- ドルビー、「ファイナルファンタジー XIV」にドルビープロロジックIIzの採用を発表 垂直方向を含めた3次元音場を豊かに表現、Windows版とPS3版の両方で実装を予定
- さらに専門的な話題へ。AI Summit レポート テーマは「どのように実現するか」。ゲームAI開発者が直面する問題とは?
- GDC Smartphone Summitレポート その1 焦点はプラットフォームから具体的なアプリ事例へと変化
- GDC Smartphone Summit レポート その2 「HOMERUN BATTLE 3D」の成功秘話など、スマートフォン向けゲーム開発のこれからを占う2セッション
- GDC Smartphone Summitレポート その3 美しいだけではない「Infinity Blade」、iPad専門セッションも開催
- Android Developer Dayレポート 異なる端末間で互換性を確保するには? NDKやOpenGL ES 2.0などのAndroidゲームのあれこれ
- 米EA、プライベートショウ「EA Partners Showcase」を開催 強力な大物タイトルを続々披露、モバイル/ソーシャル向けのパブリッシャープログラムも発表
【GDC 2011 preview】 プログラミングセッション系の事前チェック(その3)
すっかりサボってました。GDC 2011 までは後もう1週くらいですが、のんびりやろうかなと思ってます。
- Efficient Compute Shader Programming - Wednesday 10:30-11:30 Room 301, South Hall
Direct3D 11 の演算シェイダーの効率的な使い方を紹介するスポンサーセッション。
Direct3D 11 の演算シェイダー (compute shader) はポスト処理のようなグラフィックス性能を向上させるために強力な機能で、従来 CPU 演算していた処理を代替する事により性能向上を見込める。ただ、軽微な変更が大きな影響を与えたりするので、上手に作るにはハードウェアの知識が必要だったりする。デバッグや最適化を行なう上でAMD の PrefStudioを活用してみようという話。
- Efficient Scaling in a Task-Based Game Engine Wednesday 10:30-11:30 Room 302, South Hall
2013 年くらいには平均的な PC は 4 コアである事が想定され、最新のハードウェアを最大限に活用するには、Tasking を使うと良いという話。レンダリング、アニメーション、MLAA 等の並列化あたりが実例として出てくる模様。
MLAA については Practical Morphological Anti-Aliasing あたりを見るといいかも。
- Fighting Real Time Wednesday 10:30-11:30 Room 308, South Hall
テスト系サーバーとか中国サーバーとかを除けば、基本的に単一の「ワールド」で運用されている EVE ONLINE でのリアルタイム分散システムを構築する上での理論や設計上の制約、運用上の問題を解説するセッションかなと思われる。
- SPU-Based Deferred Shading in BATTLEFIELD 3 for Playstation 3 Wednesday 10:30-11:30 Room 3002, West Hall 3rd Fl.
SPU ベースのディファードシェイディングのシステム設計や豊富なマテリアルの種類のサポート、HDR 関連、いろんな種類の光源、カリングやオクルージョン、最適化回りの話。PLAYSTATION3 を触る人は聴いておきたい感じがするセッション。
- Windows Game Development Update - Wednesday 10:30-11:30 Room 110, North Hall
Windows でゲーム作る上での最新情報を大本営が発表するセッション。
XNA math、DirectX11、GPUView 、DirectX SDK のロードマップとかの紹介がトピックの模様。
【GDC 2011 preview】 プログラミングセッション系の事前チェック(その2)
- Unity Track Day (Presented by Unity) - Tuesday 10:00- 6:00 Room 123, North Hall
Web, iOS, Android, コンソール向けの Unity のチュートリアル。作りたいものをエディタで構築したり、シェイダーの記述する基礎レベルから、アセットパイプラインの自動化や iOS, Android 向けの最適化あたりまでの話題を取り扱う模様。
- Automated Testing Roundtable: Proper Care and Feeding of Your Robot Armies - Wednesday 10:30-11:30 Room 114, North Hall
- Automated Testing Roundtable: Proper Care and Feeding of Your Robot Armies - Thursday 3:00- 4:00 Room 113, North Hall
- Automated Testing Roundtable: Proper Care and Feeding of Your Robot Armies - Friday 2:00- 3:00 Room 114, North Hall
自動テストがテーマのラウンドテーブル。
計算機が暇な時に自動テストを動かせば、不具合の早期発見やイテレーションの時間を削減する事ができるので便利だという話。最近、よく話題にもなっていますね。モンキーテスト、自動ビルド、ユニットテスト、静的コード解析、AI やバランスや世界構造をテストするためのシナリオ、各種性能測定あたりがキーワード。水曜日はテスト、木曜日はインフラ整備回り、金曜日はデータ収集とその活用についてがトピックのメインになる模様。
AI、プロシージャルの系譜で、ユーザを楽しませるだけじゃなくて、開発者も楽しくやる事が結果的にタイトルのクオリティを向上させるという考え方がベースというか。
- Break It Down! How Harmonix and Kinect Taught the World to Dance; The Design Process and Philosophy o... Wednesday 10:30-11:30 Room 135, North Hall
kinect のダンスゲーム "Dance Central" をいかにして作ったのかを紹介するレクチャー。kinect に希望を見出してから全身を使ったダンスゲームを一つのジャンルに昇華させるまでの過程を紹介する模様。
既存の技術の延長上に乗らない技術の登場に対する対応についての実例報告という意味で興味深いセッション。意識の持ち方というより、チームマネージメントとしてどうだったのかは詳しく知りたいところ。
- Data Management For Modern Game Pipelines (Presented by Autodesk) - Wednesday 10:30-11:30 Room 120, North Hall
バージョン管理、データ処理、ライブ編集、ワークフロー間の連携等のベストプラクティスを盛り込んだ Autodesk 製のパイプラインのフレームワーク DNA を紹介するセッション。
パイプラインフレームワークが標準化すれば、対応にあたる TA も標準化が促進される事になるんじゃないかなとも思う。
【GDC 2011 preview】 プログラミングセッション系の事前チェック(その1)
GDC 2011 のセッション事前チェック。業務の都合今年も行く事は叶わない情勢ですが、トピックに触れておくだけでも得られるものは大きいので、個別に見ていく事にします。
- Advanced Visual Effects with DirectX 11 Monday 10:00- 6:00 Room 308, South Hall
GPU/APU を活用するような最先端の PC ゲームグラフィックス環境で使えるような様々な特殊効果を、DirectX 11 を軸に履修するチュートリアルセッション。グラフィクスエンジンやシェーダを構築する上で、高度なリアルタイムレンダリングの詳細説明と、ベンダー中立な最適化までがカバーされる。
- Google Developer Day (Presented by Google) Monday 10:00- 5:00 Room 121, North Hall
Google がゲーム開発者向けに提供するサービスを紹介するチュートリアルセッション。Google Cloud, Chrome, WebGL, Native Client, Google App Engine, YouTube APIs あたりが紹介される見込み
- Android Developer Day (Presented by Google) Tuesday 10:00- 5:00 Room 121, North Hall
Android でのゲーム開発がテーマのチュートリアルセッション。グラフィックス、サウンドの扱いから、NDK を使った C/C++ での開発の説明がなされる模様。
- Kinect Developer Summit Tuesday 10:00- 6:00 Room 304, South Hall
アプリケーションでの活用系と、よりよく使うための Tips を扱う系の 2 系統のチュートリアルがあるらしい。
- hysics for Game Programmers - Tuesday 10:00- 6:00 Room 308, South Hall
物理シミュレーションの基本的なところから、アプリケーションでは流体力学、高速化テクニックでは並列化等を取り扱ったり、ツール群やプログラマ同士の連携までの至れり尽せりを 1 日で叩き込む意欲的なチュートリアルセッション。
- Technical Artist Boot Camp: Lessons in How to Create and Be an Effective TA Tuesday 10:00- 6:00 Room 302, South Hall
イケてる TA になったり育てたりするためのチュートリアエウセッション。チュートリアルとなっているけど、ほとんどラウンドテーブルといった様相になるのかも。
トピックとしては、TA の地位向上、プログラマと TA の技術の違い、コンテンツを作り出すアプリケーションをいかに拡張していくのか、データベースの知識がツールやパイプラインの自己管理や新しい方法論のために拡張に役立つ事、パフォーマンスへの影響を避けられるようなシェイダーの作り方、ゲームグラフィックの限界を押し広げるような方法等。
紹介文を読んでいると前半の方の論調としてTA の重要度が増している割には、他の職種からの転籍組みが多い事、専門教育を受けて TA になった人が非常に少ない事、TA のスキルセットは非常に多彩である事、多くのスタジオで TA を「自家栽培」する文化が、TA がいまいち理解が得られずに、ある会社では価値のあるスキルセットが別の会社では意味が無いという状況を生んでいたりして「もんにょり」している事を訴えていて、TA という職種はまだまだ確立されていないんだなという印象を受けた。
今日はここまで。
【CEDEC 2010】 メニーコア対応ゲームエンジン
http://cedec.cesa.or.jp/2010/program/PG/C10_P0166.html
グラフィクス関係の新規技術を導入してもインパクトの薄い昨今、欧米に勝つためにはどうしたら良いのか。日本人は刃物が好きだし、欧米は銃が好き。日本人にとって銃は身近ではないから、合わせる方向で攻めても負けるだろう。ここは新しい流れを作っていくべきではなかろうか? ハードウェアの進化の方向を見定めて技術的な方向からの検討を試みる。というお話。
ムーアの法則は 18 〜 24 ヶ月毎に CPU のドランジスタ数は 2 倍になる*1という経験則。CPU 屋のモチベーションにもなっている*2。微細化、消費電力や発熱の増加で単にクロック周波数を向上させる事は困難になっている。性能を向上させるには SIMD 化、マルチコアが必要だというのは、「メニーコア時代へのプログラミング言語からのアプローチ」でも言われている通り。
ムーアの法則を逆に言えば、同じ性能の CPI は 18 ヶ月 〜 24 ヶ月毎に半分のサイズで出現するという事でもある。これはメインフレーム → PC → ケータイへの小型化の歴史からも物語られる。小型化、省電力化、グラフィクス能力の向上にあたって CPU と GPU を統合したプロセッサも出現してきている*3。
将来的なプロセッサの方向としては、CPU と GPU の完全なる統合が進むであろうし、メニーコア化にムーアの法則が作用するのであれば、PPE 64 core + SPE 512 core という構成のプロセッサが出現するかもしれない*4。
そこまで極端なものは出現しないにせよ、想定しておき準備をしておかねば、対応はできないのだから、せめて考察は必要だろう。
プログラミングするにあたってのテクニックとしては、SIMD や fork-join モデルはコンパイラの支援を受けられるかもしれない。負荷分散を行なうにあたってはタスクマネージャーによって負荷の均等化を図る、タスクマネージャー自体を分散化する事によりタスクマネージャー自身の負荷を下げる、プロセス毎にメッセージのやりとりをする事によって協調してタスクの制御を行なう、終了条件の判定として双方向リング終了アルゴリズム*5の話が出た。
将来データバスが問題になるだろうという予測も考えられ、これはデータバスをメッシュ化したりハイパーキューブ化したりといった方向で対抗されるだろう *6。コアに微細化したプロセスを半ば固定的に割当りあて、これらをバスで繋ぎパイプラインを形成する事により処理能力を引き出すというアーキテクチャが考えられる。
これらを有効に利用したゲームデザインは、2^25 (=約3300万)のオーダーの個別に AI を持ったキャラを扱うゲームといったものが考えられる。点以下の情報は確率分布等で扱い簡易的に計算し、復元計算には一定の展開アルゴリズムを使うと良いだろうという示唆がなされた。
*1: http://ja.wikipedia.org/wiki/%E3%83%A0%E3%83%BC%E3%82%A2%E3%81%AE%E6%B3%95%E5%89%87
*2:予言の自己成就ですね
*3:fusion APU 然り、PS3 なら PPE+SPE、XBOX360 なら XCGPU といった具合。
*4:ただ、この話は単純化しすぎの話であって、ある意味冗談レベルの話
【CEDEC 2010】 画像認識技術とゲーム・インターフェイス
http://cedec.cesa.or.jp/2010/program/PG/C10_P0129.html
昨年からの引き続きのセッション。結構楽しみにしてました。
EyeToy から EyePet へ
PlayStation2 で発売された EyeToy は認識を「動き差分」で実現していた。動き差分とは前のフレームと今のフレームの画像の差分をピクセル毎に取ったものである。負荷も低く、高ロバスト性を示す。
PLAYSTATION3 で発売された EyePet は当初背景差分*1で実現していたが、2 〜 3 分も動かしているとカメラの揺らぎ等でノイズが蓄積して認識精度が下がる。また床のカーペットが大きくずれるなどすると一気にノイズだらけになってしまう。そこで EyePet では動き差分に回帰した。
スクリーンを格子状に区切ってスイッチのように扱う。スイッチのエリア内で一定以上の動きを検出したら押された事にして、ユーザーとのインタラクションを実現する。「なでる」のようなペットキャラとの関わりは動的にスイッチを生成して動きの検出を行なう。BGとスプライトの関係みたいな感じ。
ユーザーの没入感を壊さない*2ためには、激しい変化があった場合にペットが逃げ惑う等の回避アクションでユーザーの動きを抑制するよう演出で誘導する。また仮想世界内のアイテムを使ってペットと戯れるというギミックにより直接触る事を避けて安定度とユーザーの楽しみを両立するというシステムを取っている。表面にARマーカーが張られている盾のようなもの*3を用意して、マーカーをカメラに向けさせる確率を高めるという工夫もしている。
実用に於いては演出やギミックで認識の安定性を高める工夫が重要である。
物体認識
「物体認識」と一口に言っても、いろいろある。Categorization はカテゴリーが多すぎて対応が大変。
Verification | 画像中の指定したものが指定のカテゴリーのものなのか判定する |
---|---|
Identification | 画像の中から特定の個体を発見する |
Detection | 画像の中から指定のカテゴリーの物体を発見する |
Categorization | 画像中に含まれる要素が一体どんなものであるのかを識別する |
画像認識の研究史は以下のような感じになっている。
1980 年代 | 線画マッチング |
---|---|
1990 年代 | グローバルマッチング |
2000 年代 | ローカルマッチング (局所的なマッチング) |
2010 年代 | ??? |
画面全体を見るグローバルマッチングではなく、画像の一部を見る局所的なマッチングを行うのが今の主流。
入力画像から特徴点を抽出し、特徴量を抽出し、学習や認識を行なうやり方である。
特徴点とは、画像のうち着目点になる点であって、コンピュータにとって都合の良い点が選ばれる。具体的な手法としてはハリスのコーナー検出がある。特徴量の抽出で特徴点から何を見るべきパラメータを抽出したりする。例えば SIFT という手法であれば特徴点付近の画像情報を使ったりする。
得られた特徴量を使って学習や認識を行なうのが画像認識の流れになっている。
これからの画像処理
これからの課題として以下が挙げられた。
- より認識が難しいものを認識する: 顔や車といったものは成果が得られているが、人、馬、犬はまだ良い成果が得られていない。
- シーンセグメンテーション: パーツを分割して、それぞれに意味を与える。車は空に浮いていない、とかのコンテキスト情報(知識)を使う事が有力でないかと言われている。
- 平面画像からの 3D 認識。
- 多くの物体の認識
画像認識の動向を追っていくには ICCV とか CVPR 等の学会の流れを追っていくと良いだろう。
まとめ
来年も楽しみです。SLAM とかやらないかなー。
*1: http://ja.wikipedia.org/wiki/%E8%83%8C%E6%99%AF%E5%B7%AE%E5%88%86
*2:「作られた世界を維持する」という表現が使われていた
*3:マジックカード
【CEDEC 2010】It's a showtime!! -DISSIDIA FINAL FANTASYのAI設計-
http://cedec.cesa.or.jp/2010/program/GD/C10_P0124.html
「全ての仕様は根本の部分で繋がっている」
「分けて考える」
DISSIDIA FINAL FANTASY は対戦アクションゲームであり、その CPU サイドの AI に要求される性能として以下が挙げられる。
- 短い時間で個性が表現できる事
- アクションとして手応えのある強さ
- バリエーション
- FF らしい事。戦闘でキャラが魅力的に見えない事には意味が無い。
1 つのタイミングで伝えたい事が多すぎると受け手には伝わらない。確実に伝えるためには内容を絞る必要がある。これらの要求を実現するためには「分けて考える」事にした。具体的には以下の戦略を採った。
- 時間を区切り、いつ何を見せるのかをはっきりさせた。
- 性格とスキル(ここでは AI としての強さ)を分けた。
この戦略を実現するにあたって、戦闘の流れを想定しアクション毎に区切る事で時間を区切り、それぞれの仕切りで性格とスキルのどちらを表現するべきかを考察した。例えば以下のようになる。
→時間 | 移動 | 攻撃 | 反撃 | 移動 | 割り込み | 攻撃 | … | … |
---|---|---|---|---|---|---|---|---|
性格の表現 | ● | ● | ● | ● | ||||
スキルの表現 | ● | ● |
性格とスキルについても、細かく定義をしていく。ただ、全部が割り切れるわけではなく召喚のように性格にもスキルにも依る行動も考えられる。
- 性格
- 様子見行動
- 残HPによる変化、ピンチ時の行動
- etc..
- スキル
- 回避、ガード。
- 攻撃距離
- スキに対する対応
- 敵の攻撃レンジに入った場合の行動
- スキの長さ
処理の流れ
AI 処理の基本の流れは、「状況判断 → 指針決定 → 行動選択 → アルゴリズム実行」の 4 つのフェイズに分かれる。
- 状況判断では、自分のHP、相手のHPと、ブレイブの値から「攻撃」「通常」「守備」等の指針を決定する。
- 指針決定では、該当の指針から「好戦的」「ノーマル」といった行動セットを選択する。
- 行動選択では、行動セットの中から「接近」「攻撃」といったアルゴリズムを選択する。
- アルゴリズム実行で、最終的な行動が生成される。
データ駆動
キャラの AI 、特に行動決定は主にデータ設定により実現される。データ化する事によって待ち時間を短縮する事ができ沢山存在するキャラクターの設定を現実なものとしている。
全ての攻撃アクションには
- 得意な間合
- 攻撃の射程
- 攻撃への対応方法
が設定されている。
状況から指針の判断、指針から行動セットの判断等もデータ化されており、多彩な AI を作り出す事ができる。
アルゴリズム
攻撃系のアルゴリズムは移動→攻撃アクションで構成される。あまり長々とした行動になると意味不明のアクションに見えてしまう。
待機系のアルゴリズムにはいろいろバリエーションがある。性格を表現するのに便利であるが攻撃の頻度が下がるとユーザーには退屈だと感じられるので要注意。
防御系のアルゴリズムは攻撃を見てから差し込んでいる反射型の挙動である。割り込み系の処理となるので、バグが顕在化しやすくユーザーには超反応であるように感じられてしまう。
移動系は A* により経路探索をしている。目的地の設定に特徴があり、プレイヤーの移動先に設定される。これにより、移動の駆け引きがより人間らしく感じられる効果が得られた。
問題解決にあたって 〜 ユニバーサルチューニング
問題解決にあたっては今までのアプローチの延長でなくて、まったく違った側面からのアプローチが必要。
防御系が超反応であるように感じられてしまう問題に対して、反応タイミングを遅らせた。結果として AI が弱くなってしまったが、強化学習により強化を図った。具体的には攻撃の前に回避かガードを挟み込む。プレイヤーの行動を解析し、失敗行動を抑制するようにした。
まとめ
実際の問題解決の過程では試行錯誤が見られたようだが、きちんと課題を認識してコンセプトに沿った問題解決を図る思考様式は、大量のデータ作成時のクオリティ確保に寄与し、繰り返しによるクオリティ向上をより一層豊かなものにするという結果に繋がっていると確信する。