@flighthq/texture 0.3.0-next.906.07cea63 → 0.3.1-next.209.43ef1bc
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/dist/contract.d.ts +2 -0
- package/dist/contract.d.ts.map +1 -1
- package/dist/contract.js +2 -0
- package/dist/contract.js.map +1 -1
- package/dist/cubeTexture.d.ts +8 -8
- package/dist/cubeTexture.d.ts.map +1 -1
- package/dist/cubeTexture.js +21 -60
- package/dist/cubeTexture.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/renderTexture.d.ts +2 -2
- package/dist/renderTexture.d.ts.map +1 -1
- package/dist/renderTexture.js +18 -17
- package/dist/renderTexture.js.map +1 -1
- package/dist/texture.d.ts +29 -3
- package/dist/texture.d.ts.map +1 -1
- package/dist/texture.js +160 -40
- package/dist/texture.js.map +1 -1
- package/dist/textureColorSpace.d.ts +5 -0
- package/dist/textureColorSpace.d.ts.map +1 -0
- package/dist/textureColorSpace.js +40 -0
- package/dist/textureColorSpace.js.map +1 -0
- package/dist/videoTexture.d.ts.map +1 -1
- package/dist/videoTexture.js +28 -32
- package/dist/videoTexture.js.map +1 -1
- package/dist/voxelGrid.d.ts +3 -0
- package/dist/voxelGrid.d.ts.map +1 -0
- package/dist/voxelGrid.js +5 -0
- package/dist/voxelGrid.js.map +1 -0
- package/package.json +6 -4
- package/src/cubeTexture.test.ts +32 -31
- package/src/renderTexture.test.ts +6 -6
- package/src/texture.test.ts +136 -40
- package/src/textureColorSpace.test.ts +46 -0
- package/src/videoTexture.test.ts +15 -13
- package/src/voxelGrid.test.ts +37 -0
package/dist/contract.d.ts
CHANGED
|
@@ -3,4 +3,6 @@ export * from './renderTexture';
|
|
|
3
3
|
export * from './sampler';
|
|
4
4
|
export * from './texture';
|
|
5
5
|
export * from './videoTexture';
|
|
6
|
+
export * from './voxelGrid';
|
|
7
|
+
export { getTextureSampleColorSpace, shouldDecodeTextureOnSample, shouldPremultiplyTextureOnUpload, } from './textureColorSpace';
|
|
6
8
|
//# 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"}
|
|
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"}
|
package/dist/contract.js
CHANGED
|
@@ -3,4 +3,6 @@ export * from './renderTexture';
|
|
|
3
3
|
export * from './sampler';
|
|
4
4
|
export * from './texture';
|
|
5
5
|
export * from './videoTexture';
|
|
6
|
+
export * from './voxelGrid';
|
|
7
|
+
export { getTextureSampleColorSpace, shouldDecodeTextureOnSample, shouldPremultiplyTextureOnUpload, } from './textureColorSpace';
|
|
6
8
|
//# 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"}
|
|
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"}
|
package/dist/cubeTexture.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare function cloneCubeTexture(source: Readonly<
|
|
3
|
-
export declare function copyCubeTexture(out:
|
|
4
|
-
export declare function createCubeTexture(opts?: Readonly<
|
|
5
|
-
export declare function equalsCubeTexture(a: Readonly<
|
|
6
|
-
export declare function getCubeTextureFaceSize(cube: Readonly<
|
|
7
|
-
export declare function isCubeTextureComplete(cube: Readonly<
|
|
8
|
-
export declare function setCubeTextureFace(cube:
|
|
1
|
+
import type { CreateCubeTextureOptions, CubeTexture, TextureSource } from '@flighthq/types/contract';
|
|
2
|
+
export declare function cloneCubeTexture(source: Readonly<CubeTexture>): CubeTexture;
|
|
3
|
+
export declare function copyCubeTexture(out: CubeTexture, source: Readonly<CubeTexture>): void;
|
|
4
|
+
export declare function createCubeTexture(opts?: Readonly<CreateCubeTextureOptions>): CubeTexture;
|
|
5
|
+
export declare function equalsCubeTexture(a: Readonly<CubeTexture> | null | undefined, b: Readonly<CubeTexture> | null | undefined): boolean;
|
|
6
|
+
export declare function getCubeTextureFaceSize(cube: Readonly<CubeTexture>): number;
|
|
7
|
+
export declare function isCubeTextureComplete(cube: Readonly<CubeTexture>): boolean;
|
|
8
|
+
export declare function setCubeTextureFace(cube: CubeTexture, faceIndex: number, source: TextureSource | null): void;
|
|
9
9
|
//# sourceMappingURL=cubeTexture.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cubeTexture.d.ts","sourceRoot":"","sources":["../src/cubeTexture.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cubeTexture.d.ts","sourceRoot":"","sources":["../src/cubeTexture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,WAAW,EACX,aAAa,EAEd,MAAM,0BAA0B,CAAC;AASlC,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,WAAW,CAE3E;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,CAErF;AAED,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,wBAAwB,CAAC,GAAG,WAAW,CAOxF;AAED,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,GAAG,SAAS,EAC3C,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,GAAG,SAAS,GAC1C,OAAO,CAGT;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,MAAM,CAO1E;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,OAAO,CAE1E;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI,CAK3G"}
|
package/dist/cubeTexture.js
CHANGED
|
@@ -1,83 +1,44 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { cloneSampler } from './sampler';
|
|
2
|
+
import { cloneTexture, copyTexture, createTexture, equalsTexture } from './texture';
|
|
3
|
+
function getCubeSources(texture) {
|
|
4
|
+
return texture.sources;
|
|
5
|
+
}
|
|
6
6
|
export function cloneCubeTexture(source) {
|
|
7
|
-
return
|
|
8
|
-
colorSpace: source.colorSpace,
|
|
9
|
-
faces: source.faces.slice(),
|
|
10
|
-
sampler: cloneSampler(source.sampler),
|
|
11
|
-
});
|
|
7
|
+
return cloneTexture(source);
|
|
12
8
|
}
|
|
13
|
-
// Copies every CubeTexture field from source into out in place. Each face reference is shared;
|
|
14
|
-
// the Sampler is copied into out's existing Sampler entity (its identity is preserved). Safe when
|
|
15
|
-
// out aliases source: all input values are read into locals before any writes.
|
|
16
9
|
export function copyCubeTexture(out, source) {
|
|
17
|
-
|
|
18
|
-
const f0 = source.faces[0];
|
|
19
|
-
const f1 = source.faces[1];
|
|
20
|
-
const f2 = source.faces[2];
|
|
21
|
-
const f3 = source.faces[3];
|
|
22
|
-
const f4 = source.faces[4];
|
|
23
|
-
const f5 = source.faces[5];
|
|
24
|
-
copySampler(out.sampler, source.sampler);
|
|
25
|
-
out.colorSpace = colorSpace;
|
|
26
|
-
const faces = out.faces;
|
|
27
|
-
faces[0] = f0;
|
|
28
|
-
faces[1] = f1;
|
|
29
|
-
faces[2] = f2;
|
|
30
|
-
faces[3] = f3;
|
|
31
|
-
faces[4] = f4;
|
|
32
|
-
faces[5] = f5;
|
|
10
|
+
copyTexture(out, source);
|
|
33
11
|
}
|
|
34
|
-
// Builds a CubeTexture: six unbound faces (all null, in the canonical +X, -X, +Y, -Y, +Z, -Z
|
|
35
|
-
// order), a default Sampler, and 'srgb' color space (the environment-radiance default). Pass
|
|
36
|
-
// CubeTextureLike fields to override any of these; a supplied `faces` array is copied.
|
|
37
12
|
export function createCubeTexture(opts) {
|
|
38
|
-
return
|
|
13
|
+
return createTexture({
|
|
39
14
|
colorSpace: opts?.colorSpace ?? 'srgb',
|
|
40
|
-
|
|
41
|
-
|
|
15
|
+
sampler: opts?.sampler ? cloneSampler(opts.sampler) : undefined,
|
|
16
|
+
dimension: 'cube',
|
|
17
|
+
sources: opts?.sources ?? [null, null, null, null, null, null],
|
|
42
18
|
});
|
|
43
19
|
}
|
|
44
|
-
// True when both cube textures describe identical state: same color space, same sampler state, and
|
|
45
|
-
// the same face references in every slot. Returns false for null/undefined operands.
|
|
46
20
|
export function equalsCubeTexture(a, b) {
|
|
47
21
|
if (!a || !b)
|
|
48
22
|
return false;
|
|
49
|
-
|
|
50
|
-
return true;
|
|
51
|
-
if (a.colorSpace !== b.colorSpace)
|
|
52
|
-
return false;
|
|
53
|
-
if (!equalsSampler(a.sampler, b.sampler))
|
|
54
|
-
return false;
|
|
55
|
-
for (let i = 0; i < 6; i++) {
|
|
56
|
-
if (a.faces[i] !== b.faces[i])
|
|
57
|
-
return false;
|
|
58
|
-
}
|
|
59
|
-
return true;
|
|
23
|
+
return equalsTexture(a, b);
|
|
60
24
|
}
|
|
61
|
-
// Returns the pixel size (width = height for a cube face) of the first non-null face, or -1 when
|
|
62
|
-
// no face is bound. Cube faces are assumed square; width is used as the canonical face size.
|
|
63
25
|
export function getCubeTextureFaceSize(cube) {
|
|
26
|
+
const sources = getCubeSources(cube);
|
|
64
27
|
for (let i = 0; i < 6; i++) {
|
|
65
|
-
const face =
|
|
28
|
+
const face = sources[i];
|
|
66
29
|
if (face !== null)
|
|
67
30
|
return face.width;
|
|
68
31
|
}
|
|
69
32
|
return -1;
|
|
70
33
|
}
|
|
71
|
-
// True when all six faces are non-null. Materials and IBL pipelines (skybox, reflections) gate
|
|
72
|
-
// sampling behind this; an incomplete cube is treated as absent.
|
|
73
34
|
export function isCubeTextureComplete(cube) {
|
|
74
|
-
return cube.
|
|
35
|
+
return getCubeSources(cube).every((face) => face !== null);
|
|
75
36
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
cube.
|
|
37
|
+
export function setCubeTextureFace(cube, faceIndex, source) {
|
|
38
|
+
const sources = getCubeSources(cube);
|
|
39
|
+
if (sources[faceIndex] === source)
|
|
40
|
+
return;
|
|
41
|
+
sources[faceIndex] = source;
|
|
42
|
+
cube.version = (cube.version + 1) >>> 0;
|
|
82
43
|
}
|
|
83
44
|
//# sourceMappingURL=cubeTexture.js.map
|
package/dist/cubeTexture.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cubeTexture.js","sourceRoot":"","sources":["../src/cubeTexture.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cubeTexture.js","sourceRoot":"","sources":["../src/cubeTexture.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAEpF,SAAS,cAAc,CAAC,OAA8B;IACpD,OAAO,OAAO,CAAC,OAAO,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAA6B;IAC5D,OAAO,YAAY,CAAC,MAAM,CAAgB,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAgB,EAAE,MAA6B;IAC7E,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAyC;IACzE,OAAO,aAAa,CAAC;QACnB,UAAU,EAAE,IAAI,EAAE,UAAU,IAAI,MAAM;QACtC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;QAC/D,SAAS,EAAE,MAAM;QACjB,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;KAC/D,CAAgB,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,CAA2C,EAC3C,CAA2C;IAE3C,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3B,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAA2B;IAChE,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC;IACvC,CAAC;IACD,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAA2B;IAC/D,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAiB,EAAE,SAAiB,EAAE,MAA4B;IACnG,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,MAAM;QAAE,OAAO;IACzC,OAA+C,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC;IACrE,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AAC1C,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
export { advanceVideoTexture, cloneCubeTexture, cloneSampler, cloneTexture, cloneVideoTexture, copyCubeTexture, copySampler, copyTexture, copyVideoTexture, createAnisotropicSampler, createClampLinearSampler, createCubeTexture, createPixelArtSampler, createRenderTexture, createSampler, createTexture, createTilingSampler, createVideoTexture, equalsCubeTexture, equalsSampler, equalsTexture, getCubeTextureFaceSize, getTextureHeight, getTextureInverseUvMatrix, getTextureUvMatrix, getTextureWidth, getVideoTextureHeight, getVideoTextureInverseUvMatrix, getVideoTextureUvMatrix, getVideoTextureWidth, hasTextureUvTransform, isCubeTextureComplete, isTextureReady, isVideoTextureFrameReady, resetTextureUvTransform, resetVideoTextureFrame, setCubeTextureFace, setTextureFlip,
|
|
1
|
+
export { advanceVideoTexture, cloneCubeTexture, cloneSampler, cloneTexture, cloneVideoTexture, copyCubeTexture, copySampler, copyTexture, copyVideoTexture, createAnisotropicSampler, createClampLinearSampler, createCubeTexture, createPixelArtSampler, createRenderTexture, createSampler, createTexture, createTilingSampler, createVideoTexture, equalsCubeTexture, equalsSampler, equalsTexture, getCubeTextureFaceSize, getTextureSourceKind, getTextureSource, getTextureHeight, getTextureInverseUvMatrix, getTextureUvMatrix, getTextureWidth, getVideoTextureHeight, getVideoTextureInverseUvMatrix, getVideoTextureUvMatrix, getVideoTextureWidth, hasTextureSource, hasTextureUvTransform, isCubeTextureComplete, isTextureReady, isVideoTextureFrameReady, invalidateVoxelGrid, resetTextureUvTransform, resetVideoTextureFrame, setCubeTextureFace, setTextureFlip, setTextureSource, setTextureUvOffset, setTextureUvFromPixelRect, setTextureUvRotation, setTextureUvScale, setVideoTextureSource, transformTextureUv, } from './contract';
|
|
2
|
+
export { getTextureSampleColorSpace, shouldDecodeTextureOnSample, shouldPremultiplyTextureOnUpload, } from './textureColorSpace';
|
|
2
3
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,wBAAwB,EACxB,wBAAwB,EACxB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,yBAAyB,EACzB,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,8BAA8B,EAC9B,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EACrB,cAAc,EACd,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,wBAAwB,EACxB,wBAAwB,EACxB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,yBAAyB,EACzB,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,8BAA8B,EAC9B,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,cAAc,EACd,wBAAwB,EACxB,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,yBAAyB,EACzB,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,gCAAgC,GACjC,MAAM,qBAAqB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
export { advanceVideoTexture, cloneCubeTexture, cloneSampler, cloneTexture, cloneVideoTexture, copyCubeTexture, copySampler, copyTexture, copyVideoTexture, createAnisotropicSampler, createClampLinearSampler, createCubeTexture, createPixelArtSampler, createRenderTexture, createSampler, createTexture, createTilingSampler, createVideoTexture, equalsCubeTexture, equalsSampler, equalsTexture, getCubeTextureFaceSize, getTextureHeight, getTextureInverseUvMatrix, getTextureUvMatrix, getTextureWidth, getVideoTextureHeight, getVideoTextureInverseUvMatrix, getVideoTextureUvMatrix, getVideoTextureWidth, hasTextureUvTransform, isCubeTextureComplete, isTextureReady, isVideoTextureFrameReady, resetTextureUvTransform, resetVideoTextureFrame, setCubeTextureFace, setTextureFlip,
|
|
1
|
+
export { advanceVideoTexture, cloneCubeTexture, cloneSampler, cloneTexture, cloneVideoTexture, copyCubeTexture, copySampler, copyTexture, copyVideoTexture, createAnisotropicSampler, createClampLinearSampler, createCubeTexture, createPixelArtSampler, createRenderTexture, createSampler, createTexture, createTilingSampler, createVideoTexture, equalsCubeTexture, equalsSampler, equalsTexture, getCubeTextureFaceSize, getTextureSourceKind, getTextureSource, getTextureHeight, getTextureInverseUvMatrix, getTextureUvMatrix, getTextureWidth, getVideoTextureHeight, getVideoTextureInverseUvMatrix, getVideoTextureUvMatrix, getVideoTextureWidth, hasTextureSource, hasTextureUvTransform, isCubeTextureComplete, isTextureReady, isVideoTextureFrameReady, invalidateVoxelGrid, resetTextureUvTransform, resetVideoTextureFrame, setCubeTextureFace, setTextureFlip, setTextureSource, setTextureUvOffset, setTextureUvFromPixelRect, setTextureUvRotation, setTextureUvScale, setVideoTextureSource, transformTextureUv, } from './contract';
|
|
2
|
+
export { getTextureSampleColorSpace, shouldDecodeTextureOnSample, shouldPremultiplyTextureOnUpload, } from './textureColorSpace';
|
|
2
3
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,wBAAwB,EACxB,wBAAwB,EACxB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,yBAAyB,EACzB,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,8BAA8B,EAC9B,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EACrB,cAAc,EACd,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,wBAAwB,EACxB,wBAAwB,EACxB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,yBAAyB,EACzB,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,8BAA8B,EAC9B,uBAAuB,EACvB,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,cAAc,EACd,wBAAwB,EACxB,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,yBAAyB,EACzB,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,gCAAgC,GACjC,MAAM,qBAAqB,CAAC"}
|
package/dist/renderTexture.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { CreateRenderTextureOptions,
|
|
2
|
-
export declare function createRenderTexture(options: Readonly<CreateRenderTextureOptions>):
|
|
1
|
+
import type { CreateRenderTextureOptions, RenderTexture } from '@flighthq/types/contract';
|
|
2
|
+
export declare function createRenderTexture(options: Readonly<CreateRenderTextureOptions>): RenderTexture;
|
|
3
3
|
//# sourceMappingURL=renderTexture.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderTexture.d.ts","sourceRoot":"","sources":["../src/renderTexture.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"renderTexture.d.ts","sourceRoot":"","sources":["../src/renderTexture.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,0BAA0B,EAAgB,aAAa,EAAE,MAAM,0BAA0B,CAAC;AASxG,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,0BAA0B,CAAC,GAAG,aAAa,CAiChG"}
|
package/dist/renderTexture.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { createEntity } from '@flighthq/entity/contract';
|
|
2
|
+
import { RenderTargetTextureSourceKind } from '@flighthq/types/contract';
|
|
1
3
|
import { copySampler } from './sampler';
|
|
2
4
|
import { createTexture } from './texture';
|
|
3
|
-
// Creates a universal Texture with a GPU-origin
|
|
5
|
+
// Creates a universal Texture with a GPU-origin render-target source. Backend allocation stays lazy;
|
|
4
6
|
// renderIntoGlRenderTexture realizes the target in one state and resolveGlTexture later returns its
|
|
5
7
|
// color attachment without a CPU upload.
|
|
6
8
|
export function createRenderTexture(options) {
|
|
@@ -9,22 +11,21 @@ export function createRenderTexture(options) {
|
|
|
9
11
|
colorSpace: options.colorSpace ?? 'linear',
|
|
10
12
|
flipX: options.flipX ?? false,
|
|
11
13
|
flipY: options.flipY ?? false,
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
},
|
|
14
|
+
dimension: '2d',
|
|
15
|
+
source: createEntity({
|
|
16
|
+
colorAttachments: options.colorAttachments,
|
|
17
|
+
colorFormats: options.colorFormats,
|
|
18
|
+
colorSpace,
|
|
19
|
+
clearColors: options.clearColors,
|
|
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
|
+
}),
|
|
28
29
|
uvRotation: options.uvRotation,
|
|
29
30
|
});
|
|
30
31
|
if (options.sampler !== undefined)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderTexture.js","sourceRoot":"","sources":["../src/renderTexture.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"renderTexture.js","sourceRoot":"","sources":["../src/renderTexture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,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,YAAY,CAAC;YACnB,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,UAAU;YACV,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI,EAAE,6BAA6B;YACnC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,OAAO,EAAE,CAAC;YACV,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAiB;QAClB,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"}
|
package/dist/texture.d.ts
CHANGED
|
@@ -1,19 +1,45 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { CreateTextureOptions, TextureSource, Matrix3Like, Texture, Texture2D, TextureSourceKind, TextureLike, 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 CreateTexture2DOptions = Extract<CreateTextureOptions, {
|
|
5
|
+
dimension?: '2d';
|
|
6
|
+
}>;
|
|
7
|
+
type CreateTexture2DArrayOptions = Extract<CreateTextureOptions, {
|
|
8
|
+
dimension: '2d-array';
|
|
9
|
+
}>;
|
|
10
|
+
type CreateTexture3DOptions = Extract<CreateTextureOptions, {
|
|
11
|
+
dimension: '3d';
|
|
12
|
+
}>;
|
|
13
|
+
type CreateTextureCubeOptions = Extract<CreateTextureOptions, {
|
|
14
|
+
dimension: 'cube';
|
|
15
|
+
}>;
|
|
16
|
+
export declare function createTexture(opts?: Readonly<CreateTexture2DOptions>): Texture2D;
|
|
17
|
+
export declare function createTexture(opts: Readonly<CreateTexture2DArrayOptions>): Extract<Texture, {
|
|
18
|
+
dimension: '2d-array';
|
|
19
|
+
}>;
|
|
20
|
+
export declare function createTexture(opts: Readonly<CreateTexture3DOptions>): Extract<Texture, {
|
|
21
|
+
dimension: '3d';
|
|
22
|
+
}>;
|
|
23
|
+
export declare function createTexture(opts: Readonly<CreateTextureCubeOptions>): Extract<Texture, {
|
|
24
|
+
dimension: 'cube';
|
|
25
|
+
}>;
|
|
5
26
|
export declare function equalsTexture(a: Readonly<TextureLike> | null | undefined, b: Readonly<TextureLike> | null | undefined): boolean;
|
|
6
27
|
export declare function getTextureHeight(texture: Readonly<TextureLike>): number;
|
|
7
28
|
export declare function getTextureInverseUvMatrix(out: Matrix3Like, texture: Readonly<TextureLike>): void;
|
|
29
|
+
export declare function getTextureSource(texture: Readonly<TextureLike>): TextureSource | null;
|
|
30
|
+
export declare function getTextureSourceKind(texture: Readonly<TextureLike>): TextureSourceKind | null;
|
|
8
31
|
export declare function getTextureUvMatrix(out: Matrix3Like, texture: Readonly<TextureUvTransform>): void;
|
|
9
32
|
export declare function getTextureWidth(texture: Readonly<TextureLike>): number;
|
|
33
|
+
export declare function hasTextureSource(texture: Readonly<TextureLike>): boolean;
|
|
10
34
|
export declare function hasTextureUvTransform(texture: Readonly<TextureUvTransform>): boolean;
|
|
11
35
|
export declare function isTextureReady(texture: Readonly<TextureLike>): boolean;
|
|
12
36
|
export declare function resetTextureUvTransform(texture: TextureLike): void;
|
|
13
37
|
export declare function setTextureFlip(texture: TextureLike, flipX: boolean, flipY: boolean): void;
|
|
14
|
-
export declare function
|
|
38
|
+
export declare function setTextureSource(texture: TextureLike, source: TextureSource | null): void;
|
|
39
|
+
export declare function setTextureUvFromPixelRect(texture: TextureLike, x: number, y: number, width: number, height: number): void;
|
|
15
40
|
export declare function setTextureUvOffset(texture: TextureLike, x: number, y: number): void;
|
|
16
41
|
export declare function setTextureUvRotation(texture: TextureLike, radians: number): void;
|
|
17
42
|
export declare function setTextureUvScale(texture: TextureLike, x: number, y: number): void;
|
|
18
43
|
export declare function transformTextureUv(out: Vector2Like, texture: Readonly<TextureLike>, u: number, v: number): void;
|
|
44
|
+
export {};
|
|
19
45
|
//# sourceMappingURL=texture.d.ts.map
|
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,aAAa,EACb,WAAW,EACX,OAAO,EACP,WAAW,EACX,kBAAkB,EAClB,WAAW,EACZ,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"texture.d.ts","sourceRoot":"","sources":["../src/texture.ts"],"names":[],"mappings":"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"}
|