12_1_シャドウ - gaj-cg/ray-mmd-docs-ja GitHub Wiki
Shadowフォルダには、PSSM用とSSAO用の2種類のfxファイルがあります。
ray-mmdのPSSMは太陽光の影を作るのに利用されています。
PSSM1~4.fxのfxファイルが有りますが、ユーザーが特に変更をする必要はありません。
- PSSM(Parallel-Split Shadow Maps)
PSSMはシャドウマップを使用した技術の一つで、幾つかのシャドウマップをカメラからの距離で分割して使用することにより、シャドウマップの解像度不足によるジャギーの発生を抑える効果があります。
参考:NVIDIA GPU Gems 3
SSAO visibility 0.0~1.0.fxのfxファイルが有ります。
これらはSSAOの濃さを調整するもので、デフォルトで「SSAOMap」タブにSSAO visibility 1.0.fx
が割り当てられますが、他のものに変更することにより、SSAOの濃さモデルまたは材質毎に調整できます。
また、fxファイル内の static const float visibility
の値を調整することにより、オリジナルの設定を作ることができます。
- SSAO(Screen Space Ambient Occlusion)はアンビエントオクルージョン(Ambient Occlusion)を再現する技法の一つです。
アンビエントオクルージョンは凹みや折り目など、光が届きにくい所が暗いままの現象です。
SSAO visibility 1.0 | SSAO visibility 0.5 | SSAO visibility 0.0 |
---|---|---|
![]() |
![]() |
![]() |
- 参考
MMDのキャクターモデルで、白目部分が凹んでいるモデルは割りと多く見受けられます。MMD標準のレンダリングであれば、そのまま白く描画されるので問題は無いのですが、SSAOを使ったり、リアル系のシェーディングをした時には、黒くなってしまいます。
その場合、白目の材質のみにSSAO visibility 0.0.fx
を割り当てて、SSAOを描画しないという方法もあります。
さらに、白目のマテリアルをEmissive
で、わずかに光らせるという方法もあります。
白目調整無し | 白目Emissiveマテリアル割り当て | 白目Emissiveマテリアル割り当て + SSAO visibility 0.0 |
---|---|---|
![]() |
![]() |
![]() |
Model : Hatsune Miku V4X Model by Digitrevx