コンテンツにスキップ

Effect Descriptor

EffectDescは、レンダリングパイプラインにポストプロセッシングエフェクトを適用するためのDescriptorタイプです。アンチエイリアシング、被写界深度、トーンマッピングなど、様々なビジュアルエフェクトを追加できます。

navara_threeでは、以下のEffectDescタイプが利用可能です:

Descriptorタイプ説明
AerialPerspectiveEffectDesc大気による光の散乱と透過を表現するエフェクト
CloudsEffectDescリアルタイムボリュメトリック雲をレンダリングするエフェクト
ColorGradingLUTEffectDescLUTを使用したカラーグレーディングを適用するエフェクト
DepthOfFieldEffectDescカメラの焦点面に基づいてボケ効果を適用するエフェクト
FogLightEffectDescポイントライトからのボリュメトリックフォグを生成するエフェクト
FXAAEffectDescFXAA(Fast Approximate Anti-Aliasing)を適用するエフェクト
LensFlareEffectDesc太陽や月からのレンズフレアを生成するエフェクト
RainDropEffectDesc画面に雨粒の屈折効果を適用するエフェクト
SelectiveBloomEffectDescセレクティブブルームを適用するエフェクト
SelectiveOutlineEffectDescセレクティブアウトラインを適用するエフェクト
SMAAEffectDescSMAA(Subpixel Morphological Anti-Aliasing)を適用するエフェクト
SSAOEffectDescスクリーンスペースアンビエントオクルージョンを適用するエフェクト
SSREffectDescリアルタイムスクリーンスペース反射を生成するエフェクト
ToneMappingEffectDescHDRからLDRへの色調整を行うエフェクト

EffectDescは、Descriptorクラスを登録した後、view.addEffect()メソッドで追加します:

import ThreeView from "@navaramap/three";
import { AerialPerspectiveEffectDesc } from "@navaramap/three-default-descs";
const view = new ThreeView();
// Descriptorクラスを登録
view.registerEffect("aerialPerspective", AerialPerspectiveEffectDesc);
await view.init();
const aerialPerspectiveDesc = view.addEffect<AerialPerspectiveEffectDesc>({
aerialPerspective: {},
});

すべてのEffectDescは、以下の基本設定を持ちます:

  • id: オブジェクトの一意な識別子
  • visible: オブジェクトの表示/非表示を切り替え

詳細な使用方法は、各Descriptorタイプのドキュメントを参照してください。