-
Notifications
You must be signed in to change notification settings - Fork 10
decode.webgpu.Class.GainMapLoader
@monogrid/gainmap-js / decode/webgpu / GainMapLoader
Defined in: src/decode/webgpu/loaders/GainMapLoader.ts:58
A Three.js Loader for the gain map format (WebGPU version).
import { GainMapLoader } from '@monogrid/gainmap-js/webgpu'
import {
EquirectangularReflectionMapping,
Mesh,
MeshBasicMaterial,
PerspectiveCamera,
PlaneGeometry,
Scene,
WebGPURenderer
} from 'three/webgpu'
const renderer = new WebGPURenderer()
await renderer.init()
const loader = new GainMapLoader(renderer)
.setRenderTargetOptions({ mapping: EquirectangularReflectionMapping })
const result = await loader.loadAsync(['sdr.jpeg', 'gainmap.jpeg', 'metadata.json'])
// `result` can be used to populate a Texture
const scene = new Scene()
const mesh = new Mesh(
new PlaneGeometry(),
new MeshBasicMaterial({ map: result.renderTarget.texture })
)
scene.add(mesh)
renderer.render(scene, new PerspectiveCamera())
// Starting from three.js r159
// `result.renderTarget.texture` can
// also be used as Equirectangular scene background
//
// it was previously needed to convert it
// to a DataTexture with `result.toDataTexture()`
scene.background = result.renderTarget.texture
// result must be manually disposed
// when you are done using it
result.dispose()-
LoaderBaseWebGPU<[string,string,string]>
new GainMapLoader(
renderer?,manager?):GainMapLoader
Defined in: src/decode/webgpu/loaders/LoaderBaseWebGPU.ts:17
WebGPURenderer
LoadingManager
GainMapLoader
LoaderBaseWebGPU<[string, string, string]>.constructor
protected_config:LoaderBaseConfig<WebGPURenderer,QuadRenderer<1016,GainMapDecoderMaterial>,GainMapDecoderMaterial>
Defined in: src/decode/shared/Loader.ts:45
LoaderBaseWebGPU._config
protected_internalLoadingManager:LoadingManager
Defined in: src/decode/shared/Loader.ts:44
LoaderBaseWebGPU._internalLoadingManager
protectedcreateTextures(sdrImage,gainMapImage,needsFlip):object
Defined in: src/decode/shared/Loader.ts:121
HTMLImageElement | ImageBitmap
HTMLImageElement | ImageBitmap | undefined
boolean
object
gainMap:
Texture
sdr:
Texture
LoaderBaseWebGPU.createTextures
load(
urls,onLoad?,onProgress?,onError?):QuadRenderer<1016,GainMapDecoderMaterial>
Defined in: src/decode/webgpu/loaders/GainMapLoader.ts:73
Loads a gainmap using separate data
- sdr image
- gain map image
- metadata json
useful for webp gain maps
[string, string, string]
An array in the form of [sdr.jpg, gainmap.jpg, metadata.json]
(data) => void
Load complete callback, will receive the result
(event) => void
Progress callback, will receive a ProgressEvent
(err) => void
Error callback
QuadRenderer<1016, GainMapDecoderMaterial>
LoaderBaseWebGPU.load
protectedprepareQuadRenderer():QuadRenderer
Defined in: src/decode/shared/Loader.ts:64
LoaderBaseWebGPU.prepareQuadRenderer
protectedprocessImages(sdrBuffer,gainMapBuffer?,imageOrientation?):Promise<{gainMapImage:HTMLImageElement|ImageBitmap|undefined;needsFlip:boolean;sdrImage:HTMLImageElement|ImageBitmap; }>
Defined in: src/decode/shared/Loader.ts:93
ArrayBuffer
ArrayBuffer
"flipY" | "from-image"
Promise<{ gainMapImage: HTMLImageElement | ImageBitmap | undefined; needsFlip: boolean; sdrImage: HTMLImageElement | ImageBitmap; }>
LoaderBaseWebGPU.processImages
setRenderer(
renderer):GainMapLoader
Defined in: src/decode/shared/Loader.ts:54
WebGPURenderer
GainMapLoader
LoaderBaseWebGPU.setRenderer
setRenderTargetOptions(
options):GainMapLoader
Defined in: src/decode/shared/Loader.ts:59
GainMapLoader
LoaderBaseWebGPU.setRenderTargetOptions
protectedupdateQuadRenderer(quadRenderer,sdrImage,gainMap,sdr,metadata):void
Defined in: src/decode/shared/Loader.ts:155
QuadRenderer<1016, GainMapDecoderMaterial> & object
HTMLImageElement | ImageBitmap
Texture
Texture
void
LoaderBaseWebGPU.updateQuadRenderer