IVSmoke 1.0
Loading...
Searching...
No Matches
FIVSmokeVSMProcessor Class Reference

#include <IVSmokeVSMProcessor.h>

Collaboration diagram for FIVSmokeVSMProcessor:
Collaboration graph

Public Member Functions

void Process (FRDGBuilder &GraphBuilder, FRDGTextureRef DepthTexture, FRDGTextureRef VSMTexture, int32 BlurRadius)
 
void ProcessCascades (FRDGBuilder &GraphBuilder, TArray< FIVSmokeCascadeData > &Cascades, int32 BlurRadius)
 

Detailed Description

Variance Shadow Map processor. Converts depth maps to variance shadow maps and applies blur.

VSM stores (depth, depth²) which enables soft shadow filtering without the shadow acne artifacts of PCF.

Definition at line 19 of file IVSmokeVSMProcessor.h.

Constructor & Destructor Documentation

◆ FIVSmokeVSMProcessor()

FIVSmokeVSMProcessor::FIVSmokeVSMProcessor ( )

Definition at line 17 of file IVSmokeVSMProcessor.cpp.

◆ ~FIVSmokeVSMProcessor()

FIVSmokeVSMProcessor::~FIVSmokeVSMProcessor ( )

Definition at line 21 of file IVSmokeVSMProcessor.cpp.

Member Function Documentation

◆ Process()

void FIVSmokeVSMProcessor::Process ( FRDGBuilder &  GraphBuilder,
FRDGTextureRef  DepthTexture,
FRDGTextureRef  VSMTexture,
int32  BlurRadius 
)

Process a depth texture into a VSM texture. Performs depth → variance conversion and separable Gaussian blur.

Parameters
GraphBuilderRDG builder.
DepthTextureInput depth texture (R32F).
VSMTextureOutput VSM texture (RG32F).
BlurRadiusBlur kernel radius (0 = no blur).

Definition at line 29 of file IVSmokeVSMProcessor.cpp.

◆ ProcessCascades()

void FIVSmokeVSMProcessor::ProcessCascades ( FRDGBuilder &  GraphBuilder,
TArray< FIVSmokeCascadeData > &  Cascades,
int32  BlurRadius 
)

Process all cascades' depth textures into VSM textures.

Parameters
GraphBuilderRDG builder.
CascadesArray of cascade data.
BlurRadiusBlur kernel radius.

Definition at line 65 of file IVSmokeVSMProcessor.cpp.


The documentation for this class was generated from the following files: