Manually trigger camera render to screen

Is there a way to manually render a camera to the screen? Ideally, I could call Camera.Render() whenever I need it to redraw. I am trying to make my camera perform better by only rendering when something changes.

Didn’t you already answer yourself?

Camera.Render does not persist when rendering without a RenderTexture. I need a way to render a camera to the screen and have it persist there (not get cleared) without constantly rendering every frame. I’ve been using ReadPixels and drawing a full-screen quad but I would like to avoid the overhead if possible.

Rendering a full-screen quad is not much overhead at all on desktop. For mobile the overdraw can be a bit of a overhead. Using ReadPixels is a lot of overhead and you don’t need it here. Just render the scene to a RenderTexture if something has changed. Then render the RenderTexture to the screen every frame.

I thought Render Textures were expensive. I know adding an extra Render Texture has absolutely killed performance on my Android tablet.