共用方式為


IARSCNViewDelegate 介面

定義

介面,表示通訊協定 ARSCNViewDelegate 的任何) 時, (所需的方法。

[Foundation.Protocol(Name="ARSCNViewDelegate", WrapperType=typeof(ARKit.ARSCNViewDelegateWrapper))]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 11, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Unavailable(ObjCRuntime.PlatformName.WatchOS, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Unavailable(ObjCRuntime.PlatformName.TvOS, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Unavailable(ObjCRuntime.PlatformName.MacOSX, ObjCRuntime.PlatformArchitecture.All, null)]
public interface IARSCNViewDelegate : ARKit.IARSessionObserver, IDisposable, SceneKit.ISCNSceneRendererDelegate
type IARSCNViewDelegate = interface
    interface INativeObject
    interface IDisposable
    interface IARSessionObserver
    interface ISCNSceneRendererDelegate
衍生
屬性
實作

備註

如果從 所 ARSCNViewDelegate 定義的通訊協定有任何) ,這個介面會包含必要的方法 (。

如果開發人員建立實作此介面的類別,則實作方法會自動匯出至 Objective-C,其中包含通訊協定中所定義方法的 ARSCNViewDelegate 相符簽章。

如果類別提供 ARSCNViewDelegate_Extensions 任何) 做為介面的擴充方法,則選擇性方法 (,讓開發人員可以在通訊協定上叫用任何選擇性方法。

屬性

Handle

處理非受控物件標記法) (指標。

(繼承來源 INativeObject)

擴充方法

DidAddNode(IARSCNViewDelegate, ISCNSceneRenderer, SCNNode, ARAnchor)

開發人員可能會覆寫這個方法,以回應 SCNNode 新增對應至新 ARAnchor 的 。

DidRemoveNode(IARSCNViewDelegate, ISCNSceneRenderer, SCNNode, ARAnchor)

開發人員可能會覆寫這個方法,以回應移除 node 之後移除 anchor 的 。

DidUpdateNode(IARSCNViewDelegate, ISCNSceneRenderer, SCNNode, ARAnchor)

這個方法會在更新之後 node 不久呼叫,以反映 的 anchor 目前狀態。

GetNode(IARSCNViewDelegate, ISCNSceneRenderer, ARAnchor)

SCNNode 取對應至指定的 anchor

WillUpdateNode(IARSCNViewDelegate, ISCNSceneRenderer, SCNNode, ARAnchor)

這個方法會在 的屬性更新之前 node 立即呼叫,以反映 的狀態 anchor

CameraDidChangeTrackingState(IARSessionObserver, ARSession, ARCamera)

變更時 TrackingState 呼叫,指出追蹤品質的變更。

DidFail(IARSessionObserver, ARSession, NSError)

發生錯誤而停止執行時 session 呼叫。

DidOutputAudioSampleBuffer(IARSessionObserver, ARSession, CMSampleBuffer)

開發人員可以實作在播放音訊緩衝區之後不久呼叫的這個方法。

InterruptionEnded(IARSessionObserver, ARSession)

開發人員可能會覆寫此方法,以在中斷之後開始畫面處理和裝置追蹤。

ShouldAttemptRelocalization(IARSessionObserver, ARSession)

傳回布林值,指出會話是否應該在中斷之後嘗試重新導向。

WasInterrupted(IARSessionObserver, ARSession)

開發人員可能會覆寫這個方法,以在發生中斷時停止畫面處理和裝置追蹤。

DidApplyAnimations(ISCNSceneRendererDelegate, ISCNSceneRenderer, Double)

開發人員可能會覆寫這個方法,以回應動畫完成。

DidApplyConstraints(ISCNSceneRendererDelegate, ISCNSceneRenderer, Double)

介面,表示通訊協定 ARSCNViewDelegate 的任何) 時, (所需的方法。

DidRenderScene(ISCNSceneRendererDelegate, ISCNSceneRenderer, SCNScene, Double)

在轉譯場景之後,很快就會呼叫這個方法。

DidSimulatePhysics(ISCNSceneRendererDelegate, ISCNSceneRenderer, Double)

在模擬物理之後,很快就會呼叫這個方法。

Update(ISCNSceneRendererDelegate, ISCNSceneRenderer, Double)

開發人員可以覆寫這個方法,以在任何動作、動畫或物理模擬之前執行處理。

WillRenderScene(ISCNSceneRendererDelegate, ISCNSceneRenderer, SCNScene, Double)

開發人員可以覆寫這個方法,以在場景轉譯之前立即進行處理。

適用於