decode.webgpu.Class.QuadRenderer - MONOGRID/gainmap-js GitHub Wiki

@monogrid/gainmap-js / decode/webgpu / QuadRenderer

Class: QuadRenderer<TType, TMaterial>

Defined in: src/decode/webgpu/core/QuadRenderer.ts:95

Utility class used for rendering a texture with a material (WebGPU version)

Type Parameters

TType

TType extends TextureDataType

TMaterial

TMaterial extends Material

Constructors

Constructor

new QuadRenderer<TType, TMaterial>(options): QuadRenderer<TType, TMaterial>

Defined in: src/decode/webgpu/core/QuadRenderer.ts:113

Constructs a new QuadRenderer

Parameters

options

QuadRendererOptions<TType, TMaterial>

Parameters for this QuadRenderer

Returns

QuadRenderer<TType, TMaterial>

Accessors

colorSpace

Get Signature

get colorSpace(): ColorSpace

Defined in: src/decode/webgpu/core/QuadRenderer.ts:336

Returns

ColorSpace


height

Get Signature

get height(): number

Defined in: src/decode/webgpu/core/QuadRenderer.ts:307

Height of the texture

Returns

number

Set Signature

set height(value): void

Defined in: src/decode/webgpu/core/QuadRenderer.ts:308

Parameters
value

number

Returns

void


material

Get Signature

get material(): TMaterial

Defined in: src/decode/webgpu/core/QuadRenderer.ts:331

The Material used.

Returns

TMaterial


renderer

Get Signature

get renderer(): WebGPURenderer

Defined in: src/decode/webgpu/core/QuadRenderer.ts:316

The renderer used

Returns

WebGPURenderer


renderTarget

Get Signature

get renderTarget(): RenderTarget<Texture<unknown>>

Defined in: src/decode/webgpu/core/QuadRenderer.ts:321

The RenderTarget used.

Returns

RenderTarget<Texture<unknown>>

Set Signature

set renderTarget(value): void

Defined in: src/decode/webgpu/core/QuadRenderer.ts:322

Parameters
value

RenderTarget

Returns

void


type

Get Signature

get type(): TType

Defined in: src/decode/webgpu/core/QuadRenderer.ts:335

Returns

TType


width

Get Signature

get width(): number

Defined in: src/decode/webgpu/core/QuadRenderer.ts:298

Width of the texture

Returns

number

Set Signature

set width(value): void

Defined in: src/decode/webgpu/core/QuadRenderer.ts:299

Parameters
value

number

Returns

void

Methods

dispose()

dispose(disposeRenderTarget?): void

Defined in: src/decode/webgpu/core/QuadRenderer.ts:274

Will dispose of all assets used by this renderer.

Parameters

disposeRenderTarget?

boolean

will dispose of the renderTarget which will not be usable later set this to true if you passed the renderTarget.texture to a PMREMGenerator or are otherwise done with it.

Returns

void

Examples

const loader = new HDRJPGLoader(renderer)
const result = await loader.loadAsync('gainmap.jpeg')
const mesh = new Mesh(geometry, new MeshBasicMaterial({ map: result.renderTarget.texture }) )
// DO NOT dispose the renderTarget here,
// it is used directly in the material
result.dispose()
const loader = new HDRJPGLoader(renderer)
const pmremGenerator = new PMREMGenerator( renderer );
const result = await loader.loadAsync('gainmap.jpeg')
const envMap = pmremGenerator.fromEquirectangular(result.renderTarget.texture)
const mesh = new Mesh(geometry, new MeshStandardMaterial({ envMap }) )
// renderTarget can be disposed here
// because it was used to generate a PMREM texture
result.dispose(true)

disposeOnDemandRenderer()

disposeOnDemandRenderer(): void

Defined in: src/decode/webgpu/core/QuadRenderer.ts:237

If using a disposable renderer, it will dispose it.

Returns

void


render()

render(): Promise<void>

Defined in: src/decode/webgpu/core/QuadRenderer.ts:176

Renders the input texture using the specified material

Returns

Promise<void>


toArray()

toArray(): Promise<TextureDataTypeToBufferType<TType>>

Defined in: src/decode/webgpu/core/QuadRenderer.ts:196

Obtains a Buffer containing the rendered texture.

Returns

Promise<TextureDataTypeToBufferType<TType>>

a TypedArray containing RGBA values from this renderer

Throws

Error if the browser cannot read pixels from this RenderTarget type.


toDataTexture()

toDataTexture(options?): Promise<DataTexture>

Defined in: src/decode/webgpu/core/QuadRenderer.ts:209

Performs a readPixel operation in the renderTarget and returns a DataTexture containing the read data

Parameters

options?

QuadRendererTextureOptions

options

Returns

Promise<DataTexture>


instantiateRenderer()

static instantiateRenderer(): WebGPURenderer

Defined in: src/decode/webgpu/core/QuadRenderer.ts:167

Instantiates a temporary renderer

Returns

WebGPURenderer

⚠️ **GitHub.com Fallback** ⚠️