@plasius/gpu-renderer 0.2.50 → 0.2.51
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.md +17 -0
- package/README.md +5 -0
- package/dist/index.cjs +7 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +7 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/wavefront-compute.js +2 -1
- package/src/wavefront-config.js +8 -0
package/CHANGELOG.md
CHANGED
|
@@ -11,6 +11,22 @@ All notable changes to this project will be documented in this file.
|
|
|
11
11
|
|
|
12
12
|
## [Unreleased]
|
|
13
13
|
|
|
14
|
+
- **Added**
|
|
15
|
+
- (placeholder)
|
|
16
|
+
|
|
17
|
+
- **Changed**
|
|
18
|
+
- (placeholder)
|
|
19
|
+
|
|
20
|
+
- **Fixed**
|
|
21
|
+
- (placeholder)
|
|
22
|
+
|
|
23
|
+
- **Security**
|
|
24
|
+
- (placeholder)
|
|
25
|
+
|
|
26
|
+
## [0.2.51] - 2026-10-18
|
|
27
|
+
|
|
28
|
+
- Reuse immutable mesh, material, acceleration and lighting resources for camera-only wavefront updates, avoiding repeated CPU scene preparation during inspection.
|
|
29
|
+
|
|
14
30
|
- **Added**
|
|
15
31
|
- (placeholder)
|
|
16
32
|
|
|
@@ -1236,3 +1252,4 @@ All notable changes to this project will be documented in this file.
|
|
|
1236
1252
|
[0.2.48]: https://github.com/Plasius-LTD/gpu-renderer/releases/tag/v0.2.48
|
|
1237
1253
|
[0.2.49]: https://github.com/Plasius-LTD/gpu-renderer/releases/tag/v0.2.49
|
|
1238
1254
|
[0.2.50]: https://github.com/Plasius-LTD/gpu-renderer/releases/tag/v0.2.50
|
|
1255
|
+
[0.2.51]: https://github.com/Plasius-LTD/gpu-renderer/releases/tag/v0.2.51
|
package/README.md
CHANGED
|
@@ -991,3 +991,8 @@ Production demo helpers and their regression tests now live in `@plasius/gpu-sha
|
|
|
991
991
|
Create the wavefront renderer with `progressive: true` to retain linear radiance across frames. `samplesPerPixel` at creation is the maximum batch capacity; pass a smaller value to `renderOnce({ samplesPerPixel })` or `renderFrame({ samplesPerPixel })`. Submit batches serially. `renderFrame()` awaits completion by default; with `renderOnce()`, await `renderer.device.queue.onSubmittedWorkDone()` before reporting completed samples. `getSnapshot().accumulatedSamplesPerPixel` reports submitted history samples.
|
|
992
992
|
|
|
993
993
|
Camera or scene updates reset history automatically; `resetAccumulation()` also discards it without reallocating. Do not call `updateCamera()` between refinement passes unless the view changed. Progressive mode uses independent frame seeds, overriding static-frame stable sample routing. Denoising is applied after accumulation. Leave `progressive` unset for the existing independent-frame path. See [ADR 0038](docs/adrs/adr-0038-progressive-linear-radiance.md) for memory costs and host rollout responsibilities.
|
|
994
|
+
|
|
995
|
+
Camera-only wavefront updates preserve the loaded mesh, material, acceleration
|
|
996
|
+
and lighting resources while resetting progressive accumulation. Changing the
|
|
997
|
+
view no longer rebuilds those CPU scene tables; scene updates retain their
|
|
998
|
+
existing reconstruction path.
|
package/dist/index.cjs
CHANGED
|
@@ -10646,6 +10646,12 @@ function resolveCamera(input, width, height) {
|
|
|
10646
10646
|
tanHalfFovY
|
|
10647
10647
|
});
|
|
10648
10648
|
}
|
|
10649
|
+
function updateWavefrontCameraConfig(config, camera) {
|
|
10650
|
+
return Object.freeze({
|
|
10651
|
+
...config,
|
|
10652
|
+
camera: resolveCamera(camera, config.width, config.height)
|
|
10653
|
+
});
|
|
10654
|
+
}
|
|
10649
10655
|
function estimateWavefrontPathTracingMemory(options = {}) {
|
|
10650
10656
|
const width = readPositiveInteger2("width", options.width, DEFAULT_WIDTH);
|
|
10651
10657
|
const height = readPositiveInteger2("height", options.height, DEFAULT_HEIGHT);
|
|
@@ -13566,7 +13572,7 @@ async function createWavefrontPathTracingComputeRenderer(options = {}) {
|
|
|
13566
13572
|
function updateCamera(cameraOptions = {}) {
|
|
13567
13573
|
progressive?.reset();
|
|
13568
13574
|
activeCameraOptions = cameraOptions;
|
|
13569
|
-
config =
|
|
13575
|
+
config = updateWavefrontCameraConfig(config, cameraOptions);
|
|
13570
13576
|
return config;
|
|
13571
13577
|
}
|
|
13572
13578
|
function getSnapshot() {
|