Appearance
@tmrw-realityos/charm • Docs
@tmrw-realityos/charm / LowlevelEngine
Class: LowlevelEngine
Extends
RendererInterface
Constructors
new LowlevelEngine()
new LowlevelEngine():
LowlevelEngine
Returns
Overrides
RendererInterface.constructor
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:271
Properties
basePath
basePath:
string=""
Inherited from
RendererInterface.basePath
Defined in
packages/charm/src/graphics/rendererInterface.ts:49
cameraRP?
optionalcameraRP:NativeCameraRP
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:252
canvas?
optionalcanvas:HTMLCanvasElement
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:255
debug
debug:
boolean=true
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:263
defaultEmissiveTexture?
optionaldefaultEmissiveTexture:NativeTextureRP
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:260
defaultSampler?
optionaldefaultSampler:NativeTextureSamplerRP
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:262
draw?
optionaldraw:DrawInterface
Inherited from
RendererInterface.draw
Defined in
packages/charm/src/graphics/rendererInterface.ts:53
entityRegistry
entityRegistry:
Map<string,nativeEntityRP>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:259
frameIndex
frameIndex:
number=0
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:269
fx
fx:
boolean=false
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:261
loadedGLTFs
loadedGLTFs:
Map<string,GLTFInfo>
Inherited from
RendererInterface.loadedGLTFs
Defined in
packages/charm/src/graphics/rendererInterface.ts:56
loadingGLTFs
loadingGLTFs:
Map<string,LoadedGLTFCallback[]>
Inherited from
RendererInterface.loadingGLTFs
Defined in
packages/charm/src/graphics/rendererInterface.ts:57
matBundle
matBundle:
URL
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:267
materialInstanceRegistry
materialInstanceRegistry:
Map<number,NativeMaterialInstanceRP>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:256
materialProvider?
optionalmaterialProvider:NativeMaterialProviderRP
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:257
nativeEngineRP?
optionalnativeEngineRP:NativeEngineRP
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:249
plane?
optionalplane:Mesh
Inherited from
RendererInterface.plane
Defined in
packages/charm/src/graphics/rendererInterface.ts:50
planeXY?
optionalplaneXY:Mesh
Inherited from
RendererInterface.planeXY
Defined in
packages/charm/src/graphics/rendererInterface.ts:51
rendererRP?
optionalrendererRP:NativeRendererRP
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:251
sceneRP?
optionalsceneRP:NativeSceneRP
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:253
texturesCache
texturesCache:
Map<string,NativeTexture>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:258
tinyGltf?
optionaltinyGltf:TinyGltf
Inherited from
RendererInterface.tinyGltf
Defined in
packages/charm/src/graphics/rendererInterface.ts:55
tmrwRooms?
optionaltmrwRooms:MainModule
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:254
viewRP?
optionalviewRP:NativeViewRP
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:250
Methods
buildTestMesh()
buildTestMesh():
Promise<void>
Returns
Promise<void>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:690
clearScene()
clearScene():
void
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1192
createMaterialProvider()
createMaterialProvider(
matBundle):Promise<NativeMaterialProviderRP>
Create material provider from matz bundle
Parameters
• matBundle: string | URL
path to matz file
Returns
Promise<NativeMaterialProviderRP>
new material provider
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:352
createNativeMesh()
createNativeMesh(
mesh,material,transform):nativeEntityRP
currently it creates Entities, no meshes
Parameters
• mesh: NativeMesh
• material: Material
• transform: mat4 = ...
Returns
nativeEntityRP
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:888
createTexture()
createTexture(
name,data):Texture
Parameters
• name: string
• data: TextureContent
Returns
Texture
Overrides
RendererInterface.createTexture
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1320
createTextureFromKTX()
createTextureFromKTX(
_name,_data,_callback?):undefined|Texture
Parameters
• _name: string
• _data: ArrayBuffer
• _callback?
Returns
undefined | Texture
Overrides
RendererInterface.createTextureFromKTX
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1345
destroy()
destroy():
void
Destroy all allocated resources
Returns
void
Overrides
RendererInterface.destroy
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:275
getAmbientOcclusionOptions()
getAmbientOcclusionOptions():
Partial<Omit<NativeViewRP$AmbientOcclusionOptions,"quality"|"lowPassFilter"|"upsampling"> &object>
Returns
Partial<Omit<NativeViewRP$AmbientOcclusionOptions, "quality" | "lowPassFilter" | "upsampling"> & object>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:560
getAmbientOcclutionSSCTOptions()
getAmbientOcclutionSSCTOptions():
Partial<NativeViewRP$AmbientOcclusionSSCTOptions>
Returns
Partial<NativeViewRP$AmbientOcclusionSSCTOptions>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:538
getBloomOptions()
getBloomOptions():
Partial<Omit<NativeViewRP$BloomOptions,"blendMode"> &object>
Returns
Partial<Omit<NativeViewRP$BloomOptions, "blendMode"> & object>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:408
getDepthOfFieldBokehOptions()
getDepthOfFieldBokehOptions():
Partial<NativeViewRP$DepthOfFieldBokehOptions>
Returns
Partial<NativeViewRP$DepthOfFieldBokehOptions>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:490
getDepthOfFieldOptions()
getDepthOfFieldOptions():
Partial<Omit<NativeViewRP$DepthOfFieldOptions,"filter"> &object>
Returns
Partial<Omit<NativeViewRP$DepthOfFieldOptions, "filter"> & object>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:471
getDitheringOptions()
getDitheringOptions():
Partial<Omit<NativeViewRP$DitheringOptions,"mode"> &object>
Returns
Partial<Omit<NativeViewRP$DitheringOptions, "mode"> & object>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:519
getDynamicResolutionOptions()
getDynamicResolutionOptions():
Partial<Omit<NativeViewRP$DynamicResolutionOptions,"quality"> &object>
Returns
Partial<Omit<NativeViewRP$DynamicResolutionOptions, "quality"> & object>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:429
getFogOptions()
getFogOptions():
Partial<NativeViewRP$FogOptions>
Returns
Partial<NativeViewRP$FogOptions>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:455
getGuardBandOptions()
getGuardBandOptions():
object
Returns
object
enabled?
optionalenabled:boolean
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:441
getLightingOptions()
getLightingOptions():
Partial<Omit<NativeViewRP$LightOptions,"shadowType"> &object>
Returns
Partial<Omit<NativeViewRP$LightOptions, "shadowType"> & object>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:663
getMultisampleAntialiasingOptions()
getMultisampleAntialiasingOptions():
Partial<NativeViewRP$MultiSampleAntiAliasingOptions>
Returns
Partial<NativeViewRP$MultiSampleAntiAliasingOptions>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:582
getPlaneMesh()
getPlaneMesh():
Mesh
static mesh
Returns
Inherited from
RendererInterface.getPlaneMesh
Defined in
packages/charm/src/graphics/rendererInterface.ts:158
getPostProcessing()
getPostProcessing():
boolean
Returns
boolean
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:386
getScreenspaceReflectionsOptions()
getScreenspaceReflectionsOptions():
Partial<NativeViewRP$ScreenSpaceReflectionsOptions>
Returns
Partial<NativeViewRP$ScreenSpaceReflectionsOptions>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:621
getSoftShadowsOptions()
getSoftShadowsOptions():
Partial<NativeViewRP$SoftShadowOptions>
Returns
Partial<NativeViewRP$SoftShadowOptions>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:647
getTemporalAntiAliasingOptions()
getTemporalAntiAliasingOptions():
Partial<Omit<NativeViewRP$TemporalAntiAliasingOptions,"boxClipping"|"boxType"> &object>
Returns
Partial<Omit<NativeViewRP$TemporalAntiAliasingOptions, "boxClipping" | "boxType"> & object>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:601
getTexture()
getTexture(
name):undefined|Texture
Parameters
• name: string
Returns
undefined | Texture
Overrides
RendererInterface.getTexture
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1365
getVignetteOptions()
getVignetteOptions():
Partial<NativeViewRP$VignetteOptions>
Returns
Partial<NativeViewRP$VignetteOptions>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:503
getVSMShadowsOptions()
getVSMShadowsOptions():
Partial<NativeViewRP$VsmShadowOptions>
Returns
Partial<NativeViewRP$VsmShadowOptions>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:634
init()
init(
nativeCanvas):Promise<void>
Parameters
• nativeCanvas: HTMLCanvasElement
Returns
Promise<void>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:288
internalLoadGLTF()
internalLoadGLTF(
_url,_gltf,_options?):undefined|GLTFInfo
Parameters
• _url: string
• _gltf: GlTf
• _options?: GLTFLoadingOptions
Returns
undefined | GLTFInfo
Inherited from
RendererInterface.internalLoadGLTF
Defined in
packages/charm/src/graphics/rendererInterface.ts:117
loadEnvironment()
loadEnvironment(
env):Promise<void>
Parameters
• env: Environment
Returns
Promise<void>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1133
loadGLTF()
loadGLTF(
url,_options?,_force?):Promise<undefined|GLTFInfo>
Parameters
• url: string
• _options?: GLTFLoadingOptions
• _force?: boolean
Returns
Promise<undefined | GLTFInfo>
See
RendererInterface
Overrides
RendererInterface.loadGLTF
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1749
loadGLTFFromBinary()
loadGLTFFromBinary(
data,options?,url?):Promise<undefined|GLTFInfo>
Loads a GLTF from a Binary array, in case it was dragged from hard drive
Parameters
• data: ArrayBuffer
• options?: GLTFLoadingOptions
• url?: string = "none"
Returns
Promise<undefined | GLTFInfo>
Inherited from
RendererInterface.loadGLTFFromBinary
Defined in
packages/charm/src/graphics/rendererInterface.ts:105
loadGLTFLoadersGL()
loadGLTFLoadersGL(
url,root?,animations?):Promise<undefined|Node>
Load a gltf from url using loaders.gl. In contrast to tinygltf, this loader extracts buffer attributes to typed arrays which can be used to populate mesh.positions, mesh.normals, etc.
Parameters
• url: string
gltf/glb url
• root?: Node
node to append processed scene to
• animations?: Animation[]
existing set of animations. gltf animations will be appended.
Returns
Promise<undefined | Node>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1424
loadImage()
loadImage(
path):Promise<HTMLImageElement>
Helper to async load an image
Parameters
• path: string
image path
Returns
Promise<HTMLImageElement>
promise
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1402
loadScene()
loadScene(
scene):Promise<void>
Parameters
• scene: Scene
Returns
Promise<void>
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:672
newMesh()
newMesh():
Mesh
Returns
Overrides
RendererInterface.newMesh
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:684
packTangentFrame()
packTangentFrame(
tangent,normal):quat
Parameters
• tangent: vec3
• normal: vec3
Returns
quat
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:712
parseAnimation()
parseAnimation(
index,json):Animation
TODO: Common code should be shared with WebGPUGltfToNodes
Parameters
• index: number
• json: GLTFPostprocessed
Returns
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1676
preloadTexture()
preloadTexture(
url,name?):void
Parameters
• url: string
• name?: string
Returns
void
Overrides
RendererInterface.preloadTexture
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1356
render()
render(
scene,camera):void
Renders a scene from a point of view
Parameters
• scene: Scene
• camera: Camera
Returns
void
Overrides
RendererInterface.render
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1296
resize()
resize(
logical,device):void
Parameters
• logical
• logical.height: number
• logical.width: number
• device
• device.height: number
• device.width: number
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1773
setAmbientOcclusionOptions()
setAmbientOcclusionOptions(
options):void
Parameters
• options: Partial<Omit<NativeViewRP$AmbientOcclusionOptions, "quality" | "lowPassFilter" | "upsampling"> & object>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:542
setAmbientOcclutionSSCTOptions()
setAmbientOcclutionSSCTOptions(
options):void
Parameters
• options: Partial<NativeViewRP$AmbientOcclusionSSCTOptions>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:529
setBloomOptions()
setBloomOptions(
options):void
Parameters
• options: Partial<Omit<NativeViewRP$BloomOptions, "blendMode"> & object>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:390
setDepthOfFieldBokehOptions()
setDepthOfFieldBokehOptions(
options):void
Parameters
• options: Partial<NativeViewRP$DepthOfFieldBokehOptions>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:481
setDepthOfFieldOptions()
setDepthOfFieldOptions(
options):void
Parameters
• options: Partial<Omit<NativeViewRP$DepthOfFieldOptions, "filter"> & object>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:459
setDitheringOptions()
setDitheringOptions(
options):void
Parameters
• options: Partial<Omit<NativeViewRP$DitheringOptions, "mode"> & object>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:507
setDynamicResoultionOptions()
setDynamicResoultionOptions(
options):void
Parameters
• options: Partial<Omit<NativeViewRP$DynamicResolutionOptions, "quality"> & object>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:416
setEnvironment()
setEnvironment(
env):void
Parameters
• env: HDREnvironment
Returns
void
Overrides
RendererInterface.setEnvironment
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1767
setFogOptions()
setFogOptions(
options):void
Parameters
• options: Partial<NativeViewRP$FogOptions>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:445
setGuardBandOptions()
setGuardBandOptions(
options):void
Parameters
• options
• options.enabled?: boolean
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:437
setLightingOptions()
setLightingOptions(
options):void
Parameters
• options: Partial<Omit<NativeViewRP$LightOptions, "shadowType"> & object>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:651
setMultisampleAntiAliasingOptions()
setMultisampleAntiAliasingOptions(
options):void
Parameters
• options: Partial<NativeViewRP$MultiSampleAntiAliasingOptions>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:573
setPostProcessing()
setPostProcessing(
enabled):void
Parameters
• enabled: boolean
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:381
setScreenspaceReflectionsOptions()
setScreenspaceReflectionsOptions(
options):void
Parameters
• options: Partial<NativeViewRP$ScreenSpaceReflectionsOptions>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:612
setSoftShadowsOptions()
setSoftShadowsOptions(
options):void
Parameters
• options: Partial<NativeViewRP$SoftShadowOptions>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:638
setTemporalAntiAliasingOptions()
setTemporalAntiAliasingOptions(
options):void
Parameters
• options: Partial<Omit<NativeViewRP$TemporalAntiAliasingOptions, "boxClipping" | "boxType"> & object>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:586
setTonemapping()
setTonemapping():
void
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:367
setVignetteOptions()
setVignetteOptions(
options):void
Parameters
• options: Partial<NativeViewRP$VignetteOptions>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:494
setVSMShadowsOptions()
setVSMShadowsOptions(
options):void
Parameters
• options: Partial<NativeViewRP$VsmShadowOptions>
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:625
updateNativeMesh()
updateNativeMesh(
mesh,requireTangents):void
Parameters
• mesh: NativeMesh
• requireTangents: boolean
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:733
updateRenderables()
updateRenderables(
node,camera):void
Frustum cull renderables and update transform and material
Parameters
• node: Node
• camera: Camera
Returns
void
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1202
updateTexture()
updateTexture(
name,data):void
Parameters
• name: string
• data: TextureContent
Returns
void
Overrides
RendererInterface.updateTexture
Defined in
packages/charm/src/graphics/lowlevelEngine.ts:1369
updateTextureFromKTX()
updateTextureFromKTX(
_name,_data,_callback):void
Parameters
• _name: string
• _data: ArrayBuffer
• _callback
Returns
void
Overrides
RendererInterface.updateTextureFromKTX