@flighthq/scene3d-wgpu 0.3.0-next.1032.e2b99fc → 0.3.0-next.1162.e90e518

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.
@@ -1 +1 @@
1
- {"version":3,"file":"unlitWgpuMeshMaterialRenderer.d.ts","sourceRoot":"","sources":["../src/unlitWgpuMeshMaterialRenderer.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAQV,wBAAwB,EACxB,eAAe,EAEhB,MAAM,0BAA0B,CAAC;AAWlC,eAAO,MAAM,6BAA6B,EAAE,wBA+B3C,CAAC;AAIF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAMtE"}
1
+ {"version":3,"file":"unlitWgpuMeshMaterialRenderer.d.ts","sourceRoot":"","sources":["../src/unlitWgpuMeshMaterialRenderer.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAQV,wBAAwB,EACxB,eAAe,EAEhB,MAAM,0BAA0B,CAAC;AAWlC,eAAO,MAAM,6BAA6B,EAAE,wBA+B3C,CAAC;AAIF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAKtE"}
@@ -1,5 +1,5 @@
1
1
  import { unpackColorToLinear } from '@flighthq/color/contract';
2
- import { getWgpuRenderStateRuntime, registerWgpuBitmapTextureResolver, registerWgpuImageTextureResolver, registerWgpuRenderTextureResolver, registerWgpuVideoTextureResolver, } from '@flighthq/render-wgpu/contract';
2
+ import { getWgpuRenderStateRuntime, registerWgpuBitmapTextureResolver, registerWgpuImageTextureResolver, registerWgpuRenderTextureResolver, } from '@flighthq/render-wgpu/contract';
3
3
  import { UnlitMaterialKind } from '@flighthq/types/contract';
4
4
  import { registerWgpuMeshMaterialRenderer } from './wgpuMeshMaterialRegistry';
5
5
  import { beginWgpuMeshDraw, drawWgpuMeshSubset, isWgpuTextureReady, writeWgpuFrameUniform } from './wgpuMeshPipeline';
@@ -38,7 +38,6 @@ export const unlitWgpuMeshMaterialRenderer = {
38
38
  export function registerUnlitWgpuMaterial(state) {
39
39
  registerWgpuBitmapTextureResolver(state);
40
40
  registerWgpuImageTextureResolver(state);
41
- registerWgpuVideoTextureResolver(state);
42
41
  registerWgpuRenderTextureResolver(state);
43
42
  registerWgpuMeshMaterialRenderer(state, UnlitMaterialKind, unlitWgpuMeshMaterialRenderer);
44
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"unlitWgpuMeshMaterialRenderer.js","sourceRoot":"","sources":["../src/unlitWgpuMeshMaterialRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unlitWgpuMeshMaterialRenderer.js","sourceRoot":"","sources":["../src/unlitWgpuMeshMaterialRenderer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Environment, ImageBacking, WgpuRenderState } from '@flighthq/types/contract';
1
+ import type { Environment, TextureSource, WgpuRenderState } from '@flighthq/types/contract';
2
2
  export declare function ensureWgpuEnvironmentSourceCube(state: WgpuRenderState, environment: Readonly<Environment>): GPUTextureView | null;
3
- export declare function updateWgpuEnvironmentCubeFace(state: WgpuRenderState, face: number, image: Readonly<ImageBacking>): boolean;
3
+ export declare function updateWgpuEnvironmentCubeFace(state: WgpuRenderState, face: number, image: Readonly<TextureSource>): boolean;
4
4
  //# sourceMappingURL=wgpuEnvironmentCube.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuEnvironmentCube.d.ts","sourceRoot":"","sources":["../src/wgpuEnvironmentCube.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,WAAW,EACX,YAAY,EAGZ,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAiBlC,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,eAAe,EACtB,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,GACjC,cAAc,GAAG,IAAI,CA0BvB;AAQD,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,QAAQ,CAAC,YAAY,CAAC,GAC5B,OAAO,CAKT"}
1
+ {"version":3,"file":"wgpuEnvironmentCube.d.ts","sourceRoot":"","sources":["../src/wgpuEnvironmentCube.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAU,WAAW,EAAE,aAAa,EAAkB,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAiBpH,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,eAAe,EACtB,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,GACjC,cAAc,GAAG,IAAI,CA0BvB;AAQD,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,GAC7B,OAAO,CAKT"}
@@ -1,7 +1,7 @@
1
1
  import { uploadWgpuTextureData, uploadWgpuTextureImageResource } from '@flighthq/render-wgpu/contract';
2
- import { BitmapTextureBackingKind, ImageTextureBackingKind } from '@flighthq/types/contract';
2
+ import { BitmapTextureSourceKind, ImageTextureSourceKind } from '@flighthq/types/contract';
3
3
  import { getWgpuScene3DRuntime } from './wgpuScene3DRuntime';
4
- // Uploads an Environment's source radiance cubemap (six ImageResource faces) to a wgpu cube texture,
4
+ // Uploads an Environment's source radiance cubemap (six Image faces) to a wgpu cube texture,
5
5
  // caching it on the scene runtime. Returns null when the environment has no complete cube — all six faces
6
6
  // bound with pixels, either a decoded `source` element or raw `data` — which callers treat as "no
7
7
  // environment this frame". Each face uploads through whichever representation it carries:
@@ -18,11 +18,11 @@ export function ensureWgpuEnvironmentSourceCube(state, environment) {
18
18
  if (scene.environmentSourceCubeView !== null)
19
19
  return scene.environmentSourceCubeView;
20
20
  const cube = environment.environment;
21
- if (cube === null || cube.storage.dimension !== 'cube' || !hasWgpuCubeFacePixels(cube))
21
+ if (cube === null || cube.dimension !== 'cube' || !hasWgpuCubeFacePixels(cube))
22
22
  return null;
23
- const images = cube.storage.images;
23
+ const sources = cube.sources;
24
24
  // Cube textures must be square; every face shares the +X face's dimensions (a well-formed cube).
25
- const size = images[0].width;
25
+ const size = sources[0].width;
26
26
  const device = state.device;
27
27
  const texture = device.createTexture({
28
28
  size: [size, size, 6],
@@ -32,7 +32,7 @@ export function ensureWgpuEnvironmentSourceCube(state, environment) {
32
32
  // Each face uploads into its array layer, in the canonical +X, -X, +Y, -Y, +Z, -Z order (the array-layer
33
33
  // index IS the face index — the wgpu counterpart of GL's CUBE_MAP_POSITIVE_X + face).
34
34
  for (let face = 0; face < 6; face++) {
35
- uploadWgpuEnvironmentImage(device, texture, face, images[face]);
35
+ uploadWgpuEnvironmentImage(device, texture, face, sources[face]);
36
36
  }
37
37
  const view = texture.createView({ dimension: 'cube' });
38
38
  scene.environmentSourceCube = texture;
@@ -55,18 +55,18 @@ export function updateWgpuEnvironmentCubeFace(state, face, image) {
55
55
  // A face is uploadable when it carries pixels in either representation: a decoded `source` element or
56
56
  // raw CPU `data` (a generated Bitmap). A cube is complete only when all six faces are uploadable.
57
57
  function hasWgpuCubeFacePixels(cube) {
58
- if (cube.storage.dimension !== 'cube')
58
+ if (cube.dimension !== 'cube')
59
59
  return false;
60
60
  for (let face = 0; face < 6; face++) {
61
- const image = cube.storage.images[face];
62
- if (image === null || (image.kind !== ImageTextureBackingKind && image.kind !== BitmapTextureBackingKind)) {
61
+ const image = cube.sources[face];
62
+ if (image === null || (image.kind !== ImageTextureSourceKind && image.kind !== BitmapTextureSourceKind)) {
63
63
  return false;
64
64
  }
65
65
  }
66
66
  return true;
67
67
  }
68
68
  function uploadWgpuEnvironmentImage(device, texture, face, image) {
69
- if (image.kind === BitmapTextureBackingKind) {
69
+ if (image.kind === BitmapTextureSourceKind) {
70
70
  const bitmap = image;
71
71
  uploadWgpuTextureData(device, texture, [0, 0, face], bitmap.width, bitmap.height, bitmap.data);
72
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuEnvironmentCube.js","sourceRoot":"","sources":["../src/wgpuEnvironmentCube.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuEnvironmentCube.js","sourceRoot":"","sources":["../src/wgpuEnvironmentCube.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { getCamera3DViewProjectionMatrix4 } from '@flighthq/camera/contract';
2
2
  import { createMatrix3, createMatrix4, getMatrix4Position, inverseMatrix4 } from '@flighthq/geometry/contract';
3
3
  import { getWgpuRenderStateRuntime, getWgpuSampler, resolveWgpuTexture } from '@flighthq/render-wgpu/contract';
4
- import { getTextureUvMatrix, hasTextureBacking, hasTextureUvTransform } from '@flighthq/texture/contract';
4
+ import { getTextureUvMatrix, hasTextureSource, hasTextureUvTransform } from '@flighthq/texture/contract';
5
5
  import { MAX_FORWARD_LIGHTS, SCENE_LIGHT_HEMISPHERE_OFFSET, SCENE_LIGHT_HEMISPHERE_STRIDE, SCENE_LIGHT_POINT_OFFSET, SCENE_LIGHT_POINT_STRIDE, SCENE_LIGHT_SPOT_OFFSET, SCENE_LIGHT_SPOT_STRIDE, } from '@flighthq/types/contract';
6
6
  import { ensureWgpuMeshUpload } from './wgpuMeshUpload';
7
7
  import { getWgpuScene3DRuntime } from './wgpuScene3DRuntime';
@@ -635,7 +635,7 @@ export function getWgpuMeshPreludeWgsl(skinned, skinning = null) {
635
635
  // Whether a cached material binding must rebuild its GPUBindGroup because a freshly-resolved view or the
636
636
  // primary sampler no longer matches what it was built from. `resolveWgpuMaterialTextureView` is the
637
637
  // invalidation seam: a map swap, an unready→ready transition, a ready→ready image replacement, or an
638
- // ImageResource version bump each yield a different view identity, so identity comparison alone catches
638
+ // Image version bump each yield a different view identity, so identity comparison alone catches
639
639
  // every live material-map mutation with no parallel epoch bookkeeping. `sampler` is the shared primary
640
640
  // sampler (getWgpuMaterialSampler of the diffuse/base-color map), so a change to the primary map's
641
641
  // sampler trips a rebuild; a non-primary map's per-Texture sampler is not bound and does not (the
@@ -654,9 +654,9 @@ export function isWgpuMaterialBindGroupRebuildNeeded(binding, sampler, views) {
654
654
  return false;
655
655
  }
656
656
  // True when a material map declares a backing. Resolution may still yield null while an image,
657
- // dynamic, or render-target backing is not ready; bind helpers substitute the shared placeholder then.
657
+ // dynamic, or render-target source is not ready; bind helpers substitute the shared placeholder then.
658
658
  export function isWgpuTextureReady(texture) {
659
- return texture !== null && hasTextureBacking(texture);
659
+ return texture !== null && hasTextureSource(texture);
660
660
  }
661
661
  // Resolves the GPUTextureView a family binds into a material map slot: the real uploaded view when the
662
662
  // resolver returns a view (cached per state by the backing implementation), otherwise the shared 1x1
@@ -689,7 +689,7 @@ ${fields}`));
689
689
  // vs_main multiply then reproduces the raw uv).
690
690
  export function stashWgpuUvTransform(state, texture) {
691
691
  const out = getWgpuScene3DRuntime(state).pendingUvTransform;
692
- if (texture === null || ('storage' in texture && !hasTextureBacking(texture)) || !hasTextureUvTransform(texture)) {
692
+ if (texture === null || ('storage' in texture && !hasTextureSource(texture)) || !hasTextureUvTransform(texture)) {
693
693
  resetWgpuUvTransformStash(out);
694
694
  return;
695
695
  }
@@ -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,7 +1,7 @@
1
1
  import { getNodeRuntime, getNodeWorldMatrix4 } from '@flighthq/node/contract';
2
2
  import { getWgpuRenderStateRuntime, getWgpuSampler, resolveWgpuTexture } from '@flighthq/render-wgpu/contract';
3
3
  import { prepareScene3DRender } from '@flighthq/render/contract';
4
- import { getTextureHeight, getTextureWidth, hasTextureBacking } from '@flighthq/texture/contract';
4
+ import { getTextureHeight, getTextureWidth, hasTextureSource } from '@flighthq/texture/contract';
5
5
  import { ParticleEmitter3DKind } from '@flighthq/types/contract';
6
6
  // Per-instance layout (16 floats = 64 bytes), identical to scene-gl's glParticleEmitter3D:
7
7
  // [0..2] px/py/pz world position, [3] cos(rotation)*scale, [4] sin(rotation)*scale, [5..7] rgb,
@@ -212,7 +212,7 @@ function drawParticleEmitter3DNode(state, resources, pass, emitter) {
212
212
  resources.instanceData = new Float32Array(Math.max(needed, resources.instanceData.length * 2));
213
213
  }
214
214
  const atlasTexture = atlas?.texture ?? null;
215
- const textureEntry = atlasTexture !== null && hasTextureBacking(atlasTexture) ? resolveWgpuTexture(state, atlasTexture, true) : null;
215
+ const textureEntry = atlasTexture !== null && hasTextureSource(atlasTexture) ? resolveWgpuTexture(state, atlasTexture, true) : null;
216
216
  const hasAtlas = textureEntry !== null;
217
217
  const regions = hasAtlas ? atlas.regions : null;
218
218
  const numRegions = regions !== null ? regions.length : 0;
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuParticleEmitter3D.js","sourceRoot":"","sources":["../src/wgpuParticleEmitter3D.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuParticleEmitter3D.js","sourceRoot":"","sources":["../src/wgpuParticleEmitter3D.ts"],"names":[],"mappings":"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"}
@@ -97,8 +97,8 @@ export function makeWgpuScene3DState() {
97
97
  commandEncoder,
98
98
  currentBlendMode: null,
99
99
  currentColorFormat: 'bgra8unorm',
100
- imageBackingPremultipliedTextureCache: new WeakMap(),
101
- imageBackingStraightTextureCache: new WeakMap(),
100
+ textureSourcePremultipliedTextureCache: new WeakMap(),
101
+ textureSourceStraightTextureCache: new WeakMap(),
102
102
  linearSampler: {},
103
103
  nearestSampler: {},
104
104
  samplerCache: new Map(),
@@ -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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"}
@@ -41,7 +41,7 @@ export function bindWgpuShadedSurface(state, pipeline, material, diffuse, specul
41
41
  binding.entries[1].resource = sampler;
42
42
  for (let i = 0; i < binding.textures.length; i++) {
43
43
  // Resolving every current view is the invalidation seam: render-wgpu changes the view when the
44
- // ImageResource identity or version changes, including ready->ready swaps.
44
+ // Image identity or version changes, including ready->ready swaps.
45
45
  const view = resolveWgpuMaterialTextureView(state, binding.textures[i]);
46
46
  if (binding.views[i] !== view) {
47
47
  binding.views[i] = view;
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuShadedPrelude.js","sourceRoot":"","sources":["../src/wgpuShadedPrelude.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuShadedPrelude.js","sourceRoot":"","sources":["../src/wgpuShadedPrelude.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.3.0-next.1032.e2b99fc",
3
+ "version": "0.3.0-next.1162.e90e518",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/flighthq/flight.git",
@@ -36,20 +36,20 @@
36
36
  "clean:dist": "tsx ../../scripts/clean-package-dist.ts"
37
37
  },
38
38
  "dependencies": {
39
- "@flighthq/camera": "0.3.0-next.1032.e2b99fc",
40
- "@flighthq/color": "0.3.0-next.1032.e2b99fc",
41
- "@flighthq/geometry": "0.3.0-next.1032.e2b99fc",
42
- "@flighthq/image": "0.3.0-next.1032.e2b99fc",
43
- "@flighthq/lighting": "0.3.0-next.1032.e2b99fc",
44
- "@flighthq/log": "0.3.0-next.1032.e2b99fc",
45
- "@flighthq/materials": "0.3.0-next.1032.e2b99fc",
46
- "@flighthq/node": "0.3.0-next.1032.e2b99fc",
47
- "@flighthq/render": "0.3.0-next.1032.e2b99fc",
48
- "@flighthq/render-wgpu": "0.3.0-next.1032.e2b99fc",
49
- "@flighthq/scene3d": "0.3.0-next.1032.e2b99fc",
50
- "@flighthq/shading": "0.3.0-next.1032.e2b99fc",
51
- "@flighthq/texture": "0.3.0-next.1032.e2b99fc",
52
- "@flighthq/types": "0.3.0-next.1032.e2b99fc"
39
+ "@flighthq/camera": "0.3.0-next.1162.e90e518",
40
+ "@flighthq/color": "0.3.0-next.1162.e90e518",
41
+ "@flighthq/geometry": "0.3.0-next.1162.e90e518",
42
+ "@flighthq/image": "0.3.0-next.1162.e90e518",
43
+ "@flighthq/lighting": "0.3.0-next.1162.e90e518",
44
+ "@flighthq/log": "0.3.0-next.1162.e90e518",
45
+ "@flighthq/materials": "0.3.0-next.1162.e90e518",
46
+ "@flighthq/node": "0.3.0-next.1162.e90e518",
47
+ "@flighthq/render": "0.3.0-next.1162.e90e518",
48
+ "@flighthq/render-wgpu": "0.3.0-next.1162.e90e518",
49
+ "@flighthq/scene3d": "0.3.0-next.1162.e90e518",
50
+ "@flighthq/shading": "0.3.0-next.1162.e90e518",
51
+ "@flighthq/texture": "0.3.0-next.1162.e90e518",
52
+ "@flighthq/types": "0.3.0-next.1162.e90e518"
53
53
  },
54
54
  "devDependencies": {
55
55
  "@flighthq/mesh": "*",
@@ -4,8 +4,8 @@ import { createCustomShaderMaterial } from '@flighthq/materials/contract';
4
4
  import { createBoxMeshGeometry } from '@flighthq/mesh/contract';
5
5
  import { registerWgpuImageTextureResolver } from '@flighthq/render-wgpu/contract';
6
6
  import { createTexture } from '@flighthq/texture/contract';
7
- import type { Camera3D, ImageResource, Scene3DLightBlock, Scene3DRenderProxy } from '@flighthq/types/contract';
8
- import { CustomShaderMaterialKind, ImageTextureBackingKind } from '@flighthq/types/contract';
7
+ import type { Camera3D, Image, Scene3DLightBlock, Scene3DRenderProxy } from '@flighthq/types/contract';
8
+ import { CustomShaderMaterialKind, ImageTextureSourceKind } from '@flighthq/types/contract';
9
9
 
10
10
  import {
11
11
  customShaderWgpuMeshMaterialRenderer,
@@ -130,9 +130,10 @@ describe('customShaderWgpuMeshMaterialRenderer', () => {
130
130
  first.sampler.wrapU = 'repeat';
131
131
  count = bindAndExpectRebuild(count);
132
132
 
133
- first.storage.image = makeImageResource(1);
133
+ if (first.dimension !== '2d') throw new Error('test texture must be 2d');
134
+ first.source = makeImageResource(1);
134
135
  count = bindAndExpectRebuild(count);
135
- first.storage.image = makeImageResource(2);
136
+ first.source = makeImageResource(2);
136
137
  count = bindAndExpectRebuild(count);
137
138
 
138
139
  material.textures = { renamed: first, second };
@@ -170,14 +171,14 @@ describe('customShaderWgpuMeshMaterialRenderer', () => {
170
171
  });
171
172
  });
172
173
 
173
- function makeImageResource(version: number): ImageResource {
174
+ function makeImageResource(version: number): Image {
174
175
  return {
175
176
  height: 1,
176
- kind: ImageTextureBackingKind,
177
+ kind: ImageTextureSourceKind,
177
178
  source: {} as CanvasImageSource,
178
179
  version,
179
180
  width: 1,
180
- } as unknown as ImageResource;
181
+ } as unknown as Image;
181
182
  }
182
183
 
183
184
  describe('getWgpuCustomMaterialShaderSource', () => {
@@ -10,7 +10,7 @@ import type {
10
10
  Scene3DRenderProxy,
11
11
  Texture,
12
12
  } from '@flighthq/types/contract';
13
- import { ImageTextureBackingKind } from '@flighthq/types/contract';
13
+ import { ImageTextureSourceKind } from '@flighthq/types/contract';
14
14
 
15
15
  import {
16
16
  buildWgpuPbrStandardDefineKey,
@@ -75,7 +75,8 @@ describe('buildWgpuPbrStandardDefineKey', () => {
75
75
  // A texture is "present" only when it carries a GPU-uploadable image source; a structural stub of
76
76
  // exactly that shape is enough to exercise the flag derivation without a real GPU texture upload.
77
77
  const sourced = {
78
- storage: { dimension: '2d', image: { kind: ImageTextureBackingKind, source: {} } },
78
+ dimension: '2d',
79
+ source: { kind: ImageTextureSourceKind, source: {} },
79
80
  } as unknown as Texture;
80
81
  material.baseColorMap = sourced;
81
82
  material.metallicRoughnessMap = sourced;
@@ -2,7 +2,7 @@ import { createCamera3D } from '@flighthq/camera/contract';
2
2
  import { createMatrix3, createMatrix4 } from '@flighthq/geometry/contract';
3
3
  import { createUnlitMaterial } from '@flighthq/materials/contract';
4
4
  import { createBoxMeshGeometry } from '@flighthq/mesh/contract';
5
- import { registerWgpuVideoTextureResolver } from '@flighthq/render-wgpu/contract';
5
+ import { registerWgpuImageTextureResolver } from '@flighthq/render-wgpu/contract';
6
6
  import { advanceVideoTexture, createVideoTexture } from '@flighthq/texture/contract';
7
7
  import type { Camera3D, Scene3DLightBlock, Scene3DRenderProxy } from '@flighthq/types/contract';
8
8
  import { UnlitMaterialKind } from '@flighthq/types/contract';
@@ -59,7 +59,7 @@ describe('unlitWgpuMeshMaterialRenderer', () => {
59
59
  element: { readyState: 4, videoHeight: 120, videoWidth: 160 } as HTMLVideoElement,
60
60
  });
61
61
  advanceVideoTexture(material.baseColorMap);
62
- registerWgpuVideoTextureResolver(state);
62
+ registerWgpuImageTextureResolver(state);
63
63
  unlitWgpuMeshMaterialRenderer.bind(state, material, NO_LIGHTS, makeCamera());
64
64
  expect(fake.calls.some((c) => c.name === 'copyExternalImageToTexture')).toBe(true);
65
65
  });
@@ -1,6 +1,6 @@
1
1
  import { createTexture } from '@flighthq/texture/contract';
2
2
  import type {
3
- ImageResource,
3
+ Image,
4
4
  WgpuClassicDefineKey,
5
5
  WgpuClassicLightingModel,
6
6
  WgpuColorAdjustmentMaterialFeature,
@@ -60,7 +60,8 @@ describe('bindWgpuClassicSurface', () => {
60
60
  // A ready diffuse (primary) map so bind() actually runs getWgpuMaterialSampler → getWgpuSampler (the
61
61
  // path an already-resolved-sampler helper test bypasses). Same shared binder that PBR uses.
62
62
  const diffuseMap = createTexture({
63
- storage: { dimension: '2d', image: { source: {} } as unknown as ImageResource },
63
+ dimension: '2d',
64
+ source: { source: {} } as unknown as Image,
64
65
  });
65
66
  bindWgpuClassicSurface(state, pipeline, key, [1, 0, 0, 1], [1, 1, 1, 1], 32, 0.5, diffuseMap, null, null, null);
66
67
  const count = (name: string) => fake.calls.filter((c) => c.name === name).length;
@@ -1,5 +1,5 @@
1
- import type { Bitmap, Environment, ImageResource, Texture } from '@flighthq/types/contract';
2
- import { BitmapTextureBackingKind, ImageTextureBackingKind } from '@flighthq/types/contract';
1
+ import type { Bitmap, Environment, Image, Texture } from '@flighthq/types/contract';
2
+ import { BitmapTextureSourceKind, ImageTextureSourceKind } from '@flighthq/types/contract';
3
3
 
4
4
  import { ensureWgpuEnvironmentSourceCube, updateWgpuEnvironmentCubeFace } from './wgpuEnvironmentCube';
5
5
  import { getWgpuScene3DRuntime } from './wgpuScene3DRuntime';
@@ -12,14 +12,15 @@ import { makeWgpuScene3DState } from './wgpuScene3DTestHelper';
12
12
  function completeEnvironment(): Environment {
13
13
  const face = {
14
14
  height: 4,
15
- kind: ImageTextureBackingKind,
15
+ kind: ImageTextureSourceKind,
16
16
  source: {} as CanvasImageSource,
17
17
  width: 4,
18
- } as unknown as ImageResource;
18
+ } as unknown as Image;
19
19
  const cube = {
20
20
  colorSpace: 'srgb',
21
21
  sampler: {},
22
- storage: { dimension: 'cube', images: [face, face, face, face, face, face] },
22
+ dimension: 'cube',
23
+ sources: [face, face, face, face, face, face],
23
24
  } as unknown as Texture;
24
25
  return { environment: cube, intensity: 1 } as Environment;
25
26
  }
@@ -28,7 +29,7 @@ function dataFace(): Bitmap {
28
29
  return {
29
30
  data: new Uint8ClampedArray(4 * 4 * 4),
30
31
  height: 4,
31
- kind: BitmapTextureBackingKind,
32
+ kind: BitmapTextureSourceKind,
32
33
  width: 4,
33
34
  } as Bitmap;
34
35
  }
@@ -38,7 +39,8 @@ function dataOnlyEnvironment(): Environment {
38
39
  const cube = {
39
40
  colorSpace: 'srgb',
40
41
  sampler: {},
41
- storage: { dimension: 'cube', images: [face, face, face, face, face, face] },
42
+ dimension: 'cube',
43
+ sources: [face, face, face, face, face, face],
42
44
  } as unknown as Texture;
43
45
  return { environment: cube, intensity: 1 } as Environment;
44
46
  }
@@ -1,5 +1,5 @@
1
- import type { Environment, ImageResource, Texture } from '@flighthq/types/contract';
2
- import { ImageTextureBackingKind } from '@flighthq/types/contract';
1
+ import type { Environment, Image, Texture } from '@flighthq/types/contract';
2
+ import { ImageTextureSourceKind } from '@flighthq/types/contract';
3
3
 
4
4
  import { bakeWgpuEnvironmentIbl, destroyWgpuScene3DIbl } from './wgpuEnvironmentIblBake';
5
5
  import { getWgpuScene3DRuntime } from './wgpuScene3DRuntime';
@@ -13,14 +13,15 @@ import { makeWgpuScene3DState } from './wgpuScene3DTestHelper';
13
13
  function completeEnvironment(): Environment {
14
14
  const face = {
15
15
  height: 4,
16
- kind: ImageTextureBackingKind,
16
+ kind: ImageTextureSourceKind,
17
17
  source: {} as CanvasImageSource,
18
18
  width: 4,
19
- } as unknown as ImageResource;
19
+ } as unknown as Image;
20
20
  const cube = {
21
21
  colorSpace: 'srgb',
22
22
  sampler: {},
23
- storage: { dimension: 'cube', images: [face, face, face, face, face, face] },
23
+ dimension: 'cube',
24
+ sources: [face, face, face, face, face, face],
24
25
  } as unknown as Texture;
25
26
  return { environment: cube, intensity: 1 } as Environment;
26
27
  }
@@ -1,6 +1,6 @@
1
1
  import { createCamera3D } from '@flighthq/camera/contract';
2
- import type { Camera3D, Environment, ImageResource, Texture } from '@flighthq/types/contract';
3
- import { ImageTextureBackingKind } from '@flighthq/types/contract';
2
+ import type { Camera3D, Environment, Image, Texture } from '@flighthq/types/contract';
3
+ import { ImageTextureSourceKind } from '@flighthq/types/contract';
4
4
 
5
5
  import { drawWgpuEnvironmentSkybox } from './wgpuEnvironmentSkybox';
6
6
  import { makeWgpuScene3DState } from './wgpuScene3DTestHelper';
@@ -16,14 +16,15 @@ function makeCamera(): Camera3D {
16
16
  function completeEnvironment(): Environment {
17
17
  const face = {
18
18
  height: 4,
19
- kind: ImageTextureBackingKind,
19
+ kind: ImageTextureSourceKind,
20
20
  source: {} as CanvasImageSource,
21
21
  width: 4,
22
- } as unknown as ImageResource;
22
+ } as unknown as Image;
23
23
  const cube = {
24
24
  colorSpace: 'srgb',
25
25
  sampler: {},
26
- storage: { dimension: 'cube', images: [face, face, face, face, face, face] },
26
+ dimension: 'cube',
27
+ sources: [face, face, face, face, face, face],
27
28
  } as unknown as Texture;
28
29
  return { environment: cube, intensity: 1 } as Environment;
29
30
  }
@@ -7,14 +7,14 @@ import { createTexture, setTextureUvOffset, setTextureUvScale } from '@flighthq/
7
7
  import type {
8
8
  Camera3D,
9
9
  Bitmap,
10
- ImageResource,
10
+ Image,
11
11
  Scene3DLightBlock,
12
12
  Scene3DRenderProxy,
13
13
  Texture,
14
14
  WgpuColorAdjustmentMaterialFeature,
15
15
  WgpuMaterialBinding,
16
16
  } from '@flighthq/types/contract';
17
- import { BitmapTextureBackingKind, ImageTextureBackingKind, SCENE_LIGHT_BLOCK_FLOATS } from '@flighthq/types/contract';
17
+ import { BitmapTextureSourceKind, ImageTextureSourceKind, SCENE_LIGHT_BLOCK_FLOATS } from '@flighthq/types/contract';
18
18
 
19
19
  import {
20
20
  beginWgpuMeshDraw,
@@ -567,7 +567,8 @@ describe('getWgpuMaterialSampler', () => {
567
567
  it('derives a wrap- and mip-specific sampler for a tiling map', () => {
568
568
  const { state } = makeWgpuScene3DState();
569
569
  const texture = createTexture({
570
- storage: { dimension: '2d', image: { kind: ImageTextureBackingKind } as ImageResource },
570
+ dimension: '2d',
571
+ source: { kind: ImageTextureSourceKind } as Image,
571
572
  });
572
573
  texture.sampler.wrapU = 'repeat';
573
574
  texture.sampler.wrapV = 'repeat';
@@ -582,9 +583,9 @@ describe('getWgpuMaterialSampler', () => {
582
583
 
583
584
  it('drops the mip filter when the map disables mipmaps (distinct packed key from the mipmapped default)', () => {
584
585
  const { state } = makeWgpuScene3DState();
585
- const noMip = createTexture({ storage: { dimension: '2d', image: {} as ImageResource } });
586
+ const noMip = createTexture({ dimension: '2d', source: {} as Image });
586
587
  noMip.sampler.mipmaps = false;
587
- const withMip = createTexture({ storage: { dimension: '2d', image: {} as ImageResource } }); // default: trilinear (mipmaps on)
588
+ const withMip = createTexture({ dimension: '2d', source: {} as Image }); // default: trilinear (mipmaps on)
588
589
 
589
590
  getWgpuMaterialSampler(state, noMip);
590
591
  getWgpuMaterialSampler(state, withMip);
@@ -594,9 +595,9 @@ describe('getWgpuMaterialSampler', () => {
594
595
 
595
596
  it('carries the map anisotropy into the derived sampler (distinct packed key from the non-anisotropic one)', () => {
596
597
  const { state } = makeWgpuScene3DState();
597
- const aniso = createTexture({ storage: { dimension: '2d', image: {} as ImageResource } });
598
+ const aniso = createTexture({ dimension: '2d', source: {} as Image });
598
599
  aniso.sampler.anisotropy = 8;
599
- const noAniso = createTexture({ storage: { dimension: '2d', image: {} as ImageResource } });
600
+ const noAniso = createTexture({ dimension: '2d', source: {} as Image });
600
601
 
601
602
  getWgpuMaterialSampler(state, aniso);
602
603
  getWgpuMaterialSampler(state, noAniso);
@@ -642,7 +643,7 @@ describe('isWgpuMaterialBindGroupRebuildNeeded', () => {
642
643
 
643
644
  it('rebuilds when any resolved view identity changes (swap / unready->ready / ready->ready / version++)', () => {
644
645
  // resolveWgpuMaterialTextureView is the invalidation seam: a texture swap, an unready->ready
645
- // transition, a ready->ready image replacement, or an ImageResource version bump each yield a new
646
+ // transition, a ready->ready image replacement, or an Image version bump each yield a new
646
647
  // view identity, so this single identity check covers all four.
647
648
  expect(isWgpuMaterialBindGroupRebuildNeeded(cached, sampler, [{} as GPUTextureView, view1])).toBe(true);
648
649
  });
@@ -657,27 +658,23 @@ describe('isWgpuMaterialBindGroupRebuildNeeded', () => {
657
658
  describe('isWgpuTextureReady', () => {
658
659
  it('is true when the texture declares a backing, even before that backing resolves', () => {
659
660
  expect(isWgpuTextureReady(null)).toBe(false);
660
- expect(isWgpuTextureReady({ storage: { dimension: '2d', image: null } } as unknown as Texture)).toBe(false);
661
+ expect(isWgpuTextureReady({ dimension: '2d', source: null } as unknown as Texture)).toBe(false);
661
662
  expect(
662
663
  isWgpuTextureReady({
663
- storage: {
664
- dimension: '2d',
665
- image: { height: 1, kind: ImageTextureBackingKind, source: {}, version: 0, width: 1 } as ImageResource,
666
- },
664
+ dimension: '2d',
665
+ source: { height: 1, kind: ImageTextureSourceKind, source: {}, version: 0, width: 1 } as Image,
667
666
  } as unknown as Texture),
668
667
  ).toBe(true);
669
668
  expect(
670
669
  isWgpuTextureReady({
671
- storage: {
672
- dimension: '2d',
673
- image: {
674
- data: new Uint8ClampedArray(4),
675
- height: 1,
676
- kind: BitmapTextureBackingKind,
677
- version: 0,
678
- width: 1,
679
- } as Bitmap,
680
- },
670
+ dimension: '2d',
671
+ source: {
672
+ data: new Uint8ClampedArray(4),
673
+ height: 1,
674
+ kind: BitmapTextureSourceKind,
675
+ version: 0,
676
+ width: 1,
677
+ } as Bitmap,
681
678
  } as unknown as Texture),
682
679
  ).toBe(true);
683
680
  });
@@ -688,9 +685,9 @@ describe('resolveWgpuMaterialTextureView', () => {
688
685
  const { state } = makeWgpuScene3DState();
689
686
  const placeholder = ensureWgpuPlaceholderTextureView(state);
690
687
  expect(resolveWgpuMaterialTextureView(state, null)).toBe(placeholder);
691
- expect(
692
- resolveWgpuMaterialTextureView(state, { storage: { dimension: '2d', image: null } } as unknown as Texture),
693
- ).toBe(placeholder);
688
+ expect(resolveWgpuMaterialTextureView(state, { dimension: '2d', source: null } as unknown as Texture)).toBe(
689
+ placeholder,
690
+ );
694
691
  });
695
692
  });
696
693
 
@@ -727,7 +724,8 @@ describe('stashWgpuUvTransform', () => {
727
724
  it('stores the column-major transform for a bound non-identity texture', () => {
728
725
  const { state } = makeWgpuScene3DState();
729
726
  const texture = createTexture({
730
- storage: { dimension: '2d', image: { kind: ImageTextureBackingKind } as ImageResource },
727
+ dimension: '2d',
728
+ source: { kind: ImageTextureSourceKind } as Image,
731
729
  });
732
730
  setTextureUvScale(texture, 2, 3);
733
731
  setTextureUvOffset(texture, 0.5, 0.25);
@@ -742,7 +740,8 @@ describe('stashWgpuUvTransform', () => {
742
740
  it('resets to identity for a null texture', () => {
743
741
  const { state } = makeWgpuScene3DState();
744
742
  const texture = createTexture({
745
- storage: { dimension: '2d', image: { kind: ImageTextureBackingKind } as ImageResource },
743
+ dimension: '2d',
744
+ source: { kind: ImageTextureSourceKind } as Image,
746
745
  });
747
746
  setTextureUvScale(texture, 4, 4);
748
747
  stashWgpuUvTransform(state, texture);
@@ -758,7 +757,8 @@ describe('stashWgpuUvTransform', () => {
758
757
  stashWgpuUvTransform(
759
758
  state,
760
759
  createTexture({
761
- storage: { dimension: '2d', image: { kind: ImageTextureBackingKind } as ImageResource },
760
+ dimension: '2d',
761
+ source: { kind: ImageTextureSourceKind } as Image,
762
762
  }),
763
763
  );
764
764
 
@@ -819,7 +819,8 @@ describe('writeWgpuDrawUniform', () => {
819
819
  it('folds the stashed uv transform into the draw uniform', () => {
820
820
  const { state } = makeWgpuScene3DState();
821
821
  const texture = createTexture({
822
- storage: { dimension: '2d', image: { kind: ImageTextureBackingKind } as ImageResource },
822
+ dimension: '2d',
823
+ source: { kind: ImageTextureSourceKind } as Image,
823
824
  });
824
825
  setTextureUvScale(texture, 2, 3);
825
826
  stashWgpuUvTransform(state, texture);
@@ -837,7 +838,8 @@ describe('writeWgpuDrawUniform', () => {
837
838
  // each writeWgpuDrawUniform (not be consumed), or only the first mesh under a bind would tile.
838
839
  const { state } = makeWgpuScene3DState();
839
840
  const texture = createTexture({
840
- storage: { dimension: '2d', image: { kind: ImageTextureBackingKind } as ImageResource },
841
+ dimension: '2d',
842
+ source: { kind: ImageTextureSourceKind } as Image,
841
843
  });
842
844
  setTextureUvScale(texture, 2, 3);
843
845
  stashWgpuUvTransform(state, texture);
@@ -62,7 +62,7 @@ function makeAtlasEmitter(regionWidth: number, regionHeight: number): ParticleEm
62
62
  image.height = 128;
63
63
  emitter.data.atlas = {
64
64
  regions: [{ id: 0, x: 0, y: 0, width: regionWidth, height: regionHeight } as TextureAtlasRegion],
65
- texture: createTexture({ storage: { dimension: '2d', image } }),
65
+ texture: createTexture({ dimension: '2d', source: image }),
66
66
  } as TextureAtlas;
67
67
  return emitter;
68
68
  }
@@ -10,9 +10,9 @@ import {
10
10
  createToonModifier,
11
11
  createVertexDisplaceModifier,
12
12
  } from '@flighthq/shading/contract';
13
- import { createTexture } from '@flighthq/texture/contract';
13
+ import { createTexture, getTextureSource } from '@flighthq/texture/contract';
14
14
  import type {
15
- ImageResource,
15
+ Image,
16
16
  Modifier,
17
17
  Texture,
18
18
  WgpuColorAdjustmentMaterialFeature,
@@ -20,7 +20,7 @@ import type {
20
20
  } from '@flighthq/types/contract';
21
21
  import {
22
22
  FogModifierMode,
23
- ImageTextureBackingKind,
23
+ ImageTextureSourceKind,
24
24
  ModifierSlot,
25
25
  VertexDisplaceModifierSource,
26
26
  } from '@flighthq/types/contract';
@@ -337,7 +337,8 @@ describe('shaded binding cache', () => {
337
337
  registerWgpuImageTextureResolver(state);
338
338
  registerBuiltInWgpuModifierSnippets(state);
339
339
  const first = createTexture({
340
- storage: { dimension: '2d', image: makeImageResource() },
340
+ dimension: '2d',
341
+ source: makeImageResource(),
341
342
  });
342
343
  const material = createShadedMaterial({ diffuseMap: first });
343
344
  const pipeline = ensureWgpuShadedPipeline(state, material, 'bgra8unorm');
@@ -350,19 +351,20 @@ describe('shaded binding cache', () => {
350
351
  expect(fake.calls.filter((call) => call.name === 'createBindGroup')).toHaveLength(groups);
351
352
 
352
353
  material.diffuseMap = createTexture({
353
- storage: { dimension: '2d', image: makeImageResource() },
354
+ dimension: '2d',
355
+ source: makeImageResource(),
354
356
  });
355
357
  bindWgpuShadedSurface(state, pipeline, material, [1, 1, 1, 1], [1, 1, 1, 1]);
356
358
  expect(fake.calls.filter((call) => call.name === 'createBindGroup').length).toBeGreaterThan(groups);
357
359
  expect(fake.calls.filter((call) => call.name === 'createBuffer')).toHaveLength(buffers);
358
360
 
359
- const modifierTexture = createTexture({ storage: { dimension: '2d', image: makeImageResource() } });
361
+ const modifierTexture = createTexture({ dimension: '2d', source: makeImageResource() });
360
362
  const emissive = createEmissiveModifier({ color: 0xffffffff, mask: modifierTexture, strength: 1 });
361
363
  material.modifiers = [emissive];
362
364
  const modifierPipeline = ensureWgpuShadedPipeline(state, material, 'bgra8unorm');
363
365
  bindWgpuShadedSurface(state, modifierPipeline, material, [1, 1, 1, 1], [1, 1, 1, 1]);
364
366
  const beforeModifierSwap = fake.calls.filter((call) => call.name === 'createBindGroup').length;
365
- emissive.mask = createTexture({ storage: { dimension: '2d', image: makeImageResource() } });
367
+ emissive.mask = createTexture({ dimension: '2d', source: makeImageResource() });
366
368
  bindWgpuShadedSurface(state, modifierPipeline, material, [1, 1, 1, 1], [1, 1, 1, 1]);
367
369
  expect(fake.calls.filter((call) => call.name === 'createBindGroup').length).toBeGreaterThan(beforeModifierSwap);
368
370
 
@@ -371,7 +373,8 @@ describe('shaded binding cache', () => {
371
373
  const beforeReady = fake.calls.filter((call) => call.name === 'createBindGroup').length;
372
374
  const readyingTexture = emissive.mask;
373
375
  expect(readyingTexture).toBeDefined();
374
- readyingTexture!.storage.image = makeImageResource();
376
+ if (readyingTexture!.dimension !== '2d') throw new Error('test texture must be 2d');
377
+ readyingTexture!.source = makeImageResource();
375
378
  bindWgpuShadedSurface(state, modifierPipeline, material, [1, 1, 1, 1], [1, 1, 1, 1]);
376
379
  expect(fake.calls.filter((call) => call.name === 'createBindGroup').length).toBeGreaterThan(beforeReady);
377
380
  });
@@ -381,18 +384,19 @@ describe('shaded binding cache', () => {
381
384
  registerWgpuImageTextureResolver(state);
382
385
  registerBuiltInWgpuModifierSnippets(state);
383
386
  const firstImage = makeImageResource();
384
- const texture = createTexture({ storage: { dimension: '2d', image: firstImage } });
387
+ const texture = createTexture({ dimension: '2d', source: firstImage });
385
388
  const material = createShadedMaterial({ diffuseMap: texture });
386
389
  const pipeline = ensureWgpuShadedPipeline(state, material, 'bgra8unorm');
387
390
  bindWgpuShadedSurface(state, pipeline, material, [1, 1, 1, 1], [1, 1, 1, 1]);
388
391
 
389
392
  const beforeSwap = fake.calls.filter((call) => call.name === 'createBindGroup').length;
390
- texture.storage.image = makeImageResource();
393
+ if (texture.dimension !== '2d') throw new Error('test texture must be 2d');
394
+ texture.source = makeImageResource();
391
395
  bindWgpuShadedSurface(state, pipeline, material, [1, 1, 1, 1], [1, 1, 1, 1]);
392
396
  expect(fake.calls.filter((call) => call.name === 'createBindGroup').length).toBeGreaterThan(beforeSwap);
393
397
 
394
398
  const beforeVersion = fake.calls.filter((call) => call.name === 'createBindGroup').length;
395
- texture.storage.image.version++;
399
+ getTextureSource(texture)!.version++;
396
400
  bindWgpuShadedSurface(state, pipeline, material, [1, 1, 1, 1], [1, 1, 1, 1]);
397
401
  expect(fake.calls.filter((call) => call.name === 'createBindGroup').length).toBeGreaterThan(beforeVersion);
398
402
  });
@@ -423,12 +427,12 @@ describe('shaded binding cache', () => {
423
427
  });
424
428
  });
425
429
 
426
- function makeImageResource(): ImageResource {
430
+ function makeImageResource(): Image {
427
431
  return {
428
432
  height: 1,
429
- kind: ImageTextureBackingKind,
433
+ kind: ImageTextureSourceKind,
430
434
  source: {} as CanvasImageSource,
431
435
  version: 0,
432
436
  width: 1,
433
- } as unknown as ImageResource;
437
+ } as unknown as Image;
434
438
  }
@@ -1,4 +1,4 @@
1
- import { registerWgpuVideoTextureResolver } from '@flighthq/render-wgpu/contract';
1
+ import { registerWgpuImageTextureResolver } from '@flighthq/render-wgpu/contract';
2
2
  import { advanceVideoTexture, createVideoTexture } from '@flighthq/texture/contract';
3
3
  import type { LinearColor, WgpuUnlitDefineKey } from '@flighthq/types/contract';
4
4
 
@@ -37,7 +37,7 @@ describe('bindWgpuUnlitVideoSurface', () => {
37
37
  element: { readyState: 4, videoHeight: 120, videoWidth: 160 } as HTMLVideoElement,
38
38
  });
39
39
  advanceVideoTexture(video);
40
- registerWgpuVideoTextureResolver(state);
40
+ registerWgpuImageTextureResolver(state);
41
41
  bindWgpuUnlitVideoSurface(state, pipeline, {}, COLOR, 1, 0.5, video);
42
42
  expect(fake.calls.some((c) => c.name === 'copyExternalImageToTexture')).toBe(true);
43
43
  expect(fake.calls.some((c) => c.name === 'writeBuffer')).toBe(true);