def SetRenderTargets(self, *args): SceneRenderJobSpace.SetRenderTargets(self, *args) if self.depthBufferOverride: self.AddStep( 'SET_SWAPCHAIN_DEPTH', trinity.TriStepSetDepthStencil(self.depthBufferOverride)) if self.backBufferOverride: self.AddStep( 'SET_SWAPCHAIN_RT', trinity.TriStepSetRenderTarget(self.backBufferOverride))
def SetRenderTargets(self, *args): SceneRenderJobSpace.SetRenderTargets(self, *args) self.RemoveStep('PUSH_RENDER_TARGET') self.RemoveStep('PUSH_DEPTH_STENCIL') self.RemoveStep('POP_RENDER_TARGET') self.RemoveStep('POP_DEPTH_STENCIL') self.RemoveStep('SET_BLIT_VIEWPORT') self.RemoveStep('COPY_TO_BLIT_TEXTURE') self.RemoveStep('FINAL_BLIT_EMBEDDED') self.RemoveStep('PUSH_BLIT_DEPTH') self.RemoveStep('POP_BLIT_DEPTH') viewport = self.GetViewport() if viewport is not None: vpStep = self.GetStep('SET_VIEWPORT') if vpStep is not None: vpOrigin = trinity.TriViewport(0, 0, viewport.width, viewport.height) vpStep.viewport = vpOrigin if self.offscreenDepthStencil: self.AddStep('PUSH_DEPTH_STENCIL', trinity.TriStepPushDepthStencil(self.offscreenDepthStencil)) self.AddStep('POP_DEPTH_STENCIL', trinity.TriStepPopDepthStencil()) if self.offscreenRenderTarget: self.AddStep('PUSH_RENDER_TARGET', trinity.TriStepPushRenderTarget(self.offscreenRenderTarget)) self.AddStep('POP_RENDER_TARGET', trinity.TriStepPopRenderTarget()) self.AddStep('PUSH_BLIT_DEPTH', trinity.TriStepPushDepthStencil(None)) self.RemoveStep('FINAL_BLIT') if self.customBackBuffer is not None and self.finalTexture is not None: step = trinity.TriStepResolve(self.finalTexture, self.customBackBuffer) step.name = 'Resolve: finalTexture <== customBackBuffer' self.AddStep('COPY_TO_BLIT_TEXTURE', step) if self.doFinalBlit: self.AddStep('SET_BLIT_VIEWPORT', trinity.TriStepSetViewport(viewport)) if self.finalTexture: if self.stencilPath is None or self.stencilPath == '': self.AddStep('FINAL_BLIT_EMBEDDED', trinity.TriStepRenderTexture(self.finalTexture)) else: stencilTriTextureRes = trinity.TriTextureRes() stencilTriTextureRes.SetFromRenderTarget(self.finalTexture) self.blitMapParameter.SetResource(stencilTriTextureRes) self.AddStep('FINAL_BLIT_EMBEDDED', trinity.TriStepRenderEffect(self.stencilBlitEffect)) self.AddStep('POP_BLIT_DEPTH', trinity.TriStepPopDepthStencil())