Im wondering how id make a scene capture component not render the entire render texture and instead, just a small portion of it.
this is to save a bit of performance, just a small tip or lead on what to do would help a lot!
Im wondering how id make a scene capture component not render the entire render texture and instead, just a small portion of it.
this is to save a bit of performance, just a small tip or lead on what to do would help a lot!
once again, I figured it out. I put a scissor rect variable in the ViewInfo that I can set in the UpdadeSceneCapture function. so that I can use that to set RHICmdList.SetScissorRect In various render passes. works well, saves a bit in some render passes
It’s great that you were able to solve your problem! Your solution using a scissor rectangle in the ViewInfo
and applying it with RHICmdList.SetScissorRect
is a valid and efficient approach for rendering only a portion of a render texture with a scene capture component.
Here’s a breakdown of your solution and some additional context that might be helpful:
Understanding the Approach
ViewInfo
Modification:ViewInfo
structure contains various rendering parameters, including viewport and scissor rectangle information.ViewInfo
, you can pass the desired scissor region to the rendering pipeline.RHICmdList.SetScissorRect
:RHICmdList
is used to issue rendering commands to the graphics hardware.RHICmdList.SetScissorRect
sets the current scissor rectangle, which will be used for subsequent rendering operations.UpdateSceneCapture
function, you can limit the rendered area.Key Implementation Points (Based on your description)
ViewInfo
:
ViewInfo
structure (or a related structure that’s used during the rendering of the scene capture) to store your desired scissor rectangle.UpdateSceneCapture
:
UpdateSceneCapture
function (or a similar function responsible for rendering the scene capture), you set the value of your custom scissor rectangle variable in the ViewInfo
.UpdateSceneCapture
, you use RHICmdList.SetScissorRect
to apply the scissor rectangle from the ViewInfo
. You have to do this in the correct render passes to limit the rendered area as desired.Advantages of This Approach
Important Considerations
RHICmdList.SetScissorRect
is crucial. You need to apply it in the render passes that correspond to the rendering of the scene capture’s output.Your solution of modifying the ViewInfo and applying the scissor rect in the render passes is the correct and most efficient way to achieve the desired result.
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.