@driftengine/core 3.61.0
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/LICENSE +202 -0
- package/NOTICE +9 -0
- package/README.md +9 -0
- package/dist/behavior/behaviorTree.d.ts +140 -0
- package/dist/behavior/behaviorTree.js +289 -0
- package/dist/build/shaderComments.d.ts +64 -0
- package/dist/build/shaderComments.js +0 -0
- package/dist/cinematic/player.d.ts +80 -0
- package/dist/cinematic/player.js +184 -0
- package/dist/cinematic/script.d.ts +63 -0
- package/dist/cinematic/script.js +141 -0
- package/dist/core/bootGate.d.ts +37 -0
- package/dist/core/bootGate.js +47 -0
- package/dist/core/loadTracker.d.ts +78 -0
- package/dist/core/loadTracker.js +106 -0
- package/dist/core/loop.d.ts +118 -0
- package/dist/core/loop.js +84 -0
- package/dist/core/messageQueue.d.ts +61 -0
- package/dist/core/messageQueue.js +104 -0
- package/dist/core/onceSet.d.ts +27 -0
- package/dist/core/onceSet.js +62 -0
- package/dist/core/preferences.d.ts +47 -0
- package/dist/core/preferences.js +140 -0
- package/dist/core/remoteSave.d.ts +154 -0
- package/dist/core/remoteSave.js +249 -0
- package/dist/core/rng.d.ts +64 -0
- package/dist/core/rng.js +72 -0
- package/dist/core/stepBudget.d.ts +91 -0
- package/dist/core/stepBudget.js +105 -0
- package/dist/core/storage.d.ts +52 -0
- package/dist/core/storage.js +85 -0
- package/dist/core/tickTrace.d.ts +72 -0
- package/dist/core/tickTrace.js +102 -0
- package/dist/core/timeCurve.d.ts +83 -0
- package/dist/core/timeCurve.js +107 -0
- package/dist/core/withDefaults.d.ts +21 -0
- package/dist/core/withDefaults.js +29 -0
- package/dist/dev/contactProbe.d.ts +41 -0
- package/dist/dev/contactProbe.js +58 -0
- package/dist/dev/fpsMeter.d.ts +45 -0
- package/dist/dev/fpsMeter.js +86 -0
- package/dist/environment/celestialClock.d.ts +141 -0
- package/dist/environment/celestialClock.js +262 -0
- package/dist/geometry/decal.d.ts +61 -0
- package/dist/geometry/decal.js +178 -0
- package/dist/geometry/filmPatch.d.ts +35 -0
- package/dist/geometry/filmPatch.js +112 -0
- package/dist/geometry/growable.d.ts +70 -0
- package/dist/geometry/growable.js +167 -0
- package/dist/geometry/lightVolume.d.ts +76 -0
- package/dist/geometry/lightVolume.js +65 -0
- package/dist/geometry/meshBuilder.d.ts +426 -0
- package/dist/geometry/meshBuilder.js +1184 -0
- package/dist/geometry/pixelFont.d.ts +59 -0
- package/dist/geometry/pixelFont.js +179 -0
- package/dist/geometry/ribbon.d.ts +101 -0
- package/dist/geometry/ribbon.js +546 -0
- package/dist/geometry/shellFill.d.ts +101 -0
- package/dist/geometry/shellFill.js +203 -0
- package/dist/geometry/spline.d.ts +162 -0
- package/dist/geometry/spline.js +527 -0
- package/dist/geometry/tangents.d.ts +30 -0
- package/dist/geometry/tangents.js +142 -0
- package/dist/geometry/textMesh.d.ts +51 -0
- package/dist/geometry/textMesh.js +57 -0
- package/dist/geometry/treeBuilder.d.ts +37 -0
- package/dist/geometry/treeBuilder.js +56 -0
- package/dist/host/display.d.ts +135 -0
- package/dist/host/display.js +114 -0
- package/dist/host/files.d.ts +25 -0
- package/dist/host/files.js +44 -0
- package/dist/host/lifecycle.d.ts +45 -0
- package/dist/host/lifecycle.js +28 -0
- package/dist/host/platformServices.d.ts +23 -0
- package/dist/host/platformServices.js +1 -0
- package/dist/host/screen.d.ts +49 -0
- package/dist/host/screen.js +90 -0
- package/dist/index.d.ts +289 -0
- package/dist/index.js +320 -0
- package/dist/input/actionMap.d.ts +181 -0
- package/dist/input/actionMap.js +314 -0
- package/dist/input/activeDevice.d.ts +55 -0
- package/dist/input/activeDevice.js +83 -0
- package/dist/input/gamepadIdentity.d.ts +43 -0
- package/dist/input/gamepadIdentity.js +108 -0
- package/dist/input/gamepadMapping.d.ts +56 -0
- package/dist/input/gamepadMapping.js +91 -0
- package/dist/input/input.d.ts +281 -0
- package/dist/input/input.js +703 -0
- package/dist/input/inputHarness.d.ts +42 -0
- package/dist/input/inputHarness.js +193 -0
- package/dist/input/rightGesture.d.ts +57 -0
- package/dist/input/rightGesture.js +49 -0
- package/dist/input/rumble.d.ts +71 -0
- package/dist/input/rumble.js +119 -0
- package/dist/input/touchControls.d.ts +138 -0
- package/dist/input/touchControls.js +352 -0
- package/dist/input/typingTarget.d.ts +6 -0
- package/dist/input/typingTarget.js +27 -0
- package/dist/math/bounds.d.ts +61 -0
- package/dist/math/bounds.js +121 -0
- package/dist/math/color.d.ts +8 -0
- package/dist/math/color.js +35 -0
- package/dist/math/exact.d.ts +66 -0
- package/dist/math/exact.js +262 -0
- package/dist/math/frustum.d.ts +44 -0
- package/dist/math/frustum.js +90 -0
- package/dist/math/intersect.d.ts +76 -0
- package/dist/math/intersect.js +185 -0
- package/dist/math/scalar.d.ts +51 -0
- package/dist/math/scalar.js +99 -0
- package/dist/math/spring.d.ts +59 -0
- package/dist/math/spring.js +88 -0
- package/dist/nav/navGraph.d.ts +71 -0
- package/dist/nav/navGraph.js +111 -0
- package/dist/nav/navPath.d.ts +93 -0
- package/dist/nav/navPath.js +162 -0
- package/dist/nav/navSearch.d.ts +74 -0
- package/dist/nav/navSearch.js +198 -0
- package/dist/physics/boxSurface.d.ts +48 -0
- package/dist/physics/boxSurface.js +73 -0
- package/dist/physics/colliderSurface.d.ts +46 -0
- package/dist/physics/colliderSurface.js +146 -0
- package/dist/physics/compositeSurface.d.ts +33 -0
- package/dist/physics/compositeSurface.js +108 -0
- package/dist/physics/heightSurface.d.ts +103 -0
- package/dist/physics/heightSurface.js +153 -0
- package/dist/physics/ribbonSurface.d.ts +239 -0
- package/dist/physics/ribbonSurface.js +522 -0
- package/dist/render/ambientOcclusionPass.d.ts +53 -0
- package/dist/render/ambientOcclusionPass.js +179 -0
- package/dist/render/areaLights.d.ts +116 -0
- package/dist/render/areaLights.js +91 -0
- package/dist/render/areaShadowSet.d.ts +184 -0
- package/dist/render/areaShadowSet.js +277 -0
- package/dist/render/atmosphere.d.ts +94 -0
- package/dist/render/atmosphere.js +91 -0
- package/dist/render/backend/api.d.ts +496 -0
- package/dist/render/backend/api.js +1 -0
- package/dist/render/backend/budget.d.ts +82 -0
- package/dist/render/backend/budget.js +99 -0
- package/dist/render/backend/createRenderer.d.ts +135 -0
- package/dist/render/backend/createRenderer.js +201 -0
- package/dist/render/backend/deadline.d.ts +24 -0
- package/dist/render/backend/deadline.js +38 -0
- package/dist/render/backend/probe.d.ts +30 -0
- package/dist/render/backend/probe.js +129 -0
- package/dist/render/backend/select.d.ts +70 -0
- package/dist/render/backend/select.js +249 -0
- package/dist/render/backend/timer.d.ts +50 -0
- package/dist/render/backend/timer.js +1 -0
- package/dist/render/backend/webgl2/instanced.d.ts +21 -0
- package/dist/render/backend/webgl2/instanced.js +42 -0
- package/dist/render/backend/webgl2/morphTexture.d.ts +21 -0
- package/dist/render/backend/webgl2/morphTexture.js +55 -0
- package/dist/render/backend/webgl2/renderer.d.ts +3027 -0
- package/dist/render/backend/webgl2/renderer.js +6041 -0
- package/dist/render/backend/webgl2/skinPaletteTexture.d.ts +32 -0
- package/dist/render/backend/webgl2/skinPaletteTexture.js +68 -0
- package/dist/render/backend/webgpu/boltPass.d.ts +42 -0
- package/dist/render/backend/webgpu/boltPass.js +160 -0
- package/dist/render/backend/webgpu/buffers.d.ts +159 -0
- package/dist/render/backend/webgpu/buffers.js +402 -0
- package/dist/render/backend/webgpu/causticsPass.d.ts +36 -0
- package/dist/render/backend/webgpu/causticsPass.js +138 -0
- package/dist/render/backend/webgpu/clusterBinner.d.ts +51 -0
- package/dist/render/backend/webgpu/clusterBinner.js +206 -0
- package/dist/render/backend/webgpu/depthPass.d.ts +114 -0
- package/dist/render/backend/webgpu/depthPass.js +228 -0
- package/dist/render/backend/webgpu/device.d.ts +52 -0
- package/dist/render/backend/webgpu/device.js +121 -0
- package/dist/render/backend/webgpu/drawCommand.d.ts +43 -0
- package/dist/render/backend/webgpu/drawCommand.js +54 -0
- package/dist/render/backend/webgpu/environmentTexels.d.ts +28 -0
- package/dist/render/backend/webgpu/environmentTexels.js +79 -0
- package/dist/render/backend/webgpu/filmPass.d.ts +29 -0
- package/dist/render/backend/webgpu/filmPass.js +97 -0
- package/dist/render/backend/webgpu/flatPass.d.ts +213 -0
- package/dist/render/backend/webgpu/flatPass.js +482 -0
- package/dist/render/backend/webgpu/flockPass.d.ts +34 -0
- package/dist/render/backend/webgpu/flockPass.js +129 -0
- package/dist/render/backend/webgpu/gpuTimestamps.d.ts +94 -0
- package/dist/render/backend/webgpu/gpuTimestamps.js +213 -0
- package/dist/render/backend/webgpu/insetPass.d.ts +19 -0
- package/dist/render/backend/webgpu/insetPass.js +108 -0
- package/dist/render/backend/webgpu/instanced.d.ts +27 -0
- package/dist/render/backend/webgpu/instanced.js +49 -0
- package/dist/render/backend/webgpu/lightVolumePass.d.ts +75 -0
- package/dist/render/backend/webgpu/lightVolumePass.js +154 -0
- package/dist/render/backend/webgpu/linePass.d.ts +90 -0
- package/dist/render/backend/webgpu/linePass.js +220 -0
- package/dist/render/backend/webgpu/morphTexture.d.ts +18 -0
- package/dist/render/backend/webgpu/morphTexture.js +51 -0
- package/dist/render/backend/webgpu/panelPass.d.ts +37 -0
- package/dist/render/backend/webgpu/panelPass.js +114 -0
- package/dist/render/backend/webgpu/particlePass.d.ts +89 -0
- package/dist/render/backend/webgpu/particlePass.js +280 -0
- package/dist/render/backend/webgpu/pipelineCache.d.ts +93 -0
- package/dist/render/backend/webgpu/pipelineCache.js +140 -0
- package/dist/render/backend/webgpu/plumePass.d.ts +69 -0
- package/dist/render/backend/webgpu/plumePass.js +213 -0
- package/dist/render/backend/webgpu/pointShadowPass.d.ts +88 -0
- package/dist/render/backend/webgpu/pointShadowPass.js +280 -0
- package/dist/render/backend/webgpu/postPass.d.ts +342 -0
- package/dist/render/backend/webgpu/postPass.js +366 -0
- package/dist/render/backend/webgpu/probePass.d.ts +108 -0
- package/dist/render/backend/webgpu/probePass.js +188 -0
- package/dist/render/backend/webgpu/reflectionPass.d.ts +29 -0
- package/dist/render/backend/webgpu/reflectionPass.js +87 -0
- package/dist/render/backend/webgpu/renderer.d.ts +3082 -0
- package/dist/render/backend/webgpu/renderer.js +10911 -0
- package/dist/render/backend/webgpu/scatterPass.d.ts +95 -0
- package/dist/render/backend/webgpu/scatterPass.js +266 -0
- package/dist/render/backend/webgpu/sdfTextPass.d.ts +86 -0
- package/dist/render/backend/webgpu/sdfTextPass.js +190 -0
- package/dist/render/backend/webgpu/shaderModules.d.ts +9 -0
- package/dist/render/backend/webgpu/shaderModules.js +45 -0
- package/dist/render/backend/webgpu/shaders/clusterBin.wgsl.d.ts +23 -0
- package/dist/render/backend/webgpu/shaders/clusterBin.wgsl.js +208 -0
- package/dist/render/backend/webgpu/skinPaletteRing.d.ts +67 -0
- package/dist/render/backend/webgpu/skinPaletteRing.js +97 -0
- package/dist/render/backend/webgpu/skinPaletteTexture.d.ts +17 -0
- package/dist/render/backend/webgpu/skinPaletteTexture.js +68 -0
- package/dist/render/backend/webgpu/skyPass.d.ts +102 -0
- package/dist/render/backend/webgpu/skyPass.js +70 -0
- package/dist/render/backend/webgpu/surfaceTexturePass.d.ts +41 -0
- package/dist/render/backend/webgpu/surfaceTexturePass.js +228 -0
- package/dist/render/backend/webgpu/textPass.d.ts +73 -0
- package/dist/render/backend/webgpu/textPass.js +190 -0
- package/dist/render/backend/webgpu/uniformRing.d.ts +133 -0
- package/dist/render/backend/webgpu/uniformRing.js +208 -0
- package/dist/render/backend/webgpu/waterPass.d.ts +73 -0
- package/dist/render/backend/webgpu/waterPass.js +160 -0
- package/dist/render/backend/webgpu/windStreakPass.d.ts +46 -0
- package/dist/render/backend/webgpu/windStreakPass.js +153 -0
- package/dist/render/billboard.d.ts +27 -0
- package/dist/render/billboard.js +79 -0
- package/dist/render/bloomChain.d.ts +66 -0
- package/dist/render/bloomChain.js +83 -0
- package/dist/render/bloomPass.d.ts +54 -0
- package/dist/render/bloomPass.js +219 -0
- package/dist/render/boltBatch.d.ts +39 -0
- package/dist/render/boltBatch.js +121 -0
- package/dist/render/boltPool.d.ts +135 -0
- package/dist/render/boltPool.js +259 -0
- package/dist/render/boom.d.ts +46 -0
- package/dist/render/boom.js +81 -0
- package/dist/render/camera.d.ts +119 -0
- package/dist/render/camera.js +304 -0
- package/dist/render/causticsRenderer.d.ts +63 -0
- package/dist/render/causticsRenderer.js +119 -0
- package/dist/render/cinematicCamera.d.ts +102 -0
- package/dist/render/cinematicCamera.js +227 -0
- package/dist/render/clusteredLights.d.ts +260 -0
- package/dist/render/clusteredLights.js +479 -0
- package/dist/render/colourGrade.d.ts +62 -0
- package/dist/render/colourGrade.js +91 -0
- package/dist/render/compute.d.ts +74 -0
- package/dist/render/compute.js +8 -0
- package/dist/render/contextLoss.d.ts +32 -0
- package/dist/render/contextLoss.js +46 -0
- package/dist/render/debugLines.d.ts +75 -0
- package/dist/render/debugLines.js +281 -0
- package/dist/render/decalPass.d.ts +34 -0
- package/dist/render/decalPass.js +103 -0
- package/dist/render/decalProjector.d.ts +140 -0
- package/dist/render/decalProjector.js +282 -0
- package/dist/render/decalQueue.d.ts +53 -0
- package/dist/render/decalQueue.js +87 -0
- package/dist/render/depthConvention.d.ts +314 -0
- package/dist/render/depthConvention.js +346 -0
- package/dist/render/drawingBuffer.d.ts +52 -0
- package/dist/render/drawingBuffer.js +67 -0
- package/dist/render/emptyTexture.d.ts +60 -0
- package/dist/render/emptyTexture.js +103 -0
- package/dist/render/envProbeArray.d.ts +85 -0
- package/dist/render/envProbeArray.js +164 -0
- package/dist/render/equirectToCube.d.ts +54 -0
- package/dist/render/equirectToCube.js +123 -0
- package/dist/render/flockGeometry.d.ts +23 -0
- package/dist/render/flockGeometry.js +43 -0
- package/dist/render/flockRenderer.d.ts +37 -0
- package/dist/render/flockRenderer.js +70 -0
- package/dist/render/frame/arena.d.ts +32 -0
- package/dist/render/frame/arena.js +65 -0
- package/dist/render/frame/index.d.ts +18 -0
- package/dist/render/frame/index.js +4 -0
- package/dist/render/frame/replay.d.ts +34 -0
- package/dist/render/frame/replay.js +48 -0
- package/dist/render/frame/resources.d.ts +25 -0
- package/dist/render/frame/resources.js +55 -0
- package/dist/render/frame/schedule.d.ts +37 -0
- package/dist/render/frame/schedule.js +61 -0
- package/dist/render/frameView.d.ts +19 -0
- package/dist/render/frameView.js +1 -0
- package/dist/render/gizmo.d.ts +236 -0
- package/dist/render/gizmo.js +727 -0
- package/dist/render/globalMedium.d.ts +124 -0
- package/dist/render/globalMedium.js +100 -0
- package/dist/render/globalMediumPass.d.ts +101 -0
- package/dist/render/globalMediumPass.js +250 -0
- package/dist/render/gpuCapability.d.ts +111 -0
- package/dist/render/gpuCapability.js +194 -0
- package/dist/render/gpuTimer.d.ts +87 -0
- package/dist/render/gpuTimer.js +145 -0
- package/dist/render/halfFloat.d.ts +4 -0
- package/dist/render/halfFloat.js +38 -0
- package/dist/render/handleRegistry.d.ts +54 -0
- package/dist/render/handleRegistry.js +84 -0
- package/dist/render/iesProfile.d.ts +64 -0
- package/dist/render/iesProfile.js +179 -0
- package/dist/render/imageTexels.d.ts +50 -0
- package/dist/render/imageTexels.js +91 -0
- package/dist/render/instancedMesh.d.ts +48 -0
- package/dist/render/instancedMesh.js +127 -0
- package/dist/render/instances.d.ts +69 -0
- package/dist/render/instances.js +52 -0
- package/dist/render/lightBudget.d.ts +397 -0
- package/dist/render/lightBudget.js +524 -0
- package/dist/render/lightMatrix.d.ts +3 -0
- package/dist/render/lightMatrix.js +45 -0
- package/dist/render/lightVolumeDraw.d.ts +132 -0
- package/dist/render/lightVolumeDraw.js +181 -0
- package/dist/render/lineBatch.d.ts +60 -0
- package/dist/render/lineBatch.js +160 -0
- package/dist/render/linePoints.d.ts +33 -0
- package/dist/render/linePoints.js +46 -0
- package/dist/render/livePointShadowSet.d.ts +72 -0
- package/dist/render/livePointShadowSet.js +258 -0
- package/dist/render/lod.d.ts +35 -0
- package/dist/render/lod.js +65 -0
- package/dist/render/mesh.d.ts +177 -0
- package/dist/render/mesh.js +466 -0
- package/dist/render/occlusion.d.ts +81 -0
- package/dist/render/occlusion.js +378 -0
- package/dist/render/oitPass.d.ts +67 -0
- package/dist/render/oitPass.js +213 -0
- package/dist/render/orderIndependent.d.ts +92 -0
- package/dist/render/orderIndependent.js +108 -0
- package/dist/render/particleBatch.d.ts +140 -0
- package/dist/render/particleBatch.js +186 -0
- package/dist/render/particleMaterial.d.ts +54 -0
- package/dist/render/particleMaterial.js +42 -0
- package/dist/render/particlePool.d.ts +124 -0
- package/dist/render/particlePool.js +182 -0
- package/dist/render/pass.d.ts +195 -0
- package/dist/render/pass.js +9 -0
- package/dist/render/passTarget.d.ts +86 -0
- package/dist/render/passTarget.js +121 -0
- package/dist/render/pickable.d.ts +31 -0
- package/dist/render/pickable.js +172 -0
- package/dist/render/planarReflection.d.ts +59 -0
- package/dist/render/planarReflection.js +194 -0
- package/dist/render/planarReflectionDraw.d.ts +31 -0
- package/dist/render/planarReflectionDraw.js +65 -0
- package/dist/render/plumeGeometry.d.ts +25 -0
- package/dist/render/plumeGeometry.js +61 -0
- package/dist/render/plumeMaterial.d.ts +31 -0
- package/dist/render/plumeMaterial.js +64 -0
- package/dist/render/plumeRenderer.d.ts +96 -0
- package/dist/render/plumeRenderer.js +185 -0
- package/dist/render/pointLightSelection.d.ts +175 -0
- package/dist/render/pointLightSelection.js +301 -0
- package/dist/render/pointShadowArray.d.ts +95 -0
- package/dist/render/pointShadowArray.js +219 -0
- package/dist/render/pointShadowBudget.d.ts +118 -0
- package/dist/render/pointShadowBudget.js +221 -0
- package/dist/render/pointShadowImage.d.ts +265 -0
- package/dist/render/pointShadowImage.js +339 -0
- package/dist/render/pointShadowMap.d.ts +93 -0
- package/dist/render/pointShadowMap.js +167 -0
- package/dist/render/pointShadowSystem.d.ts +195 -0
- package/dist/render/pointShadowSystem.js +336 -0
- package/dist/render/prefilterEnvMap.d.ts +124 -0
- package/dist/render/prefilterEnvMap.js +146 -0
- package/dist/render/prefilterPass.d.ts +44 -0
- package/dist/render/prefilterPass.js +98 -0
- package/dist/render/probeGrid.d.ts +122 -0
- package/dist/render/probeGrid.js +174 -0
- package/dist/render/rainField.d.ts +99 -0
- package/dist/render/rainField.js +168 -0
- package/dist/render/reflectionProbe.d.ts +188 -0
- package/dist/render/reflectionProbe.js +437 -0
- package/dist/render/renderQuality.d.ts +699 -0
- package/dist/render/renderQuality.js +293 -0
- package/dist/render/rendererHarness.d.ts +39 -0
- package/dist/render/rendererHarness.js +185 -0
- package/dist/render/resolutionGovernor.d.ts +107 -0
- package/dist/render/resolutionGovernor.js +144 -0
- package/dist/render/scatterDeform.d.ts +17 -0
- package/dist/render/scatterDeform.js +46 -0
- package/dist/render/sceneTarget.d.ts +288 -0
- package/dist/render/sceneTarget.js +856 -0
- package/dist/render/screenSpaceReflection.d.ts +233 -0
- package/dist/render/screenSpaceReflection.js +415 -0
- package/dist/render/sdfFont.d.ts +77 -0
- package/dist/render/sdfFont.js +86 -0
- package/dist/render/sdfTextLayout.d.ts +46 -0
- package/dist/render/sdfTextLayout.js +145 -0
- package/dist/render/sdfTextRenderer.d.ts +75 -0
- package/dist/render/sdfTextRenderer.js +194 -0
- package/dist/render/seaState.d.ts +25 -0
- package/dist/render/seaState.js +34 -0
- package/dist/render/segmentQuads.d.ts +29 -0
- package/dist/render/segmentQuads.js +75 -0
- package/dist/render/shader.d.ts +5 -0
- package/dist/render/shader.js +172 -0
- package/dist/render/shaders/ambientOcclusion.d.ts +45 -0
- package/dist/render/shaders/ambientOcclusion.js +352 -0
- package/dist/render/shaders/arcane.d.ts +19 -0
- package/dist/render/shaders/arcane.js +102 -0
- package/dist/render/shaders/bloom.d.ts +70 -0
- package/dist/render/shaders/bloom.js +227 -0
- package/dist/render/shaders/bolt.d.ts +17 -0
- package/dist/render/shaders/bolt.js +161 -0
- package/dist/render/shaders/caustics.d.ts +38 -0
- package/dist/render/shaders/caustics.js +167 -0
- package/dist/render/shaders/conditionals.d.ts +21 -0
- package/dist/render/shaders/conditionals.js +55 -0
- package/dist/render/shaders/decalProject.d.ts +25 -0
- package/dist/render/shaders/decalProject.js +125 -0
- package/dist/render/shaders/depth.d.ts +14 -0
- package/dist/render/shaders/depth.js +114 -0
- package/dist/render/shaders/depthOfField.d.ts +41 -0
- package/dist/render/shaders/depthOfField.js +139 -0
- package/dist/render/shaders/film.d.ts +15 -0
- package/dist/render/shaders/film.js +283 -0
- package/dist/render/shaders/fire.d.ts +12 -0
- package/dist/render/shaders/fire.js +178 -0
- package/dist/render/shaders/flat/directionalShadow.d.ts +1 -0
- package/dist/render/shaders/flat/directionalShadow.js +195 -0
- package/dist/render/shaders/flat/index.d.ts +135 -0
- package/dist/render/shaders/flat/index.js +387 -0
- package/dist/render/shaders/flat/lobes.d.ts +1 -0
- package/dist/render/shaders/flat/lobes.js +398 -0
- package/dist/render/shaders/flat/main.d.ts +2 -0
- package/dist/render/shaders/flat/main.js +1630 -0
- package/dist/render/shaders/flat/pointShadow.d.ts +1 -0
- package/dist/render/shaders/flat/pointShadow.js +322 -0
- package/dist/render/shaders/flat/preamble.d.ts +15 -0
- package/dist/render/shaders/flat/preamble.js +864 -0
- package/dist/render/shaders/flat/probeGrid.d.ts +21 -0
- package/dist/render/shaders/flat/probeGrid.js +151 -0
- package/dist/render/shaders/flat/surface.d.ts +2 -0
- package/dist/render/shaders/flat/surface.js +40 -0
- package/dist/render/shaders/flock.d.ts +11 -0
- package/dist/render/shaders/flock.js +102 -0
- package/dist/render/shaders/fog.d.ts +37 -0
- package/dist/render/shaders/fog.js +98 -0
- package/dist/render/shaders/fullscreen.d.ts +16 -0
- package/dist/render/shaders/fullscreen.js +27 -0
- package/dist/render/shaders/generated/ambientOcclusion.wgsl.d.ts +65 -0
- package/dist/render/shaders/generated/ambientOcclusion.wgsl.js +71 -0
- package/dist/render/shaders/generated/arcane.wgsl.d.ts +90 -0
- package/dist/render/shaders/generated/arcane.wgsl.js +96 -0
- package/dist/render/shaders/generated/bloom.wgsl.d.ts +69 -0
- package/dist/render/shaders/generated/bloom.wgsl.js +75 -0
- package/dist/render/shaders/generated/bolt.wgsl.d.ts +118 -0
- package/dist/render/shaders/generated/bolt.wgsl.js +124 -0
- package/dist/render/shaders/generated/caustics.wgsl.d.ts +118 -0
- package/dist/render/shaders/generated/caustics.wgsl.js +124 -0
- package/dist/render/shaders/generated/decalProject.wgsl.d.ts +61 -0
- package/dist/render/shaders/generated/decalProject.wgsl.js +67 -0
- package/dist/render/shaders/generated/depth.wgsl.d.ts +131 -0
- package/dist/render/shaders/generated/depth.wgsl.js +137 -0
- package/dist/render/shaders/generated/film.wgsl.d.ts +134 -0
- package/dist/render/shaders/generated/film.wgsl.js +140 -0
- package/dist/render/shaders/generated/fire.wgsl.d.ts +128 -0
- package/dist/render/shaders/generated/fire.wgsl.js +134 -0
- package/dist/render/shaders/generated/flat.wgsl.d.ts +9163 -0
- package/dist/render/shaders/generated/flat.wgsl.js +9192 -0
- package/dist/render/shaders/generated/flock.wgsl.d.ts +73 -0
- package/dist/render/shaders/generated/flock.wgsl.js +79 -0
- package/dist/render/shaders/generated/fullscreen.wgsl.d.ts +12 -0
- package/dist/render/shaders/generated/fullscreen.wgsl.js +18 -0
- package/dist/render/shaders/generated/globalMedium.wgsl.d.ts +130 -0
- package/dist/render/shaders/generated/globalMedium.wgsl.js +136 -0
- package/dist/render/shaders/generated/lightVolume.wgsl.d.ts +230 -0
- package/dist/render/shaders/generated/lightVolume.wgsl.js +239 -0
- package/dist/render/shaders/generated/line.wgsl.d.ts +128 -0
- package/dist/render/shaders/generated/line.wgsl.js +134 -0
- package/dist/render/shaders/generated/octahedralResolve.wgsl.d.ts +51 -0
- package/dist/render/shaders/generated/octahedralResolve.wgsl.js +57 -0
- package/dist/render/shaders/generated/oitResolve.wgsl.d.ts +23 -0
- package/dist/render/shaders/generated/oitResolve.wgsl.js +29 -0
- package/dist/render/shaders/generated/panel.wgsl.d.ts +48 -0
- package/dist/render/shaders/generated/panel.wgsl.js +54 -0
- package/dist/render/shaders/generated/particle.wgsl.d.ts +332 -0
- package/dist/render/shaders/generated/particle.wgsl.js +338 -0
- package/dist/render/shaders/generated/prefilter.wgsl.d.ts +61 -0
- package/dist/render/shaders/generated/prefilter.wgsl.js +67 -0
- package/dist/render/shaders/generated/rush.wgsl.d.ts +131 -0
- package/dist/render/shaders/generated/rush.wgsl.js +137 -0
- package/dist/render/shaders/generated/scatter.wgsl.d.ts +195 -0
- package/dist/render/shaders/generated/scatter.wgsl.js +201 -0
- package/dist/render/shaders/generated/sdfText.wgsl.d.ts +69 -0
- package/dist/render/shaders/generated/sdfText.wgsl.js +75 -0
- package/dist/render/shaders/generated/sky.wgsl.d.ts +100 -0
- package/dist/render/shaders/generated/sky.wgsl.js +106 -0
- package/dist/render/shaders/generated/smoke.wgsl.d.ts +85 -0
- package/dist/render/shaders/generated/smoke.wgsl.js +91 -0
- package/dist/render/shaders/generated/ssrResolve.wgsl.d.ts +18 -0
- package/dist/render/shaders/generated/ssrResolve.wgsl.js +24 -0
- package/dist/render/shaders/generated/ssrTrace.wgsl.d.ts +86 -0
- package/dist/render/shaders/generated/ssrTrace.wgsl.js +92 -0
- package/dist/render/shaders/generated/temporalResolve.wgsl.d.ts +46 -0
- package/dist/render/shaders/generated/temporalResolve.wgsl.js +52 -0
- package/dist/render/shaders/generated/text.wgsl.d.ts +98 -0
- package/dist/render/shaders/generated/text.wgsl.js +104 -0
- package/dist/render/shaders/generated/water.wgsl.d.ts +247 -0
- package/dist/render/shaders/generated/water.wgsl.js +253 -0
- package/dist/render/shaders/generated/windStreaks.wgsl.d.ts +73 -0
- package/dist/render/shaders/generated/windStreaks.wgsl.js +79 -0
- package/dist/render/shaders/gerstner.d.ts +21 -0
- package/dist/render/shaders/gerstner.js +110 -0
- package/dist/render/shaders/globalMedium.d.ts +56 -0
- package/dist/render/shaders/globalMedium.js +393 -0
- package/dist/render/shaders/lightVolume.d.ts +61 -0
- package/dist/render/shaders/lightVolume.js +527 -0
- package/dist/render/shaders/line.d.ts +18 -0
- package/dist/render/shaders/line.js +122 -0
- package/dist/render/shaders/morph.d.ts +26 -0
- package/dist/render/shaders/morph.js +61 -0
- package/dist/render/shaders/octahedral.d.ts +76 -0
- package/dist/render/shaders/octahedral.js +161 -0
- package/dist/render/shaders/octahedralResolve.d.ts +25 -0
- package/dist/render/shaders/octahedralResolve.js +81 -0
- package/dist/render/shaders/oitResolve.d.ts +17 -0
- package/dist/render/shaders/oitResolve.js +42 -0
- package/dist/render/shaders/outputTransform.d.ts +37 -0
- package/dist/render/shaders/outputTransform.js +106 -0
- package/dist/render/shaders/panel.d.ts +17 -0
- package/dist/render/shaders/panel.js +50 -0
- package/dist/render/shaders/particle.d.ts +82 -0
- package/dist/render/shaders/particle.js +431 -0
- package/dist/render/shaders/prefilter.d.ts +37 -0
- package/dist/render/shaders/prefilter.js +276 -0
- package/dist/render/shaders/rush.d.ts +21 -0
- package/dist/render/shaders/rush.js +355 -0
- package/dist/render/shaders/scatter.d.ts +14 -0
- package/dist/render/shaders/scatter.js +206 -0
- package/dist/render/shaders/sdfText.d.ts +9 -0
- package/dist/render/shaders/sdfText.js +65 -0
- package/dist/render/shaders/skinning.d.ts +17 -0
- package/dist/render/shaders/skinning.js +59 -0
- package/dist/render/shaders/sky.d.ts +10 -0
- package/dist/render/shaders/sky.js +242 -0
- package/dist/render/shaders/smoke.d.ts +8 -0
- package/dist/render/shaders/smoke.js +88 -0
- package/dist/render/shaders/ssrResolve.d.ts +15 -0
- package/dist/render/shaders/ssrResolve.js +28 -0
- package/dist/render/shaders/ssrTrace.d.ts +22 -0
- package/dist/render/shaders/ssrTrace.js +230 -0
- package/dist/render/shaders/tangentFrame.d.ts +17 -0
- package/dist/render/shaders/tangentFrame.js +70 -0
- package/dist/render/shaders/temporalResolve.d.ts +1 -0
- package/dist/render/shaders/temporalResolve.js +150 -0
- package/dist/render/shaders/text.d.ts +17 -0
- package/dist/render/shaders/text.js +155 -0
- package/dist/render/shaders/vertexChannel.d.ts +39 -0
- package/dist/render/shaders/vertexChannel.js +69 -0
- package/dist/render/shaders/water.d.ts +18 -0
- package/dist/render/shaders/water.js +354 -0
- package/dist/render/shaders/windStreaks.d.ts +14 -0
- package/dist/render/shaders/windStreaks.js +129 -0
- package/dist/render/shadowCasters.d.ts +107 -0
- package/dist/render/shadowCasters.js +1 -0
- package/dist/render/shadowMap.d.ts +10 -0
- package/dist/render/shadowMap.js +80 -0
- package/dist/render/shotPlacement.d.ts +80 -0
- package/dist/render/shotPlacement.js +183 -0
- package/dist/render/skinPalette.d.ts +90 -0
- package/dist/render/skinPalette.js +136 -0
- package/dist/render/ssrPass.d.ts +59 -0
- package/dist/render/ssrPass.js +196 -0
- package/dist/render/surfaceSheet.d.ts +52 -0
- package/dist/render/surfaceSheet.js +99 -0
- package/dist/render/surfaceTexture.d.ts +197 -0
- package/dist/render/surfaceTexture.js +116 -0
- package/dist/render/temporalAa.d.ts +104 -0
- package/dist/render/temporalAa.js +194 -0
- package/dist/render/temporalPass.d.ts +54 -0
- package/dist/render/temporalPass.js +135 -0
- package/dist/render/textLayout.d.ts +88 -0
- package/dist/render/textLayout.js +201 -0
- package/dist/render/textRenderer.d.ts +32 -0
- package/dist/render/textRenderer.js +176 -0
- package/dist/render/thirdPersonCamera.d.ts +272 -0
- package/dist/render/thirdPersonCamera.js +479 -0
- package/dist/render/trample.d.ts +57 -0
- package/dist/render/trample.js +134 -0
- package/dist/render/translucentQueue.d.ts +76 -0
- package/dist/render/translucentQueue.js +90 -0
- package/dist/render/uniformVectorBudget.d.ts +105 -0
- package/dist/render/uniformVectorBudget.js +201 -0
- package/dist/render/uploadStep.d.ts +14 -0
- package/dist/render/uploadStep.js +14 -0
- package/dist/render/vertexDefaults.d.ts +48 -0
- package/dist/render/vertexDefaults.js +111 -0
- package/dist/render/visibility.d.ts +22 -0
- package/dist/render/visibility.js +47 -0
- package/dist/render/waterDraw.d.ts +57 -0
- package/dist/render/waterDraw.js +102 -0
- package/dist/render/waterGrid.d.ts +62 -0
- package/dist/render/waterGrid.js +151 -0
- package/dist/render/waterRenderer.d.ts +163 -0
- package/dist/render/waterRenderer.js +165 -0
- package/dist/render/wind.d.ts +45 -0
- package/dist/render/wind.js +32 -0
- package/dist/render/windField.d.ts +34 -0
- package/dist/render/windField.js +13 -0
- package/dist/render/windStreakDraw.d.ts +73 -0
- package/dist/render/windStreakDraw.js +86 -0
- package/dist/render/windStreakRenderer.d.ts +37 -0
- package/dist/render/windStreakRenderer.js +86 -0
- package/dist/scene/node.d.ts +128 -0
- package/dist/scene/node.js +319 -0
- package/dist/scene/visit.d.ts +38 -0
- package/dist/scene/visit.js +43 -0
- package/dist/ui/clipMime.d.ts +46 -0
- package/dist/ui/clipMime.js +88 -0
- package/dist/ui/exportTarget.d.ts +305 -0
- package/dist/ui/exportTarget.js +368 -0
- package/dist/ui/frameOverlay.d.ts +59 -0
- package/dist/ui/frameOverlay.js +76 -0
- package/dist/ui/framePacer.d.ts +142 -0
- package/dist/ui/framePacer.js +284 -0
- package/dist/ui/frameRecorder.d.ts +188 -0
- package/dist/ui/frameRecorder.js +221 -0
- package/dist/ui/fullscreen.d.ts +72 -0
- package/dist/ui/fullscreen.js +92 -0
- package/dist/ui/pixelCursor.d.ts +28 -0
- package/dist/ui/pixelCursor.js +66 -0
- package/dist/ui/splash.d.ts +86 -0
- package/dist/ui/splash.js +300 -0
- package/dist/ui/stillFrame.d.ts +22 -0
- package/dist/ui/stillFrame.js +40 -0
- package/package.json +60 -0
- package/src/behavior/behaviorTree.ts +346 -0
- package/src/build/shaderComments.ts +0 -0
- package/src/cinematic/player.ts +209 -0
- package/src/cinematic/script.ts +231 -0
- package/src/core/bootGate.ts +49 -0
- package/src/core/loadTracker.ts +144 -0
- package/src/core/loop.ts +211 -0
- package/src/core/messageQueue.ts +145 -0
- package/src/core/onceSet.ts +65 -0
- package/src/core/preferences.ts +177 -0
- package/src/core/remoteSave.ts +347 -0
- package/src/core/rng.ts +101 -0
- package/src/core/stepBudget.ts +136 -0
- package/src/core/storage.ts +114 -0
- package/src/core/tickTrace.ts +129 -0
- package/src/core/timeCurve.ts +175 -0
- package/src/core/withDefaults.ts +28 -0
- package/src/dev/contactProbe.ts +115 -0
- package/src/dev/fpsMeter.ts +101 -0
- package/src/environment/celestialClock.ts +385 -0
- package/src/geometry/decal.ts +260 -0
- package/src/geometry/filmPatch.ts +158 -0
- package/src/geometry/growable.ts +165 -0
- package/src/geometry/lightVolume.ts +161 -0
- package/src/geometry/meshBuilder.ts +1397 -0
- package/src/geometry/pixelFont.ts +189 -0
- package/src/geometry/ribbon.ts +790 -0
- package/src/geometry/shellFill.ts +265 -0
- package/src/geometry/spline.ts +659 -0
- package/src/geometry/tangents.ts +173 -0
- package/src/geometry/textMesh.ts +96 -0
- package/src/geometry/treeBuilder.ts +114 -0
- package/src/host/display.ts +180 -0
- package/src/host/files.ts +77 -0
- package/src/host/lifecycle.ts +63 -0
- package/src/host/platformServices.ts +23 -0
- package/src/host/screen.ts +134 -0
- package/src/index.ts +730 -0
- package/src/input/actionMap.ts +377 -0
- package/src/input/activeDevice.ts +86 -0
- package/src/input/gamepadIdentity.ts +131 -0
- package/src/input/gamepadMapping.ts +121 -0
- package/src/input/input.ts +872 -0
- package/src/input/inputHarness.ts +226 -0
- package/src/input/rightGesture.ts +76 -0
- package/src/input/rumble.ts +138 -0
- package/src/input/touchControls.ts +451 -0
- package/src/input/typingTarget.ts +26 -0
- package/src/math/bounds.ts +153 -0
- package/src/math/color.ts +37 -0
- package/src/math/exact.ts +274 -0
- package/src/math/frustum.ts +115 -0
- package/src/math/intersect.ts +228 -0
- package/src/math/scalar.ts +109 -0
- package/src/math/spring.ts +106 -0
- package/src/nav/navGraph.ts +168 -0
- package/src/nav/navPath.ts +217 -0
- package/src/nav/navSearch.ts +200 -0
- package/src/physics/boxSurface.ts +96 -0
- package/src/physics/colliderSurface.ts +213 -0
- package/src/physics/compositeSurface.ts +111 -0
- package/src/physics/heightSurface.ts +234 -0
- package/src/physics/ribbonSurface.ts +642 -0
- package/src/render/ambientOcclusionPass.ts +200 -0
- package/src/render/areaLights.ts +194 -0
- package/src/render/areaShadowSet.ts +405 -0
- package/src/render/atmosphere.ts +186 -0
- package/src/render/backend/api.ts +802 -0
- package/src/render/backend/budget.ts +139 -0
- package/src/render/backend/createRenderer.ts +343 -0
- package/src/render/backend/deadline.ts +37 -0
- package/src/render/backend/probe.ts +152 -0
- package/src/render/backend/select.ts +288 -0
- package/src/render/backend/timer.ts +59 -0
- package/src/render/backend/webgl2/instanced.ts +46 -0
- package/src/render/backend/webgl2/morphTexture.ts +58 -0
- package/src/render/backend/webgl2/renderer.ts +7484 -0
- package/src/render/backend/webgl2/skinPaletteTexture.ts +70 -0
- package/src/render/backend/webgpu/boltPass.ts +205 -0
- package/src/render/backend/webgpu/buffers.ts +553 -0
- package/src/render/backend/webgpu/causticsPass.ts +174 -0
- package/src/render/backend/webgpu/clusterBinner.ts +259 -0
- package/src/render/backend/webgpu/depthPass.ts +261 -0
- package/src/render/backend/webgpu/device.ts +148 -0
- package/src/render/backend/webgpu/drawCommand.ts +79 -0
- package/src/render/backend/webgpu/environmentTexels.ts +96 -0
- package/src/render/backend/webgpu/filmPass.ts +123 -0
- package/src/render/backend/webgpu/flatPass.ts +635 -0
- package/src/render/backend/webgpu/flockPass.ts +163 -0
- package/src/render/backend/webgpu/gpuTimestamps.ts +255 -0
- package/src/render/backend/webgpu/insetPass.ts +123 -0
- package/src/render/backend/webgpu/instanced.ts +55 -0
- package/src/render/backend/webgpu/lightVolumePass.ts +203 -0
- package/src/render/backend/webgpu/linePass.ts +270 -0
- package/src/render/backend/webgpu/morphTexture.ts +61 -0
- package/src/render/backend/webgpu/panelPass.ts +138 -0
- package/src/render/backend/webgpu/particlePass.ts +370 -0
- package/src/render/backend/webgpu/pipelineCache.ts +152 -0
- package/src/render/backend/webgpu/plumePass.ts +292 -0
- package/src/render/backend/webgpu/pointShadowPass.ts +368 -0
- package/src/render/backend/webgpu/postPass.ts +470 -0
- package/src/render/backend/webgpu/probePass.ts +218 -0
- package/src/render/backend/webgpu/reflectionPass.ts +137 -0
- package/src/render/backend/webgpu/renderer.ts +13004 -0
- package/src/render/backend/webgpu/scatterPass.ts +354 -0
- package/src/render/backend/webgpu/sdfTextPass.ts +220 -0
- package/src/render/backend/webgpu/shaderModules.ts +49 -0
- package/src/render/backend/webgpu/shaders/clusterBin.wgsl.ts +219 -0
- package/src/render/backend/webgpu/skinPaletteRing.ts +105 -0
- package/src/render/backend/webgpu/skinPaletteTexture.ts +79 -0
- package/src/render/backend/webgpu/skyPass.ts +85 -0
- package/src/render/backend/webgpu/surfaceTexturePass.ts +257 -0
- package/src/render/backend/webgpu/textPass.ts +224 -0
- package/src/render/backend/webgpu/uniformRing.ts +228 -0
- package/src/render/backend/webgpu/waterPass.ts +211 -0
- package/src/render/backend/webgpu/windStreakPass.ts +196 -0
- package/src/render/billboard.ts +108 -0
- package/src/render/bloomChain.ts +101 -0
- package/src/render/bloomPass.ts +256 -0
- package/src/render/boltBatch.ts +141 -0
- package/src/render/boltPool.ts +360 -0
- package/src/render/boom.ts +123 -0
- package/src/render/camera.ts +348 -0
- package/src/render/causticsRenderer.ts +171 -0
- package/src/render/cinematicCamera.ts +278 -0
- package/src/render/clusteredLights.ts +598 -0
- package/src/render/colourGrade.ts +109 -0
- package/src/render/compute.ts +83 -0
- package/src/render/contextLoss.ts +50 -0
- package/src/render/debugLines.ts +411 -0
- package/src/render/decalPass.ts +124 -0
- package/src/render/decalProjector.ts +390 -0
- package/src/render/decalQueue.ts +110 -0
- package/src/render/depthConvention.ts +383 -0
- package/src/render/drawingBuffer.ts +89 -0
- package/src/render/emptyTexture.ts +130 -0
- package/src/render/envProbeArray.ts +201 -0
- package/src/render/equirectToCube.ts +160 -0
- package/src/render/flockGeometry.ts +53 -0
- package/src/render/flockRenderer.ts +111 -0
- package/src/render/frame/arena.ts +93 -0
- package/src/render/frame/index.ts +29 -0
- package/src/render/frame/replay.ts +50 -0
- package/src/render/frame/resources.ts +61 -0
- package/src/render/frame/schedule.ts +85 -0
- package/src/render/frameView.ts +20 -0
- package/src/render/gizmo.ts +923 -0
- package/src/render/globalMedium.ts +154 -0
- package/src/render/globalMediumPass.ts +323 -0
- package/src/render/gpuCapability.ts +244 -0
- package/src/render/gpuTimer.ts +182 -0
- package/src/render/halfFloat.ts +39 -0
- package/src/render/handleRegistry.ts +96 -0
- package/src/render/iesProfile.ts +215 -0
- package/src/render/imageTexels.ts +109 -0
- package/src/render/instancedMesh.ts +187 -0
- package/src/render/instances.ts +92 -0
- package/src/render/lightBudget.ts +655 -0
- package/src/render/lightMatrix.ts +69 -0
- package/src/render/lightVolumeDraw.ts +216 -0
- package/src/render/lineBatch.ts +180 -0
- package/src/render/linePoints.ts +61 -0
- package/src/render/livePointShadowSet.ts +285 -0
- package/src/render/lod.ts +86 -0
- package/src/render/mesh.ts +536 -0
- package/src/render/occlusion.ts +406 -0
- package/src/render/oitPass.ts +230 -0
- package/src/render/orderIndependent.ts +136 -0
- package/src/render/particleBatch.ts +299 -0
- package/src/render/particleMaterial.ts +84 -0
- package/src/render/particlePool.ts +291 -0
- package/src/render/pass.ts +203 -0
- package/src/render/passTarget.ts +225 -0
- package/src/render/pickable.ts +222 -0
- package/src/render/planarReflection.ts +233 -0
- package/src/render/planarReflectionDraw.ts +87 -0
- package/src/render/plumeGeometry.ts +75 -0
- package/src/render/plumeMaterial.ts +99 -0
- package/src/render/plumeRenderer.ts +272 -0
- package/src/render/pointLightSelection.ts +447 -0
- package/src/render/pointShadowArray.ts +276 -0
- package/src/render/pointShadowBudget.ts +305 -0
- package/src/render/pointShadowImage.ts +470 -0
- package/src/render/pointShadowMap.ts +228 -0
- package/src/render/pointShadowSystem.ts +408 -0
- package/src/render/prefilterEnvMap.ts +162 -0
- package/src/render/prefilterPass.ts +115 -0
- package/src/render/probeGrid.ts +248 -0
- package/src/render/rainField.ts +240 -0
- package/src/render/reflectionProbe.ts +530 -0
- package/src/render/renderQuality.ts +1054 -0
- package/src/render/rendererHarness.ts +214 -0
- package/src/render/resolutionGovernor.ts +189 -0
- package/src/render/scatterDeform.ts +72 -0
- package/src/render/sceneTarget.ts +1032 -0
- package/src/render/screenSpaceReflection.ts +524 -0
- package/src/render/sdfFont.ts +157 -0
- package/src/render/sdfTextLayout.ts +206 -0
- package/src/render/sdfTextRenderer.ts +233 -0
- package/src/render/seaState.ts +55 -0
- package/src/render/segmentQuads.ts +92 -0
- package/src/render/shader.ts +190 -0
- package/src/render/shaders/ambientOcclusion.ts +354 -0
- package/src/render/shaders/arcane.ts +103 -0
- package/src/render/shaders/bloom.ts +232 -0
- package/src/render/shaders/bolt.ts +164 -0
- package/src/render/shaders/caustics.ts +169 -0
- package/src/render/shaders/conditionals.ts +58 -0
- package/src/render/shaders/decalProject.ts +127 -0
- package/src/render/shaders/depth.ts +131 -0
- package/src/render/shaders/depthOfField.ts +141 -0
- package/src/render/shaders/film.ts +285 -0
- package/src/render/shaders/fire.ts +180 -0
- package/src/render/shaders/flat/directionalShadow.ts +196 -0
- package/src/render/shaders/flat/index.ts +502 -0
- package/src/render/shaders/flat/lobes.ts +399 -0
- package/src/render/shaders/flat/main.ts +1631 -0
- package/src/render/shaders/flat/pointShadow.ts +323 -0
- package/src/render/shaders/flat/preamble.ts +875 -0
- package/src/render/shaders/flat/probeGrid.ts +152 -0
- package/src/render/shaders/flat/surface.ts +41 -0
- package/src/render/shaders/flock.ts +103 -0
- package/src/render/shaders/fog.ts +99 -0
- package/src/render/shaders/fullscreen.ts +28 -0
- package/src/render/shaders/generated/ambientOcclusion.wgsl.ts +74 -0
- package/src/render/shaders/generated/arcane.wgsl.ts +98 -0
- package/src/render/shaders/generated/bloom.wgsl.ts +79 -0
- package/src/render/shaders/generated/bolt.wgsl.ts +127 -0
- package/src/render/shaders/generated/caustics.wgsl.ts +127 -0
- package/src/render/shaders/generated/decalProject.wgsl.ts +69 -0
- package/src/render/shaders/generated/depth.wgsl.ts +142 -0
- package/src/render/shaders/generated/film.wgsl.ts +143 -0
- package/src/render/shaders/generated/fire.wgsl.ts +137 -0
- package/src/render/shaders/generated/flat.wgsl.ts +9195 -0
- package/src/render/shaders/generated/flock.wgsl.ts +82 -0
- package/src/render/shaders/generated/fullscreen.wgsl.ts +20 -0
- package/src/render/shaders/generated/globalMedium.wgsl.ts +139 -0
- package/src/render/shaders/generated/lightVolume.wgsl.ts +242 -0
- package/src/render/shaders/generated/line.wgsl.ts +137 -0
- package/src/render/shaders/generated/octahedralResolve.wgsl.ts +60 -0
- package/src/render/shaders/generated/oitResolve.wgsl.ts +31 -0
- package/src/render/shaders/generated/panel.wgsl.ts +57 -0
- package/src/render/shaders/generated/particle.wgsl.ts +343 -0
- package/src/render/shaders/generated/prefilter.wgsl.ts +69 -0
- package/src/render/shaders/generated/rush.wgsl.ts +139 -0
- package/src/render/shaders/generated/scatter.wgsl.ts +205 -0
- package/src/render/shaders/generated/sdfText.wgsl.ts +78 -0
- package/src/render/shaders/generated/sky.wgsl.ts +109 -0
- package/src/render/shaders/generated/smoke.wgsl.ts +93 -0
- package/src/render/shaders/generated/ssrResolve.wgsl.ts +26 -0
- package/src/render/shaders/generated/ssrTrace.wgsl.ts +94 -0
- package/src/render/shaders/generated/temporalResolve.wgsl.ts +54 -0
- package/src/render/shaders/generated/text.wgsl.ts +107 -0
- package/src/render/shaders/generated/water.wgsl.ts +256 -0
- package/src/render/shaders/generated/windStreaks.wgsl.ts +82 -0
- package/src/render/shaders/gerstner.ts +110 -0
- package/src/render/shaders/globalMedium.ts +396 -0
- package/src/render/shaders/lightVolume.ts +546 -0
- package/src/render/shaders/line.ts +125 -0
- package/src/render/shaders/morph.ts +62 -0
- package/src/render/shaders/octahedral.ts +170 -0
- package/src/render/shaders/octahedralResolve.ts +83 -0
- package/src/render/shaders/oitResolve.ts +42 -0
- package/src/render/shaders/outputTransform.ts +107 -0
- package/src/render/shaders/panel.ts +51 -0
- package/src/render/shaders/particle.ts +438 -0
- package/src/render/shaders/prefilter.ts +278 -0
- package/src/render/shaders/rush.ts +357 -0
- package/src/render/shaders/scatter.ts +211 -0
- package/src/render/shaders/sdfText.ts +68 -0
- package/src/render/shaders/skinning.ts +59 -0
- package/src/render/shaders/sky.ts +243 -0
- package/src/render/shaders/smoke.ts +89 -0
- package/src/render/shaders/ssrResolve.ts +28 -0
- package/src/render/shaders/ssrTrace.ts +233 -0
- package/src/render/shaders/tangentFrame.ts +70 -0
- package/src/render/shaders/temporalResolve.ts +151 -0
- package/src/render/shaders/text.ts +156 -0
- package/src/render/shaders/vertexChannel.ts +71 -0
- package/src/render/shaders/water.ts +356 -0
- package/src/render/shaders/windStreaks.ts +130 -0
- package/src/render/shadowCasters.ts +124 -0
- package/src/render/shadowMap.ts +89 -0
- package/src/render/shotPlacement.ts +266 -0
- package/src/render/skinPalette.ts +157 -0
- package/src/render/ssrPass.ts +241 -0
- package/src/render/surfaceSheet.ts +158 -0
- package/src/render/surfaceTexture.ts +310 -0
- package/src/render/temporalAa.ts +221 -0
- package/src/render/temporalPass.ts +153 -0
- package/src/render/textLayout.ts +239 -0
- package/src/render/textRenderer.ts +201 -0
- package/src/render/thirdPersonCamera.ts +578 -0
- package/src/render/trample.ts +140 -0
- package/src/render/translucentQueue.ts +161 -0
- package/src/render/uniformVectorBudget.ts +246 -0
- package/src/render/uploadStep.ts +14 -0
- package/src/render/vertexDefaults.ts +115 -0
- package/src/render/visibility.ts +56 -0
- package/src/render/waterDraw.ts +167 -0
- package/src/render/waterGrid.ts +180 -0
- package/src/render/waterRenderer.ts +352 -0
- package/src/render/wind.ts +79 -0
- package/src/render/windField.ts +50 -0
- package/src/render/windStreakDraw.ts +131 -0
- package/src/render/windStreakRenderer.ts +130 -0
- package/src/scene/node.ts +336 -0
- package/src/scene/visit.ts +82 -0
- package/src/ui/clipMime.ts +109 -0
- package/src/ui/exportTarget.ts +491 -0
- package/src/ui/frameOverlay.ts +159 -0
- package/src/ui/framePacer.ts +351 -0
- package/src/ui/frameRecorder.ts +333 -0
- package/src/ui/fullscreen.ts +113 -0
- package/src/ui/pixelCursor.ts +99 -0
- package/src/ui/splash.ts +347 -0
- package/src/ui/stillFrame.ts +44 -0
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
export declare const LINE_FRAG_WGSL = "struct Uniforms {\n uColor: vec3<f32>,\n uOpacity: f32,\n uCameraPos: vec3<f32>,\n uSoftness: f32,\n uFogColor: vec3<f32>,\n uFogDensity: f32,\n uFogHeightFalloff: f32,\n uFogEyeY: f32,\n uUnderwaterColor: vec3<f32>,\n uUnderwaterFogDensity: f32,\n uUnderwaterFactor: f32,\n uFogMode: i32,\n uFogNear: f32,\n uFogFar: f32,\n uOutputTransform: i32,\n uOutputExposure: f32,\n}\n\n@group(0) @binding(1) \nvar<uniform> unnamed: Uniforms;\nvar<private> vSide_1: f32;\nvar<private> vWorldPos_1: vec3<f32>;\nvar<private> outColor: vec4<f32>;\n\nfn linearToSrgb_u0028_vf3_u003b(c: ptr<function, vec3<f32>>) -> vec3<f32> {\n var low: vec3<f32>;\n var high: vec3<f32>;\n\n let _e67 = (*c);\n low = (_e67 * 12.92f);\n let _e69 = (*c);\n high = ((pow(max(_e69, vec3<f32>(0f, 0f, 0f)), vec3<f32>(0.41666666f, 0.41666666f, 0.41666666f)) * 1.055f) - vec3(0.055f));\n let _e75 = high;\n let _e76 = low;\n let _e77 = (*c);\n return mix(_e75, _e76, step(_e77, vec3<f32>(0.0031308f, 0.0031308f, 0.0031308f)));\n}\n\nfn rrtAndOdtFit_u0028_vf3_u003b(v: ptr<function, vec3<f32>>) -> vec3<f32> {\n var a: vec3<f32>;\n var b: vec3<f32>;\n\n let _e67 = (*v);\n let _e68 = (*v);\n a = ((_e67 * (_e68 + vec3(0.0245786f))) - vec3(0.000090537f));\n let _e74 = (*v);\n let _e75 = (*v);\n b = ((_e74 * ((_e75 * 0.983729f) + vec3(0.432951f))) + vec3(0.238081f));\n let _e82 = a;\n let _e83 = b;\n return (_e82 / _e83);\n}\n\nfn acesFilmic_u0028_vf3_u003b(x: ptr<function, vec3<f32>>) -> vec3<f32> {\n var param: vec3<f32>;\n\n let _e67 = unnamed.uOutputExposure;\n let _e68 = (*x);\n (*x) = (_e68 * _e67);\n let _e70 = (*x);\n param = (mat3x3<f32>(vec3<f32>(0.59719f, 0.076f, 0.0284f), vec3<f32>(0.35458f, 0.90834f, 0.13383f), vec3<f32>(0.04823f, 0.01566f, 0.83777f)) * _e70);\n let _e72 = rrtAndOdtFit_u0028_vf3_u003b((¶m));\n return clamp((mat3x3<f32>(vec3<f32>(1.60475f, -0.10208f, -0.00327f), vec3<f32>(-0.53108f, 1.10813f, -0.07276f), vec3<f32>(-0.07367f, -0.00605f, 1.07602f)) * _e72), vec3(0f), vec3(1f));\n}\n\nfn applyOutputTransform_u0028_vf3_u003b(c_1: ptr<function, vec3<f32>>) -> vec3<f32> {\n var param_1: vec3<f32>;\n var param_2: vec3<f32>;\n\n let _e68 = unnamed.uOutputTransform;\n if (_e68 == 0i) {\n let _e70 = (*c_1);\n return _e70;\n }\n let _e72 = unnamed.uOutputTransform;\n if (_e72 == 2i) {\n let _e74 = (*c_1);\n param_1 = _e74;\n let _e75 = acesFilmic_u0028_vf3_u003b((¶m_1));\n (*c_1) = _e75;\n }\n let _e76 = (*c_1);\n param_2 = _e76;\n let _e77 = linearToSrgb_u0028_vf3_u003b((¶m_2));\n return _e77;\n}\n\nfn mediumColor_u0028_() -> vec3<f32> {\n let _e65 = unnamed.uFogColor;\n let _e67 = unnamed.uUnderwaterColor;\n let _e69 = unnamed.uUnderwaterFactor;\n return mix(_e65, _e67, vec3(_e69));\n}\n\nfn mediumFog_u0028_f1_u003b_f1_u003b(dist: ptr<function, f32>, pointY: ptr<function, f32>) -> f32 {\n var span: f32;\n var ramp: f32;\n var wetLinear: f32;\n var t: f32;\n var denom: f32;\n var air: f32;\n var wet: f32;\n\n let _e74 = unnamed.uFogMode;\n if (_e74 == 1i) {\n let _e77 = unnamed.uFogFar;\n let _e79 = unnamed.uFogNear;\n span = max((_e77 - _e79), 0.0001f);\n let _e82 = (*dist);\n let _e84 = unnamed.uFogNear;\n let _e86 = span;\n ramp = clamp(((_e82 - _e84) / _e86), 0f, 1f);\n let _e90 = unnamed.uUnderwaterFactor;\n if (_e90 <= 0f) {\n let _e92 = ramp;\n return _e92;\n }\n let _e94 = unnamed.uUnderwaterFogDensity;\n let _e95 = (*dist);\n wetLinear = (_e94 * _e95);\n let _e97 = ramp;\n let _e98 = wetLinear;\n let _e100 = wetLinear;\n let _e106 = unnamed.uUnderwaterFactor;\n return mix(_e97, (1f - exp2(((-(_e98) * _e100) * 1.442695f))), _e106);\n }\n let _e108 = (*pointY);\n let _e110 = unnamed.uFogEyeY;\n let _e113 = unnamed.uFogHeightFalloff;\n t = ((_e108 - _e110) * _e113);\n let _e115 = t;\n let _e118 = t;\n denom = select(_e118, 0.0001f, (abs(_e115) < 0.0001f));\n let _e121 = unnamed.uFogDensity;\n let _e123 = (*dist);\n let _e125 = denom;\n let _e130 = denom;\n air = (1f - exp((((-(_e121) * _e123) * (1f - exp(-(_e125)))) / _e130)));\n let _e135 = unnamed.uUnderwaterFactor;\n if (_e135 <= 0f) {\n let _e137 = air;\n return _e137;\n }\n let _e139 = unnamed.uUnderwaterFogDensity;\n let _e140 = (*dist);\n wet = (_e139 * _e140);\n let _e142 = air;\n let _e143 = wet;\n let _e145 = wet;\n let _e151 = unnamed.uUnderwaterFactor;\n return mix(_e142, (1f - exp2(((-(_e143) * _e145) * 1.442695f))), _e151);\n}\n\nfn main_1() {\n var edge: f32;\n var band: f32;\n var coverage: f32;\n var fog: f32;\n var param_3: f32;\n var param_4: f32;\n var color: vec3<f32>;\n var param_5: vec3<f32>;\n\n let _e72 = vSide_1;\n edge = (1f - abs(_e72));\n let _e75 = vSide_1;\n let _e76 = fwidth(_e75);\n let _e78 = unnamed.uSoftness;\n band = max(_e76, _e78);\n let _e80 = band;\n let _e81 = edge;\n coverage = smoothstep(0f, _e80, _e81);\n let _e83 = vWorldPos_1;\n let _e85 = unnamed.uCameraPos;\n param_3 = distance(_e83, _e85);\n let _e88 = vWorldPos_1[1u];\n param_4 = _e88;\n let _e89 = mediumFog_u0028_f1_u003b_f1_u003b((¶m_3), (¶m_4));\n fog = _e89;\n let _e91 = unnamed.uColor;\n let _e92 = mediumColor_u0028_();\n let _e93 = fog;\n color = mix(_e91, _e92, vec3(_e93));\n let _e96 = color;\n param_5 = _e96;\n let _e97 = applyOutputTransform_u0028_vf3_u003b((¶m_5));\n let _e98 = coverage;\n let _e100 = unnamed.uOpacity;\n outColor = vec4<f32>(_e97.x, _e97.y, _e97.z, (_e98 * _e100));\n return;\n}\n\n@fragment \nfn main(@location(0) vSide: f32, @location(1) vWorldPos: vec3<f32>) -> @location(0) vec4<f32> {\n vSide_1 = vSide;\n vWorldPos_1 = vWorldPos;\n main_1();\n let _e5 = outColor;\n return _e5;\n}\n";
|
|
2
|
+
export declare const LINE_VERT_WGSL = "struct Uniforms {\n uViewProj: mat4x4<f32>,\n uModel: mat4x4<f32>,\n uCameraPos: vec3<f32>,\n uWidth: f32,\n uMinWidthPerMetre: f32,\n}\n\nstruct gl_PerVertex {\n @builtin(position) gl_Position: vec4<f32>,\n gl_PointSize: f32,\n}\n\nstruct VertexOutput {\n @location(0) member: f32,\n @location(1) member_1: vec3<f32>,\n @builtin(position) gl_Position: vec4<f32>,\n}\n\n@group(0) @binding(0) \nvar<uniform> unnamed: Uniforms;\nvar<private> aFrom_1: vec3<f32>;\nvar<private> aTo_1: vec3<f32>;\nvar<private> aCorner_1: vec2<f32>;\nvar<private> vSide: f32;\nvar<private> vWorldPos: vec3<f32>;\nvar<private> unnamed_1: gl_PerVertex = gl_PerVertex(vec4<f32>(0f, 0f, 0f, 1f), 1f);\n\nfn main_1() {\n var from_: vec3<f32>;\n var to: vec3<f32>;\n var mid: vec3<f32>;\n var dir: vec3<f32>;\n var len: f32;\n var local: vec3<f32>;\n var view: vec3<f32>;\n var dist: f32;\n var local_1: vec3<f32>;\n var across: vec3<f32>;\n var span: f32;\n var local_2: vec3<f32>;\n var halfWidth: f32;\n var world: vec3<f32>;\n\n let _e37 = unnamed.uModel;\n let _e38 = aFrom_1;\n from_ = (_e37 * vec4<f32>(_e38.x, _e38.y, _e38.z, 1f)).xyz;\n let _e46 = unnamed.uModel;\n let _e47 = aTo_1;\n to = (_e46 * vec4<f32>(_e47.x, _e47.y, _e47.z, 1f)).xyz;\n let _e54 = from_;\n let _e55 = to;\n let _e57 = aCorner_1[0u];\n mid = mix(_e54, _e55, vec3(_e57));\n let _e60 = to;\n let _e61 = from_;\n dir = (_e60 - _e61);\n let _e63 = dir;\n len = length(_e63);\n let _e65 = len;\n if (_e65 > 0.000001f) {\n let _e67 = dir;\n let _e68 = len;\n local = (_e67 / vec3(_e68));\n } else {\n local = vec3<f32>(0f, 1f, 0f);\n }\n let _e71 = local;\n dir = _e71;\n let _e72 = mid;\n let _e74 = unnamed.uCameraPos;\n view = (_e72 - _e74);\n let _e76 = view;\n dist = length(_e76);\n let _e78 = dist;\n if (_e78 > 0.000001f) {\n let _e80 = view;\n let _e81 = dist;\n local_1 = (_e80 / vec3(_e81));\n } else {\n local_1 = vec3<f32>(0f, 0f, 1f);\n }\n let _e84 = local_1;\n view = _e84;\n let _e85 = dir;\n let _e86 = view;\n across = cross(_e85, _e86);\n let _e88 = across;\n span = length(_e88);\n let _e90 = span;\n if (_e90 > 0.0001f) {\n let _e92 = across;\n let _e93 = span;\n local_2 = (_e92 / vec3(_e93));\n } else {\n let _e96 = dir;\n local_2 = normalize((cross(_e96, vec3<f32>(0f, 1f, 0f)) + vec3<f32>(0.001f, 0.001f, 0.001f)));\n }\n let _e100 = local_2;\n across = _e100;\n let _e102 = unnamed.uWidth;\n let _e103 = dist;\n let _e105 = unnamed.uMinWidthPerMetre;\n halfWidth = max(_e102, (_e103 * _e105));\n let _e108 = mid;\n let _e109 = across;\n let _e111 = aCorner_1[1u];\n let _e113 = halfWidth;\n world = (_e108 + ((_e109 * _e111) * _e113));\n let _e117 = aCorner_1[1u];\n vSide = _e117;\n let _e118 = world;\n vWorldPos = _e118;\n let _e120 = unnamed.uViewProj;\n let _e121 = world;\n unnamed_1.gl_Position = (_e120 * vec4<f32>(_e121.x, _e121.y, _e121.z, 1f));\n return;\n}\n\n@vertex \nfn main(@location(0) aFrom: vec3<f32>, @location(1) aTo: vec3<f32>, @location(2) aCorner: vec2<f32>) -> VertexOutput {\n aFrom_1 = aFrom;\n aTo_1 = aTo;\n aCorner_1 = aCorner;\n main_1();\n let _e11 = unnamed_1.gl_Position.y;\n unnamed_1.gl_Position.y = -(_e11);\n let _e13 = vSide;\n let _e14 = vWorldPos;\n let _e15 = unnamed_1.gl_Position;\n return VertexOutput(_e13, _e14, _e15);\n}\n";
|
|
3
|
+
/**
|
|
4
|
+
* What the transform assigned, so the renderer binds the same numbers.
|
|
5
|
+
*
|
|
6
|
+
* A permuted shader has one entry per variant, keyed as `FLAT_FRAG_WGSL` is.
|
|
7
|
+
*/
|
|
8
|
+
export declare const LINE_BINDINGS: {
|
|
9
|
+
readonly LINE_FRAG: {
|
|
10
|
+
readonly uniforms: 1;
|
|
11
|
+
readonly uniformSize: 112;
|
|
12
|
+
readonly fields: {
|
|
13
|
+
readonly uColor: {
|
|
14
|
+
readonly offset: 0;
|
|
15
|
+
readonly size: 12;
|
|
16
|
+
readonly type: "vec3";
|
|
17
|
+
};
|
|
18
|
+
readonly uOpacity: {
|
|
19
|
+
readonly offset: 12;
|
|
20
|
+
readonly size: 4;
|
|
21
|
+
readonly type: "float";
|
|
22
|
+
};
|
|
23
|
+
readonly uCameraPos: {
|
|
24
|
+
readonly offset: 16;
|
|
25
|
+
readonly size: 12;
|
|
26
|
+
readonly type: "vec3";
|
|
27
|
+
};
|
|
28
|
+
readonly uSoftness: {
|
|
29
|
+
readonly offset: 28;
|
|
30
|
+
readonly size: 4;
|
|
31
|
+
readonly type: "float";
|
|
32
|
+
};
|
|
33
|
+
readonly uFogColor: {
|
|
34
|
+
readonly offset: 32;
|
|
35
|
+
readonly size: 12;
|
|
36
|
+
readonly type: "vec3";
|
|
37
|
+
};
|
|
38
|
+
readonly uFogDensity: {
|
|
39
|
+
readonly offset: 44;
|
|
40
|
+
readonly size: 4;
|
|
41
|
+
readonly type: "float";
|
|
42
|
+
};
|
|
43
|
+
readonly uFogHeightFalloff: {
|
|
44
|
+
readonly offset: 48;
|
|
45
|
+
readonly size: 4;
|
|
46
|
+
readonly type: "float";
|
|
47
|
+
};
|
|
48
|
+
readonly uFogEyeY: {
|
|
49
|
+
readonly offset: 52;
|
|
50
|
+
readonly size: 4;
|
|
51
|
+
readonly type: "float";
|
|
52
|
+
};
|
|
53
|
+
readonly uUnderwaterColor: {
|
|
54
|
+
readonly offset: 64;
|
|
55
|
+
readonly size: 12;
|
|
56
|
+
readonly type: "vec3";
|
|
57
|
+
};
|
|
58
|
+
readonly uUnderwaterFogDensity: {
|
|
59
|
+
readonly offset: 76;
|
|
60
|
+
readonly size: 4;
|
|
61
|
+
readonly type: "float";
|
|
62
|
+
};
|
|
63
|
+
readonly uUnderwaterFactor: {
|
|
64
|
+
readonly offset: 80;
|
|
65
|
+
readonly size: 4;
|
|
66
|
+
readonly type: "float";
|
|
67
|
+
};
|
|
68
|
+
readonly uFogMode: {
|
|
69
|
+
readonly offset: 84;
|
|
70
|
+
readonly size: 4;
|
|
71
|
+
readonly type: "int";
|
|
72
|
+
};
|
|
73
|
+
readonly uFogNear: {
|
|
74
|
+
readonly offset: 88;
|
|
75
|
+
readonly size: 4;
|
|
76
|
+
readonly type: "float";
|
|
77
|
+
};
|
|
78
|
+
readonly uFogFar: {
|
|
79
|
+
readonly offset: 92;
|
|
80
|
+
readonly size: 4;
|
|
81
|
+
readonly type: "float";
|
|
82
|
+
};
|
|
83
|
+
readonly uOutputTransform: {
|
|
84
|
+
readonly offset: 96;
|
|
85
|
+
readonly size: 4;
|
|
86
|
+
readonly type: "int";
|
|
87
|
+
};
|
|
88
|
+
readonly uOutputExposure: {
|
|
89
|
+
readonly offset: 100;
|
|
90
|
+
readonly size: 4;
|
|
91
|
+
readonly type: "float";
|
|
92
|
+
};
|
|
93
|
+
};
|
|
94
|
+
readonly textures: {};
|
|
95
|
+
};
|
|
96
|
+
readonly LINE_VERT: {
|
|
97
|
+
readonly uniforms: 0;
|
|
98
|
+
readonly uniformSize: 160;
|
|
99
|
+
readonly fields: {
|
|
100
|
+
readonly uViewProj: {
|
|
101
|
+
readonly offset: 0;
|
|
102
|
+
readonly size: 64;
|
|
103
|
+
readonly type: "mat4";
|
|
104
|
+
};
|
|
105
|
+
readonly uModel: {
|
|
106
|
+
readonly offset: 64;
|
|
107
|
+
readonly size: 64;
|
|
108
|
+
readonly type: "mat4";
|
|
109
|
+
};
|
|
110
|
+
readonly uCameraPos: {
|
|
111
|
+
readonly offset: 128;
|
|
112
|
+
readonly size: 12;
|
|
113
|
+
readonly type: "vec3";
|
|
114
|
+
};
|
|
115
|
+
readonly uWidth: {
|
|
116
|
+
readonly offset: 140;
|
|
117
|
+
readonly size: 4;
|
|
118
|
+
readonly type: "float";
|
|
119
|
+
};
|
|
120
|
+
readonly uMinWidthPerMetre: {
|
|
121
|
+
readonly offset: 144;
|
|
122
|
+
readonly size: 4;
|
|
123
|
+
readonly type: "float";
|
|
124
|
+
};
|
|
125
|
+
};
|
|
126
|
+
readonly textures: {};
|
|
127
|
+
};
|
|
128
|
+
};
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Generated from ../line.ts by `npm run wgsl`. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* The GLSL beside this file is the source of truth. A hand edit here is discarded by
|
|
5
|
+
* the next generation, and `npm run wgsl:check` fails the build when this is stale.
|
|
6
|
+
*/
|
|
7
|
+
export const LINE_FRAG_WGSL = "struct Uniforms {\n uColor: vec3<f32>,\n uOpacity: f32,\n uCameraPos: vec3<f32>,\n uSoftness: f32,\n uFogColor: vec3<f32>,\n uFogDensity: f32,\n uFogHeightFalloff: f32,\n uFogEyeY: f32,\n uUnderwaterColor: vec3<f32>,\n uUnderwaterFogDensity: f32,\n uUnderwaterFactor: f32,\n uFogMode: i32,\n uFogNear: f32,\n uFogFar: f32,\n uOutputTransform: i32,\n uOutputExposure: f32,\n}\n\n@group(0) @binding(1) \nvar<uniform> unnamed: Uniforms;\nvar<private> vSide_1: f32;\nvar<private> vWorldPos_1: vec3<f32>;\nvar<private> outColor: vec4<f32>;\n\nfn linearToSrgb_u0028_vf3_u003b(c: ptr<function, vec3<f32>>) -> vec3<f32> {\n var low: vec3<f32>;\n var high: vec3<f32>;\n\n let _e67 = (*c);\n low = (_e67 * 12.92f);\n let _e69 = (*c);\n high = ((pow(max(_e69, vec3<f32>(0f, 0f, 0f)), vec3<f32>(0.41666666f, 0.41666666f, 0.41666666f)) * 1.055f) - vec3(0.055f));\n let _e75 = high;\n let _e76 = low;\n let _e77 = (*c);\n return mix(_e75, _e76, step(_e77, vec3<f32>(0.0031308f, 0.0031308f, 0.0031308f)));\n}\n\nfn rrtAndOdtFit_u0028_vf3_u003b(v: ptr<function, vec3<f32>>) -> vec3<f32> {\n var a: vec3<f32>;\n var b: vec3<f32>;\n\n let _e67 = (*v);\n let _e68 = (*v);\n a = ((_e67 * (_e68 + vec3(0.0245786f))) - vec3(0.000090537f));\n let _e74 = (*v);\n let _e75 = (*v);\n b = ((_e74 * ((_e75 * 0.983729f) + vec3(0.432951f))) + vec3(0.238081f));\n let _e82 = a;\n let _e83 = b;\n return (_e82 / _e83);\n}\n\nfn acesFilmic_u0028_vf3_u003b(x: ptr<function, vec3<f32>>) -> vec3<f32> {\n var param: vec3<f32>;\n\n let _e67 = unnamed.uOutputExposure;\n let _e68 = (*x);\n (*x) = (_e68 * _e67);\n let _e70 = (*x);\n param = (mat3x3<f32>(vec3<f32>(0.59719f, 0.076f, 0.0284f), vec3<f32>(0.35458f, 0.90834f, 0.13383f), vec3<f32>(0.04823f, 0.01566f, 0.83777f)) * _e70);\n let _e72 = rrtAndOdtFit_u0028_vf3_u003b((¶m));\n return clamp((mat3x3<f32>(vec3<f32>(1.60475f, -0.10208f, -0.00327f), vec3<f32>(-0.53108f, 1.10813f, -0.07276f), vec3<f32>(-0.07367f, -0.00605f, 1.07602f)) * _e72), vec3(0f), vec3(1f));\n}\n\nfn applyOutputTransform_u0028_vf3_u003b(c_1: ptr<function, vec3<f32>>) -> vec3<f32> {\n var param_1: vec3<f32>;\n var param_2: vec3<f32>;\n\n let _e68 = unnamed.uOutputTransform;\n if (_e68 == 0i) {\n let _e70 = (*c_1);\n return _e70;\n }\n let _e72 = unnamed.uOutputTransform;\n if (_e72 == 2i) {\n let _e74 = (*c_1);\n param_1 = _e74;\n let _e75 = acesFilmic_u0028_vf3_u003b((¶m_1));\n (*c_1) = _e75;\n }\n let _e76 = (*c_1);\n param_2 = _e76;\n let _e77 = linearToSrgb_u0028_vf3_u003b((¶m_2));\n return _e77;\n}\n\nfn mediumColor_u0028_() -> vec3<f32> {\n let _e65 = unnamed.uFogColor;\n let _e67 = unnamed.uUnderwaterColor;\n let _e69 = unnamed.uUnderwaterFactor;\n return mix(_e65, _e67, vec3(_e69));\n}\n\nfn mediumFog_u0028_f1_u003b_f1_u003b(dist: ptr<function, f32>, pointY: ptr<function, f32>) -> f32 {\n var span: f32;\n var ramp: f32;\n var wetLinear: f32;\n var t: f32;\n var denom: f32;\n var air: f32;\n var wet: f32;\n\n let _e74 = unnamed.uFogMode;\n if (_e74 == 1i) {\n let _e77 = unnamed.uFogFar;\n let _e79 = unnamed.uFogNear;\n span = max((_e77 - _e79), 0.0001f);\n let _e82 = (*dist);\n let _e84 = unnamed.uFogNear;\n let _e86 = span;\n ramp = clamp(((_e82 - _e84) / _e86), 0f, 1f);\n let _e90 = unnamed.uUnderwaterFactor;\n if (_e90 <= 0f) {\n let _e92 = ramp;\n return _e92;\n }\n let _e94 = unnamed.uUnderwaterFogDensity;\n let _e95 = (*dist);\n wetLinear = (_e94 * _e95);\n let _e97 = ramp;\n let _e98 = wetLinear;\n let _e100 = wetLinear;\n let _e106 = unnamed.uUnderwaterFactor;\n return mix(_e97, (1f - exp2(((-(_e98) * _e100) * 1.442695f))), _e106);\n }\n let _e108 = (*pointY);\n let _e110 = unnamed.uFogEyeY;\n let _e113 = unnamed.uFogHeightFalloff;\n t = ((_e108 - _e110) * _e113);\n let _e115 = t;\n let _e118 = t;\n denom = select(_e118, 0.0001f, (abs(_e115) < 0.0001f));\n let _e121 = unnamed.uFogDensity;\n let _e123 = (*dist);\n let _e125 = denom;\n let _e130 = denom;\n air = (1f - exp((((-(_e121) * _e123) * (1f - exp(-(_e125)))) / _e130)));\n let _e135 = unnamed.uUnderwaterFactor;\n if (_e135 <= 0f) {\n let _e137 = air;\n return _e137;\n }\n let _e139 = unnamed.uUnderwaterFogDensity;\n let _e140 = (*dist);\n wet = (_e139 * _e140);\n let _e142 = air;\n let _e143 = wet;\n let _e145 = wet;\n let _e151 = unnamed.uUnderwaterFactor;\n return mix(_e142, (1f - exp2(((-(_e143) * _e145) * 1.442695f))), _e151);\n}\n\nfn main_1() {\n var edge: f32;\n var band: f32;\n var coverage: f32;\n var fog: f32;\n var param_3: f32;\n var param_4: f32;\n var color: vec3<f32>;\n var param_5: vec3<f32>;\n\n let _e72 = vSide_1;\n edge = (1f - abs(_e72));\n let _e75 = vSide_1;\n let _e76 = fwidth(_e75);\n let _e78 = unnamed.uSoftness;\n band = max(_e76, _e78);\n let _e80 = band;\n let _e81 = edge;\n coverage = smoothstep(0f, _e80, _e81);\n let _e83 = vWorldPos_1;\n let _e85 = unnamed.uCameraPos;\n param_3 = distance(_e83, _e85);\n let _e88 = vWorldPos_1[1u];\n param_4 = _e88;\n let _e89 = mediumFog_u0028_f1_u003b_f1_u003b((¶m_3), (¶m_4));\n fog = _e89;\n let _e91 = unnamed.uColor;\n let _e92 = mediumColor_u0028_();\n let _e93 = fog;\n color = mix(_e91, _e92, vec3(_e93));\n let _e96 = color;\n param_5 = _e96;\n let _e97 = applyOutputTransform_u0028_vf3_u003b((¶m_5));\n let _e98 = coverage;\n let _e100 = unnamed.uOpacity;\n outColor = vec4<f32>(_e97.x, _e97.y, _e97.z, (_e98 * _e100));\n return;\n}\n\n@fragment \nfn main(@location(0) vSide: f32, @location(1) vWorldPos: vec3<f32>) -> @location(0) vec4<f32> {\n vSide_1 = vSide;\n vWorldPos_1 = vWorldPos;\n main_1();\n let _e5 = outColor;\n return _e5;\n}\n";
|
|
8
|
+
export const LINE_VERT_WGSL = "struct Uniforms {\n uViewProj: mat4x4<f32>,\n uModel: mat4x4<f32>,\n uCameraPos: vec3<f32>,\n uWidth: f32,\n uMinWidthPerMetre: f32,\n}\n\nstruct gl_PerVertex {\n @builtin(position) gl_Position: vec4<f32>,\n gl_PointSize: f32,\n}\n\nstruct VertexOutput {\n @location(0) member: f32,\n @location(1) member_1: vec3<f32>,\n @builtin(position) gl_Position: vec4<f32>,\n}\n\n@group(0) @binding(0) \nvar<uniform> unnamed: Uniforms;\nvar<private> aFrom_1: vec3<f32>;\nvar<private> aTo_1: vec3<f32>;\nvar<private> aCorner_1: vec2<f32>;\nvar<private> vSide: f32;\nvar<private> vWorldPos: vec3<f32>;\nvar<private> unnamed_1: gl_PerVertex = gl_PerVertex(vec4<f32>(0f, 0f, 0f, 1f), 1f);\n\nfn main_1() {\n var from_: vec3<f32>;\n var to: vec3<f32>;\n var mid: vec3<f32>;\n var dir: vec3<f32>;\n var len: f32;\n var local: vec3<f32>;\n var view: vec3<f32>;\n var dist: f32;\n var local_1: vec3<f32>;\n var across: vec3<f32>;\n var span: f32;\n var local_2: vec3<f32>;\n var halfWidth: f32;\n var world: vec3<f32>;\n\n let _e37 = unnamed.uModel;\n let _e38 = aFrom_1;\n from_ = (_e37 * vec4<f32>(_e38.x, _e38.y, _e38.z, 1f)).xyz;\n let _e46 = unnamed.uModel;\n let _e47 = aTo_1;\n to = (_e46 * vec4<f32>(_e47.x, _e47.y, _e47.z, 1f)).xyz;\n let _e54 = from_;\n let _e55 = to;\n let _e57 = aCorner_1[0u];\n mid = mix(_e54, _e55, vec3(_e57));\n let _e60 = to;\n let _e61 = from_;\n dir = (_e60 - _e61);\n let _e63 = dir;\n len = length(_e63);\n let _e65 = len;\n if (_e65 > 0.000001f) {\n let _e67 = dir;\n let _e68 = len;\n local = (_e67 / vec3(_e68));\n } else {\n local = vec3<f32>(0f, 1f, 0f);\n }\n let _e71 = local;\n dir = _e71;\n let _e72 = mid;\n let _e74 = unnamed.uCameraPos;\n view = (_e72 - _e74);\n let _e76 = view;\n dist = length(_e76);\n let _e78 = dist;\n if (_e78 > 0.000001f) {\n let _e80 = view;\n let _e81 = dist;\n local_1 = (_e80 / vec3(_e81));\n } else {\n local_1 = vec3<f32>(0f, 0f, 1f);\n }\n let _e84 = local_1;\n view = _e84;\n let _e85 = dir;\n let _e86 = view;\n across = cross(_e85, _e86);\n let _e88 = across;\n span = length(_e88);\n let _e90 = span;\n if (_e90 > 0.0001f) {\n let _e92 = across;\n let _e93 = span;\n local_2 = (_e92 / vec3(_e93));\n } else {\n let _e96 = dir;\n local_2 = normalize((cross(_e96, vec3<f32>(0f, 1f, 0f)) + vec3<f32>(0.001f, 0.001f, 0.001f)));\n }\n let _e100 = local_2;\n across = _e100;\n let _e102 = unnamed.uWidth;\n let _e103 = dist;\n let _e105 = unnamed.uMinWidthPerMetre;\n halfWidth = max(_e102, (_e103 * _e105));\n let _e108 = mid;\n let _e109 = across;\n let _e111 = aCorner_1[1u];\n let _e113 = halfWidth;\n world = (_e108 + ((_e109 * _e111) * _e113));\n let _e117 = aCorner_1[1u];\n vSide = _e117;\n let _e118 = world;\n vWorldPos = _e118;\n let _e120 = unnamed.uViewProj;\n let _e121 = world;\n unnamed_1.gl_Position = (_e120 * vec4<f32>(_e121.x, _e121.y, _e121.z, 1f));\n return;\n}\n\n@vertex \nfn main(@location(0) aFrom: vec3<f32>, @location(1) aTo: vec3<f32>, @location(2) aCorner: vec2<f32>) -> VertexOutput {\n aFrom_1 = aFrom;\n aTo_1 = aTo;\n aCorner_1 = aCorner;\n main_1();\n let _e11 = unnamed_1.gl_Position.y;\n unnamed_1.gl_Position.y = -(_e11);\n let _e13 = vSide;\n let _e14 = vWorldPos;\n let _e15 = unnamed_1.gl_Position;\n return VertexOutput(_e13, _e14, _e15);\n}\n";
|
|
9
|
+
/**
|
|
10
|
+
* What the transform assigned, so the renderer binds the same numbers.
|
|
11
|
+
*
|
|
12
|
+
* A permuted shader has one entry per variant, keyed as `FLAT_FRAG_WGSL` is.
|
|
13
|
+
*/
|
|
14
|
+
export const LINE_BINDINGS = {
|
|
15
|
+
"LINE_FRAG": {
|
|
16
|
+
"uniforms": 1,
|
|
17
|
+
"uniformSize": 112,
|
|
18
|
+
"fields": {
|
|
19
|
+
"uColor": {
|
|
20
|
+
"offset": 0,
|
|
21
|
+
"size": 12,
|
|
22
|
+
"type": "vec3"
|
|
23
|
+
},
|
|
24
|
+
"uOpacity": {
|
|
25
|
+
"offset": 12,
|
|
26
|
+
"size": 4,
|
|
27
|
+
"type": "float"
|
|
28
|
+
},
|
|
29
|
+
"uCameraPos": {
|
|
30
|
+
"offset": 16,
|
|
31
|
+
"size": 12,
|
|
32
|
+
"type": "vec3"
|
|
33
|
+
},
|
|
34
|
+
"uSoftness": {
|
|
35
|
+
"offset": 28,
|
|
36
|
+
"size": 4,
|
|
37
|
+
"type": "float"
|
|
38
|
+
},
|
|
39
|
+
"uFogColor": {
|
|
40
|
+
"offset": 32,
|
|
41
|
+
"size": 12,
|
|
42
|
+
"type": "vec3"
|
|
43
|
+
},
|
|
44
|
+
"uFogDensity": {
|
|
45
|
+
"offset": 44,
|
|
46
|
+
"size": 4,
|
|
47
|
+
"type": "float"
|
|
48
|
+
},
|
|
49
|
+
"uFogHeightFalloff": {
|
|
50
|
+
"offset": 48,
|
|
51
|
+
"size": 4,
|
|
52
|
+
"type": "float"
|
|
53
|
+
},
|
|
54
|
+
"uFogEyeY": {
|
|
55
|
+
"offset": 52,
|
|
56
|
+
"size": 4,
|
|
57
|
+
"type": "float"
|
|
58
|
+
},
|
|
59
|
+
"uUnderwaterColor": {
|
|
60
|
+
"offset": 64,
|
|
61
|
+
"size": 12,
|
|
62
|
+
"type": "vec3"
|
|
63
|
+
},
|
|
64
|
+
"uUnderwaterFogDensity": {
|
|
65
|
+
"offset": 76,
|
|
66
|
+
"size": 4,
|
|
67
|
+
"type": "float"
|
|
68
|
+
},
|
|
69
|
+
"uUnderwaterFactor": {
|
|
70
|
+
"offset": 80,
|
|
71
|
+
"size": 4,
|
|
72
|
+
"type": "float"
|
|
73
|
+
},
|
|
74
|
+
"uFogMode": {
|
|
75
|
+
"offset": 84,
|
|
76
|
+
"size": 4,
|
|
77
|
+
"type": "int"
|
|
78
|
+
},
|
|
79
|
+
"uFogNear": {
|
|
80
|
+
"offset": 88,
|
|
81
|
+
"size": 4,
|
|
82
|
+
"type": "float"
|
|
83
|
+
},
|
|
84
|
+
"uFogFar": {
|
|
85
|
+
"offset": 92,
|
|
86
|
+
"size": 4,
|
|
87
|
+
"type": "float"
|
|
88
|
+
},
|
|
89
|
+
"uOutputTransform": {
|
|
90
|
+
"offset": 96,
|
|
91
|
+
"size": 4,
|
|
92
|
+
"type": "int"
|
|
93
|
+
},
|
|
94
|
+
"uOutputExposure": {
|
|
95
|
+
"offset": 100,
|
|
96
|
+
"size": 4,
|
|
97
|
+
"type": "float"
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
"textures": {}
|
|
101
|
+
},
|
|
102
|
+
"LINE_VERT": {
|
|
103
|
+
"uniforms": 0,
|
|
104
|
+
"uniformSize": 160,
|
|
105
|
+
"fields": {
|
|
106
|
+
"uViewProj": {
|
|
107
|
+
"offset": 0,
|
|
108
|
+
"size": 64,
|
|
109
|
+
"type": "mat4"
|
|
110
|
+
},
|
|
111
|
+
"uModel": {
|
|
112
|
+
"offset": 64,
|
|
113
|
+
"size": 64,
|
|
114
|
+
"type": "mat4"
|
|
115
|
+
},
|
|
116
|
+
"uCameraPos": {
|
|
117
|
+
"offset": 128,
|
|
118
|
+
"size": 12,
|
|
119
|
+
"type": "vec3"
|
|
120
|
+
},
|
|
121
|
+
"uWidth": {
|
|
122
|
+
"offset": 140,
|
|
123
|
+
"size": 4,
|
|
124
|
+
"type": "float"
|
|
125
|
+
},
|
|
126
|
+
"uMinWidthPerMetre": {
|
|
127
|
+
"offset": 144,
|
|
128
|
+
"size": 4,
|
|
129
|
+
"type": "float"
|
|
130
|
+
}
|
|
131
|
+
},
|
|
132
|
+
"textures": {}
|
|
133
|
+
}
|
|
134
|
+
};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
export declare const OCTAHEDRAL_RESOLVE_FRAG_WGSL = "struct Uniforms {\n uFaceRotation: mat3x3<f32>,\n uFaceIndex: i32,\n uFar: f32,\n uNear: f32,\n uEdge: f32,\n}\n\nvar<private> gl_FragCoord_1: vec4<f32>;\n@group(0) @binding(1) \nvar<uniform> unnamed: Uniforms;\n@group(0) @binding(32) \nvar uFace_t: texture_2d<f32>;\n@group(0) @binding(33) \nvar uFace_s: sampler;\nvar<private> gl_FragDepth: f32 = 0f;\n\nfn octDecode_u0028_vf2_u003b(uv: ptr<function, vec2<f32>>) -> vec3<f32> {\n var f: vec2<f32>;\n var n: vec3<f32>;\n var t: f32;\n var local: f32;\n var local_1: f32;\n\n let _e25 = (*uv);\n f = ((_e25 * 2f) - vec2(1f));\n let _e30 = f[0u];\n let _e32 = f[1u];\n let _e34 = f[0u];\n let _e38 = f[1u];\n n = vec3<f32>(_e30, _e32, ((1f - abs(_e34)) - abs(_e38)));\n let _e43 = n[2u];\n t = max(-(_e43), 0f);\n let _e47 = n[0u];\n if (_e47 >= 0f) {\n let _e49 = t;\n local = -(_e49);\n } else {\n let _e51 = t;\n local = _e51;\n }\n let _e52 = local;\n let _e54 = n[0u];\n n[0u] = (_e54 + _e52);\n let _e58 = n[1u];\n if (_e58 >= 0f) {\n let _e60 = t;\n local_1 = -(_e60);\n } else {\n let _e62 = t;\n local_1 = _e62;\n }\n let _e63 = local_1;\n let _e65 = n[1u];\n n[1u] = (_e65 + _e63);\n let _e68 = n;\n return normalize(_e68);\n}\n\nfn main_1() {\n var d: vec3<f32>;\n var param: vec2<f32>;\n var a: vec3<f32>;\n var face: i32;\n var v: vec3<f32>;\n var forward: f32;\n var faceUv: vec2<f32>;\n var stored: f32;\n var ndc: f32;\n var faceLocalZ: f32;\n var phi_116_: bool;\n\n let _e29 = gl_FragCoord_1;\n let _e32 = unnamed.uEdge;\n param = (_e29.xy / vec2(_e32));\n let _e35 = octDecode_u0028_vf2_u003b((¶m));\n d = _e35;\n let _e36 = d;\n a = abs(_e36);\n let _e39 = a[0u];\n let _e41 = a[1u];\n let _e42 = (_e39 >= _e41);\n phi_116_ = _e42;\n if _e42 {\n let _e44 = a[0u];\n let _e46 = a[2u];\n phi_116_ = (_e44 >= _e46);\n }\n let _e49 = phi_116_;\n if _e49 {\n let _e51 = d[0u];\n face = select(1i, 0i, (_e51 >= 0f));\n } else {\n let _e55 = a[1u];\n let _e57 = a[2u];\n if (_e55 >= _e57) {\n let _e60 = d[1u];\n face = select(3i, 2i, (_e60 >= 0f));\n } else {\n let _e64 = d[2u];\n face = select(5i, 4i, (_e64 >= 0f));\n }\n }\n let _e67 = face;\n let _e69 = unnamed.uFaceIndex;\n if (_e67 != _e69) {\n discard;\n }\n let _e72 = unnamed.uFaceRotation;\n let _e73 = d;\n v = (_e72 * _e73);\n let _e76 = v[2u];\n forward = -(_e76);\n let _e78 = v;\n let _e80 = forward;\n faceUv = (((_e78.xy / vec2(_e80)) * 0.5f) + vec2(0.5f));\n let _e86 = faceUv;\n let _e87 = textureSampleLevel(uFace_t, uFace_s, _e86, 0f);\n stored = _e87.x;\n let _e89 = stored;\n if (_e89 >= 0.9999f) {\n gl_FragDepth = 1f;\n return;\n }\n let _e91 = stored;\n ndc = ((_e91 * 2f) - 1f);\n let _e95 = unnamed.uFar;\n let _e98 = unnamed.uNear;\n let _e101 = unnamed.uFar;\n let _e103 = unnamed.uNear;\n let _e105 = ndc;\n let _e107 = unnamed.uFar;\n let _e109 = unnamed.uNear;\n faceLocalZ = (((2f * _e95) * _e98) / ((_e101 + _e103) - (_e105 * (_e107 - _e109))));\n let _e114 = faceLocalZ;\n let _e115 = forward;\n let _e118 = unnamed.uFar;\n gl_FragDepth = clamp(((_e114 / _e115) / _e118), 0f, 1f);\n return;\n}\n\n@fragment \nfn main(@builtin(position) gl_FragCoord: vec4<f32>) -> @builtin(frag_depth) f32 {\n gl_FragCoord_1 = gl_FragCoord;\n main_1();\n let _e3 = gl_FragDepth;\n return _e3;\n}\n";
|
|
2
|
+
export declare const OCTAHEDRAL_RESOLVE_VERT_WGSL = "struct gl_PerVertex {\n @builtin(position) gl_Position: vec4<f32>,\n gl_PointSize: f32,\n}\n\nvar<private> gl_VertexIndex_1: i32;\nvar<private> unnamed: gl_PerVertex = gl_PerVertex(vec4<f32>(0f, 0f, 0f, 1f), 1f);\n\nfn main_1() {\n var p: vec2<f32>;\n\n let _e9 = gl_VertexIndex_1;\n let _e14 = gl_VertexIndex_1;\n p = vec2<f32>(f32(((_e9 << bitcast<u32>(1i)) & 2i)), f32((_e14 & 2i)));\n let _e18 = p;\n let _e21 = ((_e18 * 2f) - vec2(1f));\n unnamed.gl_Position = vec4<f32>(_e21.x, _e21.y, 0f, 1f);\n return;\n}\n\n@vertex \nfn main(@builtin(vertex_index) gl_VertexIndex: u32) -> @builtin(position) vec4<f32> {\n gl_VertexIndex_1 = i32(gl_VertexIndex);\n main_1();\n let _e6 = unnamed.gl_Position.y;\n unnamed.gl_Position.y = -(_e6);\n let _e8 = unnamed.gl_Position;\n return _e8;\n}\n";
|
|
3
|
+
/**
|
|
4
|
+
* What the transform assigned, so the renderer binds the same numbers.
|
|
5
|
+
*
|
|
6
|
+
* A permuted shader has one entry per variant, keyed as `FLAT_FRAG_WGSL` is.
|
|
7
|
+
*/
|
|
8
|
+
export declare const OCTAHEDRALRESOLVE_BINDINGS: {
|
|
9
|
+
readonly OCTAHEDRAL_RESOLVE_FRAG: {
|
|
10
|
+
readonly uniforms: 1;
|
|
11
|
+
readonly uniformSize: 64;
|
|
12
|
+
readonly fields: {
|
|
13
|
+
readonly uFaceRotation: {
|
|
14
|
+
readonly offset: 0;
|
|
15
|
+
readonly size: 48;
|
|
16
|
+
readonly type: "mat3";
|
|
17
|
+
};
|
|
18
|
+
readonly uFaceIndex: {
|
|
19
|
+
readonly offset: 48;
|
|
20
|
+
readonly size: 4;
|
|
21
|
+
readonly type: "int";
|
|
22
|
+
};
|
|
23
|
+
readonly uFar: {
|
|
24
|
+
readonly offset: 52;
|
|
25
|
+
readonly size: 4;
|
|
26
|
+
readonly type: "float";
|
|
27
|
+
};
|
|
28
|
+
readonly uNear: {
|
|
29
|
+
readonly offset: 56;
|
|
30
|
+
readonly size: 4;
|
|
31
|
+
readonly type: "float";
|
|
32
|
+
};
|
|
33
|
+
readonly uEdge: {
|
|
34
|
+
readonly offset: 60;
|
|
35
|
+
readonly size: 4;
|
|
36
|
+
readonly type: "float";
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
readonly textures: {
|
|
40
|
+
readonly uFace: {
|
|
41
|
+
readonly texture: 32;
|
|
42
|
+
readonly sampler: 33;
|
|
43
|
+
readonly type: "sampler2D";
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
readonly OCTAHEDRAL_RESOLVE_VERT: {
|
|
48
|
+
readonly uniforms: null;
|
|
49
|
+
readonly textures: {};
|
|
50
|
+
};
|
|
51
|
+
};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Generated from ../octahedralResolve.ts by `npm run wgsl`. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* The GLSL beside this file is the source of truth. A hand edit here is discarded by
|
|
5
|
+
* the next generation, and `npm run wgsl:check` fails the build when this is stale.
|
|
6
|
+
*/
|
|
7
|
+
export const OCTAHEDRAL_RESOLVE_FRAG_WGSL = "struct Uniforms {\n uFaceRotation: mat3x3<f32>,\n uFaceIndex: i32,\n uFar: f32,\n uNear: f32,\n uEdge: f32,\n}\n\nvar<private> gl_FragCoord_1: vec4<f32>;\n@group(0) @binding(1) \nvar<uniform> unnamed: Uniforms;\n@group(0) @binding(32) \nvar uFace_t: texture_2d<f32>;\n@group(0) @binding(33) \nvar uFace_s: sampler;\nvar<private> gl_FragDepth: f32 = 0f;\n\nfn octDecode_u0028_vf2_u003b(uv: ptr<function, vec2<f32>>) -> vec3<f32> {\n var f: vec2<f32>;\n var n: vec3<f32>;\n var t: f32;\n var local: f32;\n var local_1: f32;\n\n let _e25 = (*uv);\n f = ((_e25 * 2f) - vec2(1f));\n let _e30 = f[0u];\n let _e32 = f[1u];\n let _e34 = f[0u];\n let _e38 = f[1u];\n n = vec3<f32>(_e30, _e32, ((1f - abs(_e34)) - abs(_e38)));\n let _e43 = n[2u];\n t = max(-(_e43), 0f);\n let _e47 = n[0u];\n if (_e47 >= 0f) {\n let _e49 = t;\n local = -(_e49);\n } else {\n let _e51 = t;\n local = _e51;\n }\n let _e52 = local;\n let _e54 = n[0u];\n n[0u] = (_e54 + _e52);\n let _e58 = n[1u];\n if (_e58 >= 0f) {\n let _e60 = t;\n local_1 = -(_e60);\n } else {\n let _e62 = t;\n local_1 = _e62;\n }\n let _e63 = local_1;\n let _e65 = n[1u];\n n[1u] = (_e65 + _e63);\n let _e68 = n;\n return normalize(_e68);\n}\n\nfn main_1() {\n var d: vec3<f32>;\n var param: vec2<f32>;\n var a: vec3<f32>;\n var face: i32;\n var v: vec3<f32>;\n var forward: f32;\n var faceUv: vec2<f32>;\n var stored: f32;\n var ndc: f32;\n var faceLocalZ: f32;\n var phi_116_: bool;\n\n let _e29 = gl_FragCoord_1;\n let _e32 = unnamed.uEdge;\n param = (_e29.xy / vec2(_e32));\n let _e35 = octDecode_u0028_vf2_u003b((¶m));\n d = _e35;\n let _e36 = d;\n a = abs(_e36);\n let _e39 = a[0u];\n let _e41 = a[1u];\n let _e42 = (_e39 >= _e41);\n phi_116_ = _e42;\n if _e42 {\n let _e44 = a[0u];\n let _e46 = a[2u];\n phi_116_ = (_e44 >= _e46);\n }\n let _e49 = phi_116_;\n if _e49 {\n let _e51 = d[0u];\n face = select(1i, 0i, (_e51 >= 0f));\n } else {\n let _e55 = a[1u];\n let _e57 = a[2u];\n if (_e55 >= _e57) {\n let _e60 = d[1u];\n face = select(3i, 2i, (_e60 >= 0f));\n } else {\n let _e64 = d[2u];\n face = select(5i, 4i, (_e64 >= 0f));\n }\n }\n let _e67 = face;\n let _e69 = unnamed.uFaceIndex;\n if (_e67 != _e69) {\n discard;\n }\n let _e72 = unnamed.uFaceRotation;\n let _e73 = d;\n v = (_e72 * _e73);\n let _e76 = v[2u];\n forward = -(_e76);\n let _e78 = v;\n let _e80 = forward;\n faceUv = (((_e78.xy / vec2(_e80)) * 0.5f) + vec2(0.5f));\n let _e86 = faceUv;\n let _e87 = textureSampleLevel(uFace_t, uFace_s, _e86, 0f);\n stored = _e87.x;\n let _e89 = stored;\n if (_e89 >= 0.9999f) {\n gl_FragDepth = 1f;\n return;\n }\n let _e91 = stored;\n ndc = ((_e91 * 2f) - 1f);\n let _e95 = unnamed.uFar;\n let _e98 = unnamed.uNear;\n let _e101 = unnamed.uFar;\n let _e103 = unnamed.uNear;\n let _e105 = ndc;\n let _e107 = unnamed.uFar;\n let _e109 = unnamed.uNear;\n faceLocalZ = (((2f * _e95) * _e98) / ((_e101 + _e103) - (_e105 * (_e107 - _e109))));\n let _e114 = faceLocalZ;\n let _e115 = forward;\n let _e118 = unnamed.uFar;\n gl_FragDepth = clamp(((_e114 / _e115) / _e118), 0f, 1f);\n return;\n}\n\n@fragment \nfn main(@builtin(position) gl_FragCoord: vec4<f32>) -> @builtin(frag_depth) f32 {\n gl_FragCoord_1 = gl_FragCoord;\n main_1();\n let _e3 = gl_FragDepth;\n return _e3;\n}\n";
|
|
8
|
+
export const OCTAHEDRAL_RESOLVE_VERT_WGSL = "struct gl_PerVertex {\n @builtin(position) gl_Position: vec4<f32>,\n gl_PointSize: f32,\n}\n\nvar<private> gl_VertexIndex_1: i32;\nvar<private> unnamed: gl_PerVertex = gl_PerVertex(vec4<f32>(0f, 0f, 0f, 1f), 1f);\n\nfn main_1() {\n var p: vec2<f32>;\n\n let _e9 = gl_VertexIndex_1;\n let _e14 = gl_VertexIndex_1;\n p = vec2<f32>(f32(((_e9 << bitcast<u32>(1i)) & 2i)), f32((_e14 & 2i)));\n let _e18 = p;\n let _e21 = ((_e18 * 2f) - vec2(1f));\n unnamed.gl_Position = vec4<f32>(_e21.x, _e21.y, 0f, 1f);\n return;\n}\n\n@vertex \nfn main(@builtin(vertex_index) gl_VertexIndex: u32) -> @builtin(position) vec4<f32> {\n gl_VertexIndex_1 = i32(gl_VertexIndex);\n main_1();\n let _e6 = unnamed.gl_Position.y;\n unnamed.gl_Position.y = -(_e6);\n let _e8 = unnamed.gl_Position;\n return _e8;\n}\n";
|
|
9
|
+
/**
|
|
10
|
+
* What the transform assigned, so the renderer binds the same numbers.
|
|
11
|
+
*
|
|
12
|
+
* A permuted shader has one entry per variant, keyed as `FLAT_FRAG_WGSL` is.
|
|
13
|
+
*/
|
|
14
|
+
export const OCTAHEDRALRESOLVE_BINDINGS = {
|
|
15
|
+
"OCTAHEDRAL_RESOLVE_FRAG": {
|
|
16
|
+
"uniforms": 1,
|
|
17
|
+
"uniformSize": 64,
|
|
18
|
+
"fields": {
|
|
19
|
+
"uFaceRotation": {
|
|
20
|
+
"offset": 0,
|
|
21
|
+
"size": 48,
|
|
22
|
+
"type": "mat3"
|
|
23
|
+
},
|
|
24
|
+
"uFaceIndex": {
|
|
25
|
+
"offset": 48,
|
|
26
|
+
"size": 4,
|
|
27
|
+
"type": "int"
|
|
28
|
+
},
|
|
29
|
+
"uFar": {
|
|
30
|
+
"offset": 52,
|
|
31
|
+
"size": 4,
|
|
32
|
+
"type": "float"
|
|
33
|
+
},
|
|
34
|
+
"uNear": {
|
|
35
|
+
"offset": 56,
|
|
36
|
+
"size": 4,
|
|
37
|
+
"type": "float"
|
|
38
|
+
},
|
|
39
|
+
"uEdge": {
|
|
40
|
+
"offset": 60,
|
|
41
|
+
"size": 4,
|
|
42
|
+
"type": "float"
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"textures": {
|
|
46
|
+
"uFace": {
|
|
47
|
+
"texture": 32,
|
|
48
|
+
"sampler": 33,
|
|
49
|
+
"type": "sampler2D"
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
"OCTAHEDRAL_RESOLVE_VERT": {
|
|
54
|
+
"uniforms": null,
|
|
55
|
+
"textures": {}
|
|
56
|
+
}
|
|
57
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare const OIT_RESOLVE_FRAG_WGSL = "@group(0) @binding(32) \nvar uOitAccum_t: texture_2d<f32>;\n@group(0) @binding(33) \nvar uOitAccum_s: sampler;\nvar<private> vUv_1: vec2<f32>;\n@group(0) @binding(34) \nvar uOitReveal_t: texture_2d<f32>;\n@group(0) @binding(35) \nvar uOitReveal_s: sampler;\nvar<private> fragColor: vec4<f32>;\n\nfn main_1() {\n var accum: vec4<f32>;\n var reveal: f32;\n var average: vec3<f32>;\n\n let _e13 = vUv_1;\n let _e14 = textureSampleLevel(uOitAccum_t, uOitAccum_s, _e13, 0f);\n accum = _e14;\n let _e15 = vUv_1;\n let _e16 = textureSampleLevel(uOitReveal_t, uOitReveal_s, _e15, 0f);\n reveal = _e16.x;\n let _e18 = accum;\n let _e21 = accum[3u];\n average = (_e18.xyz / vec3(max(_e21, 0.00001f)));\n let _e25 = average;\n let _e26 = reveal;\n fragColor = vec4<f32>(_e25.x, _e25.y, _e25.z, _e26);\n return;\n}\n\n@fragment \nfn main(@location(0) vUv: vec2<f32>) -> @location(0) vec4<f32> {\n vUv_1 = vUv;\n main_1();\n let _e3 = fragColor;\n return _e3;\n}\n";
|
|
2
|
+
/**
|
|
3
|
+
* What the transform assigned, so the renderer binds the same numbers.
|
|
4
|
+
*
|
|
5
|
+
* A permuted shader has one entry per variant, keyed as `FLAT_FRAG_WGSL` is.
|
|
6
|
+
*/
|
|
7
|
+
export declare const OITRESOLVE_BINDINGS: {
|
|
8
|
+
readonly OIT_RESOLVE_FRAG: {
|
|
9
|
+
readonly uniforms: null;
|
|
10
|
+
readonly textures: {
|
|
11
|
+
readonly uOitAccum: {
|
|
12
|
+
readonly texture: 32;
|
|
13
|
+
readonly sampler: 33;
|
|
14
|
+
readonly type: "sampler2D";
|
|
15
|
+
};
|
|
16
|
+
readonly uOitReveal: {
|
|
17
|
+
readonly texture: 34;
|
|
18
|
+
readonly sampler: 35;
|
|
19
|
+
readonly type: "sampler2D";
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Generated from ../oitResolve.ts by `npm run wgsl`. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* The GLSL beside this file is the source of truth. A hand edit here is discarded by
|
|
5
|
+
* the next generation, and `npm run wgsl:check` fails the build when this is stale.
|
|
6
|
+
*/
|
|
7
|
+
export const OIT_RESOLVE_FRAG_WGSL = "@group(0) @binding(32) \nvar uOitAccum_t: texture_2d<f32>;\n@group(0) @binding(33) \nvar uOitAccum_s: sampler;\nvar<private> vUv_1: vec2<f32>;\n@group(0) @binding(34) \nvar uOitReveal_t: texture_2d<f32>;\n@group(0) @binding(35) \nvar uOitReveal_s: sampler;\nvar<private> fragColor: vec4<f32>;\n\nfn main_1() {\n var accum: vec4<f32>;\n var reveal: f32;\n var average: vec3<f32>;\n\n let _e13 = vUv_1;\n let _e14 = textureSampleLevel(uOitAccum_t, uOitAccum_s, _e13, 0f);\n accum = _e14;\n let _e15 = vUv_1;\n let _e16 = textureSampleLevel(uOitReveal_t, uOitReveal_s, _e15, 0f);\n reveal = _e16.x;\n let _e18 = accum;\n let _e21 = accum[3u];\n average = (_e18.xyz / vec3(max(_e21, 0.00001f)));\n let _e25 = average;\n let _e26 = reveal;\n fragColor = vec4<f32>(_e25.x, _e25.y, _e25.z, _e26);\n return;\n}\n\n@fragment \nfn main(@location(0) vUv: vec2<f32>) -> @location(0) vec4<f32> {\n vUv_1 = vUv;\n main_1();\n let _e3 = fragColor;\n return _e3;\n}\n";
|
|
8
|
+
/**
|
|
9
|
+
* What the transform assigned, so the renderer binds the same numbers.
|
|
10
|
+
*
|
|
11
|
+
* A permuted shader has one entry per variant, keyed as `FLAT_FRAG_WGSL` is.
|
|
12
|
+
*/
|
|
13
|
+
export const OITRESOLVE_BINDINGS = {
|
|
14
|
+
"OIT_RESOLVE_FRAG": {
|
|
15
|
+
"uniforms": null,
|
|
16
|
+
"textures": {
|
|
17
|
+
"uOitAccum": {
|
|
18
|
+
"texture": 32,
|
|
19
|
+
"sampler": 33,
|
|
20
|
+
"type": "sampler2D"
|
|
21
|
+
},
|
|
22
|
+
"uOitReveal": {
|
|
23
|
+
"texture": 34,
|
|
24
|
+
"sampler": 35,
|
|
25
|
+
"type": "sampler2D"
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
export declare const PANEL_FRAG_WGSL = "struct Uniforms {\n uColor: vec3<f32>,\n uAlpha: f32,\n}\n\nvar<private> outColor: vec4<f32>;\n@group(0) @binding(1) \nvar<uniform> unnamed: Uniforms;\n\nfn main_1() {\n let _e5 = unnamed.uColor;\n let _e7 = unnamed.uAlpha;\n outColor = vec4<f32>(_e5.x, _e5.y, _e5.z, _e7);\n return;\n}\n\n@fragment \nfn main() -> @location(0) vec4<f32> {\n main_1();\n let _e1 = outColor;\n return _e1;\n}\n";
|
|
2
|
+
export declare const PANEL_VERT_WGSL = "struct Uniforms {\n uRect: vec4<f32>,\n uViewport: vec2<f32>,\n uClipCorrection: mat4x4<f32>,\n}\n\nstruct gl_PerVertex {\n @builtin(position) gl_Position: vec4<f32>,\n gl_PointSize: f32,\n}\n\n@group(0) @binding(0) \nvar<uniform> unnamed: Uniforms;\nvar<private> aCorner_1: vec2<f32>;\nvar<private> unnamed_1: gl_PerVertex = gl_PerVertex(vec4<f32>(0f, 0f, 0f, 1f), 1f);\n\nfn main_1() {\n var px: vec2<f32>;\n var ndc: vec2<f32>;\n\n let _e14 = unnamed.uRect;\n let _e16 = aCorner_1;\n let _e18 = unnamed.uRect;\n px = (_e14.xy + (_e16 * _e18.zw));\n let _e23 = px[0u];\n let _e26 = unnamed.uViewport[0u];\n let _e31 = px[1u];\n let _e34 = unnamed.uViewport[1u];\n ndc = vec2<f32>((((_e23 / _e26) * 2f) - 1f), (1f - ((_e31 / _e34) * 2f)));\n let _e40 = unnamed.uClipCorrection;\n let _e41 = ndc;\n unnamed_1.gl_Position = (_e40 * vec4<f32>(_e41.x, _e41.y, 0f, 1f));\n return;\n}\n\n@vertex \nfn main(@location(0) aCorner: vec2<f32>) -> @builtin(position) vec4<f32> {\n aCorner_1 = aCorner;\n main_1();\n let _e5 = unnamed_1.gl_Position.y;\n unnamed_1.gl_Position.y = -(_e5);\n let _e7 = unnamed_1.gl_Position;\n return _e7;\n}\n";
|
|
3
|
+
/**
|
|
4
|
+
* What the transform assigned, so the renderer binds the same numbers.
|
|
5
|
+
*
|
|
6
|
+
* A permuted shader has one entry per variant, keyed as `FLAT_FRAG_WGSL` is.
|
|
7
|
+
*/
|
|
8
|
+
export declare const PANEL_BINDINGS: {
|
|
9
|
+
readonly PANEL_FRAG: {
|
|
10
|
+
readonly uniforms: 1;
|
|
11
|
+
readonly uniformSize: 16;
|
|
12
|
+
readonly fields: {
|
|
13
|
+
readonly uColor: {
|
|
14
|
+
readonly offset: 0;
|
|
15
|
+
readonly size: 12;
|
|
16
|
+
readonly type: "vec3";
|
|
17
|
+
};
|
|
18
|
+
readonly uAlpha: {
|
|
19
|
+
readonly offset: 12;
|
|
20
|
+
readonly size: 4;
|
|
21
|
+
readonly type: "float";
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
readonly textures: {};
|
|
25
|
+
};
|
|
26
|
+
readonly PANEL_VERT: {
|
|
27
|
+
readonly uniforms: 0;
|
|
28
|
+
readonly uniformSize: 96;
|
|
29
|
+
readonly fields: {
|
|
30
|
+
readonly uRect: {
|
|
31
|
+
readonly offset: 0;
|
|
32
|
+
readonly size: 16;
|
|
33
|
+
readonly type: "vec4";
|
|
34
|
+
};
|
|
35
|
+
readonly uViewport: {
|
|
36
|
+
readonly offset: 16;
|
|
37
|
+
readonly size: 8;
|
|
38
|
+
readonly type: "vec2";
|
|
39
|
+
};
|
|
40
|
+
readonly uClipCorrection: {
|
|
41
|
+
readonly offset: 32;
|
|
42
|
+
readonly size: 64;
|
|
43
|
+
readonly type: "mat4";
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
readonly textures: {};
|
|
47
|
+
};
|
|
48
|
+
};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Generated from ../panel.ts by `npm run wgsl`. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* The GLSL beside this file is the source of truth. A hand edit here is discarded by
|
|
5
|
+
* the next generation, and `npm run wgsl:check` fails the build when this is stale.
|
|
6
|
+
*/
|
|
7
|
+
export const PANEL_FRAG_WGSL = "struct Uniforms {\n uColor: vec3<f32>,\n uAlpha: f32,\n}\n\nvar<private> outColor: vec4<f32>;\n@group(0) @binding(1) \nvar<uniform> unnamed: Uniforms;\n\nfn main_1() {\n let _e5 = unnamed.uColor;\n let _e7 = unnamed.uAlpha;\n outColor = vec4<f32>(_e5.x, _e5.y, _e5.z, _e7);\n return;\n}\n\n@fragment \nfn main() -> @location(0) vec4<f32> {\n main_1();\n let _e1 = outColor;\n return _e1;\n}\n";
|
|
8
|
+
export const PANEL_VERT_WGSL = "struct Uniforms {\n uRect: vec4<f32>,\n uViewport: vec2<f32>,\n uClipCorrection: mat4x4<f32>,\n}\n\nstruct gl_PerVertex {\n @builtin(position) gl_Position: vec4<f32>,\n gl_PointSize: f32,\n}\n\n@group(0) @binding(0) \nvar<uniform> unnamed: Uniforms;\nvar<private> aCorner_1: vec2<f32>;\nvar<private> unnamed_1: gl_PerVertex = gl_PerVertex(vec4<f32>(0f, 0f, 0f, 1f), 1f);\n\nfn main_1() {\n var px: vec2<f32>;\n var ndc: vec2<f32>;\n\n let _e14 = unnamed.uRect;\n let _e16 = aCorner_1;\n let _e18 = unnamed.uRect;\n px = (_e14.xy + (_e16 * _e18.zw));\n let _e23 = px[0u];\n let _e26 = unnamed.uViewport[0u];\n let _e31 = px[1u];\n let _e34 = unnamed.uViewport[1u];\n ndc = vec2<f32>((((_e23 / _e26) * 2f) - 1f), (1f - ((_e31 / _e34) * 2f)));\n let _e40 = unnamed.uClipCorrection;\n let _e41 = ndc;\n unnamed_1.gl_Position = (_e40 * vec4<f32>(_e41.x, _e41.y, 0f, 1f));\n return;\n}\n\n@vertex \nfn main(@location(0) aCorner: vec2<f32>) -> @builtin(position) vec4<f32> {\n aCorner_1 = aCorner;\n main_1();\n let _e5 = unnamed_1.gl_Position.y;\n unnamed_1.gl_Position.y = -(_e5);\n let _e7 = unnamed_1.gl_Position;\n return _e7;\n}\n";
|
|
9
|
+
/**
|
|
10
|
+
* What the transform assigned, so the renderer binds the same numbers.
|
|
11
|
+
*
|
|
12
|
+
* A permuted shader has one entry per variant, keyed as `FLAT_FRAG_WGSL` is.
|
|
13
|
+
*/
|
|
14
|
+
export const PANEL_BINDINGS = {
|
|
15
|
+
"PANEL_FRAG": {
|
|
16
|
+
"uniforms": 1,
|
|
17
|
+
"uniformSize": 16,
|
|
18
|
+
"fields": {
|
|
19
|
+
"uColor": {
|
|
20
|
+
"offset": 0,
|
|
21
|
+
"size": 12,
|
|
22
|
+
"type": "vec3"
|
|
23
|
+
},
|
|
24
|
+
"uAlpha": {
|
|
25
|
+
"offset": 12,
|
|
26
|
+
"size": 4,
|
|
27
|
+
"type": "float"
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"textures": {}
|
|
31
|
+
},
|
|
32
|
+
"PANEL_VERT": {
|
|
33
|
+
"uniforms": 0,
|
|
34
|
+
"uniformSize": 96,
|
|
35
|
+
"fields": {
|
|
36
|
+
"uRect": {
|
|
37
|
+
"offset": 0,
|
|
38
|
+
"size": 16,
|
|
39
|
+
"type": "vec4"
|
|
40
|
+
},
|
|
41
|
+
"uViewport": {
|
|
42
|
+
"offset": 16,
|
|
43
|
+
"size": 8,
|
|
44
|
+
"type": "vec2"
|
|
45
|
+
},
|
|
46
|
+
"uClipCorrection": {
|
|
47
|
+
"offset": 32,
|
|
48
|
+
"size": 64,
|
|
49
|
+
"type": "mat4"
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
"textures": {}
|
|
53
|
+
}
|
|
54
|
+
};
|