@flighthq/texture 0.5.1-next.815.cc08b93 → 0.5.1-next.903.f434bc2
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 +2 -2
- package/dist/contract.d.ts +1 -0
- package/dist/contract.d.ts.map +1 -1
- package/dist/contract.js +1 -0
- package/dist/contract.js.map +1 -1
- package/dist/renderTexture.d.ts +2 -1
- package/dist/renderTexture.d.ts.map +1 -1
- package/dist/renderTexture.js +20 -15
- package/dist/renderTexture.js.map +1 -1
- package/dist/sampler.d.ts +2 -1
- package/dist/sampler.d.ts.map +1 -1
- package/dist/sampler.js +23 -20
- package/dist/sampler.js.map +1 -1
- package/dist/texture.d.ts +2 -1
- package/dist/texture.d.ts.map +1 -1
- package/dist/texture.js +75 -40
- package/dist/texture.js.map +1 -1
- package/dist/videoTexture.d.ts +2 -1
- package/dist/videoTexture.d.ts.map +1 -1
- package/dist/videoTexture.js +13 -11
- package/dist/videoTexture.js.map +1 -1
- package/package.json +4 -4
- package/src/texture.test.ts +7 -7
- package/src/voxelGrid.test.ts +10 -10
package/README.md
CHANGED
|
@@ -13,5 +13,5 @@ Import the supported application-facing API from `@flighthq/texture`. The `@flig
|
|
|
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/texture@0.5.1-next.
|
|
17
|
-
- [License](https://github.com/flighthq/flight/blob/
|
|
16
|
+
- [Source for @flighthq/texture@0.5.1-next.903.f434bc2](https://github.com/flighthq/flight/tree/f434bc233778d75aeea61995df3a8cfaec459a85/packages/texture)
|
|
17
|
+
- [License](https://github.com/flighthq/flight/blob/f434bc233778d75aeea61995df3a8cfaec459a85/LICENSE.md)
|
package/dist/contract.d.ts
CHANGED
|
@@ -5,4 +5,5 @@ export * from './texture';
|
|
|
5
5
|
export * from './videoTexture';
|
|
6
6
|
export * from './voxelGrid';
|
|
7
7
|
export { getTextureSampleColorSpace, shouldDecodeTextureOnSample, shouldPremultiplyTextureOnUpload, } from './textureColorSpace';
|
|
8
|
+
export { initializeSampler } from './sampler';
|
|
8
9
|
//# sourceMappingURL=contract.d.ts.map
|
package/dist/contract.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,gCAAgC,GACjC,MAAM,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,gCAAgC,GACjC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC"}
|
package/dist/contract.js
CHANGED
|
@@ -5,4 +5,5 @@ export * from './texture';
|
|
|
5
5
|
export * from './videoTexture';
|
|
6
6
|
export * from './voxelGrid';
|
|
7
7
|
export { getTextureSampleColorSpace, shouldDecodeTextureOnSample, shouldPremultiplyTextureOnUpload, } from './textureColorSpace';
|
|
8
|
+
export { initializeSampler } from './sampler';
|
|
8
9
|
//# sourceMappingURL=contract.js.map
|
package/dist/contract.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,gCAAgC,GACjC,MAAM,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,gCAAgC,GACjC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC"}
|
package/dist/renderTexture.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import type { CreateRenderTextureOptions, RenderTexture } from '@flighthq/types/contract';
|
|
1
|
+
import type { CreateRenderTextureOptions, EntityConstruction, RenderTarget, RenderTargetColorSpace, RenderTexture } from '@flighthq/types/contract';
|
|
2
2
|
export declare function createRenderTexture(options: Readonly<CreateRenderTextureOptions>): RenderTexture;
|
|
3
|
+
export declare function initializeRenderTextureTarget(out: EntityConstruction<RenderTarget>, options: Readonly<CreateRenderTextureOptions>, colorSpace: RenderTargetColorSpace): void;
|
|
3
4
|
//# sourceMappingURL=renderTexture.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderTexture.d.ts","sourceRoot":"","sources":["../src/renderTexture.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"renderTexture.d.ts","sourceRoot":"","sources":["../src/renderTexture.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,0BAA0B,EAC1B,kBAAkB,EAClB,YAAY,EACZ,sBAAsB,EACtB,aAAa,EACd,MAAM,0BAA0B,CAAC;AASlC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,0BAA0B,CAAC,GAAG,aAAa,CAwBhG;AAED,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,kBAAkB,CAAC,YAAY,CAAC,EACrC,OAAO,EAAE,QAAQ,CAAC,0BAA0B,CAAC,EAC7C,UAAU,EAAE,sBAAsB,GACjC,IAAI,CAaN"}
|
package/dist/renderTexture.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
|
|
2
2
|
import { RenderTargetTextureSourceKind } from '@flighthq/types/contract';
|
|
3
3
|
import { copySampler } from './sampler';
|
|
4
4
|
import { createTexture } from './texture';
|
|
@@ -12,20 +12,11 @@ export function createRenderTexture(options) {
|
|
|
12
12
|
flipX: options.flipX ?? false,
|
|
13
13
|
flipY: options.flipY ?? false,
|
|
14
14
|
dimension: '2d',
|
|
15
|
-
source:
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
clearDepth: options.clearDepth,
|
|
21
|
-
depth: options.depth,
|
|
22
|
-
format: options.format,
|
|
23
|
-
height: options.height,
|
|
24
|
-
kind: RenderTargetTextureSourceKind,
|
|
25
|
-
sampleCount: options.sampleCount,
|
|
26
|
-
version: 0,
|
|
27
|
-
width: options.width,
|
|
28
|
-
}),
|
|
15
|
+
source: (() => {
|
|
16
|
+
const out = allocateEntity();
|
|
17
|
+
initializeRenderTextureTarget(out, options, colorSpace);
|
|
18
|
+
return finishEntity(out);
|
|
19
|
+
})(),
|
|
29
20
|
uvRotation: options.uvRotation,
|
|
30
21
|
});
|
|
31
22
|
if (options.sampler !== undefined)
|
|
@@ -40,4 +31,18 @@ export function createRenderTexture(options) {
|
|
|
40
31
|
}
|
|
41
32
|
return texture;
|
|
42
33
|
}
|
|
34
|
+
export function initializeRenderTextureTarget(out, options, colorSpace) {
|
|
35
|
+
out.colorAttachments = options.colorAttachments;
|
|
36
|
+
out.colorFormats = options.colorFormats;
|
|
37
|
+
out.colorSpace = colorSpace;
|
|
38
|
+
out.clearColors = options.clearColors;
|
|
39
|
+
out.clearDepth = options.clearDepth;
|
|
40
|
+
out.depth = options.depth;
|
|
41
|
+
out.format = options.format;
|
|
42
|
+
out.height = options.height;
|
|
43
|
+
out.kind = RenderTargetTextureSourceKind;
|
|
44
|
+
out.sampleCount = options.sampleCount;
|
|
45
|
+
out.version = 0;
|
|
46
|
+
out.width = options.width;
|
|
47
|
+
}
|
|
43
48
|
//# sourceMappingURL=renderTexture.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderTexture.js","sourceRoot":"","sources":["../src/renderTexture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"renderTexture.js","sourceRoot":"","sources":["../src/renderTexture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAQzE,OAAO,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AAEzE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,qGAAqG;AACrG,oGAAoG;AACpG,yCAAyC;AACzC,MAAM,UAAU,mBAAmB,CAAC,OAA6C;IAC/E,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,QAAQ,CAAC;IAClD,MAAM,OAAO,GAAG,aAAa,CAAC;QAC5B,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,QAAQ;QAC1C,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;QAC7B,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;QAC7B,SAAS,EAAE,IAAI;QACf,MAAM,EAAE,CAAC,GAAG,EAAE;YACZ,MAAM,GAAG,GAAG,cAAc,EAAgB,CAAC;YAC3C,6BAA6B,CAAC,GAAG,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;YACxD,OAAO,YAAY,CAAC,GAAG,CAAiB,CAAC;QAC3C,CAAC,CAAC,EAAE;QACJ,UAAU,EAAE,OAAO,CAAC,UAAU;KAC/B,CAAkB,CAAC;IACpB,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS;QAAE,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACjF,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACnC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACtC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,GAAqC,EACrC,OAA6C,EAC7C,UAAkC;IAElC,GAAG,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAChD,GAAG,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IACxC,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;IAC5B,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IACtC,GAAG,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACpC,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC1B,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC5B,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC5B,GAAG,CAAC,IAAI,GAAG,6BAA6B,CAAC;IACzC,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IACtC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;IAChB,GAAG,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;AAC5B,CAAC"}
|
package/dist/sampler.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Sampler, SamplerLike } from '@flighthq/types/contract';
|
|
1
|
+
import type { Sampler, SamplerLike, EntityConstruction } from '@flighthq/types/contract';
|
|
2
2
|
export declare function cloneSampler(source: Readonly<SamplerLike>): Sampler;
|
|
3
3
|
export declare function copySampler(out: SamplerLike, source: Readonly<SamplerLike>): void;
|
|
4
4
|
export declare function createAnisotropicSampler(level: number): Sampler;
|
|
@@ -7,4 +7,5 @@ export declare function createPixelArtSampler(): Sampler;
|
|
|
7
7
|
export declare function createSampler(opts?: Readonly<Partial<SamplerLike>>): Sampler;
|
|
8
8
|
export declare function createTilingSampler(): Sampler;
|
|
9
9
|
export declare function equalsSampler(a: Readonly<SamplerLike> | null | undefined, b: Readonly<SamplerLike> | null | undefined): boolean;
|
|
10
|
+
export declare function initializeSampler(out: EntityConstruction<Sampler>, opts?: Readonly<Partial<SamplerLike>>): void;
|
|
10
11
|
//# sourceMappingURL=sampler.d.ts.map
|
package/dist/sampler.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sampler.d.ts","sourceRoot":"","sources":["../src/sampler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"sampler.d.ts","sourceRoot":"","sources":["../src/sampler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAIzF,wBAAgB,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,OAAO,CASnE;AAID,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAOjF;AAKD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE/D;AAID,wBAAgB,wBAAwB,IAAI,OAAO,CAElD;AAID,wBAAgB,qBAAqB,IAAI,OAAO,CAE/C;AAED,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,OAAO,CAI5E;AAID,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AAID,wBAAgB,aAAa,CAC3B,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,GAAG,SAAS,EAC3C,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,GAAG,SAAS,GAC1C,OAAO,CAWT;AAKD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,kBAAkB,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAO/G"}
|
package/dist/sampler.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
|
|
2
2
|
// Allocates an independent Sampler with the same sampling state. Sampler holds only plain values,
|
|
3
3
|
// so the clone shares nothing mutable with its source.
|
|
4
4
|
export function cloneSampler(source) {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
5
|
+
const out = allocateEntity();
|
|
6
|
+
out.anisotropy = source.anisotropy;
|
|
7
|
+
out.magFilter = source.magFilter;
|
|
8
|
+
out.minFilter = source.minFilter;
|
|
9
|
+
out.mipmaps = source.mipmaps;
|
|
10
|
+
out.wrapU = source.wrapU;
|
|
11
|
+
out.wrapV = source.wrapV;
|
|
12
|
+
return finishEntity(out);
|
|
13
13
|
}
|
|
14
14
|
// Copies every sampling field from source into out in place. Safe when out aliases source: all
|
|
15
15
|
// reads precede the writes implicitly because each field is read and written independently.
|
|
@@ -37,18 +37,10 @@ export function createClampLinearSampler() {
|
|
|
37
37
|
export function createPixelArtSampler() {
|
|
38
38
|
return createSampler({ magFilter: 'nearest', minFilter: 'nearest', mipmaps: false });
|
|
39
39
|
}
|
|
40
|
-
// Builds a Sampler with the AAA-default sampling state: clamp-to-edge on both axes, linear
|
|
41
|
-
// magnification, trilinear minification, a generated mip chain, and anisotropy disabled (1). Pass
|
|
42
|
-
// SamplerLike fields to override any of these.
|
|
43
40
|
export function createSampler(opts) {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
minFilter: opts?.minFilter ?? 'linear-mipmap-linear',
|
|
48
|
-
mipmaps: opts?.mipmaps ?? true,
|
|
49
|
-
wrapU: opts?.wrapU ?? 'clamp-to-edge',
|
|
50
|
-
wrapV: opts?.wrapV ?? 'clamp-to-edge',
|
|
51
|
-
});
|
|
41
|
+
const out = allocateEntity();
|
|
42
|
+
initializeSampler(out, opts);
|
|
43
|
+
return finishEntity(out);
|
|
52
44
|
}
|
|
53
45
|
// Tiling sampler: repeat wrap on both axes, trilinear filtering, mipmaps on. Suitable for
|
|
54
46
|
// seamless tiling surface textures (terrain, ground planes, repeating patterns).
|
|
@@ -68,4 +60,15 @@ export function equalsSampler(a, b) {
|
|
|
68
60
|
a.wrapU === b.wrapU &&
|
|
69
61
|
a.wrapV === b.wrapV));
|
|
70
62
|
}
|
|
63
|
+
// Builds a Sampler with the AAA-default sampling state: clamp-to-edge on both axes, linear
|
|
64
|
+
// magnification, trilinear minification, a generated mip chain, and anisotropy disabled (1). Pass
|
|
65
|
+
// SamplerLike fields to override any of these.
|
|
66
|
+
export function initializeSampler(out, opts) {
|
|
67
|
+
out.anisotropy = opts?.anisotropy ?? 1;
|
|
68
|
+
out.magFilter = opts?.magFilter ?? 'linear';
|
|
69
|
+
out.minFilter = opts?.minFilter ?? 'linear-mipmap-linear';
|
|
70
|
+
out.mipmaps = opts?.mipmaps ?? true;
|
|
71
|
+
out.wrapU = opts?.wrapU ?? 'clamp-to-edge';
|
|
72
|
+
out.wrapV = opts?.wrapV ?? 'clamp-to-edge';
|
|
73
|
+
}
|
|
71
74
|
//# sourceMappingURL=sampler.js.map
|
package/dist/sampler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sampler.js","sourceRoot":"","sources":["../src/sampler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"sampler.js","sourceRoot":"","sources":["../src/sampler.ts"],"names":[],"mappings":"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"}
|
package/dist/texture.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CreateTexture2DOptions, CreateTextureOptions, Matrix3Like, Texture, Texture2D, TextureLike, TextureSource, TextureSourceKind, TextureUvTransform, Vector2Like } from '@flighthq/types/contract';
|
|
1
|
+
import type { CreateTexture2DOptions, CreateTextureOptions, EntityConstruction, Matrix3Like, Texture, Texture2D, TextureLike, TextureSource, TextureSourceKind, TextureUvTransform, Vector2Like } from '@flighthq/types/contract';
|
|
2
2
|
export declare function cloneTexture(source: Readonly<TextureLike>): Texture;
|
|
3
3
|
export declare function copyTexture(out: TextureLike, source: Readonly<TextureLike>): void;
|
|
4
4
|
type CreateTexture2DArrayOptions = Extract<CreateTextureOptions, {
|
|
@@ -30,6 +30,7 @@ export declare function getTextureUvMatrix(out: Matrix3Like, texture: Readonly<T
|
|
|
30
30
|
export declare function getTextureWidth(texture: Readonly<TextureLike>): number;
|
|
31
31
|
export declare function hasTextureSource(texture: Readonly<TextureLike>): boolean;
|
|
32
32
|
export declare function hasTextureUvTransform(texture: Readonly<TextureUvTransform>): boolean;
|
|
33
|
+
export declare function initializeTexture2D(out: EntityConstruction<Texture2D>, opts?: Readonly<CreateTexture2DOptions>): void;
|
|
33
34
|
export declare function isTextureReady(texture: Readonly<TextureLike>): boolean;
|
|
34
35
|
export declare function resetTextureUvTransform(texture: TextureLike): void;
|
|
35
36
|
export declare function setTextureFlip(texture: TextureLike, flipX: boolean, flipY: boolean): void;
|
package/dist/texture.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"texture.d.ts","sourceRoot":"","sources":["../src/texture.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"texture.d.ts","sourceRoot":"","sources":["../src/texture.ts"],"names":[],"mappings":"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"}
|
package/dist/texture.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
|
|
2
2
|
import { cloneVector2, copyVector2, createVector2, inverseMatrix3 } from '@flighthq/geometry/contract';
|
|
3
3
|
import { cloneSampler, copySampler, createSampler, equalsSampler } from './sampler';
|
|
4
4
|
function getFirstTextureSource(texture) {
|
|
@@ -25,22 +25,34 @@ export function cloneTexture(source) {
|
|
|
25
25
|
version: source.version >>> 0,
|
|
26
26
|
};
|
|
27
27
|
switch (source.dimension) {
|
|
28
|
-
case '2d':
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
28
|
+
case '2d': {
|
|
29
|
+
const out = allocateEntity();
|
|
30
|
+
applyCommonTextureFields(out, common);
|
|
31
|
+
out.dimension = '2d';
|
|
32
|
+
out.source = source.source;
|
|
33
|
+
return finishEntity(out);
|
|
34
|
+
}
|
|
35
|
+
case '2d-array': {
|
|
36
|
+
const out = allocateEntity();
|
|
37
|
+
applyCommonTextureFields(out, common);
|
|
38
|
+
out.dimension = '2d-array';
|
|
39
|
+
out.sources = source.sources.slice();
|
|
40
|
+
return finishEntity(out);
|
|
41
|
+
}
|
|
42
|
+
case '3d': {
|
|
43
|
+
const out = allocateEntity();
|
|
44
|
+
applyCommonTextureFields(out, common);
|
|
45
|
+
out.dimension = '3d';
|
|
46
|
+
out.source = source.source;
|
|
47
|
+
return finishEntity(out);
|
|
48
|
+
}
|
|
49
|
+
case 'cube': {
|
|
50
|
+
const out = allocateEntity();
|
|
51
|
+
applyCommonTextureFields(out, common);
|
|
52
|
+
out.dimension = 'cube';
|
|
53
|
+
out.sources = source.sources.slice();
|
|
54
|
+
return finishEntity(out);
|
|
55
|
+
}
|
|
44
56
|
}
|
|
45
57
|
}
|
|
46
58
|
// Copies every mutable field from source into a same-dimension out. Dimension is creation-time
|
|
@@ -90,27 +102,37 @@ export function createTexture(opts) {
|
|
|
90
102
|
const common = createCommonTextureFields(opts);
|
|
91
103
|
let texture;
|
|
92
104
|
switch (opts?.dimension) {
|
|
93
|
-
case '2d-array':
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
105
|
+
case '2d-array': {
|
|
106
|
+
const out = allocateEntity();
|
|
107
|
+
applyCommonTextureFields(out, common);
|
|
108
|
+
out.dimension = '2d-array';
|
|
109
|
+
out.sources = opts.sources?.slice() ?? [];
|
|
110
|
+
texture = finishEntity(out);
|
|
99
111
|
break;
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
112
|
+
}
|
|
113
|
+
case '3d': {
|
|
114
|
+
const out = allocateEntity();
|
|
115
|
+
applyCommonTextureFields(out, common);
|
|
116
|
+
out.dimension = '3d';
|
|
117
|
+
out.source = opts.source ?? null;
|
|
118
|
+
texture = finishEntity(out);
|
|
106
119
|
break;
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
120
|
+
}
|
|
121
|
+
case 'cube': {
|
|
122
|
+
const out = allocateEntity();
|
|
123
|
+
applyCommonTextureFields(out, common);
|
|
124
|
+
out.dimension = 'cube';
|
|
125
|
+
out.sources = (opts.sources?.slice() ?? [
|
|
126
|
+
null,
|
|
127
|
+
null,
|
|
128
|
+
null,
|
|
129
|
+
null,
|
|
130
|
+
null,
|
|
131
|
+
null,
|
|
132
|
+
]);
|
|
133
|
+
texture = finishEntity(out);
|
|
113
134
|
break;
|
|
135
|
+
}
|
|
114
136
|
// The 2D case returns straight from the leaf, which attaches the resource itself — falling through
|
|
115
137
|
// to the shared attach below would push the same texture onto the resource twice.
|
|
116
138
|
default:
|
|
@@ -124,11 +146,9 @@ export function createTexture(opts) {
|
|
|
124
146
|
// runs to serve every variant. `createTexture` composes this one for its own 2D case, so there is a
|
|
125
147
|
// single place that decides what a 2D texture is.
|
|
126
148
|
export function createTexture2D(opts) {
|
|
127
|
-
const
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
source: opts?.source ?? null,
|
|
131
|
-
});
|
|
149
|
+
const out = allocateEntity();
|
|
150
|
+
initializeTexture2D(out, opts);
|
|
151
|
+
const texture = finishEntity(out);
|
|
132
152
|
attachTextureToResource(texture, opts?.resource);
|
|
133
153
|
return texture;
|
|
134
154
|
}
|
|
@@ -228,6 +248,11 @@ export function hasTextureUvTransform(texture) {
|
|
|
228
248
|
texture.uvOffset.y !== 0 ||
|
|
229
249
|
texture.uvRotation !== 0);
|
|
230
250
|
}
|
|
251
|
+
export function initializeTexture2D(out, opts) {
|
|
252
|
+
applyCommonTextureFields(out, createCommonTextureFields(opts));
|
|
253
|
+
out.dimension = '2d';
|
|
254
|
+
out.source = opts?.source ?? null;
|
|
255
|
+
}
|
|
231
256
|
// True once the texture references a pixel source. A null source is treated as an absent slot by
|
|
232
257
|
// materials, so this is the gate a material samples behind.
|
|
233
258
|
export function isTextureReady(texture) {
|
|
@@ -326,6 +351,16 @@ export function transformTextureUv(out, texture, u, v) {
|
|
|
326
351
|
out.y = sx * sinR * fu + sy * cosR * fv + ty;
|
|
327
352
|
}
|
|
328
353
|
// Every dimension shares these, so the leaf and the switching constructor cannot drift on a default.
|
|
354
|
+
function applyCommonTextureFields(out, fields) {
|
|
355
|
+
out.colorSpace = fields.colorSpace;
|
|
356
|
+
out.flipX = fields.flipX;
|
|
357
|
+
out.flipY = fields.flipY;
|
|
358
|
+
out.sampler = fields.sampler;
|
|
359
|
+
out.uvOffset = fields.uvOffset;
|
|
360
|
+
out.uvRotation = fields.uvRotation;
|
|
361
|
+
out.uvScale = fields.uvScale;
|
|
362
|
+
out.version = fields.version;
|
|
363
|
+
}
|
|
329
364
|
function createCommonTextureFields(opts) {
|
|
330
365
|
return {
|
|
331
366
|
colorSpace: opts?.colorSpace ?? 'srgb',
|
package/dist/texture.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"texture.js","sourceRoot":"","sources":["../src/texture.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"texture.js","sourceRoot":"","sources":["../src/texture.ts"],"names":[],"mappings":"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"}
|
package/dist/videoTexture.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Matrix3Like, Texture, Texture2D, TextureLike, VideoResource } from '@flighthq/types/contract';
|
|
1
|
+
import type { EntityConstruction, HostImageSource, ImageResource, Matrix3Like, Texture, Texture2D, TextureLike, VideoResource } from '@flighthq/types/contract';
|
|
2
2
|
export declare function advanceVideoTexture(texture: TextureLike): number;
|
|
3
3
|
export declare function cloneVideoTexture(source: Readonly<TextureLike>): Texture;
|
|
4
4
|
export declare function copyVideoTexture(out: TextureLike, source: Readonly<TextureLike>): void;
|
|
@@ -8,6 +8,7 @@ export declare function getVideoTextureHeight(texture: Readonly<TextureLike>): n
|
|
|
8
8
|
export declare function getVideoTextureInverseUvMatrix(out: Matrix3Like, texture: Readonly<TextureLike>): void;
|
|
9
9
|
export declare function getVideoTextureUvMatrix(out: Matrix3Like, texture: Readonly<TextureLike>): void;
|
|
10
10
|
export declare function getVideoTextureWidth(texture: Readonly<TextureLike>): number;
|
|
11
|
+
export declare function initializeVideoImageResource(out: EntityConstruction<ImageResource>, source: HostImageSource, version: number): void;
|
|
11
12
|
export declare function isVideoTextureFrameReady(texture: Readonly<TextureLike>): boolean;
|
|
12
13
|
export declare function resetVideoTextureFrame(texture: TextureLike): void;
|
|
13
14
|
export declare function setVideoTextureSource(texture: TextureLike, source: VideoResource): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"videoTexture.d.ts","sourceRoot":"","sources":["../src/videoTexture.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"videoTexture.d.ts","sourceRoot":"","sources":["../src/videoTexture.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,WAAW,EACX,OAAO,EACP,SAAS,EACT,WAAW,EACX,aAAa,EACd,MAAM,0BAA0B,CAAC;AAOlC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,CAOhE;AAGD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,OAAO,CAExE;AAGD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAEtF;AAKD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,SAAS,CAQ1G;AAID,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,SAAS,GAAG,IAAI,CAG5D;AAGD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,MAAM,CAG5E;AAGD,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAGrG;AAGD,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAE9F;AAGD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,MAAM,CAG3E;AAED,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,kBAAkB,CAAC,aAAa,CAAC,EACtC,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,MAAM,GACd,IAAI,CAQN;AAGD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,OAAO,CAKhF;AAGD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAIjE;AAID,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CAIvF"}
|
package/dist/videoTexture.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
|
|
2
2
|
import { inverseMatrix3 } from '@flighthq/geometry/contract';
|
|
3
3
|
import { ImageTextureSourceKind } from '@flighthq/types/contract';
|
|
4
4
|
import { cloneTexture, copyTexture, createTexture, getTextureUvMatrix } from './texture';
|
|
@@ -58,6 +58,15 @@ export function getVideoTextureWidth(texture) {
|
|
|
58
58
|
const element = getVideoElement(texture);
|
|
59
59
|
return element !== null && element.videoWidth > 0 ? element.videoWidth : -1;
|
|
60
60
|
}
|
|
61
|
+
export function initializeVideoImageResource(out, source, version) {
|
|
62
|
+
out.alphaType = 'straight';
|
|
63
|
+
out.gamut = 'srgb';
|
|
64
|
+
out.height = 0;
|
|
65
|
+
out.kind = ImageTextureSourceKind;
|
|
66
|
+
out.source = source;
|
|
67
|
+
out.version = version;
|
|
68
|
+
out.width = 0;
|
|
69
|
+
}
|
|
61
70
|
// True once the borrowed host element exposes a decoded current frame and non-zero dimensions.
|
|
62
71
|
export function isVideoTextureFrameReady(texture) {
|
|
63
72
|
const element = getVideoElement(texture);
|
|
@@ -81,17 +90,10 @@ export function setVideoTextureSource(texture, source) {
|
|
|
81
90
|
function createVideoImageResource(source) {
|
|
82
91
|
if (source.element === null)
|
|
83
92
|
return null;
|
|
84
|
-
const image =
|
|
85
|
-
|
|
86
|
-
alphaType: 'straight',
|
|
87
|
-
gamut: 'srgb',
|
|
88
|
-
kind: ImageTextureSourceKind,
|
|
89
|
-
source: source.element,
|
|
90
|
-
version: INITIAL_VIDEO_VERSION,
|
|
91
|
-
width: 0,
|
|
92
|
-
});
|
|
93
|
+
const image = allocateEntity();
|
|
94
|
+
initializeVideoImageResource(image, source.element, INITIAL_VIDEO_VERSION);
|
|
93
95
|
updateVideoImageSize(image);
|
|
94
|
-
return image;
|
|
96
|
+
return finishEntity(image);
|
|
95
97
|
}
|
|
96
98
|
function getVideoElement(texture) {
|
|
97
99
|
return getVideoImage(texture)?.source ?? null;
|
package/dist/videoTexture.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"videoTexture.js","sourceRoot":"","sources":["../src/videoTexture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"videoTexture.js","sourceRoot":"","sources":["../src/videoTexture.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flighthq/texture",
|
|
3
|
-
"version": "0.5.1-next.
|
|
3
|
+
"version": "0.5.1-next.903.f434bc2",
|
|
4
4
|
"author": "Joshua Granick and other contributors",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -38,9 +38,9 @@
|
|
|
38
38
|
"clean:dist": "tsx ../../scripts/clean-package-dist.ts"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@flighthq/entity": "0.5.1-next.
|
|
42
|
-
"@flighthq/geometry": "0.5.1-next.
|
|
43
|
-
"@flighthq/types": "0.5.1-next.
|
|
41
|
+
"@flighthq/entity": "0.5.1-next.903.f434bc2",
|
|
42
|
+
"@flighthq/geometry": "0.5.1-next.903.f434bc2",
|
|
43
|
+
"@flighthq/types": "0.5.1-next.903.f434bc2"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@flighthq/video": "*",
|
package/src/texture.test.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
|
|
2
2
|
import { createMatrix3, createVector2, inverseMatrix3 } from '@flighthq/geometry/contract';
|
|
3
3
|
import type { ImageResource, RenderTarget, Texture2D } from '@flighthq/types/contract';
|
|
4
4
|
import { ImageTextureSourceKind, RenderTargetTextureSourceKind } from '@flighthq/types/contract';
|
|
@@ -32,12 +32,12 @@ import {
|
|
|
32
32
|
const fakeImage = { height: 64, kind: ImageTextureSourceKind, width: 32 } as ImageResource;
|
|
33
33
|
|
|
34
34
|
function makeRenderTarget(width: number, height: number): RenderTarget {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
35
|
+
const out = allocateEntity<RenderTarget>();
|
|
36
|
+
out.height = height;
|
|
37
|
+
out.kind = RenderTargetTextureSourceKind;
|
|
38
|
+
out.version = 0;
|
|
39
|
+
out.width = width;
|
|
40
|
+
return finishEntity(out) as RenderTarget;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
// Applies a column-major 3×3 uv matrix to (u, v, 1), writing the transformed coordinate into out.
|
package/src/voxelGrid.test.ts
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
|
|
2
2
|
import type { VoxelGrid } from '@flighthq/types/contract';
|
|
3
3
|
import { VoxelGridTextureSourceKind } from '@flighthq/types/contract';
|
|
4
4
|
|
|
5
5
|
import { invalidateVoxelGrid } from './voxelGrid';
|
|
6
6
|
|
|
7
7
|
function voxelGrid(version: number): VoxelGrid {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
8
|
+
const out = allocateEntity<VoxelGrid>();
|
|
9
|
+
out.data = new Uint8Array(32);
|
|
10
|
+
out.depth = 2;
|
|
11
|
+
out.format = 'rgba8unorm' as const;
|
|
12
|
+
out.height = 2;
|
|
13
|
+
out.kind = VoxelGridTextureSourceKind;
|
|
14
|
+
out.version = version;
|
|
15
|
+
out.width = 2;
|
|
16
|
+
return finishEntity(out) as VoxelGrid;
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
describe('invalidateVoxelGrid', () => {
|