@onerjs/core 8.55.9 → 8.56.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AudioV2/webAudio/webAudioEngine.d.ts +7 -0
- package/AudioV2/webAudio/webAudioEngine.js +6 -5
- package/AudioV2/webAudio/webAudioEngine.js.map +1 -1
- package/Culling/Helper/boundingInfoHelper.js +8 -4
- package/Culling/Helper/boundingInfoHelper.js.map +1 -1
- package/Engines/AbstractEngine/abstractEngine.textureLoaders.d.ts +5 -1
- package/Engines/AbstractEngine/abstractEngine.textureLoaders.js +7 -3
- package/Engines/AbstractEngine/abstractEngine.textureLoaders.js.map +1 -1
- package/Engines/AbstractEngine/abstractEngine.textureLoaders.pure.d.ts +6 -0
- package/Engines/AbstractEngine/abstractEngine.textureLoaders.pure.js +16 -0
- package/Engines/AbstractEngine/abstractEngine.textureLoaders.pure.js.map +1 -0
- package/Engines/AbstractEngine/pure.d.ts +1 -0
- package/Engines/AbstractEngine/pure.js +1 -0
- package/Engines/AbstractEngine/pure.js.map +1 -1
- package/Engines/IDrawContext.d.ts +2 -0
- package/Engines/IDrawContext.js.map +1 -1
- package/Engines/WebGPU/webgpuDrawContext.d.ts +8 -0
- package/Engines/WebGPU/webgpuDrawContext.js +15 -0
- package/Engines/WebGPU/webgpuDrawContext.js.map +1 -1
- package/Engines/abstractEngine.pure.js +2 -2
- package/Engines/abstractEngine.pure.js.map +1 -1
- package/Engines/engine.d.ts +11 -3
- package/Engines/webgpuEngine.d.ts +1 -0
- package/Engines/webgpuEngine.js +1 -0
- package/Engines/webgpuEngine.js.map +1 -1
- package/Engines/webgpuEngine.pure.d.ts +10 -0
- package/Engines/webgpuEngine.pure.js +15 -1
- package/Engines/webgpuEngine.pure.js.map +1 -1
- package/FrameGraph/Tasks/Rendering/iblShadowsRendererTask.pure.js +2 -5
- package/FrameGraph/Tasks/Rendering/iblShadowsRendererTask.pure.js.map +1 -1
- package/Materials/Node/Blocks/Fragment/imageProcessingBlock.pure.js +2 -0
- package/Materials/Node/Blocks/Fragment/imageProcessingBlock.pure.js.map +1 -1
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.pure.js +1 -0
- package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.pure.js.map +1 -1
- package/Materials/Node/Blocks/powBlock.pure.js +2 -1
- package/Materials/Node/Blocks/powBlock.pure.js.map +1 -1
- package/Materials/Node/Blocks/triPlanarBlock.pure.js +14 -12
- package/Materials/Node/Blocks/triPlanarBlock.pure.js.map +1 -1
- package/Materials/Node/nodeMaterial.pure.d.ts +1 -0
- package/Materials/Node/nodeMaterialBuildState.d.ts +3 -3
- package/Materials/PBR/openpbrMaterial.pure.d.ts +1 -0
- package/Materials/PBR/pbrBaseMaterial.pure.d.ts +1 -0
- package/Materials/Textures/index.d.ts +1 -0
- package/Materials/Textures/index.js +1 -0
- package/Materials/Textures/index.js.map +1 -1
- package/Materials/drawWrapper.js +3 -0
- package/Materials/drawWrapper.js.map +1 -1
- package/Materials/imageProcessingConfiguration.defines.d.ts +3 -0
- package/Materials/imageProcessingConfiguration.defines.js +2 -0
- package/Materials/imageProcessingConfiguration.defines.js.map +1 -1
- package/Materials/imageProcessingConfiguration.functions.js +3 -0
- package/Materials/imageProcessingConfiguration.functions.js.map +1 -1
- package/Materials/imageProcessingConfiguration.pure.d.ts +58 -0
- package/Materials/imageProcessingConfiguration.pure.js +123 -2
- package/Materials/imageProcessingConfiguration.pure.js.map +1 -1
- package/Materials/standardMaterial.pure.d.ts +1 -0
- package/Materials/uniformBuffer.d.ts +29 -0
- package/Materials/uniformBuffer.js +146 -0
- package/Materials/uniformBuffer.js.map +1 -1
- package/Maths/colorTemperature.functions.d.ts +29 -0
- package/Maths/colorTemperature.functions.js +196 -0
- package/Maths/colorTemperature.functions.js.map +1 -0
- package/Maths/index.d.ts +1 -0
- package/Maths/index.js +1 -0
- package/Maths/index.js.map +1 -1
- package/Maths/pure.d.ts +1 -0
- package/Maths/pure.js +1 -0
- package/Maths/pure.js.map +1 -1
- package/Misc/observable.pure.js +1 -3
- package/Misc/observable.pure.js.map +1 -1
- package/Misc/tools.pure.js +1 -1
- package/Misc/tools.pure.js.map +1 -1
- package/PostProcesses/imageProcessingPostProcess.d.ts +41 -1
- package/PostProcesses/imageProcessingPostProcess.js +41 -1
- package/PostProcesses/imageProcessingPostProcess.js.map +1 -1
- package/PostProcesses/thinImageProcessingPostProcess.d.ts +50 -0
- package/PostProcesses/thinImageProcessingPostProcess.js +65 -0
- package/PostProcesses/thinImageProcessingPostProcess.js.map +1 -1
- package/Rendering/IBLShadows/iblShadowsMaterialCompatibility.pure.d.ts +12 -0
- package/Rendering/IBLShadows/iblShadowsMaterialCompatibility.pure.js +22 -0
- package/Rendering/IBLShadows/iblShadowsMaterialCompatibility.pure.js.map +1 -0
- package/Rendering/IBLShadows/iblShadowsPluginMaterial.pure.d.ts +1 -0
- package/Rendering/IBLShadows/iblShadowsPluginMaterial.pure.js +39 -0
- package/Rendering/IBLShadows/iblShadowsPluginMaterial.pure.js.map +1 -1
- package/Rendering/IBLShadows/iblShadowsRenderPipeline.pure.js +2 -4
- package/Rendering/IBLShadows/iblShadowsRenderPipeline.pure.js.map +1 -1
- package/Rendering/IBLShadows/pure.d.ts +1 -0
- package/Rendering/IBLShadows/pure.js +1 -0
- package/Rendering/IBLShadows/pure.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingObject.d.ts +11 -0
- package/Rendering/fluidRenderer/fluidRenderingObject.js +36 -14
- package/Rendering/fluidRenderer/fluidRenderingObject.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingObjectCustomParticles.d.ts +5 -0
- package/Rendering/fluidRenderer/fluidRenderingObjectCustomParticles.js +16 -3
- package/Rendering/fluidRenderer/fluidRenderingObjectCustomParticles.js.map +1 -1
- package/Rendering/fluidRenderer/fluidRenderingObjectParticleSystem.d.ts +5 -0
- package/Rendering/fluidRenderer/fluidRenderingObjectParticleSystem.js +12 -0
- package/Rendering/fluidRenderer/fluidRenderingObjectParticleSystem.js.map +1 -1
- package/Rendering/iblCdfGenerator.js +10 -1
- package/Rendering/iblCdfGenerator.js.map +1 -1
- package/Shaders/ShadersInclude/hdrFilteringFunctions.js +1 -1
- package/Shaders/ShadersInclude/hdrFilteringFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/helperFunctions.js +2 -2
- package/Shaders/ShadersInclude/helperFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/imageProcessingDeclaration.js +3 -0
- package/Shaders/ShadersInclude/imageProcessingDeclaration.js.map +1 -1
- package/Shaders/ShadersInclude/imageProcessingFunctions.js +3 -0
- package/Shaders/ShadersInclude/imageProcessingFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/openpbrDirectLighting.js +34 -4
- package/Shaders/ShadersInclude/openpbrDirectLighting.js.map +1 -1
- package/Shaders/ShadersInclude/openpbrIblFunctions.js +8 -2
- package/Shaders/ShadersInclude/openpbrIblFunctions.js.map +1 -1
- package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js +5 -0
- package/Shaders/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
- package/Shaders/fluidRenderingParticleDepth.vertex.js +7 -1
- package/Shaders/fluidRenderingParticleDepth.vertex.js.map +1 -1
- package/Shaders/fluidRenderingParticleDiffuse.vertex.js +7 -1
- package/Shaders/fluidRenderingParticleDiffuse.vertex.js.map +1 -1
- package/Shaders/fluidRenderingParticleThickness.vertex.js +7 -1
- package/Shaders/fluidRenderingParticleThickness.vertex.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/imageProcessingDeclaration.js +3 -0
- package/ShadersWGSL/ShadersInclude/imageProcessingDeclaration.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/imageProcessingFunctions.js +3 -0
- package/ShadersWGSL/ShadersInclude/imageProcessingFunctions.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/openpbrDirectLighting.js +35 -5
- package/ShadersWGSL/ShadersInclude/openpbrDirectLighting.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/openpbrDirectLightingInit.js +1 -1
- package/ShadersWGSL/ShadersInclude/openpbrDirectLightingInit.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/openpbrIblFunctions.js +8 -2
- package/ShadersWGSL/ShadersInclude/openpbrIblFunctions.js.map +1 -1
- package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js +5 -0
- package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
- package/ShadersWGSL/fluidRenderingParticleDepth.vertex.js +16 -4
- package/ShadersWGSL/fluidRenderingParticleDepth.vertex.js.map +1 -1
- package/ShadersWGSL/fluidRenderingParticleDiffuse.vertex.js +15 -3
- package/ShadersWGSL/fluidRenderingParticleDiffuse.vertex.js.map +1 -1
- package/ShadersWGSL/fluidRenderingParticleThickness.vertex.js +15 -3
- package/ShadersWGSL/fluidRenderingParticleThickness.vertex.js.map +1 -1
- package/XR/features/Layers/WebXRCompositionLayer.d.ts +52 -0
- package/XR/features/Layers/WebXRCompositionLayer.js +80 -0
- package/XR/features/Layers/WebXRCompositionLayer.js.map +1 -1
- package/XR/features/WebXRControllerPointerSelection.pure.js +2 -1
- package/XR/features/WebXRControllerPointerSelection.pure.js.map +1 -1
- package/XR/features/WebXRControllerTeleportation.pure.js +2 -1
- package/XR/features/WebXRControllerTeleportation.pure.js.map +1 -1
- package/XR/features/WebXRDepthSensing.pure.d.ts +21 -0
- package/XR/features/WebXRDepthSensing.pure.js +42 -0
- package/XR/features/WebXRDepthSensing.pure.js.map +1 -1
- package/XR/features/WebXRHandTracking.pure.js +2 -0
- package/XR/features/WebXRHandTracking.pure.js.map +1 -1
- package/XR/features/WebXRLayers.pure.d.ts +12 -0
- package/XR/features/WebXRLayers.pure.js +31 -1
- package/XR/features/WebXRLayers.pure.js.map +1 -1
- package/XR/features/WebXRTrackedSources.d.ts +5 -0
- package/XR/features/WebXRTrackedSources.js +8 -0
- package/XR/features/WebXRTrackedSources.js.map +1 -0
- package/XR/features/WebXRTrackedSources.pure.d.ts +70 -0
- package/XR/features/WebXRTrackedSources.pure.js +153 -0
- package/XR/features/WebXRTrackedSources.pure.js.map +1 -0
- package/XR/features/index.d.ts +1 -0
- package/XR/features/index.js +1 -0
- package/XR/features/index.js.map +1 -1
- package/XR/features/pure.d.ts +1 -0
- package/XR/features/pure.js +1 -0
- package/XR/features/pure.js.map +1 -1
- package/XR/motionController/webXRAbstractMotionController.d.ts +53 -1
- package/XR/motionController/webXRAbstractMotionController.js +61 -0
- package/XR/motionController/webXRAbstractMotionController.js.map +1 -1
- package/XR/webXRDefaultExperience.js +8 -4
- package/XR/webXRDefaultExperience.js.map +1 -1
- package/XR/webXRExperienceHelper.js +86 -44
- package/XR/webXRExperienceHelper.js.map +1 -1
- package/XR/webXRFeaturesManager.d.ts +9 -0
- package/XR/webXRFeaturesManager.js +4 -0
- package/XR/webXRFeaturesManager.js.map +1 -1
- package/XR/webXRGraphicsBinding.d.ts +29 -0
- package/XR/webXRGraphicsBinding.js +40 -0
- package/XR/webXRGraphicsBinding.js.map +1 -1
- package/XR/webXRInputSource.js +1 -1
- package/XR/webXRInputSource.js.map +1 -1
- package/XR/webXRLayerWrapper.d.ts +7 -5
- package/XR/webXRLayerWrapper.js +10 -7
- package/XR/webXRLayerWrapper.js.map +1 -1
- package/XR/webXRSessionManager.d.ts +45 -0
- package/XR/webXRSessionManager.js +174 -29
- package/XR/webXRSessionManager.js.map +1 -1
- package/package.json +1 -1
package/Engines/engine.d.ts
CHANGED
|
@@ -440,6 +440,8 @@ interface XRInputSource {
|
|
|
440
440
|
readonly gamepad?: Gamepad | undefined;
|
|
441
441
|
readonly profiles: string[];
|
|
442
442
|
readonly hand?: XRHand;
|
|
443
|
+
/** Indicates that the user agent recommends omitting the application's input source representation. */
|
|
444
|
+
readonly skipRendering?: boolean;
|
|
443
445
|
}
|
|
444
446
|
|
|
445
447
|
abstract class XRInputSource implements XRInputSource {}
|
|
@@ -631,6 +633,7 @@ interface XRSession extends EventTarget {
|
|
|
631
633
|
readonly visibilityState: XRVisibilityState;
|
|
632
634
|
readonly frameRate?: number | undefined;
|
|
633
635
|
readonly supportedFrameRates?: Float32Array | undefined;
|
|
636
|
+
readonly maxRenderLayers?: number | undefined;
|
|
634
637
|
|
|
635
638
|
/**
|
|
636
639
|
* Removes a callback from the animation frame painting callback from
|
|
@@ -726,8 +729,8 @@ interface XRView {
|
|
|
726
729
|
readonly eye: XREye;
|
|
727
730
|
readonly projectionMatrix: Float32Array;
|
|
728
731
|
readonly transform: XRRigidTransform;
|
|
729
|
-
readonly recommendedViewportScale?: number | undefined;
|
|
730
|
-
requestViewportScale(scale: number): void;
|
|
732
|
+
readonly recommendedViewportScale?: number | null | undefined;
|
|
733
|
+
requestViewportScale(scale: number | null): void;
|
|
731
734
|
}
|
|
732
735
|
|
|
733
736
|
abstract class XRView implements XRView {}
|
|
@@ -1007,8 +1010,11 @@ interface XRCompositionLayer extends XRLayer {
|
|
|
1007
1010
|
readonly layout: XRLayerLayout;
|
|
1008
1011
|
blendTextureSourceAlpha: boolean;
|
|
1009
1012
|
chromaticAberrationCorrection?: boolean | undefined;
|
|
1013
|
+
forceMonoPresentation?: boolean | undefined;
|
|
1014
|
+
opacity?: number | undefined;
|
|
1010
1015
|
readonly mipLevels: number;
|
|
1011
1016
|
readonly needsRedraw: boolean;
|
|
1017
|
+
quality?: XRLayerQuality | undefined;
|
|
1012
1018
|
destroy(): void;
|
|
1013
1019
|
|
|
1014
1020
|
space: XRSpace;
|
|
@@ -1034,6 +1040,8 @@ type XRTextureType = "texture" | "texture-array";
|
|
|
1034
1040
|
|
|
1035
1041
|
type XRLayerLayout = "default" | "mono" | "stereo" | "stereo-left-right" | "stereo-top-bottom";
|
|
1036
1042
|
|
|
1043
|
+
type XRLayerQuality = "default" | "text-optimized" | "graphics-optimized";
|
|
1044
|
+
|
|
1037
1045
|
interface XRProjectionLayerInit {
|
|
1038
1046
|
scaleFactor?: number | undefined;
|
|
1039
1047
|
textureType?: XRTextureType | undefined;
|
|
@@ -1047,7 +1055,7 @@ interface XRProjectionLayer extends XRCompositionLayer {
|
|
|
1047
1055
|
readonly textureHeight: number;
|
|
1048
1056
|
readonly textureArrayLength: number;
|
|
1049
1057
|
readonly ignoreDepthValues: number;
|
|
1050
|
-
fixedFoveation
|
|
1058
|
+
fixedFoveation?: number | null | undefined;
|
|
1051
1059
|
}
|
|
1052
1060
|
|
|
1053
1061
|
abstract class XRProjectionLayer implements XRProjectionLayer {}
|
|
@@ -21,3 +21,4 @@ import "./WebGPU/Extensions/engine.renderTarget.js";
|
|
|
21
21
|
import "./WebGPU/Extensions/engine.renderTargetTexture.js";
|
|
22
22
|
import "./WebGPU/Extensions/engine.renderTargetCube.js";
|
|
23
23
|
import "./WebGPU/Extensions/engine.query.js";
|
|
24
|
+
import "./WebGPU/Extensions/engine.dynamicTexture.js";
|
package/Engines/webgpuEngine.js
CHANGED
|
@@ -21,4 +21,5 @@ import "./WebGPU/Extensions/engine.renderTarget.js";
|
|
|
21
21
|
import "./WebGPU/Extensions/engine.renderTargetTexture.js";
|
|
22
22
|
import "./WebGPU/Extensions/engine.renderTargetCube.js";
|
|
23
23
|
import "./WebGPU/Extensions/engine.query.js";
|
|
24
|
+
import "./WebGPU/Extensions/engine.dynamicTexture.js";
|
|
24
25
|
//# sourceMappingURL=webgpuEngine.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webgpuEngine.js","sourceRoot":"","sources":["../../../../dev/core/src/Engines/webgpuEngine.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AAEpC,OAAO,iCAAiC,CAAC;AACzC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,yBAAyB,CAAC;AACjC,OAAO,+CAA+C,CAAC;AACvD,OAAO,qCAAqC,CAAC;AAC7C,OAAO,wCAAwC,CAAC;AAChD,OAAO,yCAAyC,CAAC;AACjD,OAAO,4CAA4C,CAAC;AACpD,OAAO,yCAAyC,CAAC;AACjD,OAAO,0CAA0C,CAAC;AAClD,OAAO,gDAAgD,CAAC;AACxD,OAAO,sBAAsB,CAAC;AAC9B,OAAO,kCAAkC,CAAC;AAC1C,OAAO,4CAA4C,CAAC;AACpD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,wCAAwC,CAAC;AAChD,OAAO,wCAAwC,CAAC;AAChD,OAAO,yCAAyC,CAAC;AACjD,OAAO,gDAAgD,CAAC;AACxD,OAAO,6CAA6C,CAAC;AACrD,OAAO,kCAAkC,CAAC","sourcesContent":["export * from \"./webgpuEngine.pure\";\n\nimport \"../ShadersWGSL/clearQuad.vertex\";\nimport \"../ShadersWGSL/clearQuad.fragment\";\nimport \"./WebGPU/webgpuShaderProcessorsWGSL\";\nimport \"../Buffers/buffer.align\";\nimport \"./AbstractEngine/abstractEngine.loadingScreen\";\nimport \"./AbstractEngine/abstractEngine.dom\";\nimport \"./AbstractEngine/abstractEngine.states\";\nimport \"./AbstractEngine/abstractEngine.stencil\";\nimport \"./AbstractEngine/abstractEngine.renderPass\";\nimport \"./AbstractEngine/abstractEngine.texture\";\nimport \"./AbstractEngine/abstractEngine.loadFile\";\nimport \"./AbstractEngine/abstractEngine.textureLoaders\";\nimport \"../Audio/audioEngine\";\nimport \"./WebGPU/Extensions/engine.alpha\";\nimport \"./WebGPU/Extensions/engine.alphaToCoverage\";\nimport \"./WebGPU/Extensions/engine.rawTexture\";\nimport \"./WebGPU/Extensions/engine.readTexture\";\nimport \"./WebGPU/Extensions/engine.cubeTexture\";\nimport \"./WebGPU/Extensions/engine.renderTarget\";\nimport \"./WebGPU/Extensions/engine.renderTargetTexture\";\nimport \"./WebGPU/Extensions/engine.renderTargetCube\";\nimport \"./WebGPU/Extensions/engine.query\";\n"]}
|
|
1
|
+
{"version":3,"file":"webgpuEngine.js","sourceRoot":"","sources":["../../../../dev/core/src/Engines/webgpuEngine.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AAEpC,OAAO,iCAAiC,CAAC;AACzC,OAAO,mCAAmC,CAAC;AAC3C,OAAO,qCAAqC,CAAC;AAC7C,OAAO,yBAAyB,CAAC;AACjC,OAAO,+CAA+C,CAAC;AACvD,OAAO,qCAAqC,CAAC;AAC7C,OAAO,wCAAwC,CAAC;AAChD,OAAO,yCAAyC,CAAC;AACjD,OAAO,4CAA4C,CAAC;AACpD,OAAO,yCAAyC,CAAC;AACjD,OAAO,0CAA0C,CAAC;AAClD,OAAO,gDAAgD,CAAC;AACxD,OAAO,sBAAsB,CAAC;AAC9B,OAAO,kCAAkC,CAAC;AAC1C,OAAO,4CAA4C,CAAC;AACpD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,wCAAwC,CAAC;AAChD,OAAO,wCAAwC,CAAC;AAChD,OAAO,yCAAyC,CAAC;AACjD,OAAO,gDAAgD,CAAC;AACxD,OAAO,6CAA6C,CAAC;AACrD,OAAO,kCAAkC,CAAC;AAC1C,OAAO,2CAA2C,CAAC","sourcesContent":["export * from \"./webgpuEngine.pure\";\n\nimport \"../ShadersWGSL/clearQuad.vertex\";\nimport \"../ShadersWGSL/clearQuad.fragment\";\nimport \"./WebGPU/webgpuShaderProcessorsWGSL\";\nimport \"../Buffers/buffer.align\";\nimport \"./AbstractEngine/abstractEngine.loadingScreen\";\nimport \"./AbstractEngine/abstractEngine.dom\";\nimport \"./AbstractEngine/abstractEngine.states\";\nimport \"./AbstractEngine/abstractEngine.stencil\";\nimport \"./AbstractEngine/abstractEngine.renderPass\";\nimport \"./AbstractEngine/abstractEngine.texture\";\nimport \"./AbstractEngine/abstractEngine.loadFile\";\nimport \"./AbstractEngine/abstractEngine.textureLoaders\";\nimport \"../Audio/audioEngine\";\nimport \"./WebGPU/Extensions/engine.alpha\";\nimport \"./WebGPU/Extensions/engine.alphaToCoverage\";\nimport \"./WebGPU/Extensions/engine.rawTexture\";\nimport \"./WebGPU/Extensions/engine.readTexture\";\nimport \"./WebGPU/Extensions/engine.cubeTexture\";\nimport \"./WebGPU/Extensions/engine.renderTarget\";\nimport \"./WebGPU/Extensions/engine.renderTargetTexture\";\nimport \"./WebGPU/Extensions/engine.renderTargetCube\";\nimport \"./WebGPU/Extensions/engine.query\";\nimport \"./WebGPU/Extensions/engine.dynamicTexture\";\n"]}
|
|
@@ -83,6 +83,7 @@ export interface WebGPUEngineOptions extends AbstractEngineOptions, GPURequestAd
|
|
|
83
83
|
* created (adapter-request time): WebGPU has no post-hoc "make XR compatible" step, so it cannot
|
|
84
84
|
* be toggled on later. Leave unset/false for the default non-XR path.
|
|
85
85
|
* Default: false
|
|
86
|
+
* @experimental WebGPU-XR support is experimental and may change.
|
|
86
87
|
*/
|
|
87
88
|
xrCompatible?: boolean;
|
|
88
89
|
/**
|
|
@@ -308,6 +309,15 @@ export declare class WebGPUEngine extends ThinWebGPUEngine {
|
|
|
308
309
|
*/
|
|
309
310
|
get disableCacheRenderPipelines(): boolean;
|
|
310
311
|
set disableCacheRenderPipelines(disable: boolean);
|
|
312
|
+
/**
|
|
313
|
+
* When true (default), the "leftover" uniform buffer of an effect (the buffer that holds the uniforms not declared in a named
|
|
314
|
+
* uniform block) keeps one GPU buffer per draw context, so a given draw call always binds the same buffer for a given effect.
|
|
315
|
+
* When false, the GPU buffers are assigned in draw order: the buffer bound by a draw call then changes with the order in which
|
|
316
|
+
* meshes are drawn, and every new (draw context, buffer) pair is a new entry in the bind group cache.
|
|
317
|
+
* Change it before rendering the first frame. You should set it to false only for testing purpose!
|
|
318
|
+
* @internal
|
|
319
|
+
*/
|
|
320
|
+
_useOwnerKeyedUniformBufferSlots: boolean;
|
|
311
321
|
/**
|
|
312
322
|
* Sets this to true to disable the cache for the bind groups. You should do it only for testing purpose!
|
|
313
323
|
*/
|
|
@@ -320,6 +320,15 @@ export class WebGPUEngine extends ThinWebGPUEngine {
|
|
|
320
320
|
this._colorWriteLocal = true;
|
|
321
321
|
this._forceEnableEffect = false;
|
|
322
322
|
this._internalFrameCounter = 0;
|
|
323
|
+
/**
|
|
324
|
+
* When true (default), the "leftover" uniform buffer of an effect (the buffer that holds the uniforms not declared in a named
|
|
325
|
+
* uniform block) keeps one GPU buffer per draw context, so a given draw call always binds the same buffer for a given effect.
|
|
326
|
+
* When false, the GPU buffers are assigned in draw order: the buffer bound by a draw call then changes with the order in which
|
|
327
|
+
* meshes are drawn, and every new (draw context, buffer) pair is a new entry in the bind group cache.
|
|
328
|
+
* Change it before rendering the first frame. You should set it to false only for testing purpose!
|
|
329
|
+
* @internal
|
|
330
|
+
*/
|
|
331
|
+
this._useOwnerKeyedUniformBufferSlots = true;
|
|
323
332
|
/**
|
|
324
333
|
* Indicates if the z range in NDC space is 0..1 (value: true) or -1..1 (value: false)
|
|
325
334
|
*/
|
|
@@ -2835,7 +2844,12 @@ export class WebGPUEngine extends ThinWebGPUEngine {
|
|
|
2835
2844
|
this._currentDrawContext.setVertexPulling(this._currentMaterialContext.useVertexPulling, webgpuPipelineContext, this._currentVertexBuffers, this._cacheRenderPipeline.indexBuffer, // don't use this._currentIndexBuffer, it will have been set to null by _drawArraysType!
|
|
2836
2845
|
this._currentOverrideVertexBuffers);
|
|
2837
2846
|
if (webgpuPipelineContext.uniformBuffer) {
|
|
2838
|
-
|
|
2847
|
+
if (this._useOwnerKeyedUniformBufferSlots) {
|
|
2848
|
+
webgpuPipelineContext.uniformBuffer._updateOwnerKeyed(this._currentDrawContext);
|
|
2849
|
+
}
|
|
2850
|
+
else {
|
|
2851
|
+
webgpuPipelineContext.uniformBuffer.update();
|
|
2852
|
+
}
|
|
2839
2853
|
this.bindUniformBufferBase(webgpuPipelineContext.uniformBuffer.getBuffer(), 0, WebGPUShaderProcessor.LeftOvertUBOName);
|
|
2840
2854
|
}
|
|
2841
2855
|
if (this._snapshotRendering.play) {
|