فهرست منبع

Use the render output target's texture for PostProcess

related to #9038
Raanan Weber 4 سال پیش
والد
کامیت
23fcac07fd
1فایلهای تغییر یافته به همراه5 افزوده شده و 1 حذف شده
  1. 5 1
      src/scene.ts

+ 5 - 1
src/scene.ts

@@ -3789,7 +3789,11 @@ export class Scene extends AbstractScene implements IAnimatable, IClipPlanesHold
 
         // Finalize frame
         if (this.postProcessManager && !camera._multiviewTexture) {
-            this.postProcessManager._finalizeFrame(camera.isIntermediate);
+            // When in XR the outputRenderTarget should be the one the post process is rendered to
+            // To keep the current behavior, I am checking for rigCamera AND that there is an outputRenderTarget defined.
+            // If there isn't, the previous behavior is kept.
+            const texture = camera.isRigCamera && camera.outputRenderTarget ? camera.outputRenderTarget.getInternalTexture()! : undefined;
+            this.postProcessManager._finalizeFrame(camera.isIntermediate, texture);
         }
 
         // Reset some special arrays