「ビジュアルアーツ分野」の読み解きについての補足

今まで4回に分けて、CESA ゲーム開発ロードマップの、ビジュアルアーツ分野を読み解いてきましたが、書いている内容について、以前一緒に働いていた先輩プログラマから、メールで突っ込みをいただきました。そのメールを読んで「なるほど、そういう事か!」と終わろうかとも考えたのですが、いただいた内容が非常にわかりやすかったので、補足記事として公開してみます。若干、文面を変えているところもありますが、メール内容をほぼそのまま引用させていただいています。先輩、マズイようであればまたメールください^^;*1


という事で、まずは「ビジュアルアーツ分野 / レンダリング」から、HDR・SH・高フレームレートについてです。

HDR

HDR については、ネットの解説情報は微妙に外しているものが多いので、
会社のプログラマーと一緒にHDR本(洋書)の、本読み会でもやってみるといいかもしれない。
ここが出来てる会社って意外と少ない気がしています。

うぅん、HDRを正確に理解するには、かなりハードルが高いものになりました…。ただ、某社のプログラマとアーティストの間では、やっているんでしょうね。いや、あのイメージを作ろうと思ったら、やっているに違いない!という事で、うちでも検討してみます。
あと、HDRについての資料として、トライエースさんのR&Dから公開されているPPTを紹介いただきました。

SH(spherical harmonics)

SH は全周の分布情報を関数の係数として記述できるデータ表現だよ。
乱暴に言うと、解像度4x4のキューブマップ程度の情報を再現できるもの。
(高次の近似をすれば解像度も高くなるけど、それだけ重くなる)

なので、任意の環境に適応させるには、環境ごとの SH 係数が必要になるよ。
地面のコリジョンのメッシュごととか、分割された空間ごとに突っ込む感じ。
背景モデル側に遮蔽情報を SH で持つ場合、動的な光源に対して対応できる。
よりちゃんとしたAOというか。

単純に遮蔽率として焼きこんでしまったAO(アンビエント・オクルージョン)だと、
方向性のある光源に対しても一様の反応しかできない。

SHに関して、丁寧に説明いただきました。上記とあわせて、西川善司さんの球面調和関数の記事を読み解くと、両方の内容が補完されて、わかりやすい。また、実際の使い方としては、以前もリンクした、KILLZONE2の事例が、ゲームの中での使い方を実感出来ます。

高フレームレート

これは、自分の調査不足でした。モニター側のキャパシティとして 240fpsを実現する「ナノスピントFED/電界放出ディスプレイ」ってのが、試作機として、CEATECや、InterBEEに出ていたようです。240fpsって、現在の4倍ですか…。現在は、19型で200〜300万円以上と言われているようです。


次に、「ビジュアルアーツ分野 / レンダリング」から、高度DB検索をベースにした、インタラクティブモーションです。

高度DB検索をベースにした、インタラクティブモーション

↑これだけだと意味不明だよね……。

いわゆるモーションスクリプトではなくて、環境・状態をクエリとして、
モーションを選択するシステム、という意味だと思うんだけど。どうだろ。

ビジュアルなスクリプトだとしても、アーティストがモーションスクリプト
巨大なヒエラルキーを管理するのは困難なわけで、モーション側が
適用されるべき状態を持って、検索結果からブレンドしたほうがよくね?という。
それ実際ちゃんと動くん?みたいな気持ちでいっぱいだが。

まだ実用例として出てきていないので、実感が沸きにくいですが、事前に用意したスクリプト駆動で、再生されるモーションを判断するのでは無く、環境と状態から判断して、適切なモーションを決めていく仕組みという事でしょうか。確かに重そうですが、アーティスト側は、モーションスクリプトからの制御から少し開放されそうですね。特に究極のリアルを追求するようなタイトルでは、モーションの選択の不自然さが強調される事を避けれるので、有効な手段のような気がします。

という事で

いくつか補足をしてみました。この内容については、随時今までの記事にも反映していきますので、少々お待ちください。では、これにてCESAのロードマップ/ビジュアルアーツ分野の読み解きは、終了したいと思います。
とはいえ、突っ込みあれば、いつでもコメントなり・メールいただけると、助かりますので、よろしくお願いします。「補足 その2」やりますので。

*1:それにしても、よくこのページを見つけましたね……。まぁHN変えていませんからね。