ZeroLoom

3DCG レンダリング手法の概要

October 22, 2024
2 min read
Table of Contents

レイトレーシング (Ray Tracing)


  • 光の挙動を物理的にシミュレーションし、光源から発せられた光がオブジェクトに当たって反射・屈折したのちに、最終的にカメラに到達する過程を追跡する手法
  • 高品質な反射、屈折、影、グローバルイルミネーションの表現が可能
  • 光の経路を計算するため、非常にリアルな結果が得られるが、計算コストが高い
  • 映画の CG、アニメーション、フォトリアルな静止画に用いられる

パストレーシング (Path Tracing)


  • レイトレーシングの一種で、光がオブジェクトに当たって反射・屈折する際にランダムな経路を追跡する手法
  • レイトレーシングと違い、複数の光の経路をサンプリングして平均化することで、グローバルイルミネーションを自然に再現する
  • レイトレーシングと比較してノイズが発生しやすいが、光の複雑な相互作用を正確にシミュレートすることができる
  • 高品質だが、多くのサンプリングが必要で時間がかかる
  • Blender の Cycles などの物理ベースレンダリングエンジンで採用されている

ラスタライズ (Rasterization)


  • 3D シーンを 2D スクリーンに投影し、各ピクセルに対応するポリゴンを描画する手法
  • ゲームエンジンやリアルタイムレンダリングで広く使われている
  • 高速でリアルタイムレンダリングに適しているが、正確な光の反射や屈折をシミュレートするのは難しい
  • ライトや影、反射などの効果はシェーダーやテクニックを使って近似的に表現される
  • ゲームエンジン(Unreal Engine、Unity)、Blender の Eevee で採用されている

フォトンマッピング (Photon Mapping)


  • 光源から発せられた光子(フォトン)の経路を追跡し、それがシーン内でどのように分散されるかを記録する手法
  • 直接照明と間接照明の両方をリアルに表現することができる
  • グローバルイルミネーションを正確にシミュレートでき、間接光の反射もリアルに再現できる
  • レンダリングにはやや時間がかかる
  • 高品質なレンダリングやアニメーション制作で用いられる

スキャンラインレンダリング (Scanline Rendering)


  • 各ポリゴンをピクセル単位で 1 行ずつスキャンし、描画する手法
  • 主にリアルタイムレンダリングで使われていたが、現在ではラスタライズに取って代わられている
  • 高速で、初期の 3D ゲームやリアルタイムアプリケーションに使われていた
  • 影や反射などの高度な光の表現は難しい
  • 古い3Dゲームやグラフィック技術で用いられる

ボリューメトリックレンダリング (Volumetric Rendering)


  • 雲、煙、霧、火など、空間的な体積を持つ現象をシミュレートする手法
  • 光がこれらの物体を通過する際の散乱や吸収を計算
  • 雲や煙などの複雑な物体の内部構造をリアルに描写できる
  • 計算コストが高い
  • VFX(視覚効果)、映画、アニメーションで用いられる

アンビエントオクルージョン (Ambient Occlusion)


  • シーン内の物体の接触部分や凹凸の影になりやすい部分を強調し、よりリアルな影の表現を行う手法
  • シーン全体のライティングを計算せず、接触部分の光の遮蔽を近似的に計算
  • グローバルイルミネーションの一部を簡易的に再現でき、計算コストを抑えつつリアルさを向上させる
  • 物理的に正確ではないが、視覚的な効果が高い
  • ゲーム、インタラクティブな3Dアプリケーション、アニメーションで用いられる

スクリーンスペースリフレクション (Screen Space Reflection, SSR)


  • シーン内の反射を近似的に計算するために、既に描画された画面上のピクセル情報を使用する手法
  • リアルタイムレンダリングに適していますが、限界がある
  • 高速でリアルタイムに反射を計算できるが、カメラに映っていない部分の反射は正確に描画できない
  • 主にゲームやリアルタイムアプリケーションで使用されている
  • ゲームエンジン(Unreal Engine、Unity)、Blender の Eevee で採用されている

ラジオシティ (Radiosity)


  • 光が表面から表面へどのように伝わるかを計算し、間接照明をシミュレートする手法
  • 主にディフューズ(拡散反射)の表現に適している
  • グローバルイルミネーションを物理的に正確に再現できる
  • 反射や屈折には適していないため、シーンの一部にしか使用されないことが多い
  • インテリアデザイン、建築ビジュアライゼーションで用いられる

ディファードシェーディング (Deferred Shading)


  • ライティングの計算を後回しにする技術で、ジオメトリとシェーディングの計算を分ける手法
  • シーン全体を先に描画し、その後でライティングを計算することで、大規模なシーンでも効率的な描画が可能
  • ライトの数が多いシーンで効率的にレンダリングできる
  • 反射や透明度の表現には制限がある
  • ゲームエンジン、リアルタイムレンダリングで用いられる

ハイブリッドレンダリング (Hybrid Rendering)


  • レイトレーシングとラスタライズなどの異なるレンダリング技術を組み合わせた手法
  • リアルタイムでの効率的な描画と物理的に正確なライティングを両立する
  • ラスタライズの高速性とレイトレーシングのリアルさを組み合わせて、最適なパフォーマンスを提供
  • ゲームエンジン(リアルタイムレイトレーシング)で用いられる