BLOG

ゲームにおけるシャドウマップとは何か?

最終更新日:

  このページはDeepLによって自動的に翻訳されました。 Switch to English

影は単なる視覚的演出ではない。ゲーム世界に現実感をもたらし、それがなければ最も精巧な環境でさえ平坦で生命感のないものに見えてしまう。アンビエントオクルージョンや グローバルイルミネーションと同様、シャドウマップもゲームの見た目をよりリアルにするための技術だ。リアルタイムで影をレンダリングする最も一般的な手法の一つがシャドウマッピングであり、ゲーム開発者がパフォーマンスを極端に低下させることなく深みとリアリズムを加えられる方法である。

シャドウマッピングは2段階のプロセスで動作する。最初の段階では光源の視点からシャドウマップテクスチャを生成する。このマップは深度情報を保存し、オブジェクトが光源からどれほど離れているかを記録する。2段階目はプレイヤーの視点からレンダリングされ、ゲームは各ピクセルをシャドウマップと比較する。 光源が記録した距離よりも遠いピクセルは影に落ちます。等しいか近い場合は照らされたままになります。この手法は効率的で動的照明との相性も良く、長年にわたりリアルタイムゲームグラフィックスの定番技術となっています。

ただしシャドウマップには限界もある。テクスチャに依存するため解像度が重要となる。低解像度のシャドウマップでは、移動時に目に見えるギザギザのエッジや明らかなちらつきが生じることがある。残念ながら、単純に解像度を上げれば解決するわけではなく、高解像度のシャドウマップはより多くのメモリと処理能力を必要とする。開発者はこうしたアーティファクトを滑らかにするため、カスケードシャドウマップやフィルタリングといった手法を多用している。

Shadows in Control

ゲームで見かけるシャドウ設定

ほとんどのゲームでは、グラフィック設定で影の品質を調整できます。一般的なオプションには以下が含まれます:

  • シャドウ品質– 解像度とフィルタリングを調整します。設定を高くするとシャープで正確な影が得られますが、より多くのGPUパワーを必要とします。
  • ソフトシャドウ– より自然な見た目のために、エッジを滑らかにします。
  • ダイナミックシャドウ– オブジェクトや光源の動きに合わせて変化・更新する影を有効にします。
  • 接触シャドウ– オブジェクトが表面に接触する部分に微妙な影を追加することで、リアリズムを向上させます。
  • シャドウ距離– カメラからの影の描画距離を制御します。この値を大きくすると遠距離での詳細度が向上しますが、パフォーマンスに影響します。

ほとんどのゲーム設定と同様に、フレームレートを極端に低下させることなく、視覚的な忠実度が最高に見える最適なポイントを見つけるために、試行錯誤する価値がある。

Screenshot of the settings screen from Apex Legends

レイトレーシングによる影

レイトレーシングは異なるアプローチを取る。事前に計算されたマップに依存する代わりに、シーン内を反射しながら進む光線の実際の経路をシミュレートする。これにより、特に複雑な照明シナリオにおいて、より正確で柔らかく自然な影が生成される。その代償がパフォーマンスだ。レイトレーシングは計算負荷が高く、現代のGPUやDLSSのような技術のおかげで、つい最近になってリアルタイムレンダリングが実現可能になったのである。

シャドウマップはハードウェアへの負荷がはるかに低いため、ほとんどのゲームでデフォルトの選択肢となっています。高品質設定でも、シャドウマップのパフォーマンスコストはレイトレーシングによる影に比べてごくわずかです。レイトレーシングを有効にするとフレームレートが大幅に低下するため、プレイヤーは視覚的忠実度と滑らかなゲームプレイのバランスを取る必要があります。多くの場合、シャドウマップはリアリズムとパフォーマンスの最適な折衷案を提供します。

Screenshot from Cyberpunk 2077 showing ray traced shadows