Class FrameGraphIblShadowsRendererTask
Hierarchy (View Summary)
- FrameGraphTask
- FrameGraphIblShadowsRendererTask
Index
Constructors
Properties
Accessors
Methods
Constructors
constructor
-
new FrameGraphIblShadowsRendererTask(
name: string,
frameGraph: FrameGraph,
): FrameGraphIblShadowsRendererTaskCreates a new IBL shadows composite task.
Parameters
- name: string
The task name.
- frameGraph: FrameGraph
The owning frame graph.
Returns FrameGraphIblShadowsRendererTask
- name: string
Properties
Optionaldependencies
The (texture) dependencies of the task (optional).
depth Texture
Depth texture handle used by tracing and blur. This should be the screen-space depth of all objects in the scene that will receive shadows. It is important that this texture stores 32-bit depth values to avoid artifacts.
normal Texture
World-space normal texture handle used by tracing and blur. This should store the world-space normals of all objects in the scene that will receive shadows. Each component should be normalized to [0, 1] rather than [-1, 1]. Recommended to be 16-bit floating point though 8-bit unsigned byte can be used with minimal loss in quality.
on After Task Execute
An observable that is triggered after the task is executed.
on Before Task Execute
An observable that is triggered before the task is executed.
on Textures Allocated Observable
An observable that is triggered after the textures have been allocated.
Readonlyoutput Texture
Final frame-graph texture handle produced by the task.
position Texture
Position texture handle used by accumulation. This should store the world-space position of all objects in the scene that will receive shadows. Should be stored as 16-bit floating point.
velocity Texture
Velocity texture handle used by accumulation. This should store the linear velocity per pixel of all objects in the scene that will receive shadows. Should be stored as 16-bit floating point.
Accessors
camera
-
get camera(): Camera
Camera used by the tracing stage.
Returns Camera
-
set camera(value: Camera): void
Camera used by the tracing stage.
Parameters
- value: Camera
Returns void
colored Shadows
-
get coloredShadows(): boolean
Whether traced shadows preserve environment color.
Returns boolean
-
set coloredShadows(value: boolean): void
Whether traced shadows preserve environment color.
Parameters
- value: boolean
Returns void
disabled
-
get disabled(): boolean
Whether the task is disabled.
Returns boolean
-
set disabled(value: boolean): void
Whether the task is disabled.
Parameters
- value: boolean
Returns void
env Rotation
-
get envRotation(): number
Environment rotation in radians.
Returns number
-
set envRotation(value: number): void
Environment rotation in radians.
Parameters
- value: number
Returns void
name
-
get name(): string
The name of the task.
Returns string
-
set name(value: string): void
The name of the task.
Parameters
- value: string
Returns void
object List
-
get objectList(): FrameGraphObjectList
Object list used by voxelization.
Returns FrameGraphObjectList
-
set objectList(value: FrameGraphObjectList): void
Object list used by voxelization.
Parameters
- value: FrameGraphObjectList
Returns void
on Output Texture Ready Observable
-
get onOutputTextureReadyObservable(): Observable<InternalTexture>
Notifies when the accumulated output texture becomes ready.
Returns Observable<InternalTexture>
output Texture Ready
-
get outputTextureReady(): boolean
True when the accumulated output texture is ready.
Returns boolean
passes
-
get passes(): IFrameGraphPass[]
Gets the passes of the task.
Returns IFrameGraphPass[]
passes Disabled
-
get passesDisabled(): IFrameGraphPass[]
Gets the disabled passes of the task.
Returns IFrameGraphPass[]
refresh Rate
-
get refreshRate(): number
Voxelization refresh rate.
Returns number
-
set refreshRate(value: number): void
Voxelization refresh rate.
Parameters
- value: number
Returns void
resolution Exp
-
get resolutionExp(): number
Voxelization resolution exponent.
Returns number
-
set resolutionExp(value: number): void
Voxelization resolution exponent.
Parameters
- value: number
Returns void
sample Directions
-
get sampleDirections(): number
Number of tracing sample directions.
Returns number
-
set sampleDirections(value: number): void
Number of tracing sample directions.
Parameters
- value: number
Returns void
shadow Opacity
-
get shadowOpacity(): number
Final material shadow opacity.
Returns number
-
set shadowOpacity(value: number): void
Final material shadow opacity.
Parameters
- value: number
Returns void
shadow Remanence
-
get shadowRemanence(): number
Temporal shadow remanence while moving.
Returns number
-
set shadowRemanence(value: number): void
Temporal shadow remanence while moving.
Parameters
- value: number
Returns void
ss Shadow Distance Scale
-
get ssShadowDistanceScale(): number
Distance scale used by screen-space shadow tracing.
Returns number
-
set ssShadowDistanceScale(value: number): void
Distance scale used by screen-space shadow tracing.
Parameters
- value: number
Returns void
ss Shadow Opacity
-
get ssShadowOpacity(): number
Opacity of screen-space shadows.
Returns number
-
set ssShadowOpacity(value: number): void
Opacity of screen-space shadows.
Parameters
- value: number
Returns void
ss Shadow Sample Count
-
get ssShadowSampleCount(): number
Number of screen-space shadow samples.
Returns number
-
set ssShadowSampleCount(value: number): void
Number of screen-space shadow samples.
Parameters
- value: number
Returns void
ss Shadow Stride
-
get ssShadowStride(): number
Stride used by screen-space shadow sampling.
Returns number
-
set ssShadowStride(value: number): void
Stride used by screen-space shadow sampling.
Parameters
- value: number
Returns void
ss Shadow Thickness Scale
-
get ssShadowThicknessScale(): number
Thickness scale used by screen-space shadow tracing.
Returns number
-
set ssShadowThicknessScale(value: number): void
Thickness scale used by screen-space shadow tracing.
Parameters
- value: number
Returns void
tri Planar Voxelization
-
get triPlanarVoxelization(): boolean
Whether tri-planar voxelization is used.
Returns boolean
-
set triPlanarVoxelization(value: boolean): void
Whether tri-planar voxelization is used.
Parameters
- value: boolean
Returns void
voxel Direction Bias
-
get voxelDirectionBias(): number
Voxel tracing direction bias.
Returns number
-
set voxelDirectionBias(value: number): void
Voxel tracing direction bias.
Parameters
- value: number
Returns void
voxel Grid Size
-
get voxelGridSize(): number
Current world-space voxel grid size.
Returns number
voxel Normal Bias
-
get voxelNormalBias(): number
Voxel tracing normal bias.
Returns number
-
set voxelNormalBias(value: number): void
Voxel tracing normal bias.
Parameters
- value: number
Returns void
voxel Shadow Opacity
-
get voxelShadowOpacity(): number
Opacity of voxel-traced shadows.
Returns number
-
set voxelShadowOpacity(value: number): void
Opacity of voxel-traced shadows.
Parameters
- value: number
Returns void
Methods
add Shadow Casting Mesh
-
Adds one or more meshes to the voxelization object list.
Parameters
- mesh: any
The mesh or meshes to add.
Returns void
- mesh: any
add Shadow Receiving Material
-
Adds one or more materials that should receive IBL shadows.
Parameters
Optionalmaterial: anyThe material or materials to register. If omitted, all scene materials are added.
Returns void
clear Shadow Casting Meshes
-
Clears all shadow-casting meshes from the voxelization object list.
Returns void
clear Shadow Receiving Materials
-
Clears all registered shadow-receiving materials.
Returns void
dispose
-
Disposes the task and owned resources.
Returns void
get Class Name
-
Gets the class name.
Returns string
The class name.
init Async
-
This function is called once after the task has been added to the frame graph and before the frame graph is built for the first time. This allows you to initialize asynchronous resources, which is not possible in the constructor.
Returns Promise<unknown>
A promise that resolves when the initialization is complete.
is Ready
-
Checks if the task is ready to be executed.
Returns boolean
True if the task is ready to be executed, else false.
record
-
Records the parent task. Child tasks record the actual passes.
Returns void
remove Shadow Casting Mesh
-
Removes one or more meshes from the voxelization object list.
Parameters
- mesh: any
The mesh or meshes to remove.
Returns void
- mesh: any
remove Shadow Receiving Material
-
Removes one or more materials from IBL shadow reception.
Parameters
- material: any
The material or materials to unregister.
Returns void
- material: any
reset Accumulation
-
Resets temporal accumulation.
Returns void
update Scene Bounds
-
Recomputes the voxelization scene bounds from the current object list.
Returns void
update Voxelization
-
Triggers a voxelization refresh on the next eligible frame.
Returns void
Composite task that owns the individual IBL shadows frame graph tasks. The frame graph remains flat internally, but this task groups the pipeline and owns the child task implementation details.