デジタルゲームにおいて、CG技術とAI技術は、それ自身の技術の相違の他に、
もう一つ決定的な相違点がある。
ユーザーに対する絵作りをするという意味において、
CG技術は、オープンな技術である。
ここで言うオープンとは、マシンからユーザーに一方的に情報が流れる、という意味である。
パイプラインへ流された情報がスクリーンになって現れるという過程において、
その情報がゲームにもう一度フィードバックされることはない。
一方、デジタルゲームにおけるAI技術は、デジタルゲームの中でクローズな技術である。
それは、徹頭徹尾、ゲームルーチンの中で組み込まれ、
情報の循環の流れの中で運動する。
一つの決定が次のゲーム状態に影響を及ぼし、
その情報がさらに、次のフレームのAIの決定に影響を及ぼす。
この二者の違いは、開発過程にも決定的な違いとなって現れる。
CG技術は、ゲームコンテンツから離れて設計できる。
(ゲームに対してどんなレンダリングやシェーディングがよいか、という議論は別である)
ユーザーの視点にどのような絵を作るかという探求は、
純粋に、CGの中で閉じて行なうことが出来る。
デジタルゲームにおけるCG技術は、ユーザーがゲームを覗く窓であって、
その窓にどう映るかを設計するである。
例えば、(手間はかかるが)同じゲームを違うシェーディングで実現することは不可能なことではない。
ところが、AI技術は、ゲームコンテンツなしには何一つ組みあがることが出来ない。
ゲームコンテンツがどのようなルーチンによって回されるかという、
そのルーチンの中に絡んでいくことがデジタルゲームAIの性である。
このオープン性とクローズド性は、技術導入という意味でも圧倒的なスピードの違いを
産み出した。CG技術は、独立した技術として急速にデジタルゲームに導入された。
ゲームを覗く窓は、物凄いスピードで高品質化され、それに釣られてモデルやらエフェクトやらを作るのが(物凄く)たいへんになってしまった。
ところが窓がよくなったところで、ゲーム性が進歩しているわけではない。
ファミコン時代の過去のゲームがハイスペックのCGで蘇っても、
ゲーム性が変っているわけではない。
一方、AI技術はコンテンツ技術と深く絡み合うからこそ、
急速な進化を遂げることは出来なかった。
それは、毎回毎回のゲームコンテンツとへ組み込むことの勝負であったから、
極めて慎重に一つ一つの事例を積み重ねて行くしかなかったのである。
しかし、そういった事例も10年も積み重ねるとパターンが見えて来る。
(これこそが技術発表の意義なのである。)そして、そういったパターンを手がかりに、
デジタルゲームAIという分野が形成されている。
ここで言いたいことは、どちらの分野が、どれだけ難しいとか楽だということではない。
デジタルゲームにおけるAI技術とCG技術は、オープン性とクローズド性という意味で、
全く異なるアプローチを持つ分野であるということである。
CG技術のように普遍的な技術を応用してゲームに組み込む、という方向は、
ユーザーの視点というゲームダイナミクスから離れたオープンで固定された立脚点が
あるからこそ可能なのである。
一方、AIはゲームのダイナミクスの中に溶け込み、ゲームのダイナミクスそのものを
形成する一つの要素であって、それは固定された立脚点を持たない、流れる運動そのものなのである。
この対比を覚えておけば、二つの分野をより自由に行き来しながら、
ゲームを製作して行くことが可能になるだろう。
Havok AI などを見ればわかるように、すでに経路探索のライブラリの設計は
ゲームとは離れて実装されています。
今後、AI技術も汎用化が進み、急激な進化を遂げる可能性が高いのではないでしょうか
(個人的には、進化という言葉には疑問を感じますが)。
「AI は、ゲームのダイナミズムと切り離せない」という固定観念は、
現在は成り立っているかもしれませんが、
汎用化の努力を妨げる「逃げ」に使われそうで嫌いです。
ちなみに、このような、二元論的な展開をされると、
その境界がどのようになるかということが気になります。
その点で、キャラクターのアニメーション制御は、
CGとAIの両方の分野にまたがったもので、非常に趣深いと思います。
この分野を研究することで、ゲームダイナミクス
(この言葉の定義も深い議論になると思いますが)
と、それ以外の固定されうる要素の考察が進むと思いますが、いかがでしょうか?
* * *
基本的に、imagire さんの意見に賛成です。
ただ、上記でCGと言っているのは、最初の一行に書いてある通り、描画部分に限定した意味で使っているので、先に議論したのは、その部分についてだけです。
アニメーションやインタラクション部分まで考えれば、imagire さんの言われる通り、当然の帰結として、ゲームダイナミクスと絡み合うフィールドが含まれるCGとAIの一般的な二元論となり、おっしゃられている通りとても大切な議論だと思います。
空間のダイナミクスと身体のダイナミクスが相互作用する場として、「キャラクターアニメーションは、CGとAIの両方の分野にまたがかったもので、AIの課題となる各要素の考察が進む」と自分も考えます。これは、今年のGDCのトレンドでもありました。
身体制御とAIというテーマは、以下の資料にまとめています。
「これからのゲームAIの作り方」(『GDC09報告会』 2009年4月11日)
http://www.digrajapan.org/modules/mydownloads/
また、「ゲームダイナミクスと、それ以外の固定されうる要素の考察」という方向から、ゲームAIの歴史を捉えなおしたものが、以下の文書になります。
http://www.dcaj.org/report/2008/ix1_03.html
(PDF。3章プログラミングAIの歴史)
もちろん、まだまだ検討が足りません。
かつてAIミドルウェアは独立した小さな会社が多かったですが、最近では大手に吸収され、各種のAIミドルウェアは、グラフィックの統合環境の中で使われる方向になるかもしれません。
身体からAIへ切り込んで行くベクトルは、最終的に意思決定部分まで届くのか、或いは、そこはほっておくのか、ミドルウェア会社はこの1〜2年は、アニメーション部分に特化すると思いますが、その先はまだ読めません。意思決定部分は汎用化の最後の砦かもしれませんが、おっしゃられる通り一つ一つ玉ねぎ皮を向いて行くと、案外、最後は空っぽの中空が出て来るのかもしれません。
CGからAIへ至るアプローチはアニメーション、
AIからCGへ至るアプローチはプロシージャルとして、
その境界領域には、魅力的なテーマが多く含まれていると自分も考えます。
AIの汎用化に関しては、この数年、ずっと挑戦されて来たにも関らず、
切り出せたのが、パス検索とアニメーションというCG(空間)部分のみであったということは、
逆に、逃げることなく、ダイナミクスを限定的でもよいので捉えて、
AI汎用化のために「環境、身体、知性」というダイナミクスごとフレーム化する必要があるのでは、というのが、自分のこの数年のAI汎用化の方向に対する批判です。逆に単純なアルゴリスティックなアプローチが汎用化への道を困難にしていたのではないかと思えます。
エージェント・アーキテクチャが、そのフレームとして期待されています。
ここは、ご指摘される通り、深く掘って行く必要があります。まさに、研究課題です
imagire さんと共に、CG−AIの分野を深めて行ければ幸いです。
* * *
それでは、また、気軽にお書き込みください。
CEDEC2007「エージェント・アーキテクチャから作るゲームAI」(旧ページでダウンロードできたのですが、現在は出来ません。また復旧したら、ご覧頂ければと思います。)
三宅さんの過去のファイルの復旧も始めないといけないですね。
アップしてほしいリストってお持ちですか?
どのファイルをアップしてほしいのかという情報を頂ければ、順次SlideShareにアップする作業はやりますよ。三宅さん自身にやっていただいても構わないのですが、公式性を優先されるなら、私のIDでIGDA日本の物としてアップするようにしますよ。