@flighthq/render-gl 0.2.1-next.840.857425c → 0.3.0-next.906.07cea63
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 +24 -0
- package/dist/contract.d.ts.map +1 -0
- package/dist/contract.js +24 -0
- package/dist/contract.js.map +1 -0
- package/dist/enableGlRenderTextureGuards.d.ts +4 -0
- package/dist/enableGlRenderTextureGuards.d.ts.map +1 -0
- package/dist/enableGlRenderTextureGuards.js +34 -0
- package/dist/enableGlRenderTextureGuards.js.map +1 -0
- package/dist/glBackground.d.ts +1 -1
- package/dist/glBackground.d.ts.map +1 -1
- package/dist/glCompressedTexture.d.ts +1 -1
- package/dist/glCompressedTexture.d.ts.map +1 -1
- package/dist/glCompressedTexture.js +1 -1
- package/dist/glCompressedTexture.js.map +1 -1
- package/dist/glDraw.d.ts +5 -4
- package/dist/glDraw.d.ts.map +1 -1
- package/dist/glDraw.js +93 -77
- package/dist/glDraw.js.map +1 -1
- package/dist/glFullscreenPass.d.ts +1 -1
- package/dist/glFullscreenPass.d.ts.map +1 -1
- package/dist/glLinearToSrgbPass.d.ts +1 -1
- package/dist/glLinearToSrgbPass.d.ts.map +1 -1
- package/dist/glMaterialRegistry.d.ts +1 -1
- package/dist/glMaterialRegistry.d.ts.map +1 -1
- package/dist/glMaterialRegistry.js +3 -3
- package/dist/glMaterialRegistry.js.map +1 -1
- package/dist/glPresentRenderTarget.d.ts +1 -1
- package/dist/glPresentRenderTarget.d.ts.map +1 -1
- package/dist/glReadback.d.ts +1 -1
- package/dist/glReadback.d.ts.map +1 -1
- package/dist/glRenderPass.d.ts +1 -1
- package/dist/glRenderPass.d.ts.map +1 -1
- package/dist/glRenderPass.js +1 -1
- package/dist/glRenderPass.js.map +1 -1
- package/dist/glRenderState.d.ts +1 -1
- package/dist/glRenderState.d.ts.map +1 -1
- package/dist/glRenderState.js +13 -11
- package/dist/glRenderState.js.map +1 -1
- package/dist/glRenderStateBracket.d.ts +5 -0
- package/dist/glRenderStateBracket.d.ts.map +1 -0
- package/dist/glRenderStateBracket.js +111 -0
- package/dist/glRenderStateBracket.js.map +1 -0
- package/dist/glRenderTarget.d.ts +1 -1
- package/dist/glRenderTarget.d.ts.map +1 -1
- package/dist/glRenderTarget.js +1 -1
- package/dist/glRenderTarget.js.map +1 -1
- package/dist/glRenderTargetPool.d.ts +1 -1
- package/dist/glRenderTargetPool.d.ts.map +1 -1
- package/dist/glRenderTargetPool.js.map +1 -1
- package/dist/glRenderTexture.d.ts +13 -0
- package/dist/glRenderTexture.d.ts.map +1 -0
- package/dist/glRenderTexture.js +123 -0
- package/dist/glRenderTexture.js.map +1 -0
- package/dist/glShader.d.ts +2 -2
- package/dist/glShader.d.ts.map +1 -1
- package/dist/glShaderBinding.d.ts +2 -2
- package/dist/glShaderBinding.d.ts.map +1 -1
- package/dist/glShaderBinding.js +2 -2
- package/dist/glShaderBinding.js.map +1 -1
- package/dist/glShaderRegistry.d.ts +2 -2
- package/dist/glShaderRegistry.d.ts.map +1 -1
- package/dist/glSkinPaletteTexture.d.ts +1 -1
- package/dist/glSkinPaletteTexture.d.ts.map +1 -1
- package/dist/glTestHelper.d.ts +2 -2
- package/dist/glTestHelper.d.ts.map +1 -1
- package/dist/glTestHelper.js +8 -6
- package/dist/glTestHelper.js.map +1 -1
- package/dist/glTextureResolver.d.ts +10 -0
- package/dist/glTextureResolver.d.ts.map +1 -0
- package/dist/glTextureResolver.js +70 -0
- package/dist/glTextureResolver.js.map +1 -0
- package/dist/glTextureUpload.d.ts +1 -1
- package/dist/glTextureUpload.d.ts.map +1 -1
- package/dist/glTextureVideoUpload.d.ts +2 -2
- package/dist/glTextureVideoUpload.d.ts.map +1 -1
- package/dist/glTextureVideoUpload.js +10 -10
- package/dist/glTextureVideoUpload.js.map +1 -1
- package/dist/index.d.ts +1 -19
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -19
- package/dist/index.js.map +1 -1
- package/package.json +10 -5
- package/src/enableGlRenderTextureGuards.test.ts +22 -0
- package/src/glBackground.test.ts +1 -1
- package/src/glCompressedTexture.test.ts +1 -1
- package/src/glDraw.test.ts +40 -12
- package/src/glFullscreenPass.test.ts +2 -2
- package/src/glLinearToSrgbPass.test.ts +1 -1
- package/src/glMaterialRegistry.test.ts +4 -4
- package/src/glPresentRenderTarget.test.ts +1 -1
- package/src/glReadback.test.ts +1 -1
- package/src/glRenderPass.test.ts +2 -2
- package/src/glRenderState.test.ts +1 -1
- package/src/glRenderStateBracket.test.ts +319 -0
- package/src/glRenderTarget.test.ts +3 -3
- package/src/glRenderTexture.test.ts +252 -0
- package/src/glShader.test.ts +25 -25
- package/src/glShaderBinding.test.ts +2 -2
- package/src/glSkinPaletteTexture.test.ts +1 -1
- package/src/glTextureResolver.test.ts +181 -0
- package/src/glTextureUpload.test.ts +1 -1
- package/src/glTextureVideoUpload.test.ts +15 -15
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export * from './glBackground';
|
|
2
|
+
export * from './glCompressedTexture';
|
|
3
|
+
export * from './glDraw';
|
|
4
|
+
export * from './glElement';
|
|
5
|
+
export * from './enableGlRenderTextureGuards';
|
|
6
|
+
export * from './glFullscreenPass';
|
|
7
|
+
export * from './glLinearToSrgbPass';
|
|
8
|
+
export * from './glMaterialRegistry';
|
|
9
|
+
export * from './glPresentRenderTarget';
|
|
10
|
+
export * from './glProgram';
|
|
11
|
+
export * from './glReadback';
|
|
12
|
+
export * from './glRenderPass';
|
|
13
|
+
export * from './glRenderState';
|
|
14
|
+
export * from './glRenderStateBracket';
|
|
15
|
+
export * from './glRenderTarget';
|
|
16
|
+
export * from './glRenderTexture';
|
|
17
|
+
export * from './glRenderTargetPool';
|
|
18
|
+
export * from './glShader';
|
|
19
|
+
export * from './glShaderBinding';
|
|
20
|
+
export * from './glSkinPaletteTexture';
|
|
21
|
+
export * from './glTextureUpload';
|
|
22
|
+
export * from './glTextureResolver';
|
|
23
|
+
export * from './glTextureVideoUpload';
|
|
24
|
+
//# sourceMappingURL=contract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC"}
|
package/dist/contract.js
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export * from './glBackground';
|
|
2
|
+
export * from './glCompressedTexture';
|
|
3
|
+
export * from './glDraw';
|
|
4
|
+
export * from './glElement';
|
|
5
|
+
export * from './enableGlRenderTextureGuards';
|
|
6
|
+
export * from './glFullscreenPass';
|
|
7
|
+
export * from './glLinearToSrgbPass';
|
|
8
|
+
export * from './glMaterialRegistry';
|
|
9
|
+
export * from './glPresentRenderTarget';
|
|
10
|
+
export * from './glProgram';
|
|
11
|
+
export * from './glReadback';
|
|
12
|
+
export * from './glRenderPass';
|
|
13
|
+
export * from './glRenderState';
|
|
14
|
+
export * from './glRenderStateBracket';
|
|
15
|
+
export * from './glRenderTarget';
|
|
16
|
+
export * from './glRenderTexture';
|
|
17
|
+
export * from './glRenderTargetPool';
|
|
18
|
+
export * from './glShader';
|
|
19
|
+
export * from './glShaderBinding';
|
|
20
|
+
export * from './glSkinPaletteTexture';
|
|
21
|
+
export * from './glTextureUpload';
|
|
22
|
+
export * from './glTextureResolver';
|
|
23
|
+
export * from './glTextureVideoUpload';
|
|
24
|
+
//# sourceMappingURL=contract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { GlRenderState } from '@flighthq/types/contract';
|
|
2
|
+
export declare function areGlRenderTextureGuardsEnabled(state: GlRenderState): boolean;
|
|
3
|
+
export declare function enableGlRenderTextureGuards(state: GlRenderState): void;
|
|
4
|
+
//# sourceMappingURL=enableGlRenderTextureGuards.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enableGlRenderTextureGuards.d.ts","sourceRoot":"","sources":["../src/enableGlRenderTextureGuards.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAuC,MAAM,0BAA0B,CAAC;AAKnG,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAM7E;AAID,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAGtE"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { logOnce } from '@flighthq/log/contract';
|
|
2
|
+
import { LogLevel } from '@flighthq/types/contract';
|
|
3
|
+
import { setGlRenderTextureGuard } from './glRenderTexture';
|
|
4
|
+
export function areGlRenderTextureGuardsEnabled(state) {
|
|
5
|
+
let enabled = false;
|
|
6
|
+
setGlRenderTextureGuardProbe(state, () => {
|
|
7
|
+
enabled = true;
|
|
8
|
+
});
|
|
9
|
+
return enabled;
|
|
10
|
+
}
|
|
11
|
+
// Installs diagnostics for the two silent sentinel cases: sampling before the first completed
|
|
12
|
+
// renderInto, and sampling the same attachment while it is bound for writing.
|
|
13
|
+
export function enableGlRenderTextureGuards(state) {
|
|
14
|
+
setGlRenderTextureGuard(state, warnGlRenderTextureUnavailable);
|
|
15
|
+
_guardedContexts.add(state.gl);
|
|
16
|
+
}
|
|
17
|
+
function setGlRenderTextureGuardProbe(state, onEnabled) {
|
|
18
|
+
if (_guardedContexts.has(state.gl))
|
|
19
|
+
onEnabled();
|
|
20
|
+
}
|
|
21
|
+
function warnGlRenderTextureUnavailable(_state, renderTexture, explanation) {
|
|
22
|
+
const writing = explanation.status === 'writing';
|
|
23
|
+
logOnce(`render-gl:render-texture-${explanation.status}`, LogLevel.Warn, {
|
|
24
|
+
height: explanation.height,
|
|
25
|
+
message: writing
|
|
26
|
+
? 'bindGlRenderTexture: the produced Texture is still bound for writing; sampling it would be a read-after-write feedback hazard.'
|
|
27
|
+
: 'bindGlRenderTexture: the produced Texture has not completed renderIntoGlRenderTexture; sampling uses the empty sentinel.',
|
|
28
|
+
renderTexture,
|
|
29
|
+
status: explanation.status,
|
|
30
|
+
width: explanation.width,
|
|
31
|
+
}, 'render-gl');
|
|
32
|
+
}
|
|
33
|
+
const _guardedContexts = new WeakSet();
|
|
34
|
+
//# sourceMappingURL=enableGlRenderTextureGuards.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enableGlRenderTextureGuards.js","sourceRoot":"","sources":["../src/enableGlRenderTextureGuards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,MAAM,UAAU,+BAA+B,CAAC,KAAoB;IAClE,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,4BAA4B,CAAC,KAAK,EAAE,GAAG,EAAE;QACvC,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,8FAA8F;AAC9F,8EAA8E;AAC9E,MAAM,UAAU,2BAA2B,CAAC,KAAoB;IAC9D,uBAAuB,CAAC,KAAK,EAAE,8BAA8B,CAAC,CAAC;IAC/D,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,4BAA4B,CAAC,KAAoB,EAAE,SAAqB;IAC/E,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAAE,SAAS,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,8BAA8B,CACrC,MAAqB,EACrB,aAAgC,EAChC,WAAiD;IAEjD,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,KAAK,SAAS,CAAC;IACjD,OAAO,CACL,4BAA4B,WAAW,CAAC,MAAM,EAAE,EAChD,QAAQ,CAAC,IAAI,EACb;QACE,MAAM,EAAE,WAAW,CAAC,MAAM;QAC1B,OAAO,EAAE,OAAO;YACd,CAAC,CAAC,gIAAgI;YAClI,CAAC,CAAC,0HAA0H;QAC9H,aAAa;QACb,MAAM,EAAE,WAAW,CAAC,MAAM;QAC1B,KAAK,EAAE,WAAW,CAAC,KAAK;KACzB,EACD,WAAW,CACZ,CAAC;AACJ,CAAC;AAED,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAA0B,CAAC"}
|
package/dist/glBackground.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glBackground.d.ts","sourceRoot":"","sources":["../src/glBackground.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"glBackground.d.ts","sourceRoot":"","sources":["../src/glBackground.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAI9D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAa7D"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { GlCompressedTextureDecoder, GlCompressedTextureSupport, GlRenderState, TextureContainer, TextureContainerFormat } from '@flighthq/types';
|
|
1
|
+
import type { GlCompressedTextureDecoder, GlCompressedTextureSupport, GlRenderState, TextureContainer, TextureContainerFormat } from '@flighthq/types/contract';
|
|
2
2
|
export declare function detectGlCompressedTextureSupport(gl: WebGL2RenderingContext): GlCompressedTextureSupport;
|
|
3
3
|
export declare function getGlCompressedTextureFormat(gl: WebGL2RenderingContext, format: TextureContainerFormat): number;
|
|
4
4
|
export declare function hasGlCompressedTextureFormat(support: Readonly<GlCompressedTextureSupport>, format: TextureContainerFormat): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glCompressedTexture.d.ts","sourceRoot":"","sources":["../src/glCompressedTexture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,0BAA0B,EAC1B,0BAA0B,EAC1B,aAAa,EAEb,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,
|
|
1
|
+
{"version":3,"file":"glCompressedTexture.d.ts","sourceRoot":"","sources":["../src/glCompressedTexture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,0BAA0B,EAC1B,0BAA0B,EAC1B,aAAa,EAEb,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,0BAA0B,CAAC;AAmBlC,wBAAgB,gCAAgC,CAAC,EAAE,EAAE,sBAAsB,GAAG,0BAA0B,CAWvG;AAQD,wBAAgB,4BAA4B,CAAC,EAAE,EAAE,sBAAsB,EAAE,MAAM,EAAE,sBAAsB,GAAG,MAAM,CAqG/G;AAKD,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,QAAQ,CAAC,0BAA0B,CAAC,EAC7C,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAuCT;AAOD,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,0BAA0B,GAAG,IAAI,GACxC,IAAI,CAEN;AASD,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAE7F;AAmBD,wBAAgB,kCAAkC,CAChD,EAAE,EAAE,sBAAsB,EAC1B,SAAS,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EACrC,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,EAC7B,MAAM,CAAC,EAAE,0BAA0B,GAClC,OAAO,CA8DT"}
|
|
@@ -183,7 +183,7 @@ export function registerGlCompressedTextureDecoder(state, decode) {
|
|
|
183
183
|
}
|
|
184
184
|
// Installs the block-compressed upload seam on a render state, opting the ~40-format
|
|
185
185
|
// uploadGlCompressedTextureContainer path into the bundle only for a state that actually draws a
|
|
186
|
-
// compressed texture. The 2D display draw path (
|
|
186
|
+
// compressed texture. The 2D display draw path (uploadGlBoundImageResource) reads the installed handler off
|
|
187
187
|
// the runtime and skips a compressed-only resource when none is registered, so a plain element/data
|
|
188
188
|
// bitmap never carries the compression enum table. Opt-in and last-write-wins; pass null to clear a
|
|
189
189
|
// previously installed uploader. The installed handler bridges a compressed ImageResource to
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glCompressedTexture.js","sourceRoot":"","sources":["../src/glCompressedTexture.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,sGAAsG;AACtG,sFAAsF;AACtF,gFAAgF;AAChF,oGAAoG;AACpG,+FAA+F;AAC/F,8EAA8E;AAC9E,EAAE;AACF,gGAAgG;AAChG,qGAAqG;AACrG,sGAAsG;AACtG,iGAAiG;AAEjG,0FAA0F;AAC1F,2GAA2G;AAC3G,mGAAmG;AACnG,MAAM,UAAU,gCAAgC,CAAC,EAA0B;IACzE,OAAO;QACL,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,+BAA+B,CAAC,KAAK,IAAI;QAC/D,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,8BAA8B,CAAC,KAAK,IAAI;QAC9D,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,8BAA8B,CAAC,KAAK,IAAI;QAC7D,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,gCAAgC,CAAC,KAAK,IAAI;QACjE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,8BAA8B,CAAC,KAAK,IAAI;QAC9D,IAAI,EACF,EAAE,CAAC,YAAY,CAAC,+BAA+B,CAAC,KAAK,IAAI;YACzD,EAAE,CAAC,YAAY,CAAC,oCAAoC,CAAC,KAAK,IAAI;KACjE,CAAC;AACJ,CAAC;AAED,kGAAkG;AAClG,iGAAiG;AACjG,sGAAsG;AACtG,uGAAuG;AACvG,mFAAmF;AACnF,6CAA6C;AAC7C,MAAM,UAAU,4BAA4B,CAAC,EAA0B,EAAE,MAA8B;IACrG,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,+BAA+B,CAAkC,CAAC;IAC/F,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,oCAAoC,CAAkC,CAAC;IACxG,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,8BAA8B,CAAkC,CAAC;IAC9F,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,8BAA8B,CAAkC,CAAC;IAC9F,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,8BAA8B,CAAkC,CAAC;IAC7F,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,+BAA+B,CAAkC,CAAC;IAC/F,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,gCAAgC,CAAkC,CAAC;IACjG,MAAM,WAAW,GAAG,CAAC,GAA8C,EAAE,GAAW,EAAU,EAAE,CAC1F,OAAO,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjD,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK;YACR,OAAO,WAAW,CAAC,IAAI,EAAE,+BAA+B,CAAC,CAAC;QAC5D,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,QAAQ,EAAE,qCAAqC,CAAC,CAAC;QACtE,KAAK,KAAK;YACR,OAAO,WAAW,CAAC,IAAI,EAAE,+BAA+B,CAAC,CAAC;QAC5D,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,QAAQ,EAAE,qCAAqC,CAAC,CAAC;QACtE,KAAK,KAAK;YACR,OAAO,WAAW,CAAC,IAAI,EAAE,+BAA+B,CAAC,CAAC;QAC5D,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,QAAQ,EAAE,qCAAqC,CAAC,CAAC;QACtE,KAAK,KAAK;YACR,OAAO,WAAW,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;QACvD,KAAK,UAAU;YACb,OAAO,WAAW,CAAC,IAAI,EAAE,iCAAiC,CAAC,CAAC;QAC9D,KAAK,KAAK;YACR,OAAO,WAAW,CAAC,IAAI,EAAE,gCAAgC,CAAC,CAAC;QAC7D,KAAK,UAAU;YACb,OAAO,WAAW,CAAC,IAAI,EAAE,uCAAuC,CAAC,CAAC;QACpE,KAAK,YAAY;YACf,OAAO,WAAW,CAAC,IAAI,EAAE,wCAAwC,CAAC,CAAC;QACrE,KAAK,YAAY;YACf,OAAO,WAAW,CAAC,IAAI,EAAE,sCAAsC,CAAC,CAAC;QACnE,KAAK,KAAK;YACR,OAAO,WAAW,CAAC,IAAI,EAAE,gCAAgC,CAAC,CAAC;QAC7D,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,IAAI,EAAE,sCAAsC,CAAC,CAAC;QACnE,KAAK,MAAM,CAAC;QACZ,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;QAClD,KAAK,aAAa;YAChB,OAAO,WAAW,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;QACnD,KAAK,UAAU;YACb,OAAO,WAAW,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAC;QACvD,KAAK,cAAc;YACjB,OAAO,WAAW,CAAC,GAAG,EAAE,kCAAkC,CAAC,CAAC;QAC9D,KAAK,WAAW;YACd,OAAO,WAAW,CAAC,GAAG,EAAE,0CAA0C,CAAC,CAAC;QACtE,KAAK,eAAe;YAClB,OAAO,WAAW,CAAC,GAAG,EAAE,2CAA2C,CAAC,CAAC;QACvE,KAAK,QAAQ;YACX,OAAO,WAAW,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC;QAChD,KAAK,aAAa;YAChB,OAAO,WAAW,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAC;QACvD,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;QACjD,KAAK,cAAc;YACjB,OAAO,WAAW,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAC;QACxD,KAAK,cAAc;YACjB,OAAO,WAAW,CAAC,KAAK,EAAE,iCAAiC,CAAC,CAAC;QAC/D,KAAK,eAAe;YAClB,OAAO,WAAW,CAAC,KAAK,EAAE,kCAAkC,CAAC,CAAC;QAChE,KAAK,cAAc;YACjB,OAAO,WAAW,CAAC,KAAK,EAAE,iCAAiC,CAAC,CAAC;QAC/D,KAAK,eAAe;YAClB,OAAO,WAAW,CAAC,KAAK,EAAE,kCAAkC,CAAC,CAAC;QAChE,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,IAAI,EAAE,8BAA8B,CAAC,CAAC;QAC3D,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,IAAI,EAAE,8BAA8B,CAAC,CAAC;QAC3D,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,IAAI,EAAE,8BAA8B,CAAC,CAAC;QAC3D,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,IAAI,EAAE,8BAA8B,CAAC,CAAC;QAC3D,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,IAAI,EAAE,8BAA8B,CAAC,CAAC;QAC3D,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,IAAI,EAAE,8BAA8B,CAAC,CAAC;QAC3D,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,IAAI,EAAE,8BAA8B,CAAC,CAAC;QAC3D,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,IAAI,EAAE,8BAA8B,CAAC,CAAC;QAC3D,KAAK,UAAU;YACb,OAAO,WAAW,CAAC,IAAI,EAAE,+BAA+B,CAAC,CAAC;QAC5D,KAAK,UAAU;YACb,OAAO,WAAW,CAAC,IAAI,EAAE,+BAA+B,CAAC,CAAC;QAC5D,KAAK,UAAU;YACb,OAAO,WAAW,CAAC,IAAI,EAAE,+BAA+B,CAAC,CAAC;QAC5D,KAAK,WAAW;YACd,OAAO,WAAW,CAAC,IAAI,EAAE,gCAAgC,CAAC,CAAC;QAC7D,KAAK,WAAW;YACd,OAAO,WAAW,CAAC,IAAI,EAAE,gCAAgC,CAAC,CAAC;QAC7D,KAAK,WAAW;YACd,OAAO,WAAW,CAAC,IAAI,EAAE,gCAAgC,CAAC,CAAC;QAC7D;YACE,iFAAiF;YACjF,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;AACH,CAAC;AAED,uGAAuG;AACvG,oGAAoG;AACpG,sGAAsG;AACtG,MAAM,UAAU,4BAA4B,CAC1C,OAA6C,EAC7C,MAA8B;IAE9B,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK,CAAC;QACX,KAAK,SAAS,CAAC;QACf,KAAK,KAAK,CAAC;QACX,KAAK,SAAS,CAAC;QACf,KAAK,KAAK,CAAC;QACX,KAAK,SAAS;YACZ,OAAO,OAAO,CAAC,IAAI,CAAC;QACtB,KAAK,KAAK,CAAC;QACX,KAAK,UAAU,CAAC;QAChB,KAAK,KAAK,CAAC;QACX,KAAK,UAAU;YACb,OAAO,OAAO,CAAC,IAAI,CAAC;QACtB,KAAK,YAAY,CAAC;QAClB,KAAK,YAAY,CAAC;QAClB,KAAK,KAAK,CAAC;QACX,KAAK,SAAS;YACZ,OAAO,OAAO,CAAC,IAAI,CAAC;QACtB,KAAK,MAAM,CAAC;QACZ,KAAK,SAAS,CAAC;QACf,KAAK,aAAa,CAAC;QACnB,KAAK,UAAU,CAAC;QAChB,KAAK,cAAc,CAAC;QACpB,KAAK,WAAW,CAAC;QACjB,KAAK,eAAe,CAAC;QACrB,KAAK,QAAQ,CAAC;QACd,KAAK,aAAa,CAAC;QACnB,KAAK,SAAS,CAAC;QACf,KAAK,cAAc;YACjB,OAAO,OAAO,CAAC,GAAG,CAAC;QACrB,KAAK,cAAc,CAAC;QACpB,KAAK,eAAe,CAAC;QACrB,KAAK,cAAc,CAAC;QACpB,KAAK,eAAe;YAClB,OAAO,OAAO,CAAC,KAAK,CAAC;QACvB;YACE,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACvD,CAAC;AACH,CAAC;AAED,wGAAwG;AACxG,uGAAuG;AACvG,wGAAwG;AACxG,sGAAsG;AACtG,6EAA6E;AAC7E,MAAM,UAAU,kCAAkC,CAChD,KAAoB,EACpB,MAAyC;IAEzC,uBAAuB,CAAC,KAAK,CAAC,CAAC,wBAAwB,GAAG,MAAM,CAAC;AACnE,CAAC;AAED,qFAAqF;AACrF,iGAAiG;AACjG,
|
|
1
|
+
{"version":3,"file":"glCompressedTexture.js","sourceRoot":"","sources":["../src/glCompressedTexture.ts"],"names":[],"mappings":"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"}
|
package/dist/glDraw.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import type { GlBitmapShader, GlBlendRealization, GlRenderState, ImageResource, SamplerLike,
|
|
2
|
-
import { BlendMode } from '@flighthq/types';
|
|
1
|
+
import type { GlBitmapShader, GlBlendRealization, GlRenderState, GlRenderStateRuntime, ImageResource, SamplerLike, TextureLike } from '@flighthq/types/contract';
|
|
2
|
+
import { BlendMode } from '@flighthq/types/contract';
|
|
3
3
|
export declare function applyGlBlendMode(state: GlRenderState, blendMode: BlendMode | null): void;
|
|
4
|
-
export declare function
|
|
4
|
+
export declare function applyGlSamplerState(state: GlRenderState, runtime: GlRenderStateRuntime, texture: WebGLTexture, sampler: Readonly<SamplerLike> | null, smoothingOverride?: boolean | null): void;
|
|
5
|
+
export declare function bindGlImageResourceTexture(state: GlRenderState, image: Readonly<ImageResource>, sampler?: Readonly<SamplerLike> | null, smoothingOverride?: boolean | null, premultiply?: boolean): WebGLTexture;
|
|
5
6
|
export declare function bindGlTexture(state: GlRenderState, imageSource: CanvasImageSource, sampler?: Readonly<SamplerLike> | null): WebGLTexture;
|
|
6
|
-
export declare function bindGlVideoTexture(state: GlRenderState,
|
|
7
|
+
export declare function bindGlVideoTexture(state: GlRenderState, texture: Readonly<TextureLike>, sampler?: Readonly<SamplerLike> | null): WebGLTexture;
|
|
7
8
|
export declare function createGlTexture(state: GlRenderState): WebGLTexture;
|
|
8
9
|
export declare function drawGlQuad(state: GlRenderState, x0: number, y0: number, x1: number, y1: number, u0: number, v0: number, u1: number, v1: number): void;
|
|
9
10
|
export declare function enableGlBlendModeSupport(state: GlRenderState): void;
|
package/dist/glDraw.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glDraw.d.ts","sourceRoot":"","sources":["../src/glDraw.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,aAAa,
|
|
1
|
+
{"version":3,"file":"glDraw.d.ts","sourceRoot":"","sources":["../src/glDraw.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,WAAW,EAGZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAYrD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI,GAAG,IAAI,CAQxF;AAUD,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,oBAAoB,EAC7B,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,EACrC,iBAAiB,GAAE,OAAO,GAAG,IAAW,GACvC,IAAI,CA8BN;AAqBD,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,QAAQ,CAAC,aAAa,CAAC,EAC9B,OAAO,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,EACtC,iBAAiB,CAAC,EAAE,OAAO,GAAG,IAAI,EAClC,WAAW,UAAQ,GAClB,YAAY,CAoBd;AAWD,wBAAgB,aAAa,CAC3B,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE,iBAAiB,EAC9B,OAAO,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,GACrC,YAAY,CAiCd;AAUD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,QAAQ,CAAC,WAAW,CAAC,EAC9B,OAAO,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,IAAI,GACrC,YAAY,CAkBd;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,YAAY,CAalE;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,aAAa,EACpB,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,GACT,IAAI,CA0BN;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAGnE;AAKD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAExF;AAKD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAEtE;AAKD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,kBAAkB,GAAG,IAAI,CAGrH;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,aAAa,EACpB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,GACT,IAAI,CAcN;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAgB5G;AA6CD,wBAAgB,YAAY,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,CAShF"}
|
package/dist/glDraw.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BlendMode } from '@flighthq/types';
|
|
1
|
+
import { BlendMode } from '@flighthq/types/contract';
|
|
2
2
|
import { getGlRenderStateRuntime } from './glRenderState';
|
|
3
3
|
import { setGlAttributes, setGlMatrixFromValues } from './glShader';
|
|
4
4
|
import { uploadGlTextureData, uploadGlTextureElement } from './glTextureUpload';
|
|
@@ -18,17 +18,70 @@ export function applyGlBlendMode(state, blendMode) {
|
|
|
18
18
|
gl.blendEquation(gl[realization.equation ?? 'FUNC_ADD']);
|
|
19
19
|
gl.blendFunc(gl[realization.src], gl[realization.dst]);
|
|
20
20
|
}
|
|
21
|
+
// Applies a sampler's wrap, filtering, anisotropy, and mip chain to the currently-bound TEXTURE_2D.
|
|
22
|
+
// Without a sampler it falls back to the clamp-to-edge, no-mips 2D bitmap/sprite default, filtered by
|
|
23
|
+
// `smoothingOverride` when the caller supplies one (a per-bitmap `smoothing` flag) and otherwise by the
|
|
24
|
+
// state's global `allowSmoothing`. With a sampler, every field comes from the descriptor. The mip chain
|
|
25
|
+
// is generated once per texture (tracked in runtime.mipmappedTextures) the first time a mip-sampling
|
|
26
|
+
// filter asks for it, so a shared texture first bound without mips and later with them still generates
|
|
27
|
+
// its chain. Filtering and wrap are set every bind (cheap) so a texture shared across samplers follows
|
|
28
|
+
// the current draw; only the one-time mip generation is gated.
|
|
29
|
+
export function applyGlSamplerState(state, runtime, texture, sampler, smoothingOverride = null) {
|
|
30
|
+
const gl = state.gl;
|
|
31
|
+
if (!sampler) {
|
|
32
|
+
const smooth = smoothingOverride ?? state.allowSmoothing;
|
|
33
|
+
const filter = smooth ? gl.LINEAR : gl.NEAREST;
|
|
34
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, filter);
|
|
35
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, filter);
|
|
36
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
37
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
const useMips = sampler.mipmaps && isGlMipmapFilter(sampler.minFilter);
|
|
41
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, glMinFilterValue(gl, sampler.minFilter, useMips));
|
|
42
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, glMagFilterValue(gl, sampler.magFilter));
|
|
43
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, glTextureWrapValue(gl, sampler.wrapU));
|
|
44
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, glTextureWrapValue(gl, sampler.wrapV));
|
|
45
|
+
const ext = ensureGlAnisotropyExt(state, runtime);
|
|
46
|
+
if (ext) {
|
|
47
|
+
// Clamp the requested level to [1, hardware max]; 1 disables anisotropy and also resets a texture
|
|
48
|
+
// that a previous anisotropic sampler left elevated.
|
|
49
|
+
const level = Math.max(1, Math.min(sampler.anisotropy, runtime.maxAnisotropy ?? 1));
|
|
50
|
+
gl.texParameterf(gl.TEXTURE_2D, ext.TEXTURE_MAX_ANISOTROPY_EXT, level);
|
|
51
|
+
}
|
|
52
|
+
if (useMips) {
|
|
53
|
+
const mipped = (runtime.mipmappedTextures ??= new WeakSet());
|
|
54
|
+
if (!mipped.has(texture)) {
|
|
55
|
+
gl.generateMipmap(gl.TEXTURE_2D);
|
|
56
|
+
mipped.add(texture);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
21
60
|
// Binds (uploading + caching on first use, re-uploading when the pixels change) the GL texture for an
|
|
22
61
|
// ImageResource — a bitmap, sprite atlas, or material map — and applies the sampler's full state. The
|
|
23
62
|
// resource-level sibling of bindGlTexture (which takes a raw element): it accepts an element-backed OR a
|
|
24
|
-
// data-only generated Surface (source-or-data upload via
|
|
25
|
-
// resource entity in
|
|
63
|
+
// data-only generated Surface (source-or-data upload via uploadGlBoundImageResource), and caches by the
|
|
64
|
+
// resource entity in imageResourcePremultipliedTextureCache, keyed with the uploaded `version` so an in-place Surface
|
|
26
65
|
// edit (which bumps version) re-uploads without the caller tracking it. Sampler state is re-applied every
|
|
27
66
|
// bind so a resource reused by two materials with different samplers follows the current draw.
|
|
28
|
-
|
|
67
|
+
//
|
|
68
|
+
// `premultiply` states whether the caller wants a premultiplied GPU texture — bind never premultiplies on
|
|
69
|
+
// its own. The 2D display and particle pipelines blend premultiplied (ONE, ONE_MINUS_SRC_ALPHA) and pass
|
|
70
|
+
// true; the 3D forward path blends straight (SRC_ALPHA) and reads baseColor.rgb as un-premultiplied
|
|
71
|
+
// albedo, so it leaves the default false. The request is honest about the data's declared alphaType: the
|
|
72
|
+
// premultiply is applied on upload only when the pixels are not already premultiplied
|
|
73
|
+
// (`premultiply && alphaType !== 'premultiplied'`), so an already-premultiplied resource uploads as-is
|
|
74
|
+
// instead of double-premultiplying, and false never transforms. The two request modes cache separate GL
|
|
75
|
+
// textures (imageResourcePremultipliedTextureCache for premultiply, imageResourceStraightTextureCache otherwise), keyed
|
|
76
|
+
// by the request so one ImageResource bound by both a premultiplied 2D sprite and a straight 3D material
|
|
77
|
+
// keeps a correct texture for each — and the 2D teardown paths that reach imageResourcePremultipliedTextureCache
|
|
78
|
+
// directly always find their (premultiply-requested) texture there.
|
|
79
|
+
export function bindGlImageResourceTexture(state, image, sampler, smoothingOverride, premultiply = false) {
|
|
29
80
|
const runtime = getGlRenderStateRuntime(state);
|
|
30
81
|
const gl = state.gl;
|
|
31
|
-
const cache =
|
|
82
|
+
const cache = premultiply
|
|
83
|
+
? runtime.imageResourcePremultipliedTextureCache
|
|
84
|
+
: runtime.imageResourceStraightTextureCache;
|
|
32
85
|
let entry = cache.get(image);
|
|
33
86
|
if (entry === undefined) {
|
|
34
87
|
entry = { texture: gl.createTexture(), version: -1 };
|
|
@@ -38,7 +91,7 @@ export function bindGlImageResourceTexture(state, image, sampler, smoothingOverr
|
|
|
38
91
|
runtime.currentTexture = entry.texture;
|
|
39
92
|
runtime.currentTextureStraightAlpha = image.compressed !== null && image.alphaType === 'straight';
|
|
40
93
|
if (entry.version !== image.version) {
|
|
41
|
-
|
|
94
|
+
uploadGlBoundImageResource(state, image, premultiply && image.alphaType !== 'premultiplied');
|
|
42
95
|
entry.version = image.version;
|
|
43
96
|
}
|
|
44
97
|
applyGlSamplerState(state, runtime, entry.texture, sampler ?? null, smoothingOverride ?? null);
|
|
@@ -88,31 +141,31 @@ export function bindGlTexture(state, imageSource, sampler) {
|
|
|
88
141
|
applyGlSamplerState(state, runtime, texture, sampler ?? null);
|
|
89
142
|
return texture;
|
|
90
143
|
}
|
|
91
|
-
// Binds the GL texture for a
|
|
92
|
-
// its `
|
|
144
|
+
// Binds the GL texture for a video-backed Texture and re-uploads the backing element's current frame
|
|
145
|
+
// only when its ImageResource `version` has advanced — the dynamic, per-frame sibling of
|
|
93
146
|
// bindGlImageResourceTexture (settled ImageResource) and bindGlTexture (raw element). The GL texture is
|
|
94
|
-
// cached by the
|
|
95
|
-
//
|
|
96
|
-
// the
|
|
97
|
-
//
|
|
98
|
-
// advanceVideoTexture when the element reports a fresh decoded frame; this reads the current frame
|
|
147
|
+
// cached by the ImageResource backing in the runtime's videoTextureCache (lazily created), so two
|
|
148
|
+
// sampled Textures share one upload while their samplers remain draw-local.
|
|
149
|
+
// Leaves the texture bound at the active unit for the caller to sample. Callers advance the backing
|
|
150
|
+
// version via advanceVideoTexture when the element reports a fresh decoded frame; this reads the current frame
|
|
99
151
|
// through uploadGlTextureElement's zero-copy element fast-path.
|
|
100
|
-
export function bindGlVideoTexture(state,
|
|
152
|
+
export function bindGlVideoTexture(state, texture, sampler) {
|
|
153
|
+
const image = texture.storage.image;
|
|
101
154
|
const runtime = getGlRenderStateRuntime(state);
|
|
102
155
|
const gl = state.gl;
|
|
103
156
|
const cache = (runtime.videoTextureCache ??= new WeakMap());
|
|
104
|
-
let entry = cache.get(
|
|
157
|
+
let entry = cache.get(image);
|
|
105
158
|
if (entry === undefined) {
|
|
106
|
-
entry = { texture: gl.createTexture(),
|
|
107
|
-
cache.set(
|
|
159
|
+
entry = { texture: gl.createTexture(), uploadedVersion: -1 };
|
|
160
|
+
cache.set(image, entry);
|
|
108
161
|
}
|
|
109
162
|
gl.bindTexture(gl.TEXTURE_2D, entry.texture);
|
|
110
163
|
runtime.currentTexture = entry.texture;
|
|
111
164
|
runtime.currentTextureStraightAlpha = false;
|
|
112
165
|
// Straight-alpha element under premultiplied blend would blow out RGB; match the bitmap/element path.
|
|
113
166
|
gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, true);
|
|
114
|
-
entry.
|
|
115
|
-
applyGlSamplerState(state, runtime, entry.texture, sampler ??
|
|
167
|
+
entry.uploadedVersion = uploadGlTextureVideoFrame(gl, image, entry.uploadedVersion);
|
|
168
|
+
applyGlSamplerState(state, runtime, entry.texture, sampler ?? texture.sampler);
|
|
116
169
|
return entry.texture;
|
|
117
170
|
}
|
|
118
171
|
export function createGlTexture(state) {
|
|
@@ -202,28 +255,20 @@ export function updateGlTexture(state, texture, canvas) {
|
|
|
202
255
|
if (runtime.mipmappedTextures?.has(texture))
|
|
203
256
|
gl.generateMipmap(gl.TEXTURE_2D);
|
|
204
257
|
}
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
// fast-path premultiplies via UNPACK_PREMULTIPLY_ALPHA_WEBGL (straight-alpha element under a premultiplied
|
|
217
|
-
// (ONE, ONE_MINUS_SRC_ALPHA) blend would otherwise blow a 40%-white shape to opaque white). That flag is
|
|
218
|
-
// ignored for raw-data (ArrayBufferView) uploads, so straight-alpha `data` is premultiplied on the CPU
|
|
219
|
-
// first; opaque data (alpha 255, e.g. a normal/roughness map) premultiplies to itself, so this is a no-op
|
|
220
|
-
// there. The data path is what makes a memory-generated Surface a first-class 2D texture. A resource that
|
|
221
|
-
// carries only a block-`compressed` payload (no element or data) uploads through the GPU-native compressed
|
|
222
|
-
// path — falling back to the state's registered RGBA decoder when the device lacks the block format.
|
|
223
|
-
function uploadGlDisplayTexture(state, image) {
|
|
258
|
+
// Uploads an ImageResource into the currently-bound TEXTURE_2D. `premultiply` is the caller's already
|
|
259
|
+
// alphaType-resolved decision (see bindGlImageResourceTexture) to produce a premultiplied GPU texture:
|
|
260
|
+
// when set, the element fast-path premultiplies via UNPACK_PREMULTIPLY_ALPHA_WEBGL and raw `data` (for
|
|
261
|
+
// which that flag is ignored) is premultiplied on the CPU. When clear, both upload the pixels as-is, so
|
|
262
|
+
// the straight-blend 3D forward path gets its albedo untouched and no data map (normal/roughness) is
|
|
263
|
+
// corrupted. The data path is what makes a memory-generated Surface a first-class texture. A resource
|
|
264
|
+
// that carries only a block-`compressed` payload (no element or data) uploads through the GPU-native
|
|
265
|
+
// compressed path — falling back to the state's registered RGBA decoder when the device lacks the block
|
|
266
|
+
// format; compressed blocks are never premultiplied here (the display shader premultiplies a straight
|
|
267
|
+
// sample at draw time instead).
|
|
268
|
+
function uploadGlBoundImageResource(state, image, premultiply) {
|
|
224
269
|
const gl = state.gl;
|
|
225
270
|
if (image.source !== null) {
|
|
226
|
-
gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL,
|
|
271
|
+
gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, premultiply);
|
|
227
272
|
uploadGlTextureElement(gl, gl.TEXTURE_2D, image.source);
|
|
228
273
|
return;
|
|
229
274
|
}
|
|
@@ -235,7 +280,7 @@ function uploadGlDisplayTexture(state, image) {
|
|
|
235
280
|
runtime.compressedTextureUpload?.(gl, image, runtime.compressedTextureDecoder ?? null);
|
|
236
281
|
return;
|
|
237
282
|
}
|
|
238
|
-
const data =
|
|
283
|
+
const data = premultiply ? premultiplyStraightRgba8(image.data) : image.data;
|
|
239
284
|
uploadGlTextureData(gl, gl.TEXTURE_2D, image.width, image.height, data);
|
|
240
285
|
}
|
|
241
286
|
// Returns a new premultiplied rgba8 buffer from a straight-alpha one (rgb *= a/255). Allocates, but runs
|
|
@@ -251,43 +296,14 @@ function premultiplyStraightRgba8(data) {
|
|
|
251
296
|
}
|
|
252
297
|
return out;
|
|
253
298
|
}
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
function applyGlSamplerState(state, runtime, texture, sampler, smoothingOverride = null) {
|
|
263
|
-
const gl = state.gl;
|
|
264
|
-
if (!sampler) {
|
|
265
|
-
const smooth = smoothingOverride ?? state.allowSmoothing;
|
|
266
|
-
const filter = smooth ? gl.LINEAR : gl.NEAREST;
|
|
267
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, filter);
|
|
268
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, filter);
|
|
269
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
270
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
271
|
-
return;
|
|
272
|
-
}
|
|
273
|
-
const useMips = sampler.mipmaps && isGlMipmapFilter(sampler.minFilter);
|
|
274
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, glMinFilterValue(gl, sampler.minFilter, useMips));
|
|
275
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, glMagFilterValue(gl, sampler.magFilter));
|
|
276
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, glTextureWrapValue(gl, sampler.wrapU));
|
|
277
|
-
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, glTextureWrapValue(gl, sampler.wrapV));
|
|
278
|
-
const ext = ensureGlAnisotropyExt(state, runtime);
|
|
279
|
-
if (ext) {
|
|
280
|
-
// Clamp the requested level to [1, hardware max]; 1 disables anisotropy and also resets a texture
|
|
281
|
-
// that a previous anisotropic sampler left elevated.
|
|
282
|
-
const level = Math.max(1, Math.min(sampler.anisotropy, runtime.maxAnisotropy ?? 1));
|
|
283
|
-
gl.texParameterf(gl.TEXTURE_2D, ext.TEXTURE_MAX_ANISOTROPY_EXT, level);
|
|
284
|
-
}
|
|
285
|
-
if (useMips) {
|
|
286
|
-
const mipped = (runtime.mipmappedTextures ??= new WeakSet());
|
|
287
|
-
if (!mipped.has(texture)) {
|
|
288
|
-
gl.generateMipmap(gl.TEXTURE_2D);
|
|
289
|
-
mipped.add(texture);
|
|
290
|
-
}
|
|
299
|
+
export function useGlProgram(state, shader) {
|
|
300
|
+
const runtime = getGlRenderStateRuntime(state);
|
|
301
|
+
const resolved = shader ?? runtime.defaultBitmapShader;
|
|
302
|
+
runtime.shaderLoc = resolved.locations;
|
|
303
|
+
const program = resolved.program;
|
|
304
|
+
if (runtime.currentProgram !== program) {
|
|
305
|
+
state.gl.useProgram(program);
|
|
306
|
+
runtime.currentProgram = program;
|
|
291
307
|
}
|
|
292
308
|
}
|
|
293
309
|
// Resolves and caches EXT_texture_filter_anisotropic on the runtime: anisotropyExt is undefined until
|
package/dist/glDraw.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glDraw.js","sourceRoot":"","sources":["../src/glDraw.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"glDraw.js","sourceRoot":"","sources":["../src/glDraw.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { GlFullscreenProgram, GlRenderState, GlRenderTarget } from '@flighthq/types';
|
|
1
|
+
import type { GlFullscreenProgram, GlRenderState, GlRenderTarget } from '@flighthq/types/contract';
|
|
2
2
|
/** Clears a render target to fully transparent and binds it as the current framebuffer. */
|
|
3
3
|
export declare function clearGlRenderTarget(state: GlRenderState, target: GlRenderTarget): void;
|
|
4
4
|
export declare function compileGlFullscreenProgram(gl: WebGL2RenderingContext, fragmentSource: string): GlFullscreenProgram;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glFullscreenPass.d.ts","sourceRoot":"","sources":["../src/glFullscreenPass.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"glFullscreenPass.d.ts","sourceRoot":"","sources":["../src/glFullscreenPass.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAmBnG,2FAA2F;AAC3F,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAatF;AAED,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,GAAG,mBAAmB,CAkBlH;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,QAAQ,CAAC,mBAAmB,CAAC,EACtC,MAAM,EAAE,aAAa,CAAC,YAAY,CAAC,EACnC,IAAI,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,IAAI,EACrC,WAAW,EAAE,CAAC,EAAE,EAAE,sBAAsB,EAAE,OAAO,EAAE,QAAQ,CAAC,mBAAmB,CAAC,KAAK,IAAI,GACxF,IAAI,CA+CN"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { GlRenderState, GlRenderTarget } from '@flighthq/types';
|
|
1
|
+
import type { GlRenderState, GlRenderTarget } from '@flighthq/types/contract';
|
|
2
2
|
export declare function drawGlLinearToSrgbPass(state: GlRenderState, source: Readonly<GlRenderTarget>, dest: Readonly<GlRenderTarget> | null): void;
|
|
3
3
|
export declare const LINEAR_TO_SRGB_FRAGMENT_SRC = "#version 300 es\nprecision highp float;\nin vec2 v_texCoord;\nuniform sampler2D u_texture0;\nout vec4 fragColor;\nvec3 linearToSrgb(vec3 c) {\n c = max(c, vec3(0.0));\n vec3 low = c * 12.92;\n vec3 high = 1.055 * pow(c, vec3(1.0 / 2.4)) - 0.055;\n return mix(low, high, step(vec3(0.0031308), c));\n}\nvoid main() {\n vec4 linear = texture(u_texture0, v_texCoord);\n fragColor = vec4(linearToSrgb(linear.rgb), linear.a);\n}";
|
|
4
4
|
//# sourceMappingURL=glLinearToSrgbPass.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glLinearToSrgbPass.d.ts","sourceRoot":"","sources":["../src/glLinearToSrgbPass.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,aAAa,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"glLinearToSrgbPass.d.ts","sourceRoot":"","sources":["../src/glLinearToSrgbPass.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,aAAa,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAenG,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,EAChC,IAAI,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,IAAI,GACpC,IAAI,CAEN;AAgBD,eAAO,MAAM,2BAA2B,ibActC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { GlMaterialRenderer, GlRenderState, Kind, Material } from '@flighthq/types';
|
|
1
|
+
import type { GlMaterialRenderer, GlRenderState, Kind, Material } from '@flighthq/types/contract';
|
|
2
2
|
export declare function getGlMaterialRenderer(state: GlRenderState, kind: Kind): GlMaterialRenderer | null;
|
|
3
3
|
export declare function registerGlMaterialRenderer(state: GlRenderState, kind: Kind, renderer: GlMaterialRenderer): void;
|
|
4
4
|
export declare function resolveGlMaterialRenderer(state: GlRenderState, material: Material | null): GlMaterialRenderer | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glMaterialRegistry.d.ts","sourceRoot":"","sources":["../src/glMaterialRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"glMaterialRegistry.d.ts","sourceRoot":"","sources":["../src/glMaterialRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAKlG,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,kBAAkB,GAAG,IAAI,CAEjG;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAG/G;AAMD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,GAAG,kBAAkB,GAAG,IAAI,CAQpH"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { StandardMaterialKind } from '@flighthq/types/contract';
|
|
2
2
|
import { getGlRenderStateRuntime } from './glRenderState';
|
|
3
3
|
export function getGlMaterialRenderer(state, kind) {
|
|
4
4
|
return getGlRenderStateRuntime(state).materialRendererMap?.get(kind) ?? null;
|
|
@@ -8,7 +8,7 @@ export function registerGlMaterialRenderer(state, kind, renderer) {
|
|
|
8
8
|
(runtime.materialRendererMap ??= new Map()).set(kind, renderer);
|
|
9
9
|
}
|
|
10
10
|
// Resolves a node's material to its registered renderer: by the material's kind, else the renderer
|
|
11
|
-
// registered for
|
|
11
|
+
// registered for StandardMaterialKind, else null. The render path knows nothing about which materials
|
|
12
12
|
// exist — every material (including the default) enters only through user registration, and an
|
|
13
13
|
// unresolved material is a no-op (the node does not render), never a built-in fallback.
|
|
14
14
|
export function resolveGlMaterialRenderer(state, material) {
|
|
@@ -20,6 +20,6 @@ export function resolveGlMaterialRenderer(state, material) {
|
|
|
20
20
|
if (renderer !== undefined)
|
|
21
21
|
return renderer;
|
|
22
22
|
}
|
|
23
|
-
return map.get(
|
|
23
|
+
return map.get(StandardMaterialKind) ?? null;
|
|
24
24
|
}
|
|
25
25
|
//# sourceMappingURL=glMaterialRegistry.js.map
|