@flighthq/scene3d-wgpu 0.5.1-next.1069.554a2ac → 0.5.1-next.1201.9b49dee

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/README.md CHANGED
@@ -13,5 +13,5 @@ Import the supported application-facing API from `@flighthq/scene3d-wgpu`. The `
13
13
  This package is part of the locked-version Flight SDK graph. Applications may instead install and import `@flighthq/sdk` when package-level tree shaking is sufficient.
14
14
 
15
15
  - [Flight project](https://github.com/flighthq/flight)
16
- - [Source for @flighthq/scene3d-wgpu@0.5.1-next.1069.554a2ac](https://github.com/flighthq/flight/tree/554a2acc3fecf189b89b0729308ff890a15c21cc/packages/scene3d-wgpu)
17
- - [License](https://github.com/flighthq/flight/blob/554a2acc3fecf189b89b0729308ff890a15c21cc/LICENSE.md)
16
+ - [Source for @flighthq/scene3d-wgpu@0.5.1-next.1201.9b49dee](https://github.com/flighthq/flight/tree/9b49dee3f22f6b2838c3d237edcc77bca65734f2/packages/scene3d-wgpu)
17
+ - [License](https://github.com/flighthq/flight/blob/9b49dee3f22f6b2838c3d237edcc77bca65734f2/LICENSE.md)
@@ -1,4 +1,4 @@
1
- import type { Camera3D, Mesh, Scene3DLightsLike, Node3D, WgpuRenderState, WgpuScene3DForwardLightList } from '@flighthq/types/contract';
2
- export declare function drawWgpuScene3D(state: WgpuRenderState, scene: Readonly<Node3D>, camera: Readonly<Camera3D>, lights: Readonly<Scene3DLightsLike>, forwardLights?: Readonly<WgpuScene3DForwardLightList>): void;
1
+ import type { Camera3D, Mesh, Scene3DLightsLike, Node3D, WgpuRenderPass, WgpuRenderState, WgpuScene3DForwardLightList } from '@flighthq/types/contract';
2
+ export declare function drawWgpuScene3D(pass: WgpuRenderPass, scene: Readonly<Node3D>, camera: Readonly<Camera3D>, lights: Readonly<Scene3DLightsLike>, forwardLights?: Readonly<WgpuScene3DForwardLightList>): void;
3
3
  export declare function isWgpuMeshGpuSkinned(state: WgpuRenderState, mesh: Readonly<Mesh>): boolean;
4
4
  //# sourceMappingURL=drawWgpuScene3D.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"drawWgpuScene3D.d.ts","sourceRoot":"","sources":["../src/drawWgpuScene3D.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,QAAQ,EAOR,IAAI,EAGJ,iBAAiB,EACjB,MAAM,EAIN,eAAe,EAEf,2BAA2B,EAC5B,MAAM,0BAA0B,CAAC;AA2BlC,wBAAgB,eAAe,CAC7B,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,EACvB,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAC1B,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EACnC,aAAa,CAAC,EAAE,QAAQ,CAAC,2BAA2B,CAAC,GACpD,IAAI,CAgHN;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAG1F"}
1
+ {"version":3,"file":"drawWgpuScene3D.d.ts","sourceRoot":"","sources":["../src/drawWgpuScene3D.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,QAAQ,EAOR,IAAI,EAGJ,iBAAiB,EACjB,MAAM,EAIN,cAAc,EACd,eAAe,EAEf,2BAA2B,EAC5B,MAAM,0BAA0B,CAAC;AA2BlC,wBAAgB,eAAe,CAC7B,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,EACvB,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAC1B,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EACnC,aAAa,CAAC,EAAE,QAAQ,CAAC,2BAA2B,CAAC,GACpD,IAAI,CAiHN;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAG1F"}
@@ -26,8 +26,9 @@ import { getWgpuScene3DRuntime } from './wgpuScene3DRuntime';
26
26
  // issues the per-subset indexed draw. A subset whose material resolves to no renderer (and no
27
27
  // StandardMaterialKind fallback) is skipped — no built-in fallback. Depth/cull state is owned by the
28
28
  // material renderer's pipeline; the surrounding rgba16float scene render pass + depth attachment is
29
- // the effect pipeline's, not drawWgpuScene3D's. Must run inside an open render pass.
30
- export function drawWgpuScene3D(state, scene, camera, lights, forwardLights) {
29
+ // the effect pipeline's, not drawWgpuScene3D's. The pass names the target the scene lands in.
30
+ export function drawWgpuScene3D(pass, scene, camera, lights, forwardLights) {
31
+ const state = pass.state;
31
32
  const list = prepareScene3DRender(state, scene, camera, lights);
32
33
  const lightBlock = list.lights;
33
34
  const viewProjection = list.viewProjection;
@@ -1 +1 @@
1
- {"version":3,"file":"drawWgpuScene3D.js","sourceRoot":"","sources":["../src/drawWgpuScene3D.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"drawWgpuScene3D.js","sourceRoot":"","sources":["../src/drawWgpuScene3D.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import type { Camera3D, Environment, WgpuRenderState } from '@flighthq/types/contract';
2
- export declare function drawWgpuEnvironmentSkybox(state: WgpuRenderState, environment: Readonly<Environment>, camera: Readonly<Camera3D>, aspect: number): void;
1
+ import type { Camera3D, Environment, WgpuRenderPass } from '@flighthq/types/contract';
2
+ export declare function drawWgpuEnvironmentSkybox(renderPass: WgpuRenderPass, environment: Readonly<Environment>, camera: Readonly<Camera3D>, aspect: number): void;
3
3
  //# sourceMappingURL=wgpuEnvironmentSkybox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuEnvironmentSkybox.d.ts","sourceRoot":"","sources":["../src/wgpuEnvironmentSkybox.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAavF,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,eAAe,EACtB,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,EAClC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAC1B,MAAM,EAAE,MAAM,GACb,IAAI,CAwCN"}
1
+ {"version":3,"file":"wgpuEnvironmentSkybox.d.ts","sourceRoot":"","sources":["../src/wgpuEnvironmentSkybox.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAmB,MAAM,0BAA0B,CAAC;AAavG,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,cAAc,EAC1B,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,EAClC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAC1B,MAAM,EAAE,MAAM,GACb,IAAI,CAyCN"}
@@ -7,15 +7,16 @@ import { getWgpuScene3DRuntime } from './wgpuScene3DRuntime';
7
7
  // ray from the inverse view-projection and samples the cube. The pipeline writes no depth and compares
8
8
  // 'always', so it fills every pixel with the backdrop; call it once, inside the open scene render pass and
9
9
  // BEFORE drawWgpuScene3D, so opaque geometry (depth-test LESS) draws over it. A no-op when the environment
10
- // has no complete source cube or no render pass is open. `aspect` is the viewport width / height (matches
10
+ // has no complete source cube. `aspect` is the viewport width / height (matches
11
11
  // the camera aspect drawWgpuScene3D uses). The ray reconstruction uses GL-convention clip Z (near -1, far
12
12
  // +1) to match the camera's projection matrices — the same convention the mesh/shadow paths assume.
13
- export function drawWgpuEnvironmentSkybox(state, environment, camera, aspect) {
13
+ export function drawWgpuEnvironmentSkybox(renderPass, environment, camera, aspect) {
14
+ const state = renderPass.state;
14
15
  const cubeView = ensureWgpuEnvironmentSourceCube(state, environment);
15
16
  if (cubeView === null)
16
17
  return;
17
18
  const stateRuntime = getWgpuRenderStateRuntime(state);
18
- const pass = stateRuntime.renderPass;
19
+ const pass = renderPass.encoder;
19
20
  if (pass === null)
20
21
  return;
21
22
  const scene = getWgpuScene3DRuntime(state);
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuEnvironmentSkybox.js","sourceRoot":"","sources":["../src/wgpuEnvironmentSkybox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuEnvironmentSkybox.js","sourceRoot":"","sources":["../src/wgpuEnvironmentSkybox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mCAAmC,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAG3E,OAAO,EAAE,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,iGAAiG;AACjG,wGAAwG;AACxG,uGAAuG;AACvG,2GAA2G;AAC3G,2GAA2G;AAC3G,gFAAgF;AAChF,0GAA0G;AAC1G,oGAAoG;AACpG,MAAM,UAAU,yBAAyB,CACvC,UAA0B,EAC1B,WAAkC,EAClC,MAA0B,EAC1B,MAAc;IAEd,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAC/B,MAAM,QAAQ,GAAG,+BAA+B,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACrE,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO;IAE9B,MAAM,YAAY,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC;IAChC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO;IAE1B,MAAM,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,YAAY,CAAC,kBAAkB,IAAI,KAAK,CAAC,MAAM,CAAC;IAC/D,MAAM,GAAG,GAAG,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAEpD,IAAI,CAAC,mCAAmC,CAAC,MAAM,EAAE,MAAM,CAAC;QAAE,OAAO;IACjE,MAAM,CAAC,GAAG,WAAW,CAAC;IACtB,MAAM,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC;IACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;QAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,SAAS,CAAC;IAC9B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACV,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACV,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,oBAAoB,CAAC,CAAC;IAExF,uGAAuG;IACvG,+DAA+D;IAC/D,IAAI,GAAG,CAAC,aAAa,KAAK,IAAI,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC5D,GAAG,CAAC,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC;YAC/C,MAAM,EAAE,GAAG,CAAC,mBAAmB;YAC/B,OAAO,EAAE;gBACP,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE;gBAClC,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,KAAK,CAAC,EAAE;aACtD;SACF,CAAC,CAAC;QACH,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC3C,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;IACxC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACb,KAAK,KAAK,CAAC;AACb,CAAC;AAWD,yGAAyG;AACzG,qGAAqG;AACrG,2GAA2G;AAC3G,sGAAsG;AACtG,oGAAoG;AACpG,SAAS,wBAAwB,CAAC,KAAsB,EAAE,MAAwB;IAChF,IAAI,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACnC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;QACpB,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC;IAElC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;IAChE,MAAM,sBAAsB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAC1D,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,MAAM,GAAG,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;KACpH,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QACvD,OAAO,EAAE;YACP,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE;YAC5G,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;SACpF;KACF,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,CAAC,oBAAoB,CAAC,EAAE,gBAAgB,EAAE,CAAC,sBAAsB,EAAE,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAChH,MAAM,QAAQ,GAAG,MAAM,CAAC,oBAAoB,CAAC;QAC3C,MAAM;QACN,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE;QACzC,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;QAClE,SAAS,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;QACxC,YAAY,EAAE,EAAE,MAAM,EAAE,2BAA2B,EAAE,iBAAiB,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE;KACxG,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC;QACxC,IAAI,EAAE,oBAAoB;QAC1B,KAAK,EAAE,cAAc,CAAC,OAAO,GAAG,cAAc,CAAC,QAAQ;KACxD,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,MAAM,CAAC,eAAe,CAAC;QAC9C,MAAM,EAAE,sBAAsB;QAC9B,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC;KAC/D,CAAC,CAAC;IACH,GAAG,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,aAAa,EAAE,CAAC;IAC9G,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACzB,OAAO,GAAG,CAAC;AACb,CAAC;AAED,sGAAsG;AACtG,SAAS,oBAAoB,CAAC,KAAsB;IAClD,IAAI,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QACnF,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,uGAAuG;AACvG,0GAA0G;AAC1G,MAAM,2BAA2B,GAAqB,sBAAsB,CAAC;AAE7E,sGAAsG;AACtG,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEhC,MAAM,WAAW,GAAG,IAAI,YAAY,CAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC;AAC/D,MAAM,SAAS,GAAG,IAAI,OAAO,EAAsD,CAAC;AACpF,MAAM,eAAe,GAAG,IAAI,OAAO,EAA+B,CAAC;AAEnE,MAAM,WAAW,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoC9B,CAAC"}
@@ -790,7 +790,7 @@ function overwriteIdentityCache(binding, key, values) {
790
790
  // mat4x4f + normal mat3x3f padded to std140) into it, records the slot's byte offset on the scene
791
791
  // runtime (the draw path passes it as the bind group's dynamic offset), and returns the shared
792
792
  // dynamic-offset Draw bind group. Reusing the render-state ring keeps each subset draw to one ring
793
- // slot, not a fresh buffer; submitWgpuRenderPass uploads the used ring region before submit. Mirrors
793
+ // slot, not a fresh buffer; submitWgpuFrame uploads the used ring region before submit. Mirrors
794
794
  // the per-draw model/normal upload in scene-gl's drawGlMeshSubset.
795
795
  export function writeWgpuDrawUniform(state, proxy) {
796
796
  const scene = getWgpuScene3DRuntime(state);
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuMeshPipeline.js","sourceRoot":"","sources":["../src/wgpuMeshPipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuMeshPipeline.js","sourceRoot":"","sources":["../src/wgpuMeshPipeline.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { WgpuPipeline, WgpuPresentationRenderState } from '@flighthq/types/contract';
1
+ import type { WgpuPipeline, WgpuRenderPass, WgpuRenderState } from '@flighthq/types/contract';
2
2
  import type { WgpuSkinningAdapter } from '@flighthq/types/contract';
3
3
  export interface FakeWgpu {
4
4
  calls: {
@@ -8,7 +8,8 @@ export interface FakeWgpu {
8
8
  }
9
9
  export declare function makeWgpuScene3DState(pipeline?: Readonly<WgpuPipeline>): {
10
10
  fake: FakeWgpu;
11
- state: WgpuPresentationRenderState;
11
+ pass: WgpuRenderPass;
12
+ state: WgpuRenderState;
12
13
  };
13
14
  export declare function makeWgpuSkinningAdapter(): WgpuSkinningAdapter;
14
15
  //# sourceMappingURL=wgpuScene3DTestHelper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuScene3DTestHelper.d.ts","sourceRoot":"","sources":["../src/wgpuScene3DTestHelper.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,2BAA2B,EAA0B,MAAM,0BAA0B,CAAC;AAElH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAWpE,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,EAAE,CAAA;KAAE,EAAE,CAAC;CAC5C;AAmCD,wBAAgB,oBAAoB,CAClC,QAAQ,GAAE,QAAQ,CAAC,YAAY,CAAmD,GACjF;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,2BAA2B,CAAA;CAAE,CAgJxD;AAED,wBAAgB,uBAAuB,IAAI,mBAAmB,CAI7D"}
1
+ {"version":3,"file":"wgpuScene3DTestHelper.d.ts","sourceRoot":"","sources":["../src/wgpuScene3DTestHelper.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,eAAe,EAGhB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAWpE,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,OAAO,EAAE,CAAA;KAAE,EAAE,CAAC;CAC5C;AAmCD,wBAAgB,oBAAoB,CAClC,QAAQ,GAAE,QAAQ,CAAC,YAAY,CAAmD,GACjF;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,eAAe,CAAA;CAAE,CAoKlE;AAED,wBAAgB,uBAAuB,IAAI,mBAAmB,CAI7D"}
@@ -1,3 +1,4 @@
1
+ import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
1
2
  import { createEmptyWgpuRegistries, createWgpuDeviceState, createWgpuPipeline, createWgpuRenderStateRuntime, } from '@flighthq/render-wgpu/contract';
2
3
  import { createRenderState } from '@flighthq/render/contract';
3
4
  import { EntityRuntimeKey } from '@flighthq/types/contract';
@@ -122,22 +123,18 @@ export function makeWgpuScene3DState(pipeline = createWgpuPipeline(createEmptyWg
122
123
  };
123
124
  },
124
125
  };
125
- const canvas = { width: 256, height: 256 };
126
- const state = createRenderState({
127
- allowSmoothing: true,
128
- backgroundColorRgba: [0, 0, 0, 0],
129
- });
126
+ const state = createRenderState({ allowSmoothing: true });
130
127
  const deviceState = createWgpuDeviceState(device);
131
128
  Object.assign(state, {
132
129
  applyBlendMode: null,
133
- canvas,
134
- context: {},
135
130
  device,
136
131
  deviceState,
137
132
  format: 'bgra8unorm',
138
133
  pipeline,
139
- surface: { height: canvas.height, width: canvas.width },
140
134
  });
135
+ // The target the fake pass is bound to: a 256x256 texture target, which is what the recorded draws are
136
+ // projected into.
137
+ const target = { colorAttachments: 1, context: null, height: 256, width: 256 };
141
138
  const runtime = createWgpuRenderStateRuntime(deviceState, pipeline);
142
139
  Object.assign(runtime, {
143
140
  commandEncoder,
@@ -154,8 +151,10 @@ export function makeWgpuScene3DState(pipeline = createWgpuPipeline(createEmptyWg
154
151
  nearestSampler: {},
155
152
  samplerCache: new Map(),
156
153
  textureCache: new WeakMap(),
154
+ currentRenderTarget: target,
157
155
  renderPass,
158
- renderTargetViewport: null,
156
+ // The fake stands in for a pass over a 256x256 surface: every draw reads this for its projection.
157
+ renderTargetViewport: { height: 256, width: 256 },
159
158
  uniformBuffer: { destroy: () => { } },
160
159
  uniformBindGroupLayout: {},
161
160
  uniformData: new Float32Array(256 * 64),
@@ -164,7 +163,27 @@ export function makeWgpuScene3DState(pipeline = createWgpuPipeline(createEmptyWg
164
163
  uniformStride: 256,
165
164
  });
166
165
  state[EntityRuntimeKey] = runtime;
167
- return { fake: { calls }, state };
166
+ // The fake pass the draw entry points take. It is bound to the same fake encoder the runtime carries,
167
+ // so a test can assert on recorded calls exactly as before while the API says where the draw lands.
168
+ const pass = allocateEntity();
169
+ pass.colorView = {};
170
+ pass.encoder = renderPass;
171
+ pass.ownsFrame = false;
172
+ pass.saved = {
173
+ clipForms: [],
174
+ colorFormat: 'bgra8unorm',
175
+ currentMaskDepth: 0,
176
+ currentScissorRect: null,
177
+ maskWriteMode: false,
178
+ renderTarget: null,
179
+ renderTargetViewport: null,
180
+ renderTransform2D: null,
181
+ scissorStack: [],
182
+ };
183
+ pass.state = state;
184
+ pass.target = target;
185
+ pass.viewport = { height: 256, width: 256 };
186
+ return { fake: { calls }, pass: finishEntity(pass), state };
168
187
  }
169
188
  export function makeWgpuSkinningAdapter() {
170
189
  const { state } = makeWgpuScene3DState();
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuScene3DTestHelper.js","sourceRoot":"","sources":["../src/wgpuScene3DTestHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuScene3DTestHelper.js","sourceRoot":"","sources":["../src/wgpuScene3DTestHelper.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flighthq/scene3d-wgpu",
3
- "version": "0.5.1-next.1069.554a2ac",
3
+ "version": "0.5.1-next.1201.9b49dee",
4
4
  "author": "Joshua Granick and other contributors",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -38,23 +38,23 @@
38
38
  "clean:dist": "tsx ../../scripts/clean-package-dist.ts"
39
39
  },
40
40
  "dependencies": {
41
- "@flighthq/camera": "0.5.1-next.1069.554a2ac",
42
- "@flighthq/color": "0.5.1-next.1069.554a2ac",
43
- "@flighthq/entity": "0.5.1-next.1069.554a2ac",
44
- "@flighthq/geometry": "0.5.1-next.1069.554a2ac",
45
- "@flighthq/image": "0.5.1-next.1069.554a2ac",
46
- "@flighthq/lighting": "0.5.1-next.1069.554a2ac",
47
- "@flighthq/log": "0.5.1-next.1069.554a2ac",
48
- "@flighthq/materials": "0.5.1-next.1069.554a2ac",
49
- "@flighthq/node": "0.5.1-next.1069.554a2ac",
50
- "@flighthq/registry": "0.5.1-next.1069.554a2ac",
51
- "@flighthq/render": "0.5.1-next.1069.554a2ac",
52
- "@flighthq/render-wgpu": "0.5.1-next.1069.554a2ac",
53
- "@flighthq/scene2d-wgpu": "0.5.1-next.1069.554a2ac",
54
- "@flighthq/scene3d": "0.5.1-next.1069.554a2ac",
55
- "@flighthq/shading": "0.5.1-next.1069.554a2ac",
56
- "@flighthq/texture": "0.5.1-next.1069.554a2ac",
57
- "@flighthq/types": "0.5.1-next.1069.554a2ac"
41
+ "@flighthq/camera": "0.5.1-next.1201.9b49dee",
42
+ "@flighthq/color": "0.5.1-next.1201.9b49dee",
43
+ "@flighthq/entity": "0.5.1-next.1201.9b49dee",
44
+ "@flighthq/geometry": "0.5.1-next.1201.9b49dee",
45
+ "@flighthq/image": "0.5.1-next.1201.9b49dee",
46
+ "@flighthq/lighting": "0.5.1-next.1201.9b49dee",
47
+ "@flighthq/log": "0.5.1-next.1201.9b49dee",
48
+ "@flighthq/materials": "0.5.1-next.1201.9b49dee",
49
+ "@flighthq/node": "0.5.1-next.1201.9b49dee",
50
+ "@flighthq/registry": "0.5.1-next.1201.9b49dee",
51
+ "@flighthq/render": "0.5.1-next.1201.9b49dee",
52
+ "@flighthq/render-wgpu": "0.5.1-next.1201.9b49dee",
53
+ "@flighthq/scene2d-wgpu": "0.5.1-next.1201.9b49dee",
54
+ "@flighthq/scene3d": "0.5.1-next.1201.9b49dee",
55
+ "@flighthq/shading": "0.5.1-next.1201.9b49dee",
56
+ "@flighthq/texture": "0.5.1-next.1201.9b49dee",
57
+ "@flighthq/types": "0.5.1-next.1201.9b49dee"
58
58
  },
59
59
  "peerDependencies": {
60
60
  "@webgpu/types": "^0.1.70"
@@ -60,7 +60,7 @@ const LIGHTS: Scene3DLightsLike = {
60
60
 
61
61
  describe('drawWgpuScene3D', () => {
62
62
  it('uploads one shared geometry once across a primary and derived state on the same device', () => {
63
- const { fake, state } = makeWgpuScene3DState();
63
+ const { fake, pass, state } = makeWgpuScene3DState();
64
64
  registerWgpuStandardPbrMaterial(state);
65
65
  const derived = createWgpuOffscreenRenderState(
66
66
  state.deviceState,
@@ -71,46 +71,48 @@ describe('drawWgpuScene3D', () => {
71
71
  const derivedRuntime = getWgpuRenderStateRuntime(derived);
72
72
  derivedRuntime.commandEncoder = stateRuntime.commandEncoder;
73
73
  derivedRuntime.renderPass = stateRuntime.renderPass;
74
+ derivedRuntime.renderTargetViewport = stateRuntime.renderTargetViewport;
75
+ const derivedPass = { ...pass, state: derived } as typeof pass;
74
76
 
75
77
  const geometry = createBoxMeshGeometry();
76
78
  const scene = createNode3D(Node3DKind);
77
79
  addNodeChild(scene, createMesh(geometry, [createStandardPbrMaterial()]));
78
80
  const meshBuffersBefore = countMeshBuffers(fake.calls);
79
81
 
80
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
81
- drawWgpuScene3D(derived, scene, makeCamera(), LIGHTS);
82
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
83
+ drawWgpuScene3D(derivedPass, scene, makeCamera(), LIGHTS);
82
84
 
83
85
  // 2 geometry buffers (vertex + index, shared across states) + 2 per-state instance buffers.
84
86
  expect(countMeshBuffers(fake.calls)).toBe(meshBuffersBefore + 4);
85
87
  });
86
88
 
87
89
  it('draws each visible mesh subset with its registered material renderer', () => {
88
- const { fake, state } = makeWgpuScene3DState();
90
+ const { fake, pass, state } = makeWgpuScene3DState();
89
91
  registerWgpuStandardPbrMaterial(state);
90
92
 
91
93
  const scene = createNode3D(Node3DKind);
92
94
  const mesh = createMesh(createBoxMeshGeometry(), [createStandardPbrMaterial()]);
93
95
  addNodeChild(scene, mesh);
94
96
 
95
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
97
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
96
98
 
97
99
  expect(fake.calls.some((c) => c.name === 'setPipeline')).toBe(true);
98
100
  expect(fake.calls.some((c) => c.name === 'drawIndexed')).toBe(true);
99
101
  });
100
102
 
101
103
  it('skips a subset whose material has no registered renderer (no fallback)', () => {
102
- const { fake, state } = makeWgpuScene3DState();
104
+ const { fake, pass, state } = makeWgpuScene3DState();
103
105
  // No registerWgpuStandardPbrMaterial: nothing resolves.
104
106
  const scene = createNode3D(Node3DKind);
105
107
  const mesh = createMesh(createBoxMeshGeometry(), [createStandardPbrMaterial()]);
106
108
  addNodeChild(scene, mesh);
107
109
 
108
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
110
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
109
111
  expect(fake.calls.some((c) => c.name === 'drawIndexed')).toBe(false);
110
112
  });
111
113
 
112
114
  it('binds once for a run of subsets sharing a material', () => {
113
- const { fake, state } = makeWgpuScene3DState();
115
+ const { fake, pass, state } = makeWgpuScene3DState();
114
116
  registerWgpuStandardPbrMaterial(state);
115
117
 
116
118
  const scene = createNode3D(Node3DKind);
@@ -120,7 +122,7 @@ describe('drawWgpuScene3D', () => {
120
122
  addNodeChild(scene, meshA);
121
123
  addNodeChild(scene, meshB);
122
124
 
123
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
125
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
124
126
 
125
127
  // Same material across both meshes: pipeline bound once, drawn twice.
126
128
  expect(fake.calls.filter((c) => c.name === 'setPipeline').length).toBe(1);
@@ -128,7 +130,7 @@ describe('drawWgpuScene3D', () => {
128
130
  });
129
131
 
130
132
  it('does not draw a disabled mesh', () => {
131
- const { fake, state } = makeWgpuScene3DState();
133
+ const { fake, pass, state } = makeWgpuScene3DState();
132
134
  registerWgpuStandardPbrMaterial(state);
133
135
 
134
136
  const scene = createNode3D(Node3DKind);
@@ -136,12 +138,12 @@ describe('drawWgpuScene3D', () => {
136
138
  mesh.enabled = false;
137
139
  addNodeChild(scene, mesh);
138
140
 
139
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
141
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
140
142
  expect(fake.calls.some((c) => c.name === 'drawIndexed')).toBe(false);
141
143
  });
142
144
 
143
145
  it('partitions opaque and blended subsets into distinct pipeline runs', () => {
144
- const { state } = makeWgpuScene3DState();
146
+ const { pass, state } = makeWgpuScene3DState();
145
147
  registerWgpuStandardPbrMaterial(state);
146
148
  const scene = createNode3D(Node3DKind);
147
149
  const blendedMaterial = createStandardPbrMaterial();
@@ -151,7 +153,7 @@ describe('drawWgpuScene3D', () => {
151
153
  addNodeChild(scene, blended);
152
154
  addNodeChild(scene, opaque);
153
155
 
154
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
156
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
155
157
 
156
158
  const runtime = getWgpuScene3DRuntime(state);
157
159
  expect(runtime.opaqueDrawList.map((entry) => entry.mesh)).toEqual([opaque]);
@@ -161,13 +163,13 @@ describe('drawWgpuScene3D', () => {
161
163
  });
162
164
 
163
165
  it('selects a pipeline variant keyed by the surface material blendMode', () => {
164
- const { state } = makeWgpuScene3DState();
166
+ const { pass, state } = makeWgpuScene3DState();
165
167
  registerWgpuStandardPbrMaterial(state);
166
168
  const scene = createNode3D(Node3DKind);
167
169
  const material = createStandardPbrMaterial({ alphaMode: 'blend', blendMode: BlendMode.Add });
168
170
  addNodeChild(scene, createMesh(createBoxMeshGeometry(), [material]));
169
171
 
170
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
172
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
171
173
 
172
174
  expect(
173
175
  Array.from(getWgpuScene3DRuntime(state).pipelineCache.keys()).some((key) => key.endsWith('|blend:Add|rigid')),
@@ -177,13 +179,13 @@ describe('drawWgpuScene3D', () => {
177
179
  // Pipeline identity is the blend mode alone. It used to carry an alpha-convention segment too, which
178
180
  // is gone with the fork: one premultiplied blend state per mode, so the same mode is the same pipeline.
179
181
  it('keys a blended pipeline variant by blend mode alone', () => {
180
- const { state } = makeWgpuScene3DState();
182
+ const { pass, state } = makeWgpuScene3DState();
181
183
  registerWgpuStandardPbrMaterial(state);
182
184
  const scene = createNode3D(Node3DKind);
183
185
  const material = createStandardPbrMaterial({ alphaMode: 'blend' });
184
186
  addNodeChild(scene, createMesh(createBoxMeshGeometry(), [material]));
185
187
 
186
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
188
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
187
189
 
188
190
  const keys = Array.from(getWgpuScene3DRuntime(state).pipelineCache.keys());
189
191
  expect(keys.some((key) => key.endsWith('|blend:Normal|rigid'))).toBe(true);
@@ -191,14 +193,14 @@ describe('drawWgpuScene3D', () => {
191
193
  });
192
194
 
193
195
  it('routes resolved node alpha through the blended pass and draw proxy', () => {
194
- const { state } = makeWgpuScene3DState();
196
+ const { pass, state } = makeWgpuScene3DState();
195
197
  registerWgpuStandardPbrMaterial(state);
196
198
  const scene = createNode3D(Node3DKind);
197
199
  const mesh = createMesh(createBoxMeshGeometry(), [createStandardPbrMaterial()]);
198
200
  mesh.alpha = 0.5;
199
201
  addNodeChild(scene, mesh);
200
202
 
201
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
203
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
202
204
 
203
205
  const runtime = getWgpuScene3DRuntime(state);
204
206
  expect(runtime.opaqueDrawList).toHaveLength(0);
@@ -207,7 +209,7 @@ describe('drawWgpuScene3D', () => {
207
209
  });
208
210
 
209
211
  it('sorts blended subsets back-to-front by projected depth', () => {
210
- const { state } = makeWgpuScene3DState();
212
+ const { pass, state } = makeWgpuScene3DState();
211
213
  registerWgpuStandardPbrMaterial(state);
212
214
  const scene = createNode3D(Node3DKind);
213
215
  const material = createStandardPbrMaterial();
@@ -221,13 +223,13 @@ describe('drawWgpuScene3D', () => {
221
223
  addNodeChild(scene, near);
222
224
  addNodeChild(scene, far);
223
225
 
224
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
226
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
225
227
 
226
228
  expect(getWgpuScene3DRuntime(state).blendedDrawList.map((entry) => entry.mesh)).toEqual([far, near]);
227
229
  });
228
230
 
229
231
  it('sorts blended subsets back-to-front with an orthographic camera', () => {
230
- const { state } = makeWgpuScene3DState();
232
+ const { pass, state } = makeWgpuScene3DState();
231
233
  registerWgpuStandardPbrMaterial(state);
232
234
  const scene = createNode3D(Node3DKind);
233
235
  const material = createStandardPbrMaterial();
@@ -246,12 +248,12 @@ describe('drawWgpuScene3D', () => {
246
248
  projection: createOrthographicProjection({ halfHeight: 1, halfWidth: 1 }),
247
249
  });
248
250
  setCamera3DViewMatrix4FromLookAt(camera, { x: 0, y: 0, z: 5 }, { x: 0, y: 0, z: 0 }, { x: 0, y: 1, z: 0 });
249
- drawWgpuScene3D(state, scene, camera, LIGHTS);
251
+ drawWgpuScene3D(pass, scene, camera, LIGHTS);
250
252
  expect(getWgpuScene3DRuntime(state).blendedDrawList.map((entry) => entry.mesh)).toEqual([far, near]);
251
253
  });
252
254
 
253
255
  it('reuses opaque and blended draw records across frames', () => {
254
- const { state } = makeWgpuScene3DState();
256
+ const { pass, state } = makeWgpuScene3DState();
255
257
  registerWgpuStandardPbrMaterial(state);
256
258
  const scene = createNode3D(Node3DKind);
257
259
  const opaque = createMesh(createBoxMeshGeometry(), [createStandardPbrMaterial()]);
@@ -262,11 +264,11 @@ describe('drawWgpuScene3D', () => {
262
264
  addNodeChild(scene, blended);
263
265
  const camera = makeCamera();
264
266
 
265
- drawWgpuScene3D(state, scene, camera, LIGHTS);
267
+ drawWgpuScene3D(pass, scene, camera, LIGHTS);
266
268
  const runtime = getWgpuScene3DRuntime(state);
267
269
  const opaqueEntry = runtime.opaqueDrawList[0];
268
270
  const blendedEntry = runtime.blendedDrawList[0];
269
- drawWgpuScene3D(state, scene, camera, LIGHTS);
271
+ drawWgpuScene3D(pass, scene, camera, LIGHTS);
270
272
 
271
273
  expect(runtime.opaqueDrawList[0]).toBe(opaqueEntry);
272
274
  expect(runtime.blendedDrawList[0]).toBe(blendedEntry);
@@ -275,12 +277,12 @@ describe('drawWgpuScene3D', () => {
275
277
  });
276
278
 
277
279
  it('draws a scene ParticleEmitter3D as a final pass without a manual emitter call', () => {
278
- const { fake, state } = makeWgpuScene3DState();
280
+ const { fake, pass, state } = makeWgpuScene3DState();
279
281
  const scene = createNode3D(Node3DKind);
280
282
  addNodeChild(scene, makeParticleEmitter2D(3));
281
283
  // No mesh and no manual drawWgpuScene3DParticleEmitter3Ds — drawWgpuScene3D must render the emitter itself
282
284
  // (a 6-index instanced quad draw), mirroring drawGlScene3D's automatic emitter pass.
283
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
285
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
284
286
  const draw = fake.calls.find((c) => c.name === 'drawIndexed');
285
287
  expect(draw).toBeDefined();
286
288
  expect(draw!.args[0]).toBe(6);
@@ -294,7 +296,7 @@ describe('drawWgpuScene3D', () => {
294
296
  // in the tail of each record, and one WITHOUT must upload opaque white there — the shader multiplies
295
297
  // unconditionally, so a zeroed tail would render every uncoloured batch black.
296
298
  it('packs each instance colour into the tail of its instance record', () => {
297
- const { fake, state } = makeWgpuScene3DState();
299
+ const { fake, pass, state } = makeWgpuScene3DState();
298
300
  registerWgpuStandardPbrMaterial(state);
299
301
  const scene = createNode3D(Node3DKind);
300
302
  const mesh = createInstancedMesh(createBoxMeshGeometry(), [createStandardPbrMaterial()], 8);
@@ -304,7 +306,7 @@ describe('drawWgpuScene3D', () => {
304
306
  setInstancedMeshInstanceColor(mesh, 0, 0xff0000ff);
305
307
  addNodeChild(scene, mesh);
306
308
 
307
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
309
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
308
310
 
309
311
  // Select the instance upload by its exact byte size: two 80-byte records. Picking "the largest
310
312
  // write" would just as happily return the frame uniform buffer.
@@ -318,7 +320,7 @@ describe('drawWgpuScene3D', () => {
318
320
  });
319
321
 
320
322
  it('gives each instanced mesh in a frame its own instance buffer', () => {
321
- const { fake, state } = makeWgpuScene3DState();
323
+ const { fake, pass, state } = makeWgpuScene3DState();
322
324
  registerWgpuStandardPbrMaterial(state);
323
325
  const scene = createNode3D(Node3DKind);
324
326
  for (const x of [0, 0.5]) {
@@ -328,7 +330,7 @@ describe('drawWgpuScene3D', () => {
328
330
  addNodeChild(scene, mesh);
329
331
  }
330
332
 
331
- drawWgpuScene3D(state, scene, makeCamera(), LIGHTS);
333
+ drawWgpuScene3D(pass, scene, makeCamera(), LIGHTS);
332
334
 
333
335
  const bound = fake.calls
334
336
  .filter((call) => call.name === 'setVertexBuffer' && call.args[0] === 1)
@@ -340,7 +342,7 @@ describe('drawWgpuScene3D', () => {
340
342
 
341
343
  describe('isWgpuMeshGpuSkinned', () => {
342
344
  it('selects GPU skinning only for a skin plus joints0 and weights0 geometry', () => {
343
- const { state } = makeWgpuScene3DState();
345
+ const { pass, state } = makeWgpuScene3DState();
344
346
  registerWgpuGpuSkinning(state);
345
347
  const rigid = createMesh(createBoxMeshGeometry(), [createStandardPbrMaterial()]);
346
348
  expect(isWgpuMeshGpuSkinned(state, rigid)).toBe(false);
@@ -38,19 +38,19 @@ function completeEnvironment(): Environment {
38
38
 
39
39
  describe('drawWgpuEnvironmentSkybox', () => {
40
40
  it('is a no-op when the environment has no complete source cube', () => {
41
- const { fake, state } = makeWgpuScene3DState();
41
+ const { fake, pass, state } = makeWgpuScene3DState();
42
42
  const before = fake.calls.length;
43
43
  expect(() =>
44
- drawWgpuEnvironmentSkybox(state, { environment: null, intensity: 1 } as Environment, makeCamera(), 1),
44
+ drawWgpuEnvironmentSkybox(pass, { environment: null, intensity: 1 } as Environment, makeCamera(), 1),
45
45
  ).not.toThrow();
46
46
  expect(fake.calls.length).toBe(before);
47
47
  });
48
48
 
49
49
  it('binds the cube + uniform and draws the fullscreen backdrop', () => {
50
- const { fake, state } = makeWgpuScene3DState();
50
+ const { fake, pass, state } = makeWgpuScene3DState();
51
51
  const camera = makeCamera();
52
52
  camera.inverseViewProjection.m[0] = 42;
53
- drawWgpuEnvironmentSkybox(state, completeEnvironment(), camera, 1);
53
+ drawWgpuEnvironmentSkybox(pass, completeEnvironment(), camera, 1);
54
54
 
55
55
  expect(camera.inverseViewProjection.m[0]).not.toBe(42);
56
56
  expect(fake.calls.some((c) => c.name === 'setPipeline')).toBe(true);
@@ -59,8 +59,8 @@ describe('drawWgpuEnvironmentSkybox', () => {
59
59
  });
60
60
 
61
61
  it('compiles skybox WGSL that reconstructs the ray from the inverse view-projection', () => {
62
- const { fake, state } = makeWgpuScene3DState();
63
- drawWgpuEnvironmentSkybox(state, completeEnvironment(), makeCamera(), 1);
62
+ const { fake, pass, state } = makeWgpuScene3DState();
63
+ drawWgpuEnvironmentSkybox(pass, completeEnvironment(), makeCamera(), 1);
64
64
 
65
65
  const shader = fake.calls.find(
66
66
  (c) =>
@@ -1,6 +1,10 @@
1
1
  import { createCamera3D, createPerspectiveProjection } from '@flighthq/camera/contract';
2
2
  import { createMatrix4, setVector3 } from '@flighthq/geometry/contract';
3
- import { createImageResource } from '@flighthq/image/contract';
3
+ import {
4
+ createImageResource,
5
+ registerTestImageDimensionResolver,
6
+ unregisterTestImageDimensionResolver,
7
+ } from '@flighthq/image/contract';
4
8
  import { addNodeChild, invalidateNodeLocalTransform } from '@flighthq/node/contract';
5
9
  import { createParticleEmitter3D, reserveParticleEmitter3D } from '@flighthq/particleemitter/contract';
6
10
  import { createReadyImageElementForTest, registerWgpuImageTextureResolver } from '@flighthq/render-wgpu/contract';
@@ -19,6 +23,16 @@ import { describe, expect, it } from 'vitest';
19
23
  import { destroyWgpuParticleEmitter3DResources, drawWgpuScene3DParticleEmitter3Ds } from './wgpuParticleEmitter3D';
20
24
  import { makeWgpuScene3DState } from './wgpuScene3DTestHelper';
21
25
 
26
+ // A test that wraps a host handle supplies the host: the resource measures through the registered
27
+ // resolver, and clearing after each test keeps this file from covering for another's missing one.
28
+ beforeEach(() => {
29
+ registerTestImageDimensionResolver();
30
+ });
31
+
32
+ afterEach(() => {
33
+ unregisterTestImageDimensionResolver();
34
+ });
35
+
22
36
  function makeCamera(): Camera3D {
23
37
  const cam = createCamera3D({
24
38
  far: 100,
@@ -73,7 +73,7 @@ function makeShadowScene3D(): Node3D {
73
73
 
74
74
  describe('destroyWgpuScene3DShadow', () => {
75
75
  it('destroys the shadow depth texture and clears the slot', () => {
76
- const { state } = makeWgpuScene3DState();
76
+ const { pass, state } = makeWgpuScene3DState();
77
77
  drawWgpuScene3DShadowMap(state, makeShadowScene3D(), makeShadowCamera(), SHADOW_LIGHT);
78
78
 
79
79
  const runtime = getWgpuScene3DRuntime(state);
@@ -90,14 +90,14 @@ describe('destroyWgpuScene3DShadow', () => {
90
90
  });
91
91
 
92
92
  it('is a no-op when no shadow was drawn', () => {
93
- const { state } = makeWgpuScene3DState();
93
+ const { pass, state } = makeWgpuScene3DState();
94
94
  expect(() => destroyWgpuScene3DShadow(state)).not.toThrow();
95
95
  });
96
96
  });
97
97
 
98
98
  describe('drawWgpuScene3DShadowMap', () => {
99
99
  it('does not allocate or render when the directional light has shadows disabled', () => {
100
- const { fake, state } = makeWgpuScene3DState();
100
+ const { fake, pass, state } = makeWgpuScene3DState();
101
101
 
102
102
  drawWgpuScene3DShadowMap(
103
103
  state,
@@ -116,7 +116,7 @@ describe('drawWgpuScene3DShadowMap', () => {
116
116
  });
117
117
 
118
118
  it('treats an absent directional light as disabled and invalidates a retained shadow', () => {
119
- const { fake, state } = makeWgpuScene3DState();
119
+ const { fake, pass, state } = makeWgpuScene3DState();
120
120
  const scene = makeShadowScene3D();
121
121
  const camera = makeShadowCamera();
122
122
  drawWgpuScene3DShadowMap(state, scene, camera, SHADOW_LIGHT);
@@ -129,7 +129,7 @@ describe('drawWgpuScene3DShadowMap', () => {
129
129
  });
130
130
 
131
131
  it('creates a sampleable depth32float shadow map and stores it on the runtime', () => {
132
- const { fake, state } = makeWgpuScene3DState();
132
+ const { fake, pass, state } = makeWgpuScene3DState();
133
133
  drawWgpuScene3DShadowMap(state, makeShadowScene3D(), makeShadowCamera(), SHADOW_LIGHT);
134
134
 
135
135
  const depthCreate = fake.calls.find(
@@ -143,7 +143,7 @@ describe('drawWgpuScene3DShadowMap', () => {
143
143
  });
144
144
 
145
145
  it('records normalized PCF and receiver-bias configuration on the runtime', () => {
146
- const { state } = makeWgpuScene3DState();
146
+ const { pass, state } = makeWgpuScene3DState();
147
147
  const light = createDirectionalLight({
148
148
  castsShadow: true,
149
149
  normalBias: 0.02,
@@ -193,7 +193,7 @@ describe('drawWgpuScene3DShadowMap', () => {
193
193
  });
194
194
 
195
195
  it('rejects a perspective directional shadow camera', () => {
196
- const { state } = makeWgpuScene3DState();
196
+ const { pass, state } = makeWgpuScene3DState();
197
197
  const camera = createCamera3D({
198
198
  far: 100,
199
199
  near: 0.1,
@@ -207,7 +207,7 @@ describe('drawWgpuScene3DShadowMap', () => {
207
207
  });
208
208
 
209
209
  it('handles false -> true -> false without allocating or sampling a stale shadow', () => {
210
- const { fake, state } = makeWgpuScene3DState();
210
+ const { fake, pass, state } = makeWgpuScene3DState();
211
211
  const scene = makeShadowScene3D();
212
212
  const camera = makeShadowCamera();
213
213
 
@@ -232,7 +232,7 @@ describe('drawWgpuScene3DShadowMap', () => {
232
232
  // drawIndexed unconditionally, so a non-indexed caster rendered (once the forward path was fixed)
233
233
  // but cast no shadow. glShadowMap has always branched to drawArrays for this case.
234
234
  it('issues a non-indexed draw for a caster without indices', () => {
235
- const { fake, state } = makeWgpuScene3DState();
235
+ const { fake, pass, state } = makeWgpuScene3DState();
236
236
  const scene = createNode3D(Node3DKind);
237
237
  addNodeChild(
238
238
  scene,
@@ -259,7 +259,7 @@ describe('drawWgpuScene3DShadowMap', () => {
259
259
  });
260
260
 
261
261
  it('opens a depth-only pass and renders each caster mesh depth', () => {
262
- const { fake, state } = makeWgpuScene3DState();
262
+ const { fake, pass, state } = makeWgpuScene3DState();
263
263
  drawWgpuScene3DShadowMap(state, makeShadowScene3D(), makeShadowCamera(), SHADOW_LIGHT);
264
264
 
265
265
  expect(fake.calls.some((c) => c.name === 'beginRenderPass')).toBe(true);
@@ -275,7 +275,7 @@ describe('drawWgpuScene3DShadowMap', () => {
275
275
  });
276
276
 
277
277
  it('draws a GPU-skinned caster through a palette-backed depth variant', () => {
278
- const { fake, state } = makeWgpuScene3DState();
278
+ const { fake, pass, state } = makeWgpuScene3DState();
279
279
  registerWgpuGpuSkinning(state);
280
280
  const scene = createNode3D(Node3DKind);
281
281
  const mesh = createMesh(
@@ -306,7 +306,7 @@ describe('drawWgpuScene3DShadowMap', () => {
306
306
  });
307
307
 
308
308
  it('compiles a vertex-only depth module with the GL->WebGPU depth remap', () => {
309
- const { fake, state } = makeWgpuScene3DState();
309
+ const { fake, pass, state } = makeWgpuScene3DState();
310
310
  drawWgpuScene3DShadowMap(state, makeShadowScene3D(), makeShadowCamera(), SHADOW_LIGHT);
311
311
 
312
312
  const shaderCall = fake.calls.find(
@@ -319,7 +319,7 @@ describe('drawWgpuScene3DShadowMap', () => {
319
319
  });
320
320
 
321
321
  it('reuses the shadow depth texture across frames', () => {
322
- const { fake, state } = makeWgpuScene3DState();
322
+ const { fake, pass, state } = makeWgpuScene3DState();
323
323
  const scene = makeShadowScene3D();
324
324
  const camera = makeShadowCamera();
325
325
  drawWgpuScene3DShadowMap(state, scene, camera, SHADOW_LIGHT);
@@ -331,7 +331,7 @@ describe('drawWgpuScene3DShadowMap', () => {
331
331
  });
332
332
 
333
333
  it('is a no-op when no command encoder is active', () => {
334
- const { fake, state } = makeWgpuScene3DState();
334
+ const { fake, pass, state } = makeWgpuScene3DState();
335
335
  getWgpuRenderStateRuntime(state).commandEncoder = null;
336
336
  drawWgpuScene3DShadowMap(state, makeShadowScene3D(), makeShadowCamera(), SHADOW_LIGHT);
337
337
  expect(fake.calls.some((c) => c.name === 'beginRenderPass')).toBe(false);
@@ -339,7 +339,7 @@ describe('drawWgpuScene3DShadowMap', () => {
339
339
  });
340
340
 
341
341
  it('binds a group(3) shadow group on the lit PBR draw that follows', () => {
342
- const { fake, state } = makeWgpuScene3DState();
342
+ const { fake, pass, state } = makeWgpuScene3DState();
343
343
  registerWgpuStandardPbrMaterial(state);
344
344
  drawWgpuScene3DShadowMap(state, makeShadowScene3D(), makeShadowCamera(), SHADOW_LIGHT);
345
345
 
@@ -350,7 +350,7 @@ describe('drawWgpuScene3DShadowMap', () => {
350
350
  near: 0.1,
351
351
  projection: createPerspectiveProjection({ aspect: 1, fovY: Math.PI / 3 }),
352
352
  });
353
- drawWgpuScene3D(state, scene, camera, LIGHTS);
353
+ drawWgpuScene3D(pass, scene, camera, LIGHTS);
354
354
 
355
355
  expect(fake.calls.some((c) => c.name === 'setBindGroup' && c.args[0] === 3)).toBe(true);
356
356
  });
@@ -359,7 +359,7 @@ describe('drawWgpuScene3DShadowMap', () => {
359
359
  // at the node's world matrix loses every instance's shadow, and because the per-instance matrix routinely
360
360
  // carries the model's authoring scale it can stamp a wildly mis-sized silhouette over the map.
361
361
  it('instances an instanced caster rather than drawing one copy at the node world matrix', () => {
362
- const { fake, state } = makeWgpuScene3DState();
362
+ const { fake, pass, state } = makeWgpuScene3DState();
363
363
  const scene = createNode3D(Node3DKind);
364
364
  const mesh = createInstancedMesh(createBoxMeshGeometry(), [], 8);
365
365
  setInstancedMeshInstanceCount(mesh, 3);
@@ -377,7 +377,7 @@ describe('drawWgpuScene3DShadowMap', () => {
377
377
  });
378
378
 
379
379
  it('casts nothing for an instanced caster with no live instances', () => {
380
- const { fake, state } = makeWgpuScene3DState();
380
+ const { fake, pass, state } = makeWgpuScene3DState();
381
381
  const scene = createNode3D(Node3DKind);
382
382
  addNodeChild(scene, createInstancedMesh(createBoxMeshGeometry(), [], 8));
383
383
 
@@ -389,7 +389,7 @@ describe('drawWgpuScene3DShadowMap', () => {
389
389
  // Two instanced casters in one depth pass must not share an instance buffer: the pass is submitted once,
390
390
  // so a shared buffer would leave both reading whichever batch was written last.
391
391
  it('gives each instanced caster in a pass its own instance buffer', () => {
392
- const { fake, state } = makeWgpuScene3DState();
392
+ const { fake, pass, state } = makeWgpuScene3DState();
393
393
  const scene = createNode3D(Node3DKind);
394
394
  for (const x of [0, 0.5]) {
395
395
  const mesh = createInstancedMesh(createBoxMeshGeometry(), [], 8);
@@ -408,7 +408,7 @@ describe('drawWgpuScene3DShadowMap', () => {
408
408
  });
409
409
 
410
410
  it('still draws an ordinary rigid caster with a single non-instanced draw', () => {
411
- const { fake, state } = makeWgpuScene3DState();
411
+ const { fake, pass, state } = makeWgpuScene3DState();
412
412
 
413
413
  drawWgpuScene3DShadowMap(state, makeShadowScene3D(), makeShadowCamera(), SHADOW_LIGHT);
414
414