7月のアップデート紹介、第2弾は「ライトスペース パースペクティブ シャドウマップ」について。別名 “LSPSM” です。
このスーパーグレートゴールキーパー (SGGK) みたいな名前の LSPSM っていうのは何かというと、わりと最新のシャドウマップアルゴリズムのコトなのですね。
で、7月のバージョンアップの中でどこに使われているのかというと、水着のコスプレゲーム「スイカ割り」中です。(これはコスプレゲームを買ってもらわないと見ることができなのです。スミマセン)これまで、まいにちいっしょでは、アンビエント隠蔽というアルゴリズムをつかって影っぽい表現を行ってきたのですが、今回のような夏の砂浜の様なシチュエーションだとやはりちゃんとした影がほしいぜ!というわけでプログラマさんが実装したのでした。
リアルタイム3DCG で影表現というと大きくは、「ステンシルシャドウ」か「シャドウマップ」という2つの表現方法があるのですが、ステンシルシャドウは正確な影表現が可能である反面、大量のポリゴン、フィルレートを必要とするのであまりリアルタイム処理には向いていません。なのでシャドウマップが使用されることがほとんどで、今回、まいにちいっしょでも、シャドウマップの方を採用しました。
しかし、シャドウマップは比較的高速である反面、シャドウマップの解像度をあげたとしても、カメラのパースによっては、すごく粗い影になってしまう部分が出るという欠点があるのですね。もうギザギザがイタイくらいに。前世代のPS2ならまだしも、現世代機のPS3ではこれはみっともないだろうということで、導入に踏み切ったのが、LSPSM だったというわけです。
詳しく知りたい人は、ココなどをよんでもらったり、LSPSM でググってもらえれば、いろんな説明が出てくると思うので、ゼヒ。
で、百聞は一見にしかずと言うことで、通常のシャドウマップ(左)とLSPSM(右)を参考に載せておきます。
どうでしょうか?すごく違いが分かりますよね。まさに効果絶大!ホントに導入しがいのあるアルゴリズムでした。ちなみにこのトップの画像もPS3の画像をテスト用にキャプチャーしたモノでして、より意識して影を落としてみています。
イイカンジでしょ?
GPU Gems 2 日本語版 ―ハイパフォーマンス グラフィックスとGPGPUのためのプログラミング テクニック―
|
0 件のコメント:
コメントを投稿