簡體   English   中英

來自原生 iOS 的 Unity AR view 截圖

[英]Screencapture of Unity AR view from native iOS

我正在嘗試從原生iOS截取我的Unity視圖。我的原生iOS已經寫在Xamarin.iOS

當在統一視圖上觸發按鈕單擊事件時,我的本機應用程序會觸發通知並在本機端調用方法。 在這個本機方法中,我試圖捕獲當前視圖(Unity AR 視圖)的屏幕截圖。 這是我的xamarin代碼截圖。

            UnityFramework _ufw;
            _view = _ufw.AppController().RootView;
            var mainLayer = _view.Window.Layer;
            
            mainLayer.RenderInContext(UIGraphics.GetCurrentContext());
            var img = UIGraphics.GetImageFromCurrentImageContext();
            img.SaveToPhotosAlbum((iRef, status) =>
            {
                if (status != null)
                {
                    new UIAlertView("Problem", status.ToString(), null, "OK", null).Show();
                }
                else
                {
                    new UIAlertView("Saved", "Saved", null, "OK", null).Show();
                }
            });
        }
        finally
        {
            UIGraphics.EndImageContext();
        }

我的問題是它沒有捕獲我的 AR 視圖。 相反,它只是捕獲一個白色視圖。 我想捕獲我的 Unity 視圖,它在相機視圖上有一些重疊的項目。 我怎么能這樣做? 謝謝你!

這篇文章對我有幫助。 所以我更換了下面的 lnes

var mainLayer = _view.Window.Layer;         
mainLayer.RenderInContext(UIGraphics.GetCurrentContext());

UIGraphics.BeginImageContextWithOptions(_view.Frame.Size, false, 0f);
_view.DrawViewHierarchy(_view.Frame, true);

奇跡般有效

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM