RenderToTexture in real time on iPhone

Hi,

I would need to make some RenderToTexture from the whole screen on iPhone 5 in real time. The problem is that rendering a 2k texture in realtime is way too slow. It works fine with a 512 texture, however it then takes only a part of the screen.

tex = new Texture2D(Screen.width, Screen.height);
tex.ReadPixels(new Rect(0, 0, Screen.width, Screen.height), 0, 0);
tex.Apply();
display.material.mainTexture = tex;

Is there a way to render the screen in a smaller texture size? Having the full screen in a rescaled 512 texture would be fine.

If not, how can I do to make to RenderToTexture from the whole screen in real time without lags?

Thanks!

1 Answer

1

That code is no render texture. Thats manual screen grabbing which blocks the whole rendering :slight_smile:

RenderTexture, which requires iOS pro, would use a RenderTexture added in the editor or created from new RenderTexture which you then apply to the cameras target property in code.
If you do it that way and render the texture to a second cameras screen (by putting it on a mesh or GUI.DrawTexture), then it will be realtime without lags

Thanks, works indeed like a charm now :)

Great, looking forward to see what you created with it :) Mind to mark the question as answered?