private RenderTexture RenderPreview(Noesis.View view, int width, int height) { try { if (CanRender() && view != null && view.Content != null) { NoesisRenderer.SetRenderSettings(); view.SetSize(width, height); view.Update(0.0f); FlushMetalEncoder(_commands); NoesisRenderer.RenderOffscreen(view, _commands); RenderTexture rt = RenderTexture.GetTemporary(width, height, 24, RenderTextureFormat.Default, RenderTextureReadWrite.Default, 8); _commands.SetRenderTarget(rt); _commands.ClearRenderTarget(true, true, UnityEngine.Color.clear, 0.0f); NoesisRenderer.RenderOnscreen(view, false, _commands); Graphics.ExecuteCommandBuffer(_commands); _commands.Clear(); GL.InvalidateState(); RenderTexture.ReleaseTemporary(rt); return(rt); } } catch (System.Exception e) { UnityEngine.Debug.LogException(e); } return(null); }
private static void OnTick(double timeInSeconds) { view.Update(timeInSeconds); }