From cbf6fff0287c3d259a17af418a549f8598eb47ed Mon Sep 17 00:00:00 2001 From: Michael Herzog Date: Thu, 2 Apr 2026 09:53:49 +0200 Subject: [PATCH 1/3] ChromaticAberrationNode: Remove unused `_invSize` uniform. see #33307 --- .../tsl/display/ChromaticAberrationNode.js | 39 ++----------------- 1 file changed, 3 insertions(+), 36 deletions(-) diff --git a/examples/jsm/tsl/display/ChromaticAberrationNode.js b/examples/jsm/tsl/display/ChromaticAberrationNode.js index 3fedafbcaaad95..8ba5f36b444749 100644 --- a/examples/jsm/tsl/display/ChromaticAberrationNode.js +++ b/examples/jsm/tsl/display/ChromaticAberrationNode.js @@ -1,13 +1,11 @@ -import { Vector2, TempNode } from 'three/webgpu'; +import { TempNode } from 'three/webgpu'; import { nodeObject, Fn, - uniform, convertToTexture, float, vec4, uv, - NodeUpdateType, } from 'three/tsl'; /** @@ -45,15 +43,6 @@ class ChromaticAberrationNode extends TempNode { */ this.textureNode = textureNode; - /** - * The `updateBeforeType` is set to `NodeUpdateType.FRAME` since the node updates - * its internal uniforms once per frame in `updateBefore()`. - * - * @type {string} - * @default 'frame' - */ - this.updateBeforeType = NodeUpdateType.FRAME; - /** * A node holding the strength of the effect. * @@ -75,26 +64,6 @@ class ChromaticAberrationNode extends TempNode { */ this.scaleNode = scaleNode; - /** - * A uniform node holding the inverse resolution value. - * - * @private - * @type {UniformNode} - */ - this._invSize = uniform( new Vector2() ); - - } - - /** - * This method is used to update the effect's uniforms once per frame. - * - * @param {NodeFrame} frame - The current node frame. - */ - updateBefore( /* frame */ ) { - - const map = this.textureNode.value; - this._invSize.value.set( 1 / map.image.width, 1 / map.image.height ); - } /** @@ -155,8 +124,7 @@ class ChromaticAberrationNode extends TempNode { { name: 'uv', type: 'vec2' }, { name: 'strength', type: 'float' }, { name: 'center', type: 'vec2' }, - { name: 'scale', type: 'float' }, - { name: 'invSize', type: 'vec2' } + { name: 'scale', type: 'float' } ] } ); @@ -166,8 +134,7 @@ class ChromaticAberrationNode extends TempNode { uvNode, this.strengthNode, this.centerNode, - this.scaleNode, - this._invSize + this.scaleNode ); } ); From 75ae80b3aa4326b23fce73ebb11b85412073859c Mon Sep 17 00:00:00 2001 From: nopeless <38830903+nopeless@users.noreply.github.com> Date: Thu, 2 Apr 2026 02:57:22 -0500 Subject: [PATCH 2/3] Update incorrect documentation for setMatrixAt (#33310) --- src/objects/InstancedMesh.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/objects/InstancedMesh.js b/src/objects/InstancedMesh.js index 0947edc574a5d3..d519633ddfff5c 100644 --- a/src/objects/InstancedMesh.js +++ b/src/objects/InstancedMesh.js @@ -341,7 +341,7 @@ class InstancedMesh extends Mesh { /** * Sets the given local transformation matrix to the defined instance. Make sure you set the `needsUpdate` flag of - * {@link InstancedMesh#instanceMatrix} to `true` after updating all the colors. + * {@link InstancedMesh#instanceMatrix} to `true` after updating all the matrices. * * @param {number} index - The instance index. * @param {Matrix4} matrix - The local transformation. From d2d9d4069320de51d2e7f36855375f4640578ecb Mon Sep 17 00:00:00 2001 From: Michael Herzog Date: Thu, 2 Apr 2026 12:31:43 +0200 Subject: [PATCH 3/3] TRAANode: Improve docs. --- examples/jsm/tsl/display/TRAANode.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/examples/jsm/tsl/display/TRAANode.js b/examples/jsm/tsl/display/TRAANode.js index fbd0d55dfce403..c63db7b19abbd6 100644 --- a/examples/jsm/tsl/display/TRAANode.js +++ b/examples/jsm/tsl/display/TRAANode.js @@ -14,6 +14,8 @@ let _rendererState; * - {@link https://alextardif.com/TAA.html} * - {@link https://www.elopezr.com/temporal-aa-and-the-quest-for-the-holy-trail/} * + * Note: MSAA must be disabled when TRAA is in use. + * * @augments TempNode * @three_import import { traa } from 'three/addons/tsl/display/TRAANode.js'; */