@flighthq/render-gl 0.5.1-next.1069.554a2ac → 0.5.1-next.1201.9b49dee
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/contract.d.ts +1 -3
- package/dist/contract.d.ts.map +1 -1
- package/dist/contract.js +1 -3
- package/dist/contract.js.map +1 -1
- package/dist/enableGlRenderStateGuards.js +2 -2
- package/dist/enableGlRenderStateGuards.js.map +1 -1
- package/dist/glCubeRenderTarget.d.ts +5 -5
- package/dist/glCubeRenderTarget.d.ts.map +1 -1
- package/dist/glCubeRenderTarget.js +16 -13
- package/dist/glCubeRenderTarget.js.map +1 -1
- package/dist/glFullscreenPass.d.ts +4 -3
- package/dist/glFullscreenPass.d.ts.map +1 -1
- package/dist/glFullscreenPass.js +152 -23
- package/dist/glFullscreenPass.js.map +1 -1
- package/dist/glLinearToSrgbPass.d.ts +2 -2
- package/dist/glLinearToSrgbPass.d.ts.map +1 -1
- package/dist/glLinearToSrgbPass.js.map +1 -1
- package/dist/glPresentRenderTarget.d.ts +2 -2
- package/dist/glPresentRenderTarget.d.ts.map +1 -1
- package/dist/glPresentRenderTarget.js.map +1 -1
- package/dist/glReadback.d.ts +2 -2
- package/dist/glReadback.d.ts.map +1 -1
- package/dist/glReadback.js +1 -1
- package/dist/glReadback.js.map +1 -1
- package/dist/glRenderPass.d.ts +6 -3
- package/dist/glRenderPass.d.ts.map +1 -1
- package/dist/glRenderPass.js +105 -86
- package/dist/glRenderPass.js.map +1 -1
- package/dist/glRenderState.d.ts +1 -2
- package/dist/glRenderState.d.ts.map +1 -1
- package/dist/glRenderState.js +53 -46
- package/dist/glRenderState.js.map +1 -1
- package/dist/glRenderTarget.d.ts +17 -16
- package/dist/glRenderTarget.d.ts.map +1 -1
- package/dist/glRenderTarget.js +38 -26
- package/dist/glRenderTarget.js.map +1 -1
- package/dist/glRenderTargetPool.d.ts +9 -9
- package/dist/glRenderTargetPool.d.ts.map +1 -1
- package/dist/glRenderTargetPool.js +10 -12
- package/dist/glRenderTargetPool.js.map +1 -1
- package/dist/glRenderTexture.d.ts +2 -2
- package/dist/glRenderTexture.d.ts.map +1 -1
- package/dist/glRenderTexture.js +11 -13
- package/dist/glRenderTexture.js.map +1 -1
- package/dist/glRenderTexturePool.js +3 -5
- package/dist/glRenderTexturePool.js.map +1 -1
- package/dist/glSkinPaletteTexture.js +8 -2
- package/dist/glSkinPaletteTexture.js.map +1 -1
- package/dist/glTestHelper.d.ts +0 -1
- package/dist/glTestHelper.d.ts.map +1 -1
- package/dist/glTestHelper.js +0 -1
- package/dist/glTestHelper.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +11 -11
- package/src/enableGlRenderStateGuards.test.ts +2 -4
- package/src/glContext.test.ts +3 -52
- package/src/glCubeRenderTarget.test.ts +10 -8
- package/src/glDraw.test.ts +4 -16
- package/src/glFullscreenPass.test.ts +145 -41
- package/src/glLinearToSrgbPass.test.ts +8 -5
- package/src/glPresentRenderTarget.test.ts +3 -5
- package/src/glReadback.test.ts +3 -3
- package/src/glRenderPass.test.ts +228 -55
- package/src/glRenderState.test.ts +106 -165
- package/src/glRenderTarget.test.ts +134 -99
- package/src/glRenderTargetPool.test.ts +69 -76
- package/src/glRenderTexture.test.ts +58 -31
- package/src/glSkinPaletteTexture.test.ts +9 -0
- package/src/glTextureResolver.test.ts +5 -1
- package/dist/glBackground.d.ts +0 -3
- package/dist/glBackground.d.ts.map +0 -1
- package/dist/glBackground.js +0 -19
- package/dist/glBackground.js.map +0 -1
- package/dist/glContext.d.ts +0 -3
- package/dist/glContext.d.ts.map +0 -1
- package/dist/glContext.js +0 -16
- package/dist/glContext.js.map +0 -1
- package/src/glBackground.test.ts +0 -68
package/dist/glRenderPass.d.ts
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import type { GlRenderState, GlRenderTarget, Matrix,
|
|
2
|
-
export declare function
|
|
3
|
-
export declare function
|
|
1
|
+
import type { GlContext, GlRenderPass, GlRenderState, GlRenderTarget, Matrix, RenderTargetClear, Viewport } from '@flighthq/types/contract';
|
|
2
|
+
export declare function acquireGlRenderPassHandle(gl: GlContext, state: GlRenderState, target: GlRenderTarget): GlRenderPass;
|
|
3
|
+
export declare function beginGlRenderPass(state: GlRenderState, target: GlRenderTarget, clear?: Readonly<RenderTargetClear>, viewport?: Readonly<Viewport>): GlRenderPass;
|
|
4
|
+
export declare function endGlRenderPass(pass: GlRenderPass): void;
|
|
5
|
+
export declare function getGlCurrentRenderPass(state: GlRenderState): GlRenderPass | null;
|
|
6
|
+
export declare function releaseGlRenderPassHandle(gl: GlContext, handle: GlRenderPass): void;
|
|
4
7
|
export declare function setGlRenderTransform2D(state: GlRenderState, transform: Readonly<Matrix>): void;
|
|
5
8
|
//# sourceMappingURL=glRenderPass.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glRenderPass.d.ts","sourceRoot":"","sources":["../src/glRenderPass.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"glRenderPass.d.ts","sourceRoot":"","sources":["../src/glRenderPass.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,SAAS,EACT,YAAY,EACZ,aAAa,EACb,cAAc,EAId,MAAM,EACN,iBAAiB,EACjB,QAAQ,EACT,MAAM,0BAA0B,CAAC;AAmClC,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,GAAG,YAAY,CAcnH;AAyBD,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,cAAc,EACtB,KAAK,CAAC,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EACnC,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAC5B,YAAY,CA+Dd;AAQD,wBAAgB,eAAe,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAyCxD;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,GAAG,YAAY,GAAG,IAAI,CAEhF;AA4JD,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CAOnF;AAOD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAY9F"}
|
package/dist/glRenderPass.js
CHANGED
|
@@ -1,12 +1,25 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
|
|
2
2
|
import { copyMatrix, createMatrix } from '@flighthq/geometry/contract';
|
|
3
3
|
import { getGlRenderStateRuntime } from './glRenderState';
|
|
4
|
-
import {
|
|
4
|
+
import { resolveGlTextureRenderTarget } from './glRenderTarget';
|
|
5
|
+
export function acquireGlRenderPassHandle(gl, state, target) {
|
|
6
|
+
let pool = _passHandlePool.get(gl);
|
|
7
|
+
if (pool !== undefined && pool.length > 0) {
|
|
8
|
+
const handle = pool.pop();
|
|
9
|
+
handle.gl = gl;
|
|
10
|
+
handle.state = state;
|
|
11
|
+
handle.target = target;
|
|
12
|
+
return handle;
|
|
13
|
+
}
|
|
14
|
+
const handle = allocateEntity();
|
|
15
|
+
handle.gl = gl;
|
|
16
|
+
handle.state = state;
|
|
17
|
+
handle.target = target;
|
|
18
|
+
return finishEntity(handle);
|
|
19
|
+
}
|
|
5
20
|
// Begins a render pass into `target`: binds it (saving the previous binding for restore, so passes
|
|
6
|
-
// nest)
|
|
7
|
-
//
|
|
8
|
-
// with endGlRenderPass. This is the clear/preserve model, not GL/Vulkan load ops: omit `preserve` and
|
|
9
|
-
// everything starts fresh; name what to keep.
|
|
21
|
+
// nest). Aspects named in `clear` are overwritten to the given values; omitted aspects are preserved.
|
|
22
|
+
// Pair with endGlRenderPass.
|
|
10
23
|
//
|
|
11
24
|
// `viewport` is a device-pixel, top-left-origin region of `target`. It is intersected with target
|
|
12
25
|
// storage, realized as both viewport and scissor, and therefore constrains drawing plus color/depth
|
|
@@ -18,22 +31,16 @@ import { resolveGlRenderTarget } from './glRenderTarget';
|
|
|
18
31
|
// restored by the begin/end bracket like the rest of the pass state.
|
|
19
32
|
//
|
|
20
33
|
// Single-attachment (the common no-effects scene / 2D-offscreen path):
|
|
21
|
-
// beginGlRenderPass(state, target
|
|
22
|
-
// drawGlScene3D(
|
|
23
|
-
// endGlRenderPass(
|
|
24
|
-
// presentGlRenderTarget(state, target)
|
|
25
|
-
//
|
|
26
|
-
// MRT / G-buffer (three color attachments, keep depth for a later lighting pass over the same target):
|
|
27
|
-
// beginGlRenderPass(state, gbuffer, { preserveColor: [false, false, false], preserveDepth: false })
|
|
28
|
-
// drawGlScene3D(state, scene, camera, lights) // fragment shader writes location 0,1,2
|
|
29
|
-
// endGlRenderPass(state)
|
|
30
|
-
// // ...lighting pass samples gbuffer.textures[0..2], preserving depth: { preserveDepth: true }
|
|
34
|
+
// const pass = beginGlRenderPass(state, target, { color: [0, 0, 0, 0], depth: 1.0 })
|
|
35
|
+
// drawGlScene3D(pass, scene, camera, lights)
|
|
36
|
+
// endGlRenderPass(pass)
|
|
37
|
+
// presentGlRenderTarget(state, target)
|
|
31
38
|
//
|
|
32
39
|
// Partial target (clear only the sub-region, then restore the exact enclosing viewport/scissor):
|
|
33
|
-
// beginGlRenderPass(state, target,
|
|
34
|
-
// drawGlScene3D(
|
|
35
|
-
// endGlRenderPass(
|
|
36
|
-
export function beginGlRenderPass(state, target,
|
|
40
|
+
// const pass = beginGlRenderPass(state, target, { color: [0, 0, 0, 0] }, viewport)
|
|
41
|
+
// drawGlScene3D(pass, scene, camera, lights)
|
|
42
|
+
// endGlRenderPass(pass)
|
|
43
|
+
export function beginGlRenderPass(state, target, clear, viewport) {
|
|
37
44
|
const gl = state.gl;
|
|
38
45
|
let stack = _passStack.get(gl);
|
|
39
46
|
// One WebGL context has one live framebuffer/stencil/scissor state even when several higher-level
|
|
@@ -87,7 +94,10 @@ export function beginGlRenderPass(state, target, preserve, viewport) {
|
|
|
87
94
|
invalidateGlPassBindingCache(runtime);
|
|
88
95
|
if (previousOwner !== state)
|
|
89
96
|
invalidateGlPassBindingCache(previousRuntime);
|
|
90
|
-
clearGlRenderPass(state, target,
|
|
97
|
+
clearGlRenderPass(state, target, clear);
|
|
98
|
+
const pass = acquireGlRenderPassHandle(gl, state, target);
|
|
99
|
+
runtime.currentPass = pass;
|
|
100
|
+
return pass;
|
|
91
101
|
}
|
|
92
102
|
// Ends the pass opened by beginGlRenderPass: restores the framebuffer binding, exact viewport/scissor,
|
|
93
103
|
// clip stack, and 2D render transform saved at begin, then resolves MSAA on the target that was active
|
|
@@ -95,7 +105,8 @@ export function beginGlRenderPass(state, target, preserve, viewport) {
|
|
|
95
105
|
// single-sample result — ready for present, effects, or sampling. A call with no matching begin throws:
|
|
96
106
|
// an unbalanced pass is a programmer error, and silently accepting it hides a leaked prior pass. The
|
|
97
107
|
// target is read from runtime rather than passed, so end mirrors the other backend brackets.
|
|
98
|
-
export function endGlRenderPass(
|
|
108
|
+
export function endGlRenderPass(pass) {
|
|
109
|
+
const state = pass.state;
|
|
99
110
|
const gl = state.gl;
|
|
100
111
|
const stack = _passStack.get(gl);
|
|
101
112
|
if (stack === undefined) {
|
|
@@ -108,9 +119,9 @@ export function endGlRenderPass(state) {
|
|
|
108
119
|
stack.pop();
|
|
109
120
|
if (stack.length === 0)
|
|
110
121
|
_passStack.delete(gl);
|
|
122
|
+
releaseGlRenderPassHandle(gl, pass);
|
|
111
123
|
const runtime = getGlRenderStateRuntime(state);
|
|
112
|
-
|
|
113
|
-
// target being ended here is always the 2D/MSAA target beginGlRenderPass installed.
|
|
124
|
+
runtime.currentPass = null;
|
|
114
125
|
const ended = runtime.currentRenderTarget;
|
|
115
126
|
restoreGlPassState(state, saved.ownerState);
|
|
116
127
|
gl.bindFramebuffer(gl.FRAMEBUFFER, saved.previousState.framebuffer);
|
|
@@ -123,76 +134,54 @@ export function endGlRenderPass(state) {
|
|
|
123
134
|
if (saved.previousOwner !== state) {
|
|
124
135
|
invalidateGlPassBindingCache(getGlRenderStateRuntime(saved.previousOwner));
|
|
125
136
|
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
// Sets the 2D root device transform the display-object update pass (prepareScene2DRender) reads to
|
|
130
|
-
// place nodes with no scene parent. Call after beginGlRenderPass when a 2D pass renders into a target
|
|
131
|
-
// with its own coordinate system (the render cache); the value is restored by the matching
|
|
132
|
-
// endGlRenderPass. A fresh matrix is allocated rather than mutating in place, because the begin/end
|
|
133
|
-
// bracket saved the previous reference and restores it — mutating the shared object would corrupt that.
|
|
134
|
-
export function setGlRenderTransform2D(state, transform) {
|
|
135
|
-
const next = createMatrix();
|
|
136
|
-
copyMatrix(next, transform);
|
|
137
|
-
state.renderTransform2D = next;
|
|
138
|
-
// The root device transform is an input to every prepared proxy transform, but it is state policy,
|
|
139
|
-
// not a node revision. Mark the state-local proxies stale so a repeated offscreen capture with new
|
|
140
|
-
// bounds/padding cannot reuse transforms prepared for the previous target dimensions.
|
|
141
|
-
const runtime = getGlRenderStateRuntime(state);
|
|
142
|
-
for (const source of runtime.renderProxySources) {
|
|
143
|
-
const proxy = runtime.renderProxyMap.get(source);
|
|
144
|
-
if (proxy !== undefined)
|
|
145
|
-
proxy.lastLocalTransformId = -1;
|
|
137
|
+
// Screen targets (framebuffer === null) have no MSAA storage to resolve.
|
|
138
|
+
if (ended != null && ended.framebuffer !== null) {
|
|
139
|
+
resolveGlTextureRenderTarget(saved.previousOwner, ended);
|
|
146
140
|
}
|
|
147
141
|
}
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
function clearGlRenderPass(state, target,
|
|
142
|
+
export function getGlCurrentRenderPass(state) {
|
|
143
|
+
return getGlRenderStateRuntime(state).currentPass;
|
|
144
|
+
}
|
|
145
|
+
function clearGlRenderPass(state, target, clear) {
|
|
146
|
+
if (clear === undefined)
|
|
147
|
+
return;
|
|
152
148
|
const gl = state.gl;
|
|
153
|
-
const
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
149
|
+
const { color, colors, depth, stencil } = clear;
|
|
150
|
+
if (colors !== undefined) {
|
|
151
|
+
for (let i = 0; i < colors.length; i++) {
|
|
152
|
+
const rgba = colors[i];
|
|
153
|
+
if (rgba === undefined)
|
|
154
|
+
continue;
|
|
155
|
+
_clearRgba[0] = rgba[0];
|
|
156
|
+
_clearRgba[1] = rgba[1];
|
|
157
|
+
_clearRgba[2] = rgba[2];
|
|
158
|
+
_clearRgba[3] = rgba[3];
|
|
159
|
+
gl.clearBufferfv(gl.COLOR, i, _clearRgba);
|
|
160
|
+
}
|
|
159
161
|
}
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
162
|
+
else if (color !== undefined) {
|
|
163
|
+
_clearRgba[0] = color[0];
|
|
164
|
+
_clearRgba[1] = color[1];
|
|
165
|
+
_clearRgba[2] = color[2];
|
|
166
|
+
_clearRgba[3] = color[3];
|
|
167
|
+
for (let i = 0; i < target.colorAttachments; i++) {
|
|
168
|
+
gl.clearBufferfv(gl.COLOR, i, _clearRgba);
|
|
169
|
+
}
|
|
165
170
|
}
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
if (typeof preserve === 'boolean')
|
|
170
|
-
return preserve;
|
|
171
|
-
// Per-location; a missing or short entry defaults to clear (false), consistent with default-clear.
|
|
172
|
-
return preserve[index] === true;
|
|
173
|
-
}
|
|
174
|
-
// Writes attachment `index`'s clear color into `out` as linear 0..1 RGBA. The target's packed-RGBA
|
|
175
|
-
// clearColors win when present; otherwise the render state's background color is the fallback.
|
|
176
|
-
function resolveGlClearColor(state, target, index, out) {
|
|
177
|
-
const packed = target.clearColors[index];
|
|
178
|
-
if (packed !== undefined) {
|
|
179
|
-
out[0] = ((packed >>> 24) & 0xff) / 255;
|
|
180
|
-
out[1] = ((packed >>> 16) & 0xff) / 255;
|
|
181
|
-
out[2] = ((packed >>> 8) & 0xff) / 255;
|
|
182
|
-
out[3] = (packed & 0xff) / 255;
|
|
171
|
+
if (depth !== undefined && stencil !== undefined) {
|
|
172
|
+
gl.depthMask(true);
|
|
173
|
+
gl.clearBufferfi(gl.DEPTH_STENCIL, 0, depth, stencil);
|
|
183
174
|
}
|
|
184
|
-
else {
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
out[2] = bg[2] ?? 0;
|
|
189
|
-
out[3] = bg.length >= 4 ? bg[3] : 0;
|
|
175
|
+
else if (depth !== undefined) {
|
|
176
|
+
gl.depthMask(true);
|
|
177
|
+
_clearDepth[0] = depth;
|
|
178
|
+
gl.clearBufferfv(gl.DEPTH, 0, _clearDepth);
|
|
190
179
|
}
|
|
191
|
-
if (
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
out[2] = srgbChannelToLinear(out[2]);
|
|
180
|
+
else if (stencil !== undefined) {
|
|
181
|
+
_clearStencil[0] = stencil;
|
|
182
|
+
gl.clearBufferiv(gl.STENCIL, 0, _clearStencil);
|
|
195
183
|
}
|
|
184
|
+
getGlRenderStateRuntime(state).context.currentBlendSignature = null;
|
|
196
185
|
}
|
|
197
186
|
function captureGlPassState(state) {
|
|
198
187
|
const runtime = getGlRenderStateRuntime(state);
|
|
@@ -291,8 +280,38 @@ function resolveGlPassViewport(target, viewport) {
|
|
|
291
280
|
function clampGlPassEdge(value, extent) {
|
|
292
281
|
return Math.min(extent, Math.max(0, value));
|
|
293
282
|
}
|
|
283
|
+
export function releaseGlRenderPassHandle(gl, handle) {
|
|
284
|
+
let pool = _passHandlePool.get(gl);
|
|
285
|
+
if (pool === undefined) {
|
|
286
|
+
pool = [];
|
|
287
|
+
_passHandlePool.set(gl, pool);
|
|
288
|
+
}
|
|
289
|
+
pool.push(handle);
|
|
290
|
+
}
|
|
291
|
+
// Sets the 2D root device transform the display-object update pass (prepareScene2DRender) reads to
|
|
292
|
+
// place nodes with no scene parent. Call after beginGlRenderPass when a 2D pass renders into a target
|
|
293
|
+
// with its own coordinate system (the render cache); the value is restored by the matching
|
|
294
|
+
// endGlRenderPass. A fresh matrix is allocated rather than mutating in place, because the begin/end
|
|
295
|
+
// bracket saved the previous reference and restores it — mutating the shared object would corrupt that.
|
|
296
|
+
export function setGlRenderTransform2D(state, transform) {
|
|
297
|
+
const next = createMatrix();
|
|
298
|
+
copyMatrix(next, transform);
|
|
299
|
+
state.renderTransform2D = next;
|
|
300
|
+
// The root device transform is an input to every prepared proxy transform, but it is state policy,
|
|
301
|
+
// not a node revision. Mark the state-local proxies stale so a repeated offscreen capture with new
|
|
302
|
+
// bounds/padding cannot reuse transforms prepared for the previous target dimensions.
|
|
303
|
+
const runtime = getGlRenderStateRuntime(state);
|
|
304
|
+
for (const source of runtime.renderProxySources) {
|
|
305
|
+
const proxy = runtime.renderProxyMap.get(source);
|
|
306
|
+
if (proxy !== undefined)
|
|
307
|
+
proxy.lastLocalTransformId = -1;
|
|
308
|
+
}
|
|
309
|
+
}
|
|
294
310
|
// A WebGL context has exactly one framebuffer binding and one live stencil gate. Keying the pass
|
|
295
311
|
// bracket by that physical owner keeps cache GlRenderStates sharing a context in the same LIFO scope.
|
|
296
312
|
const _passStack = new WeakMap();
|
|
313
|
+
const _passHandlePool = new WeakMap();
|
|
314
|
+
const _clearDepth = new Float32Array(1);
|
|
297
315
|
const _clearRgba = new Float32Array(4);
|
|
316
|
+
const _clearStencil = new Int32Array(1);
|
|
298
317
|
//# sourceMappingURL=glRenderPass.js.map
|
package/dist/glRenderPass.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glRenderPass.js","sourceRoot":"","sources":["../src/glRenderPass.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"glRenderPass.js","sourceRoot":"","sources":["../src/glRenderPass.ts"],"names":[],"mappings":"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"}
|
package/dist/glRenderState.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { GlColorAdjustmentMaterialFeature, GlColorAdjustmentMaterialFeatureGuard, GlContext, GlContextRuntime, GlContextState, GlPipeline, GlRenderOptions, GlRenderState, GlRenderStateRuntime, EntityConstruction } from '@flighthq/types/contract';
|
|
2
2
|
export declare function createGlContextState(gl: GlContext): GlContextState;
|
|
3
|
-
export declare function
|
|
4
|
-
export declare function createGlRenderState(contextState: Readonly<GlContextState>, pipeline: Readonly<GlPipeline>, options?: GlRenderOptions): GlRenderState;
|
|
3
|
+
export declare function createGlRenderState(gl: GlContext, pipeline: Readonly<GlPipeline>, options?: GlRenderOptions): GlRenderState;
|
|
5
4
|
export declare function createGlRenderStateRuntime(contextState: Readonly<GlContextState>, pipeline: Readonly<GlPipeline>): GlRenderStateRuntime;
|
|
6
5
|
export declare function destroyGlRenderState(state: GlRenderState): void;
|
|
7
6
|
export declare function getGlColorAdjustmentMaterialFeature(state: GlRenderState): Readonly<GlColorAdjustmentMaterialFeature> | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glRenderState.d.ts","sourceRoot":"","sources":["../src/glRenderState.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"glRenderState.d.ts","sourceRoot":"","sources":["../src/glRenderState.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,gCAAgC,EAChC,qCAAqC,EACrC,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,0BAA0B,CAAC;AAGlC,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,SAAS,GAAG,cAAc,CAMlE;AAED,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,SAAS,EACb,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,EAC9B,OAAO,GAAE,eAAoB,GAC5B,aAAa,CAOf;AAED,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,QAAQ,CAAC,cAAc,CAAC,EACtC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,GAC7B,oBAAoB,CAUtB;AAeD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CA4C/D;AAED,wBAAgB,mCAAmC,CACjD,KAAK,EAAE,aAAa,GACnB,QAAQ,CAAC,gCAAgC,CAAC,GAAG,IAAI,CAGnD;AAED,wBAAgB,wCAAwC,CACtD,KAAK,EAAE,aAAa,GACnB,qCAAqC,GAAG,IAAI,CAG9C;AAED,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAE5F;AAID,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,aAAa,GAAG,oBAAoB,CAElF;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,kBAAkB,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,SAAS,GAAG,IAAI,CA6BvG;AAcD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CASvE;AAED,wBAAgB,yBAAyB,CACvC,YAAY,EAAE,QAAQ,CAAC,cAAc,CAAC,EACtC,QAAQ,EAAE,CAAC,EAAE,EAAE,SAAS,KAAK,IAAI,GAChC,IAAI,CAEN;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,IAAI,CAElH"}
|
package/dist/glRenderState.js
CHANGED
|
@@ -1,61 +1,27 @@
|
|
|
1
1
|
import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
|
|
2
2
|
import { createMatrix } from '@flighthq/geometry/contract';
|
|
3
|
-
import { createRenderState as _createRenderState, createRenderStateRuntime, destroyRenderState,
|
|
3
|
+
import { createRenderState as _createRenderState, createRenderStateRuntime, destroyRenderState, } from '@flighthq/render/contract';
|
|
4
4
|
import { EntityRuntimeKey, RegistryEntryState } from '@flighthq/types/contract';
|
|
5
5
|
export function createGlContextState(gl) {
|
|
6
6
|
const state = allocateEntity();
|
|
7
7
|
initializeGlContextState(state, gl);
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
return createGlRenderState(contextState, pipeline, options);
|
|
8
|
+
const result = finishEntity(state);
|
|
9
|
+
_contextStateByGl.set(gl, result);
|
|
10
|
+
return result;
|
|
12
11
|
}
|
|
13
|
-
export function createGlRenderState(
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
roundPixels: options.roundPixels ?? false,
|
|
21
|
-
sceneGraphSyncPolicy: options.sceneGraphSyncPolicy,
|
|
22
|
-
});
|
|
23
|
-
state.applyBlendMode = null;
|
|
24
|
-
Object.assign(state, { contextState, gl, pipeline });
|
|
25
|
-
if (options.backgroundColor != null)
|
|
26
|
-
setRenderStateBackgroundColor(state, options.backgroundColor);
|
|
27
|
-
const runtime = createGlRenderStateRuntime(contextState, pipeline);
|
|
28
|
-
state[EntityRuntimeKey] = runtime;
|
|
29
|
-
runtime.currentFramebuffer = null;
|
|
30
|
-
runtime.currentMaskDepth = 0;
|
|
31
|
-
runtime.currentScissorRect = null;
|
|
32
|
-
runtime.flushPendingDraws = null;
|
|
33
|
-
runtime.renderTargetViewport = null;
|
|
34
|
-
runtime.defaultBitmapShader = null;
|
|
35
|
-
runtime.quadBatchWriterBlendMode = null;
|
|
36
|
-
runtime.quadBatchWriterMaterial = null;
|
|
37
|
-
runtime.quadBatchWriterMaterialRenderer = null;
|
|
38
|
-
runtime.quadBatchWriterMaterialFloats = 0;
|
|
39
|
-
runtime.quadBatchWriterMaterialData = new Float32Array(8 * 256);
|
|
40
|
-
runtime.quadBatchWriterCount = 0;
|
|
41
|
-
runtime.quadBatchWriterInstanceData = new Float32Array(13 * 256);
|
|
42
|
-
runtime.quadBatchWriterTexture = null;
|
|
43
|
-
runtime.quadBatchWriterSampler = null;
|
|
44
|
-
runtime.quadBatchWriterStraightAlpha = false;
|
|
45
|
-
runtime.quadBatchWriterSmoothing = null;
|
|
46
|
-
runtime.quadVertexData = new Float32Array(16);
|
|
47
|
-
runtime.matrixArray = new Float32Array(9);
|
|
48
|
-
runtime.scissorStack = [];
|
|
49
|
-
runtime.clipForms = [];
|
|
50
|
-
gl.enable(gl.BLEND);
|
|
51
|
-
gl.blendFunc(gl.ONE, gl.ONE_MINUS_SRC_ALPHA);
|
|
52
|
-
gl.disable(gl.DEPTH_TEST);
|
|
53
|
-
return finishEntity(state);
|
|
12
|
+
export function createGlRenderState(gl, pipeline, options = {}) {
|
|
13
|
+
let contextState = _contextStateByGl.get(gl);
|
|
14
|
+
if (contextState === undefined) {
|
|
15
|
+
contextState = createGlContextState(gl);
|
|
16
|
+
_contextStateByGl.set(gl, contextState);
|
|
17
|
+
}
|
|
18
|
+
return _createGlRenderStateFromContext(contextState, pipeline, options);
|
|
54
19
|
}
|
|
55
20
|
export function createGlRenderStateRuntime(contextState, pipeline) {
|
|
56
21
|
const runtime = createRenderStateRuntime();
|
|
57
22
|
runtime.context = contextState[EntityRuntimeKey];
|
|
58
23
|
runtime.context.references++;
|
|
24
|
+
runtime.currentPass = null;
|
|
59
25
|
runtime.currentRenderTarget = null;
|
|
60
26
|
runtime.registries = { ...pipeline.registries };
|
|
61
27
|
runtime.bindingCacheGuard = null;
|
|
@@ -204,5 +170,46 @@ export function registerGlContextTeardown(contextState, teardown) {
|
|
|
204
170
|
export function registerGlRenderStateTeardown(state, teardown) {
|
|
205
171
|
getGlRenderStateRuntime(state).teardowns.push(teardown);
|
|
206
172
|
}
|
|
173
|
+
function _createGlRenderStateFromContext(contextState, pipeline, options) {
|
|
174
|
+
const gl = contextState.gl;
|
|
175
|
+
const state = _createRenderState({
|
|
176
|
+
allowSmoothing: options.imageSmoothingEnabled ?? options.allowSmoothing ?? true,
|
|
177
|
+
pixelRatio: options.pixelRatio ?? 1,
|
|
178
|
+
raster2DSurfaceProvider: options.raster2DSurfaceProvider ?? null,
|
|
179
|
+
renderTransform2D: createMatrix(),
|
|
180
|
+
roundPixels: options.roundPixels ?? false,
|
|
181
|
+
sceneGraphSyncPolicy: options.sceneGraphSyncPolicy,
|
|
182
|
+
});
|
|
183
|
+
state.applyBlendMode = null;
|
|
184
|
+
Object.assign(state, { contextState, gl, pipeline });
|
|
185
|
+
const runtime = createGlRenderStateRuntime(contextState, pipeline);
|
|
186
|
+
state[EntityRuntimeKey] = runtime;
|
|
187
|
+
runtime.currentFramebuffer = null;
|
|
188
|
+
runtime.currentMaskDepth = 0;
|
|
189
|
+
runtime.currentScissorRect = null;
|
|
190
|
+
runtime.flushPendingDraws = null;
|
|
191
|
+
runtime.renderTargetViewport = null;
|
|
192
|
+
runtime.defaultBitmapShader = null;
|
|
193
|
+
runtime.quadBatchWriterBlendMode = null;
|
|
194
|
+
runtime.quadBatchWriterMaterial = null;
|
|
195
|
+
runtime.quadBatchWriterMaterialRenderer = null;
|
|
196
|
+
runtime.quadBatchWriterMaterialFloats = 0;
|
|
197
|
+
runtime.quadBatchWriterMaterialData = new Float32Array(8 * 256);
|
|
198
|
+
runtime.quadBatchWriterCount = 0;
|
|
199
|
+
runtime.quadBatchWriterInstanceData = new Float32Array(13 * 256);
|
|
200
|
+
runtime.quadBatchWriterTexture = null;
|
|
201
|
+
runtime.quadBatchWriterSampler = null;
|
|
202
|
+
runtime.quadBatchWriterStraightAlpha = false;
|
|
203
|
+
runtime.quadBatchWriterSmoothing = null;
|
|
204
|
+
runtime.quadVertexData = new Float32Array(16);
|
|
205
|
+
runtime.matrixArray = new Float32Array(9);
|
|
206
|
+
runtime.scissorStack = [];
|
|
207
|
+
runtime.clipForms = [];
|
|
208
|
+
gl.enable(gl.BLEND);
|
|
209
|
+
gl.blendFunc(gl.ONE, gl.ONE_MINUS_SRC_ALPHA);
|
|
210
|
+
gl.disable(gl.DEPTH_TEST);
|
|
211
|
+
return finishEntity(state);
|
|
212
|
+
}
|
|
213
|
+
const _contextStateByGl = new WeakMap();
|
|
207
214
|
const _destroyedStates = new WeakSet();
|
|
208
215
|
//# sourceMappingURL=glRenderState.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glRenderState.js","sourceRoot":"","sources":["../src/glRenderState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EACL,iBAAiB,IAAI,kBAAkB,EACvC,wBAAwB,EACxB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"glRenderState.js","sourceRoot":"","sources":["../src/glRenderState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EACL,iBAAiB,IAAI,kBAAkB,EACvC,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AAanC,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEhF,MAAM,UAAU,oBAAoB,CAAC,EAAa;IAChD,MAAM,KAAK,GAAG,cAAc,EAAkB,CAAC;IAC/C,wBAAwB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,iBAAiB,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAClC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,EAAa,EACb,QAA8B,EAC9B,UAA2B,EAAE;IAE7B,IAAI,YAAY,GAAG,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7C,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,YAAY,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC;QACxC,iBAAiB,CAAC,GAAG,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,+BAA+B,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,YAAsC,EACtC,QAA8B;IAE9B,MAAM,OAAO,GAAG,wBAAwB,EAA0B,CAAC;IACnE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,gBAAgB,CAAqB,CAAC;IACrE,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;IAC7B,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IACnC,OAAO,CAAC,UAAU,GAAG,EAAE,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAC;IAChD,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IACjC,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC;IACvB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,4FAA4F;AAC5F,qGAAqG;AACrG,kGAAkG;AAClG,4FAA4F;AAC5F,EAAE;AACF,+CAA+C;AAC/C,iGAAiG;AACjG,gGAAgG;AAChG,oGAAoG;AACpG,2FAA2F;AAC3F,EAAE;AACF,6FAA6F;AAC7F,6DAA6D;AAC7D,MAAM,UAAU,oBAAoB,CAAC,KAAoB;IACvD,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO;IACxC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5B,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAC/C,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;QAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/D,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7B,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IAC5B,GAAG,CAAC,UAAU,EAAE,CAAC;IACjB,IAAI,GAAG,CAAC,UAAU,KAAK,CAAC;QAAE,OAAO;IACjC,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC;IAClB,KAAK,MAAM,QAAQ,IAAI,GAAG,CAAC,SAAS;QAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnD,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IAEzB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAgB,CAAC;IACzC,IAAI,OAAO,CAAC,mBAAmB;QAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACnF,IAAI,GAAG,CAAC,iBAAiB;QAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9E,IAAI,GAAG,CAAC,kBAAkB;QAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAChF,IAAI,GAAG,CAAC,wBAAwB,EAAE,CAAC;QACjC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,wBAAwB,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;QAC5E,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACzE,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACvE,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,wBAAwB,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,GAAG,CAAC,kBAAkB,EAAE,CAAC;QAC3B,IAAI,GAAG,CAAC,kBAAkB,CAAC,oBAAoB;YAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACnH,IAAI,GAAG,CAAC,kBAAkB,CAAC,iBAAiB;YAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC/G,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,QAAQ;QAAE,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAE1D,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACtC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACrC,IAAI,GAAG,CAAC,iBAAiB,EAAE,CAAC;QAC1B,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACpD,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,GAAG,CAAC,kBAAkB,EAAE,CAAC;QAC3B,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QACrD,IAAI,GAAG,CAAC,kBAAkB,CAAC,oBAAoB;YAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;QAC9G,IAAI,GAAG,CAAC,kBAAkB,CAAC,oBAAoB;YAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;QAC9G,IAAI,GAAG,CAAC,kBAAkB,CAAC,0BAA0B,EAAE,CAAC;YACtD,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mCAAmC,CACjD,KAAoB;IAEpB,MAAM,KAAK,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,sBAAsB,EAAE,KAAK,CAAC;IACtF,OAAO,KAAK,EAAE,KAAK,KAAK,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,wCAAwC,CACtD,KAAoB;IAEpB,MAAM,KAAK,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,2BAA2B,EAAE,KAAK,CAAC;IAC3F,OAAO,KAAK,EAAE,KAAK,KAAK,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,YAAsC;IACxE,OAAO,YAAY,CAAC,gBAAgB,CAAqB,CAAC;AAC5D,CAAC;AAED,+FAA+F;AAC/F,6CAA6C;AAC7C,MAAM,UAAU,uBAAuB,CAAC,KAAoB;IAC1D,OAAO,KAAK,CAAC,gBAAgB,CAAyB,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAyC,EAAE,EAAa;IAC/F,MAAM,eAAe,GAAG,EAAE,CAAC,YAAY,EAAG,CAAC;IAC3C,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;IACxD,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,oBAAoB,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC;IAC5F,MAAM,gBAAgB,GAAG,EAAE,CAAC,YAAY,EAAG,CAAC;IAC5C,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;IACjD,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC;IACpD,MAAM,cAAc,GAAqB;QACvC,OAAO,EAAE,IAAI;QACb,wBAAwB,EAAE,IAAI;QAC9B,qBAAqB,EAAE,IAAI;QAC3B,aAAa,EAAE,IAAI;QACnB,yBAAyB,EAAE,IAAI;QAC/B,EAAE;QACF,iBAAiB,EAAE,IAAI;QACvB,kBAAkB,EAAE,IAAI;QACxB,eAAe;QACf,gBAAgB;QAChB,UAAU,EAAE,CAAC;QACb,kBAAkB,EAAE,IAAI;QACxB,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,IAAI,OAAO,EAAE;QAC3B,0CAA0C,EAAE,IAAI,OAAO,EAAE;QACzD,sCAAsC,EAAE,IAAI,OAAO,EAAE;QACrD,qCAAqC,EAAE,IAAI,OAAO,EAAE;QACpD,iCAAiC,EAAE,IAAI,OAAO,EAAE;KACjD,CAAC;IACF,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;IACd,KAAK,CAAC,gBAAgB,CAAC,GAAG,cAAc,CAAC;AAC3C,CAAC;AAED,iGAAiG;AACjG,mGAAmG;AACnG,mGAAmG;AACnG,8FAA8F;AAC9F,EAAE;AACF,6FAA6F;AAC7F,8FAA8F;AAC9F,iGAAiG;AACjG,mGAAmG;AACnG,qGAAqG;AACrG,+FAA+F;AAC/F,iEAAiE;AACjE,MAAM,UAAU,4BAA4B,CAAC,KAAoB;IAC/D,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAC/C,OAAO,CAAC,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAC7C,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAClC,OAAO,CAAC,gBAAgB,GAAG,CAAC,CAAC;IAC7B,OAAO,CAAC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IACrC,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAClC,OAAO,CAAC,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC;IACjD,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,YAAsC,EACtC,QAAiC;IAEjC,mBAAmB,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,KAAoB,EAAE,QAAwC;IAC1G,uBAAuB,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,+BAA+B,CACtC,YAAsC,EACtC,QAA8B,EAC9B,OAAwB;IAExB,MAAM,EAAE,GAAG,YAAY,CAAC,EAAE,CAAC;IAE3B,MAAM,KAAK,GAAG,kBAAkB,CAAC;QAC/B,cAAc,EAAE,OAAO,CAAC,qBAAqB,IAAI,OAAO,CAAC,cAAc,IAAI,IAAI;QAC/E,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,CAAC;QACnC,uBAAuB,EAAE,OAAO,CAAC,uBAAuB,IAAI,IAAI;QAChE,iBAAiB,EAAE,YAAY,EAAE;QACjC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,KAAK;QACzC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;KACnD,CAAkB,CAAC;IAEpB,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;IAC5B,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAErD,MAAM,OAAO,GAAG,0BAA0B,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACnE,KAAK,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC;IAClC,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAClC,OAAO,CAAC,gBAAgB,GAAG,CAAC,CAAC;IAC7B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAClC,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IACjC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IACnC,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC;IACxC,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;IACvC,OAAO,CAAC,+BAA+B,GAAG,IAAI,CAAC;IAC/C,OAAO,CAAC,6BAA6B,GAAG,CAAC,CAAC;IAC1C,OAAO,CAAC,2BAA2B,GAAG,IAAI,YAAY,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;IAChE,OAAO,CAAC,oBAAoB,GAAG,CAAC,CAAC;IACjC,OAAO,CAAC,2BAA2B,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC;IACjE,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IACtC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IACtC,OAAO,CAAC,4BAA4B,GAAG,KAAK,CAAC;IAC7C,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC;IACxC,OAAO,CAAC,cAAc,GAAG,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;IAC9C,OAAO,CAAC,WAAW,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,YAAY,GAAG,EAAE,CAAC;IAC1B,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC;IAEvB,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IACpB,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC;IAC7C,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IAE1B,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,iBAAiB,GAAG,IAAI,OAAO,EAA6B,CAAC;AACnE,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAiB,CAAC"}
|
package/dist/glRenderTarget.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { EntityConstruction, GlRenderState,
|
|
2
|
-
interface
|
|
1
|
+
import type { EntityConstruction, GlContext, GlRenderPass, GlRenderState, GlScreenRenderTarget, GlTextureRenderTarget, Matrix, RenderProxy2D, RenderTargetAxes, RenderTargetColorSpace, RenderTargetDescriptor, RenderTargetExplanation, RenderTargetFormat, RenderTargetFormatPolicy, ResolvedRenderTargetDescriptor } from '@flighthq/types/contract';
|
|
2
|
+
interface GlTextureRenderTargetStorage extends RenderTargetAxes {
|
|
3
3
|
framebuffer: WebGLFramebuffer;
|
|
4
4
|
resolveFramebuffer: WebGLFramebuffer | null;
|
|
5
5
|
textures: WebGLTexture[];
|
|
@@ -7,18 +7,19 @@ interface GlRenderTargetStorage extends RenderTargetAxes {
|
|
|
7
7
|
colorRenderbuffers: WebGLRenderbuffer[];
|
|
8
8
|
depthStencilRenderbuffer: WebGLRenderbuffer | null;
|
|
9
9
|
}
|
|
10
|
+
export declare function createGlScreenRenderTarget(gl: GlContext): GlScreenRenderTarget;
|
|
10
11
|
/**
|
|
11
12
|
* Allocates a render target realizing `descriptor`'s axes (format, MSAA sampleCount, MRT
|
|
12
13
|
* colorAttachments, depth). The framebuffer is bound during creation but the previous binding is
|
|
13
14
|
* restored before returning.
|
|
14
15
|
*/
|
|
15
|
-
export declare function
|
|
16
|
-
export declare function
|
|
17
|
-
export declare function
|
|
18
|
-
export declare function
|
|
16
|
+
export declare function createGlTextureRenderTarget(state: GlRenderState, descriptor: Readonly<RenderTargetDescriptor>): GlTextureRenderTarget;
|
|
17
|
+
export declare function createGlTextureRenderTarget(state: GlRenderState, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: 'preferred'): GlTextureRenderTarget;
|
|
18
|
+
export declare function createGlTextureRenderTarget(state: GlRenderState, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: 'required'): GlTextureRenderTarget | null;
|
|
19
|
+
export declare function createGlTextureRenderTarget(state: GlRenderState, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: RenderTargetFormatPolicy): GlTextureRenderTarget | null;
|
|
19
20
|
export declare function declareGlRenderTargetColorSpace(state: GlRenderState, colorSpace: RenderTargetColorSpace): boolean;
|
|
20
21
|
/** Deletes the GL resources owned by `target`. The target object must not be used after this call. */
|
|
21
|
-
export declare function
|
|
22
|
+
export declare function destroyGlTextureRenderTarget(target: GlTextureRenderTarget): void;
|
|
22
23
|
/**
|
|
23
24
|
* Composites `target`'s texture onto the current framebuffer as a positioned quad, using
|
|
24
25
|
* `renderProxy`'s world transform and alpha. `transform` maps the target's pixel space into the
|
|
@@ -27,21 +28,21 @@ export declare function destroyGlRenderTarget(state: GlRenderState, target: GlRe
|
|
|
27
28
|
* Render-target textures are stored with GL's bottom-left origin, so the quad's V coordinates are
|
|
28
29
|
* flipped (`v0=1, v1=0`) so the result composites upright.
|
|
29
30
|
*/
|
|
30
|
-
export declare function
|
|
31
|
-
export declare function
|
|
32
|
-
export declare function
|
|
31
|
+
export declare function drawGlTextureRenderTargetResult(pass: GlRenderPass, renderProxy: RenderProxy2D, target: Readonly<GlTextureRenderTarget>, transform: Readonly<Matrix>): void;
|
|
32
|
+
export declare function explainGlTextureRenderTarget(target: Readonly<GlTextureRenderTarget>): RenderTargetExplanation;
|
|
33
|
+
export declare function initializeGlTextureRenderTarget(target: EntityConstruction<GlTextureRenderTarget>, requested: Readonly<ResolvedRenderTargetDescriptor>, storage: Readonly<GlTextureRenderTargetStorage>, texture: WebGLTexture): void;
|
|
33
34
|
export declare function isGlRenderTargetFormatSupported(state: GlRenderState, format: RenderTargetFormat): boolean;
|
|
34
35
|
/** Reallocates the storage backing `target` to the new pixel dimensions, preserving its axes. */
|
|
35
|
-
export declare function
|
|
36
|
+
export declare function resizeGlTextureRenderTarget(state: GlRenderState, target: GlTextureRenderTarget, width: number, height: number): void;
|
|
37
|
+
export declare function resolveGlRenderTargetAxes(state: GlRenderState, descriptor: Readonly<RenderTargetDescriptor>): RenderTargetAxes;
|
|
38
|
+
export declare function resolveGlRenderTargetAxes(state: GlRenderState, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: 'preferred'): RenderTargetAxes;
|
|
39
|
+
export declare function resolveGlRenderTargetAxes(state: GlRenderState, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: 'required'): RenderTargetAxes | null;
|
|
40
|
+
export declare function resolveGlRenderTargetAxes(state: GlRenderState, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: RenderTargetFormatPolicy): RenderTargetAxes | null;
|
|
36
41
|
/**
|
|
37
42
|
* Resolves an MSAA target's multisample framebuffer into its single-sample resolve texture(s) via
|
|
38
43
|
* blitFramebuffer. No-op when sampleCount === 1. Call after the scene is drawn into the target and
|
|
39
44
|
* before sampling `target.texture`/`target.textures`.
|
|
40
45
|
*/
|
|
41
|
-
export declare function
|
|
42
|
-
export declare function resolveGlRenderTargetAxes(state: GlRenderState, descriptor: Readonly<RenderTargetDescriptor>): RenderTargetAxes;
|
|
43
|
-
export declare function resolveGlRenderTargetAxes(state: GlRenderState, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: 'preferred'): RenderTargetAxes;
|
|
44
|
-
export declare function resolveGlRenderTargetAxes(state: GlRenderState, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: 'required'): RenderTargetAxes | null;
|
|
45
|
-
export declare function resolveGlRenderTargetAxes(state: GlRenderState, descriptor: Readonly<RenderTargetDescriptor>, formatPolicy: RenderTargetFormatPolicy): RenderTargetAxes | null;
|
|
46
|
+
export declare function resolveGlTextureRenderTarget(state: GlRenderState, target: GlTextureRenderTarget): void;
|
|
46
47
|
export {};
|
|
47
48
|
//# sourceMappingURL=glRenderTarget.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glRenderTarget.d.ts","sourceRoot":"","sources":["../src/glRenderTarget.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,kBAAkB,
|
|
1
|
+
{"version":3,"file":"glRenderTarget.d.ts","sourceRoot":"","sources":["../src/glRenderTarget.ts"],"names":[],"mappings":"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"}
|