docsby gkjohnson
Path tracing a model lit by an environment map
Data courtesy of NASA/JPL-Caltech, Poly Haven
On this page

Events

{ type: 'complete' }
{ type: 'progress' }

Properties

maxBounces: number = 15

frameBudget: number = 250000

frameTime: number

readonly

maxSubsurfaceBounces: number = 256

maxSamples: number = 0

complete: boolean

transmissiveBackground: number = TRANSMISSIVE_BACKGROUND_OVERLAY

filterGlossyFactor: number = 1

clampDirect: number = 0

clampIndirect: number = 10

target: Texture | null

readonly

fadeState: number

readonly

lowResMode: boolean

readonly

compiling: boolean

readonly

textureAtlas: AtlasTexture

readonly

minSamples: number = 1

renderDelay: number = 16

fadeDuration: number = 250

dynamicLowRes: boolean = true

lowResScale: number = 0.1

adaptiveDynamicRes: boolean = true

adaptiveFrameBudget: boolean = true

targetFrameTime: number = 16

renderScale: number = 1

synchronizeRenderSize: boolean = true

renderToCanvas: boolean = true

asyncCompile: boolean = false

commonAttributes: Array<string> = [ 'normal', 'tangent' ]

stableNoise: boolean = true

pause: boolean = false

Methods

new WebGPUPathTracer( renderer: WebGPURenderer )
async getSampleCountsAsync(): Promise<SampleCounts>
setMultipleImportanceSampling( value: boolean ): void
setDenoiser( denoiser: OIDNDenoiser | null ): void
setUpscaler( upscaler: FSRUpscaler | null ): void
setScene( scene: Scene, camera: Camera ): void
setBVHWorker( WorkerConstructor: function ): void
async setSceneAsync( scene: Scene, camera: Camera ): Promise<void>
setRandom(
	// One of the Random Strategies constants, such as `RANDOM_BLUE_DITHER`.
	random: Object
): void
setCamera( camera: Camera ): void
updateMaterials(): void
updateTransforms(): void
updateCamera(): void
updateEnvironment(): void
updateLights(): void
setSize( x: number, y: number ): void
reset(): void
renderSample(): void
renderDebugBounds(
	options?: {
		// Count the top level object bounding boxes.
		displayTLAS: boolean = true,

		// Count the per object geometry bounding boxes.
		displayBLAS: boolean = true,

		// Only count boxes in front of the nearest hit, so occluded boxes do not contribute. Culling and material transparency are honored.
		stopAtSurface: boolean = false,

		// Node count that saturates to full heat.
		saturationCount: number = 64
	}
): void
renderTextureAtlas( layer: number = 0 ): void
renderSampleDensity(): void
renderAuxBuffer( buffer: 'albedo' | 'normal' = 'albedo' ): void
dispose(): void
getRenderTime(): number