Browse Source

WebGPURenderer: Forward depthNode to shadows (#28042)

Renaud Rohlinger 1 year ago
parent
commit
aaafb4ffe8
1 changed files with 15 additions and 1 deletions
  1. 15 1
      examples/jsm/renderers/common/Renderer.js

+ 15 - 1
examples/jsm/renderers/common/Renderer.js

@@ -1158,6 +1158,7 @@ class Renderer {
 
 		let overridePositionNode;
 		let overrideFragmentNode;
+		let overrideDepthNode;
 
 		//
 
@@ -1174,7 +1175,6 @@ class Renderer {
 			if ( material.positionNode && material.positionNode.isNode ) {
 
 				overridePositionNode = overrideMaterial.positionNode;
-
 				overrideMaterial.positionNode = material.positionNode;
 
 			}
@@ -1183,6 +1183,14 @@ class Renderer {
 
 				overrideMaterial.side = material.shadowSide === null ? material.side : material.shadowSide;
 
+				if ( material.depthNode && material.depthNode.isNode ) {
+
+					overrideDepthNode = overrideMaterial.depthNode;
+					overrideMaterial.depthNode = material.depthNode;
+
+				}
+
+
 				if ( material.shadowNode && material.shadowNode.isNode ) {
 
 					overrideFragmentNode = overrideMaterial.fragmentNode;
@@ -1248,6 +1256,12 @@ class Renderer {
 
 		}
 
+		if ( overrideDepthNode !== undefined ) {
+
+			scene.overrideMaterial.depthNode = overrideDepthNode;
+
+		}
+
 		if ( overrideFragmentNode !== undefined ) {
 
 			scene.overrideMaterial.fragmentNode = overrideFragmentNode;