@aura3d/engine 4.1.1 → 4.1.3

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.
Files changed (161) hide show
  1. package/README.md +52 -730
  2. package/dist/audio/synth/SynthCueBank.d.ts.map +1 -1
  3. package/dist/audio/synth/SynthCueBank.js +11 -2
  4. package/dist/audio/synth/SynthCueBank.js.map +1 -1
  5. package/dist/audio/synth/types.d.ts +4 -0
  6. package/dist/audio/synth/types.d.ts.map +1 -1
  7. package/dist/aura3d-cli/commands/evidence/index.d.ts +3 -0
  8. package/dist/aura3d-cli/commands/evidence/index.d.ts.map +1 -0
  9. package/dist/aura3d-cli/commands/evidence/index.js +12 -0
  10. package/dist/aura3d-cli/commands/evidence/index.js.map +1 -0
  11. package/dist/aura3d-cli/commands/evidence/judge.d.ts +18 -0
  12. package/dist/aura3d-cli/commands/evidence/judge.d.ts.map +1 -0
  13. package/dist/aura3d-cli/commands/evidence/judge.js +194 -0
  14. package/dist/aura3d-cli/commands/evidence/judge.js.map +1 -0
  15. package/dist/aura3d-cli/commands/evidence/judgeLib.d.ts +84 -0
  16. package/dist/aura3d-cli/commands/evidence/judgeLib.d.ts.map +1 -0
  17. package/dist/aura3d-cli/commands/evidence/judgeLib.js +178 -0
  18. package/dist/aura3d-cli/commands/evidence/judgeLib.js.map +1 -0
  19. package/dist/aura3d-cli/commands/registry.d.ts +1 -0
  20. package/dist/aura3d-cli/commands/registry.d.ts.map +1 -1
  21. package/dist/aura3d-cli/commands/registry.js +1 -0
  22. package/dist/aura3d-cli/commands/registry.js.map +1 -1
  23. package/dist/aura3d-cli/look/capture.d.ts +15 -7
  24. package/dist/aura3d-cli/look/capture.d.ts.map +1 -1
  25. package/dist/aura3d-cli/look/capture.js +85 -13
  26. package/dist/aura3d-cli/look/capture.js.map +1 -1
  27. package/dist/create-aura3d/index.js +1 -1
  28. package/dist/debug/index.d.ts +2 -2
  29. package/dist/debug/index.d.ts.map +1 -1
  30. package/dist/debug/index.js +1 -1
  31. package/dist/debug/index.js.map +1 -1
  32. package/dist/debug/safety/blackFrame.d.ts +5 -2
  33. package/dist/debug/safety/blackFrame.d.ts.map +1 -1
  34. package/dist/debug/safety/blackFrame.js +2 -2
  35. package/dist/debug/safety/blackFrame.js.map +1 -1
  36. package/dist/debug/safety/frameTap.d.ts +23 -0
  37. package/dist/debug/safety/frameTap.d.ts.map +1 -0
  38. package/dist/debug/safety/frameTap.js +125 -0
  39. package/dist/debug/safety/frameTap.js.map +1 -0
  40. package/dist/debug/safety/guard.d.ts +17 -5
  41. package/dist/debug/safety/guard.d.ts.map +1 -1
  42. package/dist/debug/safety/guard.js +20 -5
  43. package/dist/debug/safety/guard.js.map +1 -1
  44. package/dist/debug/safety/index.d.ts +1 -0
  45. package/dist/debug/safety/index.d.ts.map +1 -1
  46. package/dist/debug/safety/index.js +1 -0
  47. package/dist/debug/safety/index.js.map +1 -1
  48. package/dist/engine/agent-api/compiler/geometry.d.ts +13 -0
  49. package/dist/engine/agent-api/compiler/geometry.d.ts.map +1 -1
  50. package/dist/engine/agent-api/compiler/geometry.js +30 -3
  51. package/dist/engine/agent-api/compiler/geometry.js.map +1 -1
  52. package/dist/engine/agent-api/compiler/primitives.d.ts +1 -2
  53. package/dist/engine/agent-api/compiler/primitives.d.ts.map +1 -1
  54. package/dist/engine/agent-api/compiler/primitives.js +21 -4
  55. package/dist/engine/agent-api/compiler/primitives.js.map +1 -1
  56. package/dist/engine/agent-api/index.d.ts +4 -0
  57. package/dist/engine/agent-api/index.d.ts.map +1 -1
  58. package/dist/engine/agent-api/index.js +1 -0
  59. package/dist/engine/agent-api/index.js.map +1 -1
  60. package/dist/engine/agent-api/nodes/cameras.d.ts +7 -0
  61. package/dist/engine/agent-api/nodes/cameras.d.ts.map +1 -1
  62. package/dist/engine/agent-api/nodes/cameras.js +7 -0
  63. package/dist/engine/agent-api/nodes/cameras.js.map +1 -1
  64. package/dist/engine/agent-api/nodes/chaseCamera.d.ts +122 -0
  65. package/dist/engine/agent-api/nodes/chaseCamera.d.ts.map +1 -0
  66. package/dist/engine/agent-api/nodes/chaseCamera.js +130 -0
  67. package/dist/engine/agent-api/nodes/chaseCamera.js.map +1 -0
  68. package/dist/engine/agent-api/nodes/effects.composite.d.ts +1 -0
  69. package/dist/engine/agent-api/nodes/effects.composite.d.ts.map +1 -1
  70. package/dist/engine/agent-api/nodes/effects.composite.js +2 -0
  71. package/dist/engine/agent-api/nodes/effects.composite.js.map +1 -1
  72. package/dist/engine/agent-api/nodes/effects.toon.d.ts +26 -0
  73. package/dist/engine/agent-api/nodes/effects.toon.d.ts.map +1 -0
  74. package/dist/engine/agent-api/nodes/effects.toon.js +70 -0
  75. package/dist/engine/agent-api/nodes/effects.toon.js.map +1 -0
  76. package/dist/engine/agent-api/nodes/prefabs/index.d.ts +3 -0
  77. package/dist/engine/agent-api/nodes/prefabs/index.d.ts.map +1 -1
  78. package/dist/engine/agent-api/nodes/prefabs/index.js +3 -0
  79. package/dist/engine/agent-api/nodes/prefabs/index.js.map +1 -1
  80. package/dist/engine/agent-api/nodes/prefabs/objectiveMarker.d.ts +32 -0
  81. package/dist/engine/agent-api/nodes/prefabs/objectiveMarker.d.ts.map +1 -0
  82. package/dist/engine/agent-api/nodes/prefabs/objectiveMarker.js +77 -0
  83. package/dist/engine/agent-api/nodes/prefabs/objectiveMarker.js.map +1 -0
  84. package/dist/engine/production-runtime/actor/ModelTextureShare.d.ts +1 -1
  85. package/dist/engine/production-runtime/actor/ModelTextureShare.d.ts.map +1 -1
  86. package/dist/engine/production-runtime/actor/ModelTextureShare.js +1 -1
  87. package/dist/engine/production-runtime/actor/ModelTextureShare.js.map +1 -1
  88. package/dist/engine/public/index.d.ts +52 -67
  89. package/dist/engine/public/index.d.ts.map +1 -1
  90. package/dist/engine/public/index.js +59 -56
  91. package/dist/engine/public/index.js.map +1 -1
  92. package/dist/engine/qa/countedRng.d.ts +2 -0
  93. package/dist/engine/qa/countedRng.d.ts.map +1 -1
  94. package/dist/engine/qa/countedRng.js +3 -0
  95. package/dist/engine/qa/countedRng.js.map +1 -1
  96. package/dist/engine/qa/fixedStepLoop.d.ts +2 -0
  97. package/dist/engine/qa/fixedStepLoop.d.ts.map +1 -1
  98. package/dist/engine/qa/fixedStepLoop.js +3 -0
  99. package/dist/engine/qa/fixedStepLoop.js.map +1 -1
  100. package/dist/engine/qa/hooks.js +1 -1
  101. package/dist/engine/qa/hooks.js.map +1 -1
  102. package/dist/game/evidence/beacon.d.ts +16 -6
  103. package/dist/game/evidence/beacon.d.ts.map +1 -1
  104. package/dist/game/evidence/beacon.js +32 -14
  105. package/dist/game/evidence/beacon.js.map +1 -1
  106. package/dist/game/hud/canvasMinimap.d.ts +60 -0
  107. package/dist/game/hud/canvasMinimap.d.ts.map +1 -0
  108. package/dist/game/hud/canvasMinimap.js +62 -0
  109. package/dist/game/hud/canvasMinimap.js.map +1 -0
  110. package/dist/game/hud/compass.d.ts +16 -0
  111. package/dist/game/hud/compass.d.ts.map +1 -0
  112. package/dist/game/hud/compass.js +15 -0
  113. package/dist/game/hud/compass.js.map +1 -0
  114. package/dist/game/index.d.ts +4 -0
  115. package/dist/game/index.d.ts.map +1 -1
  116. package/dist/game/index.js +2 -0
  117. package/dist/game/index.js.map +1 -1
  118. package/dist/math/Random.d.ts +3 -0
  119. package/dist/math/Random.d.ts.map +1 -1
  120. package/dist/math/Random.js +7 -0
  121. package/dist/math/Random.js.map +1 -1
  122. package/dist/rendering/WebGL2Device.d.ts.map +1 -1
  123. package/dist/rendering/WebGL2Device.js +3 -4
  124. package/dist/rendering/WebGL2Device.js.map +1 -1
  125. package/dist/rendering/geometry/Primitives.d.ts +4 -1
  126. package/dist/rendering/geometry/Primitives.d.ts.map +1 -1
  127. package/dist/rendering/geometry/Primitives.js +5 -1
  128. package/dist/rendering/geometry/Primitives.js.map +1 -1
  129. package/dist/rendering/renderer/CullingBatching.d.ts.map +1 -1
  130. package/dist/rendering/renderer/CullingBatching.js +3 -7
  131. package/dist/rendering/renderer/CullingBatching.js.map +1 -1
  132. package/dist/rendering/renderer/InstanceBounds.d.ts +18 -0
  133. package/dist/rendering/renderer/InstanceBounds.d.ts.map +1 -0
  134. package/dist/rendering/renderer/InstanceBounds.js +68 -0
  135. package/dist/rendering/renderer/InstanceBounds.js.map +1 -0
  136. package/dist/rendering/renderer/RenderShared.d.ts.map +1 -1
  137. package/dist/rendering/renderer/RenderShared.js +3 -7
  138. package/dist/rendering/renderer/RenderShared.js.map +1 -1
  139. package/dist/rendering/shadows/DirectionalCascadeFitter.d.ts.map +1 -1
  140. package/dist/rendering/shadows/DirectionalCascadeFitter.js +19 -10
  141. package/dist/rendering/shadows/DirectionalCascadeFitter.js.map +1 -1
  142. package/dist/rendering/webgl2/LdrPostprocessShader.d.ts +24 -0
  143. package/dist/rendering/webgl2/LdrPostprocessShader.d.ts.map +1 -0
  144. package/dist/rendering/webgl2/LdrPostprocessShader.js +233 -0
  145. package/dist/rendering/webgl2/LdrPostprocessShader.js.map +1 -0
  146. package/dist/rendering/webgl2/LegacyPost.d.ts +5 -3
  147. package/dist/rendering/webgl2/LegacyPost.d.ts.map +1 -1
  148. package/dist/rendering/webgl2/LegacyPost.js +23 -191
  149. package/dist/rendering/webgl2/LegacyPost.js.map +1 -1
  150. package/package.json +25 -25
  151. package/templates/cinematic-scene/package.json +4 -3
  152. package/templates/mini-game/index.html +3 -1
  153. package/templates/mini-game/package.json +4 -3
  154. package/templates/mini-game/public/fonts/graphik/Graphik-Medium-Web.woff2 +0 -0
  155. package/templates/mini-game/public/fonts/graphik/Graphik-Regular-Web.woff2 +0 -0
  156. package/templates/mini-game/src/main.ts +1 -1
  157. package/templates/product-viewer/package.json +4 -3
  158. package/templates/production-asset-inspector/package.json +1 -1
  159. package/templates/production-material-studio/package.json +1 -1
  160. package/templates/production-product-configurator/package.json +1 -1
  161. package/templates/production-product-viewer/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"LegacyPost.d.ts","sourceRoot":"","sources":["../../../../../packages/rendering/src/webgl2/LegacyPost.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LegacyPost.d.ts","sourceRoot":"","sources":["../../../../../packages/rendering/src/webgl2/LegacyPost.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ import { BLOOM_BRIGHT_LUT_HEIGHT, BLOOM_BRIGHT_LUT_WIDTH, BLOOM_COMPOSITE_LUT_SI
10
10
  // `u_hasFxaa` taps stay the default path.
11
11
  import { FXAA_185_FRAGMENT_GLSL } from "../post/shaders/fxaa.glsl.js";
12
12
  import { recordPostSkipped } from "../renderer/postSkipped.js";
13
+ import { ldrFragmentSource, ldrVariantKey } from "./LdrPostprocessShader.js";
13
14
  export class WebGL2LegacyPostPipeline {
14
15
  host;
15
16
  constructor(host) {
@@ -29,7 +30,8 @@ export class WebGL2LegacyPostPipeline {
29
30
  bloomPyramidResources = null;
30
31
  depthOfFieldProgram = null;
31
32
  lastBloomDiagnostics = null;
32
- ldrPostprocessProgram = null;
33
+ /** One compiled program per feature variant (see `ldrFragmentSource`). */
34
+ ldrPostprocessPrograms = new Map();
33
35
  motionBlurProgram = null;
34
36
  nativeFxaaFinalizeProgram = null;
35
37
  motionBlurVelocitySize = null;
@@ -159,7 +161,6 @@ export class WebGL2LegacyPostPipeline {
159
161
  const ssrOptions = ssrPass ? normalizeNativeSsrOptions(ssrPass.options) : undefined;
160
162
  const taaOptions = taaPass ? normalizeNativeTaaOptions(taaPass.options, source.width, source.height) : undefined;
161
163
  const outlineOptions = outlinePass ? normalizeNativeOutlineOptions(outlinePass.options) : undefined;
162
- const program = this.ensureLdrPostprocessProgram();
163
164
  const vertexArray = this.ensurePresentationVertexArray();
164
165
  const sourceIsHdr = source.colorTexture.format !== "rgba8";
165
166
  // PRD-03 Phase 1: `fxaa.variant === "r185"` splits the finalize — the
@@ -243,7 +244,7 @@ export class WebGL2LegacyPostPipeline {
243
244
  if ((depthOfFieldOptions || motionBlurOptions || ssaoOptions || ssrOptions || taaOptions || outlineOptions) && bloomResources) {
244
245
  if (tonePass || colorPass) {
245
246
  const baseTargetIndex = 0;
246
- this.drawNativeLdrStage(ldrSourceHandle, bloomResources.framebuffers[baseTargetIndex], source.width, source.height, program, vertexArray, tonePass, colorPass, undefined, options.toneMappingDefaults);
247
+ this.drawNativeLdrStage(ldrSourceHandle, bloomResources.framebuffers[baseTargetIndex], source.width, source.height, vertexArray, tonePass, colorPass, undefined, options.toneMappingDefaults);
247
248
  ldrSourceHandle = bloomResources.textures[baseTargetIndex];
248
249
  temporarySourceIndex = baseTargetIndex;
249
250
  }
@@ -280,11 +281,11 @@ export class WebGL2LegacyPostPipeline {
280
281
  }
281
282
  if (fxaaSplit && bloomResources) {
282
283
  const fxaaScratchIndex = temporarySourceIndex === 0 ? 1 : 0;
283
- this.drawNativeLdrStage(ldrSourceHandle, bloomResources.framebuffers[fxaaScratchIndex], source.width, source.height, program, vertexArray, depthOfFieldOptions || motionBlurOptions || ssaoOptions || ssrOptions || taaOptions || outlineOptions ? undefined : tonePass, depthOfFieldOptions || motionBlurOptions || ssaoOptions || ssrOptions || taaOptions || outlineOptions ? undefined : colorPass, undefined, options.toneMappingDefaults);
284
+ this.drawNativeLdrStage(ldrSourceHandle, bloomResources.framebuffers[fxaaScratchIndex], source.width, source.height, vertexArray, depthOfFieldOptions || motionBlurOptions || ssaoOptions || ssrOptions || taaOptions || outlineOptions ? undefined : tonePass, depthOfFieldOptions || motionBlurOptions || ssaoOptions || ssrOptions || taaOptions || outlineOptions ? undefined : colorPass, undefined, options.toneMappingDefaults);
284
285
  this.executeNativeFxaaFinalize(bloomResources.textures[fxaaScratchIndex], webglOutputTarget?.framebuffer ?? null, outputWidth, outputHeight, source.width, source.height, vertexArray);
285
286
  }
286
287
  else {
287
- this.drawNativeLdrStage(ldrSourceHandle, webglOutputTarget?.framebuffer ?? null, outputWidth, outputHeight, program, vertexArray, depthOfFieldOptions || motionBlurOptions || ssaoOptions || ssrOptions || taaOptions || outlineOptions ? undefined : tonePass, depthOfFieldOptions || motionBlurOptions || ssaoOptions || ssrOptions || taaOptions || outlineOptions ? undefined : colorPass, fxaaPass, options.toneMappingDefaults);
288
+ this.drawNativeLdrStage(ldrSourceHandle, webglOutputTarget?.framebuffer ?? null, outputWidth, outputHeight, vertexArray, depthOfFieldOptions || motionBlurOptions || ssaoOptions || ssrOptions || taaOptions || outlineOptions ? undefined : tonePass, depthOfFieldOptions || motionBlurOptions || ssaoOptions || ssrOptions || taaOptions || outlineOptions ? undefined : colorPass, fxaaPass, options.toneMappingDefaults);
288
289
  }
289
290
  this.host.gl.flush();
290
291
  }
@@ -483,10 +484,19 @@ export class WebGL2LegacyPostPipeline {
483
484
  this.host.stateCache.invalidate();
484
485
  }
485
486
  }
486
- drawNativeLdrStage(sourceTexture, framebuffer, width, height, program, vertexArray, tonePass, colorPass, fxaaPass, toneMappingDefaults) {
487
+ drawNativeLdrStage(sourceTexture, framebuffer, width, height, vertexArray, tonePass, colorPass, fxaaPass, toneMappingDefaults) {
487
488
  const toneOptions = { ...(toneMappingDefaults ?? {}), ...(tonePass?.options ?? {}) };
488
489
  const colorOptions = colorPass?.options ?? {};
489
490
  const fxaaOptions = fxaaPass?.options ?? {};
491
+ const program = this.ensureLdrPostprocessProgram({
492
+ toneMapping: Boolean(tonePass),
493
+ operator: toneMappingOperatorId(stringOption(toneOptions, "operator", "reinhard")),
494
+ inputSrgb: colorSpaceId(stringOption(toneOptions, "inputColorSpace", "linear")) === 1,
495
+ outputSrgb: colorSpaceId(stringOption(toneOptions, "outputColorSpace", "linear")) === 1,
496
+ grade: Boolean(colorPass),
497
+ sharpening: Boolean(colorPass) && numberOption(colorOptions, "sharpening", 0) > 0,
498
+ fxaa: Boolean(fxaaPass)
499
+ });
490
500
  this.host.lifecycle.bindOutput(framebuffer, width, height);
491
501
  this.host.gl.useProgram(program);
492
502
  this.host.gl.bindVertexArray(vertexArray);
@@ -1808,10 +1818,11 @@ void main() {
1808
1818
  }
1809
1819
  return program;
1810
1820
  }
1811
- ensureLdrPostprocessProgram() {
1812
- if (this.ldrPostprocessProgram) {
1813
- return this.ldrPostprocessProgram;
1814
- }
1821
+ ensureLdrPostprocessProgram(variant) {
1822
+ const key = ldrVariantKey(variant);
1823
+ const cached = this.ldrPostprocessPrograms.get(key);
1824
+ if (cached)
1825
+ return cached;
1815
1826
  const vertex = this.host.device.compileShader(this.host.gl.VERTEX_SHADER, `#version 300 es
1816
1827
  precision highp float;
1817
1828
  out vec2 v_uv;
@@ -1821,186 +1832,7 @@ void main() {
1821
1832
  gl_Position = vec4(position * 2.0 - 1.0, 0.0, 1.0);
1822
1833
  }
1823
1834
  `, "webgl2-ldr-postprocess");
1824
- const fragment = this.host.device.compileShader(this.host.gl.FRAGMENT_SHADER, `#version 300 es
1825
- precision highp float;
1826
- uniform sampler2D u_source;
1827
- uniform vec2 u_texelSize;
1828
- uniform int u_hasToneMapping;
1829
- uniform int u_toneOperator;
1830
- uniform int u_inputColorSpace;
1831
- uniform int u_outputColorSpace;
1832
- uniform float u_exposure;
1833
- uniform float u_whitePoint;
1834
- uniform float u_gamma;
1835
- uniform int u_hasColorGrade;
1836
- uniform float u_contrast;
1837
- uniform float u_temperature;
1838
- uniform float u_tint;
1839
- uniform float u_saturation;
1840
- uniform float u_vibrance;
1841
- uniform float u_vignette;
1842
- uniform float u_sharpening;
1843
- uniform int u_hasFxaa;
1844
- uniform float u_edgeThreshold;
1845
- uniform float u_subpixelBlend;
1846
- in vec2 v_uv;
1847
- out vec4 outColor;
1848
-
1849
- float srgbToLinear(float value) {
1850
- return value <= 0.04045 ? value / 12.92 : pow((value + 0.055) / 1.055, 2.4);
1851
- }
1852
-
1853
- float linearToSrgb(float value) {
1854
- return value <= 0.0031308 ? value * 12.92 : 1.055 * pow(value, 1.0 / 2.4) - 0.055;
1855
- }
1856
-
1857
- vec3 decodeColor(vec3 color) {
1858
- return u_inputColorSpace == 1 ? vec3(srgbToLinear(color.r), srgbToLinear(color.g), srgbToLinear(color.b)) : color;
1859
- }
1860
-
1861
- vec3 encodeColor(vec3 color) {
1862
- vec3 linear = clamp(color, 0.0, 1.0);
1863
- return u_outputColorSpace == 1 ? vec3(linearToSrgb(linear.r), linearToSrgb(linear.g), linearToSrgb(linear.b)) : linear;
1864
- }
1865
-
1866
- vec3 acesRrtAndOdtFit(vec3 value) {
1867
- vec3 numerator = value * (value + 0.0245786) - 0.000090537;
1868
- vec3 denominator = value * (0.983729 * value + 0.4329510) + 0.238081;
1869
- return numerator / denominator;
1870
- }
1871
-
1872
- vec3 acesFilmic(vec3 color) {
1873
- // Match current Three.js ACESFilmicToneMapping. ACES is a coupled RGB
1874
- // transform; a scalar approximation shifts hue and washes saturated colors.
1875
- const mat3 acesInput = mat3(
1876
- vec3(0.59719, 0.07600, 0.02840),
1877
- vec3(0.35458, 0.90834, 0.13383),
1878
- vec3(0.04823, 0.01566, 0.83777)
1879
- );
1880
- const mat3 acesOutput = mat3(
1881
- vec3(1.60475, -0.10208, -0.00327),
1882
- vec3(-0.53108, 1.10813, -0.07276),
1883
- vec3(-0.07367, -0.00605, 1.07602)
1884
- );
1885
- vec3 acesColor = acesInput * (color / 0.6);
1886
- acesColor = acesRrtAndOdtFit(acesColor);
1887
- return clamp(acesOutput * acesColor, 0.0, 1.0);
1888
- }
1889
-
1890
- float filmic(float value) {
1891
- float x = max(0.0, value);
1892
- float toe = max(0.0, x - 0.004);
1893
- float curve = (toe * (6.2 * toe + 0.5)) / (toe * (6.2 * toe + 1.7) + 0.06);
1894
- return min(curve, x * 1.08);
1895
- }
1896
-
1897
- float uncharted2(float value) {
1898
- float a = 0.15;
1899
- float b = 0.5;
1900
- float c = 0.1;
1901
- float d = 0.2;
1902
- float e = 0.02;
1903
- float f = 0.3;
1904
- float w = 11.2;
1905
- float x = value * 2.0;
1906
- float curve = ((x * (a * x + c * b) + d * e) / (x * (a * x + b) + d * f)) - e / f;
1907
- float wx = w;
1908
- float white = ((wx * (a * wx + c * b) + d * e) / (wx * (a * wx + b) + d * f)) - e / f;
1909
- return clamp(curve / white, 0.0, 1.0);
1910
- }
1911
-
1912
- float agx(float value) {
1913
- float x = max(0.0, value);
1914
- float encoded = log2(1.0 + x) / log2(17.0);
1915
- return clamp(encoded * encoded * (3.0 - 2.0 * encoded), 0.0, 1.0);
1916
- }
1917
-
1918
- float neutral(float value) {
1919
- float x = max(0.0, value);
1920
- return min(1.0, (x * (1.0 + x / 7.5)) / (1.0 + x));
1921
- }
1922
-
1923
- float toneMapChannel(float value) {
1924
- float exposed = max(0.0, value * u_exposure) / max(0.0001, u_whitePoint);
1925
- if (u_toneOperator == 0) return min(1.0, exposed);
1926
- if (u_toneOperator == 1) return exposed / (1.0 + exposed);
1927
- if (u_toneOperator == 2) return exposed;
1928
- if (u_toneOperator == 3) return filmic(exposed);
1929
- if (u_toneOperator == 4) return uncharted2(exposed);
1930
- if (u_toneOperator == 5) return agx(exposed);
1931
- return neutral(exposed);
1932
- }
1933
-
1934
- vec3 applyToneMapping(vec3 color) {
1935
- if (u_hasToneMapping == 0) return color;
1936
- vec3 decoded = decodeColor(color);
1937
- vec3 mapped = u_toneOperator == 2
1938
- ? acesFilmic(max(vec3(0.0), decoded * u_exposure) / max(0.0001, u_whitePoint))
1939
- : vec3(toneMapChannel(decoded.r), toneMapChannel(decoded.g), toneMapChannel(decoded.b));
1940
- return encodeColor(mapped);
1941
- }
1942
-
1943
- vec3 applyColorGrade(vec3 color, vec2 uv) {
1944
- if (u_hasColorGrade == 0) return color;
1945
- float contrastOffset = 0.5 - 0.5 * u_contrast;
1946
- float redShift = u_temperature * 0.08 - u_tint * 0.02;
1947
- float greenShift = u_tint * 0.06;
1948
- float blueShift = -u_temperature * 0.08 - u_tint * 0.02;
1949
- float luma = dot(color, vec3(0.2126, 0.7152, 0.0722));
1950
- vec3 graded = color * u_contrast + vec3(contrastOffset + redShift, contrastOffset + greenShift, contrastOffset + blueShift);
1951
- float distanceFromLuma = min(1.0, abs(graded.r - luma) + abs(graded.g - luma) + abs(graded.b - luma));
1952
- float vibranceBoost = u_vibrance == 0.0 ? 0.0 : u_vibrance * (1.0 - distanceFromLuma);
1953
- float saturation = u_saturation + vibranceBoost;
1954
- graded = vec3(luma) + (graded - vec3(luma)) * saturation;
1955
- vec2 centered = uv * 2.0 - 1.0;
1956
- float vignette = 1.0 - u_vignette * clamp((length(centered) - 0.28) / 1.12, 0.0, 1.0);
1957
- return clamp(graded * vignette, 0.0, 1.0);
1958
- }
1959
-
1960
- vec3 baseColorAt(vec2 uv) {
1961
- vec2 clampedUv = clamp(uv, vec2(0.0), vec2(1.0));
1962
- vec3 color = texture(u_source, clampedUv).rgb;
1963
- return applyColorGrade(applyToneMapping(color), clampedUv);
1964
- }
1965
-
1966
- vec3 finalColorAt(vec2 uv) {
1967
- vec3 center = baseColorAt(uv);
1968
- if (u_hasColorGrade == 0 || u_sharpening <= 0.0) return center;
1969
- vec3 blur = (
1970
- baseColorAt(uv + vec2(-u_texelSize.x, 0.0)) +
1971
- baseColorAt(uv + vec2(u_texelSize.x, 0.0)) +
1972
- baseColorAt(uv + vec2(0.0, -u_texelSize.y)) +
1973
- baseColorAt(uv + vec2(0.0, u_texelSize.y))
1974
- ) * 0.25;
1975
- return clamp(center + (center - blur) * u_sharpening, 0.0, 1.0);
1976
- }
1977
-
1978
- float luma(vec3 color) {
1979
- return dot(color, vec3(0.2126, 0.7152, 0.0722));
1980
- }
1981
-
1982
- void main() {
1983
- vec3 center = finalColorAt(v_uv);
1984
- float alpha = texture(u_source, clamp(v_uv, vec2(0.0), vec2(1.0))).a;
1985
- if (u_hasFxaa == 0) {
1986
- outColor = vec4(center, alpha);
1987
- return;
1988
- }
1989
- vec3 north = finalColorAt(v_uv + vec2(0.0, -u_texelSize.y));
1990
- vec3 south = finalColorAt(v_uv + vec2(0.0, u_texelSize.y));
1991
- vec3 west = finalColorAt(v_uv + vec2(-u_texelSize.x, 0.0));
1992
- vec3 east = finalColorAt(v_uv + vec2(u_texelSize.x, 0.0));
1993
- float centerLuma = luma(center);
1994
- float minLuma = min(centerLuma, min(min(luma(north), luma(south)), min(luma(west), luma(east))));
1995
- float maxLuma = max(centerLuma, max(max(luma(north), luma(south)), max(luma(west), luma(east))));
1996
- if (maxLuma - minLuma < u_edgeThreshold) {
1997
- outColor = vec4(center, alpha);
1998
- return;
1999
- }
2000
- vec3 average = (north + south + west + east) * 0.25;
2001
- outColor = vec4(mix(center, average, clamp(u_subpixelBlend, 0.0, 1.0)), alpha);
2002
- }
2003
- `, "webgl2-ldr-postprocess");
1835
+ const fragment = this.host.device.compileShader(this.host.gl.FRAGMENT_SHADER, ldrFragmentSource(variant), "webgl2-ldr-postprocess");
2004
1836
  const program = this.host.gl.createProgram();
2005
1837
  if (!program) {
2006
1838
  this.host.gl.deleteShader(vertex);
@@ -2018,7 +1850,7 @@ void main() {
2018
1850
  this.host.gl.deleteProgram(program);
2019
1851
  throw new RenderDeviceError("WebGL2 LDR postprocess shader link failed", "SHADER_LINK_FAILED", { log });
2020
1852
  }
2021
- this.ldrPostprocessProgram = program;
1853
+ this.ldrPostprocessPrograms.set(key, program);
2022
1854
  return program;
2023
1855
  }
2024
1856
  }