外部カメラエフェクトテスト2

外部カメラエフェクトテスト2

外部カメラエフェクトのテスト( sm34326811 )Take2。セルフシャドウとエッジ描画に対応。実際に走って行ってる本体の方は途中から、セルフシャドウの描画範囲の外に出ていくので、セルフシャドウが消えているのが確認できる。対してスクリーンに映っている方はセルフシャドウの描画範囲の中心が外部カメラボーンになっているので最後まで影たっぷり。以下技術的な話。何をしているのか気になる人向け。3Dレンダリングでは通常、カメラの向きと位置に合わせ世界全体を移動する処理が行われている。このエフェクトは本来MMD側で行われるその処理をカットし、外部カメラボーン(任意のボーン)をカメラに見立てその処理をエフェクト側で行っている。従って、他のエフェクトとの相性も悪い、というより個別に書きかえてやらねば使えない。このエフェクトはExcellentShadowをベースにしている。ExcellentShadowはセルフシャドウの描画範囲の中心が任意に設定できるためだ。標準のセルフシャドウでは元のカメラを中心とする描画範囲の外に出てしまうとセルフシャドウは描画されない。エッジもMMD側の処理を切り、エフェクト側で別個に描画させている。MMD標準のエッジは元のカメラからの距離に比例して太くなるので、外部カメラボーンがあまりに元のカメラから離れるとエッジが異常に太くなってしまうからだ。以上。次回はSSAOに対応する予定。

http://www.nicovideo.jp/watch/sm34351259