@driftengine/core 4.13.0 → 4.13.1
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/CHANGELOG.json +11 -0
- package/package.json +6 -6
package/CHANGELOG.json
CHANGED
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
[
|
|
2
|
+
{
|
|
3
|
+
"version": "4.13.1",
|
|
4
|
+
"date": "2026-10-11",
|
|
5
|
+
"entries": [
|
|
6
|
+
{
|
|
7
|
+
"kind": "added",
|
|
8
|
+
"short": "A sprite slot can take one painted rectangle instead of its whole image, so an atlas painted a picture at a time stops sending all of itself: `SpritePass.updateTexture`.",
|
|
9
|
+
"text": "`SpritePass.updateTexture(slot, source, region)` copies one rectangle of an image into the slot's texture at the same place and keeps the rest of it. `setTexture` sends the whole image and, on WebGPU, makes the texture and its bind group again, so a 2D layer painted into atlases sent every texel of an atlas for each picture painted into it: a consumer measured about 100 ms for a 5120-texel side, on a frame whose new pictures covered about 6 of the atlas's 26 million texels, and a typical later frame changes a timer's digits. Now an upload grows with what was painted rather than with the atlas. The slot keeps the options it was made with; a slot that is empty, or was made from an image of another size, takes the whole image as `setTexture` would; the rectangle is clipped to the image; and a slot with a mip chain has the chain rebuilt. On WebGL2 it is `texSubImage2D` with the unpack state put back after, since every other upload on the context reads it. **Paint such an atlas into a 2D context made with `willReadFrequently: true`**: on WebGPU a canvas drawn on the GPU is transferred whole before any part of it is copied, measured at 66 ms for one 256 by 64 rectangle of a 5120-texel atlas against 0.4 ms from a canvas kept in memory. WebGL2 copies a rectangle quickly from either. `SpriteRegion` is the rectangle's type."
|
|
10
|
+
}
|
|
11
|
+
]
|
|
12
|
+
},
|
|
2
13
|
{
|
|
3
14
|
"version": "4.13.0",
|
|
4
15
|
"date": "2026-10-10",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@driftengine/core",
|
|
3
|
-
"version": "4.13.
|
|
3
|
+
"version": "4.13.1",
|
|
4
4
|
"description": "The runtime of DriftEngine, a WebGPU game engine with a WebGL2 fallback: renderer, loop, input, cameras, scene graph and physics",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
],
|
|
30
30
|
"sideEffects": false,
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@driftengine/drft": "4.13.
|
|
33
|
-
"@driftengine/physics": "4.13.
|
|
32
|
+
"@driftengine/drft": "4.13.1",
|
|
33
|
+
"@driftengine/physics": "4.13.1",
|
|
34
34
|
"gl-matrix": "^3.4.3"
|
|
35
35
|
},
|
|
36
36
|
"author": "Drift Technologies",
|
|
@@ -67,8 +67,8 @@
|
|
|
67
67
|
"prepack": "node ../../scripts/build.mjs @driftengine/core"
|
|
68
68
|
},
|
|
69
69
|
"devDependencies": {
|
|
70
|
-
"@driftengine/nav": "4.13.
|
|
71
|
-
"@driftengine/network": "4.13.
|
|
72
|
-
"@driftengine/texture": "4.13.
|
|
70
|
+
"@driftengine/nav": "4.13.1",
|
|
71
|
+
"@driftengine/network": "4.13.1",
|
|
72
|
+
"@driftengine/texture": "4.13.1"
|
|
73
73
|
}
|
|
74
74
|
}
|