@swf2es/context3d 0.1.19 → 0.1.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,27 +1,173 @@
1
+ import { compressedFormat, TEXEL_BYTES } from "../backend.js";
1
2
  import { blockBytes, decodeDxt, encodeDxt } from "../dxt.js";
2
3
  import { Context3DError } from "../errors.js";
3
4
  import { range } from "./state.js";
4
- /** The staging array, made base-sized at its first use: a texture given only blocks on S3TC has none. */
5
+ /**
6
+ * GL's internal format for an uncompressed texture's storage. The packed formats are kept
7
+ * at 8 bits a channel, as AIR draws into them, their texels widened on upload as Direct3D
8
+ * samples them; 5:6:5 has no alpha to read but 1.
9
+ */
10
+ export function storageFormat(gl, format) {
11
+ switch (format) {
12
+ case "bgrPacked565":
13
+ return gl.RGB8;
14
+ case "rgbaHalfFloat":
15
+ return gl.RGBA16F;
16
+ default:
17
+ return gl.RGBA8;
18
+ }
19
+ }
20
+ /** 8-bit channel values as half floats, for bitmaps uploaded to rgbaHalfFloat. */
21
+ let halves = null;
22
+ function halfOf(byte) {
23
+ if (!halves) {
24
+ halves = new Uint16Array(256);
25
+ const float = new Float32Array(1);
26
+ const bits = new Uint32Array(float.buffer);
27
+ for (let i = 1; i < 256; i++) {
28
+ float[0] = i / 255;
29
+ const word = bits[0];
30
+ const exponent = ((word >>> 23) & 255) - 127 + 15;
31
+ // Every value here is a normal half: round its 23-bit mantissa to 10 bits, to nearest even.
32
+ const mantissa = word & 0x7fffff;
33
+ let half = (exponent << 10) | (mantissa >>> 13);
34
+ const rest = mantissa & 0x1fff;
35
+ if (rest > 0x1000 || (rest === 0x1000 && half & 1)) {
36
+ half++;
37
+ }
38
+ halves[i] = half;
39
+ }
40
+ }
41
+ return halves[byte];
42
+ }
43
+ /** A channel cut to its high `bits` and widened back to 8 by repeating them, as Direct3D reads it. */
44
+ function widen(value, bits) {
45
+ const kept = value >> (8 - bits);
46
+ return (kept << (8 - bits)) | (kept >> (2 * bits - 8));
47
+ }
48
+ /**
49
+ * The staging array, made base-sized at its first use: a texture given only blocks on S3TC
50
+ * has none. It holds a level as RGBA bytes, or a byte upload's texels as they came, with
51
+ * room for half floats' eight bytes a texel.
52
+ */
5
53
  function staging(texture, state) {
6
54
  if (state.bytes.length === 0) {
7
- state.bytes = new Uint8Array(texture.width * texture.height * 4);
55
+ state.bytes = new Uint8Array(texture.width * texture.height * Math.max(4, TEXEL_BYTES[texture.format] ?? 4));
8
56
  }
9
57
  return state.bytes;
10
58
  }
11
- /** The staged level uploaded: as it is, or a compressed texture's encoded to its blocks, as AIR compresses pixels. */
12
- function uploadLevel(gl, texture, state, level, face, w, h, encoder) {
13
- if (texture.format !== "bgra") {
59
+ /**
60
+ * The staged level turned, in place, into what the texture's storage takes: from RGBA
61
+ * bytes, or from its format's texels where `raw`, little-endian words. 5:6:5 and 4:4:4:4
62
+ * keep each channel's high bits, as AIR packs a bitmap; half floats take each byte over 255.
63
+ */
64
+ function convertStaged(format, bytes, count, raw) {
65
+ const words = new Uint16Array(bytes.buffer, bytes.byteOffset, bytes.length >> 1);
66
+ switch (format) {
67
+ case "bgrPacked565":
68
+ if (raw) {
69
+ // Backwards: texel i's three bytes land at 3i, ahead of its word at 2i.
70
+ for (let i = count - 1; i >= 0; i--) {
71
+ const word = words[i];
72
+ const at = i * 3;
73
+ bytes[at] = ((word >> 11) << 3) | (word >> 13);
74
+ bytes[at + 1] = (((word >> 5) & 63) << 2) | ((word >> 9) & 3);
75
+ bytes[at + 2] = ((word & 31) << 3) | ((word >> 2) & 7);
76
+ }
77
+ }
78
+ else {
79
+ // Forwards: texel i's three bytes land at 3i, behind its own four at 4i.
80
+ for (let i = 0; i < count; i++) {
81
+ const at = i * 4;
82
+ const to = i * 3;
83
+ const r = widen(bytes[at], 5);
84
+ const g = widen(bytes[at + 1], 6);
85
+ const b = widen(bytes[at + 2], 5);
86
+ bytes[to] = r;
87
+ bytes[to + 1] = g;
88
+ bytes[to + 2] = b;
89
+ }
90
+ }
91
+ break;
92
+ case "bgraPacked4444":
93
+ if (raw) {
94
+ // A word is alpha, red, green and blue from its high nibble down.
95
+ for (let i = count - 1; i >= 0; i--) {
96
+ const word = words[i];
97
+ const at = i * 4;
98
+ bytes[at] = ((word >> 8) & 15) * 17;
99
+ bytes[at + 1] = ((word >> 4) & 15) * 17;
100
+ bytes[at + 2] = (word & 15) * 17;
101
+ bytes[at + 3] = (word >> 12) * 17;
102
+ }
103
+ }
104
+ else {
105
+ for (let i = 0; i < count * 4; i++) {
106
+ bytes[i] = (bytes[i] >> 4) * 17;
107
+ }
108
+ }
109
+ break;
110
+ case "rgbaHalfFloat":
111
+ if (!raw) {
112
+ // Backwards: texel i's four words land at 8i, ahead of its own bytes at 4i.
113
+ for (let i = count - 1; i >= 0; i--) {
114
+ const at = i * 4;
115
+ const r = halfOf(bytes[at]);
116
+ const g = halfOf(bytes[at + 1]);
117
+ const b = halfOf(bytes[at + 2]);
118
+ const a = halfOf(bytes[at + 3]);
119
+ words[i * 4] = r;
120
+ words[i * 4 + 1] = g;
121
+ words[i * 4 + 2] = b;
122
+ words[i * 4 + 3] = a;
123
+ }
124
+ }
125
+ break;
126
+ }
127
+ }
128
+ /** The staged level's texels, as WebGL takes them for the texture's storage. */
129
+ function stagedPixels(gl, format, bytes, count) {
130
+ switch (format) {
131
+ case "bgrPacked565":
132
+ return [gl.RGB, gl.UNSIGNED_BYTE, bytes];
133
+ case "rgbaHalfFloat":
134
+ return [gl.RGBA, gl.HALF_FLOAT, new Uint16Array(bytes.buffer, bytes.byteOffset, count * 4)];
135
+ default:
136
+ return [gl.RGBA, gl.UNSIGNED_BYTE, bytes];
137
+ }
138
+ }
139
+ /**
140
+ * The staged level uploaded: as it is, or a compressed texture's encoded to its blocks, as
141
+ * AIR compresses pixels; `raw` where it is staged in the texture's own format, not as RGBA.
142
+ */
143
+ function uploadLevel(gl, texture, state, level, face, w, h, encoder, raw = false) {
144
+ if (compressedFormat(texture.format)) {
14
145
  const rgba = state.bytes.subarray(0, w * h * 4);
15
146
  const dxt5 = texture.format === "compressedAlpha";
16
147
  const blocks = encoder?.(rgba, dxt5, w, h) ?? encodeDxt(rgba, dxt5, w, h);
17
148
  uploadCompressedLevel(gl, texture, state, blocks, level, face);
18
149
  return;
19
150
  }
151
+ // BGRA's staging is RGBA bytes already: no conversion and no views.
152
+ const bgra = texture.format === "bgra";
153
+ if (!bgra) {
154
+ convertStaged(texture.format, state.bytes, w * h, raw);
155
+ }
156
+ const [layout, type, pixels] = bgra
157
+ ? [gl.RGBA, gl.UNSIGNED_BYTE, state.bytes]
158
+ : stagedPixels(gl, texture.format, state.bytes, w * h);
159
+ // 5:6:5's rows of three bytes need not be 4-byte aligned.
160
+ if (texture.format === "bgrPacked565") {
161
+ gl.pixelStorei(gl.UNPACK_ALIGNMENT, 1);
162
+ }
20
163
  const cube = texture.cube;
21
164
  const target = cube ? gl.TEXTURE_CUBE_MAP : gl.TEXTURE_2D;
22
165
  gl.activeTexture(gl.TEXTURE0);
23
166
  gl.bindTexture(target, state.handle);
24
- gl.texSubImage2D(cube ? gl.TEXTURE_CUBE_MAP_POSITIVE_X + face : target, level, 0, 0, w, h, gl.RGBA, gl.UNSIGNED_BYTE, state.bytes);
167
+ gl.texSubImage2D(cube ? gl.TEXTURE_CUBE_MAP_POSITIVE_X + face : target, level, 0, 0, w, h, layout, type, pixels);
168
+ if (texture.format === "bgrPacked565") {
169
+ gl.pixelStorei(gl.UNPACK_ALIGNMENT, 4);
170
+ }
25
171
  state.uploaded[face] |= 1 << level;
26
172
  }
27
173
  export function uploadTexture(gl, texture, state, pixels, level, face, sourceWidth, sourceHeight, encoder = null) {
@@ -79,9 +225,17 @@ export function uploadTextureBytes(gl, texture, state, data, offset, level, face
79
225
  range(face, 1, faces);
80
226
  const w = Math.max(1, width >> level);
81
227
  const h = Math.max(1, height >> level);
82
- const length = w * h * 4;
228
+ const texel = TEXEL_BYTES[texture.format] ?? 4;
229
+ const length = w * h * texel;
83
230
  range(offset, length, data.length);
84
231
  staging(texture, state);
232
+ // BGRA, and the compressed formats' pixels, which are BGRA too, go up as RGBA; the
233
+ // others' texels as they are, little-endian words.
234
+ if (texel !== 4) {
235
+ state.bytes.set(data.subarray(offset, offset + length));
236
+ uploadLevel(gl, texture, state, level, face, w, h, encoder, true);
237
+ return;
238
+ }
85
239
  for (let i = 0; i < length; i += 4) {
86
240
  state.bytes[i] = data[offset + i + 2];
87
241
  state.bytes[i + 1] = data[offset + i + 1];
@@ -1 +1 @@
1
- {"version":3,"file":"textures.js","sourceRoot":"","sources":["../../src/webgl/textures.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"textures.js","sourceRoot":"","sources":["../../src/webgl/textures.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@swf2es/context3d",
3
- "version": "0.1.19",
3
+ "version": "0.1.20",
4
4
  "description": "Experimental Context3D resource contracts, AGAL translation and an optional WebGL2 backend",
5
5
  "keywords": [
6
6
  "flash",