From 35f4555fccf70577e29b40acc948302d92266102 Mon Sep 17 00:00:00 2001 From: Michael Herzog Date: Tue, 8 Oct 2024 17:05:57 +0200 Subject: [PATCH] GTAONode: Fix AO with WebGL backend. (#29593) * GTAONode: Fix AO with WebGL backend. * E2E: Update screenshot. * DenoiseNode: Use `getViewPosition()` from core. * DenoiseNode: Clean up. --- examples/jsm/tsl/display/DenoiseNode.js | 17 +++---------- examples/jsm/tsl/display/GTAONode.js | 19 +++------------ .../screenshots/webgpu_postprocessing_ao.jpg | Bin 45777 -> 45206 bytes src/nodes/TSL.js | 1 + src/nodes/utils/PostProcessingUtils.js | 23 ++++++++++++++++++ 5 files changed, 31 insertions(+), 29 deletions(-) create mode 100644 src/nodes/utils/PostProcessingUtils.js diff --git a/examples/jsm/tsl/display/DenoiseNode.js b/examples/jsm/tsl/display/DenoiseNode.js index ef17ef2d5bb08d..86c67f71dba80f 100644 --- a/examples/jsm/tsl/display/DenoiseNode.js +++ b/examples/jsm/tsl/display/DenoiseNode.js @@ -1,5 +1,5 @@ import { Vector2, Vector3 } from 'three'; -import { convertToTexture, TempNode, nodeObject, Fn, float, NodeUpdateType, uv, uniform, Loop, luminance, vec2, vec3, vec4, uniformArray, int, dot, max, pow, abs, If, textureSize, sin, cos, mat2, PI } from 'three/tsl'; +import { getViewPosition, convertToTexture, TempNode, nodeObject, Fn, float, NodeUpdateType, uv, uniform, Loop, luminance, vec2, vec3, vec4, uniformArray, int, dot, max, pow, abs, If, textureSize, sin, cos, mat2, PI } from 'three/tsl'; class DenoiseNode extends TempNode { @@ -49,24 +49,13 @@ class DenoiseNode extends TempNode { const sampleNormal = ( uv ) => this.normalNode.uv( uv ); const sampleNoise = ( uv ) => this.noiseNode.uv( uv ); - const getViewPosition = Fn( ( [ screenPosition, depth ] ) => { - - screenPosition = vec2( screenPosition.x, screenPosition.y.oneMinus() ).mul( 2.0 ).sub( 1.0 ); - - const clipSpacePosition = vec4( vec3( screenPosition, depth ), 1.0 ); - const viewSpacePosition = vec4( this.cameraProjectionMatrixInverse.mul( clipSpacePosition ) ); - - return viewSpacePosition.xyz.div( viewSpacePosition.w ); - - } ); - const denoiseSample = Fn( ( [ center, viewNormal, viewPosition, sampleUv ] ) => { const texel = sampleTexture( sampleUv ); const depth = sampleDepth( sampleUv ); const normal = sampleNormal( sampleUv ).rgb.normalize(); const neighborColor = texel.rgb; - const viewPos = getViewPosition( sampleUv, depth ); + const viewPos = getViewPosition( sampleUv, depth, this.cameraProjectionMatrixInverse ); const normalDiff = dot( viewNormal, normal ).toVar(); const normalSimilarity = pow( max( normalDiff, 0 ), this.normalPhi ).toVar(); @@ -95,7 +84,7 @@ class DenoiseNode extends TempNode { const center = vec3( texel.rgb ); - const viewPosition = getViewPosition( uvNode, depth ); + const viewPosition = getViewPosition( uvNode, depth, this.cameraProjectionMatrixInverse ); const noiseResolution = textureSize( this.noiseNode, 0 ); let noiseUv = vec2( uvNode.x, uvNode.y.oneMinus() ); diff --git a/examples/jsm/tsl/display/GTAONode.js b/examples/jsm/tsl/display/GTAONode.js index 1ff641ec10e22d..e6ea2ee31cdd59 100644 --- a/examples/jsm/tsl/display/GTAONode.js +++ b/examples/jsm/tsl/display/GTAONode.js @@ -1,5 +1,5 @@ import { Color, DataTexture, RenderTarget, RepeatWrapping, Vector2, Vector3 } from 'three'; -import { QuadMesh, TempNode, nodeObject, Fn, float, NodeUpdateType, uv, uniform, Loop, vec2, vec3, vec4, int, dot, max, pow, abs, If, textureSize, sin, cos, PI, texture, passTexture, mat3, add, normalize, mul, cross, div, mix, sqrt, sub, acos, clamp, NodeMaterial } from 'three/tsl'; +import { getViewPosition, QuadMesh, TempNode, nodeObject, Fn, float, NodeUpdateType, uv, uniform, Loop, vec2, vec3, vec4, int, dot, max, pow, abs, If, textureSize, sin, cos, PI, texture, passTexture, mat3, add, normalize, mul, cross, div, mix, sqrt, sub, acos, clamp, NodeMaterial } from 'three/tsl'; const _quadMesh = /*@__PURE__*/ new QuadMesh(); const _currentClearColor = /*@__PURE__*/ new Color(); @@ -106,24 +106,13 @@ class GTAONode extends TempNode { } ); - const getViewPosition = Fn( ( [ screenPosition, depth ] ) => { - - screenPosition = vec2( screenPosition.x, screenPosition.y.oneMinus() ).mul( 2.0 ).sub( 1.0 ); - - const clipSpacePosition = vec4( vec3( screenPosition, depth ), 1.0 ); - const viewSpacePosition = vec4( this.cameraProjectionMatrixInverse.mul( clipSpacePosition ) ); - - return viewSpacePosition.xyz.div( viewSpacePosition.w ); - - } ); - const ao = Fn( () => { const depth = sampleDepth( uvNode ); depth.greaterThanEqual( 1.0 ).discard(); - const viewPosition = getViewPosition( uvNode, depth ); + const viewPosition = getViewPosition( uvNode, depth, this.cameraProjectionMatrixInverse ); const viewNormal = this.normalNode.rgb.normalize(); const radiusToUse = this.radius; @@ -163,7 +152,7 @@ class GTAONode extends TempNode { // x const sampleSceneUvDepthX = getSceneUvAndDepth( viewPosition.add( sampleViewOffset ) ); - const sampleSceneViewPositionX = getViewPosition( sampleSceneUvDepthX.xy, sampleSceneUvDepthX.z ); + const sampleSceneViewPositionX = getViewPosition( sampleSceneUvDepthX.xy, sampleSceneUvDepthX.z, this.cameraProjectionMatrixInverse ); const viewDeltaX = sampleSceneViewPositionX.sub( viewPosition ); If( abs( viewDeltaX.z ).lessThan( this.thickness ), () => { @@ -176,7 +165,7 @@ class GTAONode extends TempNode { // y const sampleSceneUvDepthY = getSceneUvAndDepth( viewPosition.sub( sampleViewOffset ) ); - const sampleSceneViewPositionY = getViewPosition( sampleSceneUvDepthY.xy, sampleSceneUvDepthY.z ); + const sampleSceneViewPositionY = getViewPosition( sampleSceneUvDepthY.xy, sampleSceneUvDepthY.z, this.cameraProjectionMatrixInverse ); const viewDeltaY = sampleSceneViewPositionY.sub( viewPosition ); If( abs( viewDeltaY.z ).lessThan( this.thickness ), () => { diff --git a/examples/screenshots/webgpu_postprocessing_ao.jpg b/examples/screenshots/webgpu_postprocessing_ao.jpg index 623e8fc1c82f81de2a3b7eb1a918f3e3d89d6d56..6810b6bdfb9ed1ef3a954b3cd5609cc2869a3579 100644 GIT binary patch delta 43212 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 { + + let clipSpacePosition; + + if ( builder.renderer.coordinateSystem === WebGPUCoordinateSystem ) { + + screenPosition = vec2( screenPosition.x, screenPosition.y.oneMinus() ).mul( 2.0 ).sub( 1.0 ); + clipSpacePosition = vec4( vec3( screenPosition, depth ), 1.0 ); + + } else { + + clipSpacePosition = vec4( vec3( screenPosition.x, screenPosition.y.oneMinus(), depth ).mul( 2.0 ).sub( 1.0 ), 1.0 ); + + } + + const viewSpacePosition = vec4( projectionMatrixInverse.mul( clipSpacePosition ) ); + + return viewSpacePosition.xyz.div( viewSpacePosition.w ); + +} );