Edit

Share via


IARSCNViewDelegate Interface

Definition

Interface representing the required methods (if any) of the protocol 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
Derived
Attributes
Implements

Remarks

This interface contains the required methods (if any) from the protocol defined by ARSCNViewDelegate.

If developers create classes that implement this interface, the implementation methods will automatically be exported to Objective-C with the matching signature from the method defined in the ARSCNViewDelegate protocol.

Optional methods (if any) are provided by the ARSCNViewDelegate_Extensions class as extension methods to the interface, allowing developers to invoke any optional methods on the protocol.

Properties

Handle

Handle (pointer) to the unmanaged object representation.

(Inherited from INativeObject)

Extension Methods

DidAddNode(IARSCNViewDelegate, ISCNSceneRenderer, SCNNode, ARAnchor)

Developers may override this method to react to the adding of a SCNNode that corresponds to a new ARAnchor.

DidRemoveNode(IARSCNViewDelegate, ISCNSceneRenderer, SCNNode, ARAnchor)

Developers may override this method to react to the removal of node, which was removed after anchor was removed.

DidUpdateNode(IARSCNViewDelegate, ISCNSceneRenderer, SCNNode, ARAnchor)

This method is called shortly after node has been updated to reflect the current state of anchor.

GetNode(IARSCNViewDelegate, ISCNSceneRenderer, ARAnchor)

Retrieves the SCNNode corresponding to the specified anchor.

WillUpdateNode(IARSCNViewDelegate, ISCNSceneRenderer, SCNNode, ARAnchor)

This method is called shortly before the properties of node are updated to reflect the state of anchor.

CameraDidChangeTrackingState(IARSessionObserver, ARSession, ARCamera)

Called when the TrackingState changes, indicating a change in tracking quality.

DidFail(IARSessionObserver, ARSession, NSError)

Called when the session stops running due to an error.

DidOutputAudioSampleBuffer(IARSessionObserver, ARSession, CMSampleBuffer)

Developers may implement this method that is called shortly after an audio buffer has been played.

InterruptionEnded(IARSessionObserver, ARSession)

Developers may override this method to begin frame processing and device tracking after an interruption.

ShouldAttemptRelocalization(IARSessionObserver, ARSession)

Returns a Boolean value that tells whether the session should attempt to reorient after an interruption.

WasInterrupted(IARSessionObserver, ARSession)

Developers may override this method to stop frame processing and device tracking when an interruption occurs.

DidApplyAnimations(ISCNSceneRendererDelegate, ISCNSceneRenderer, Double)

Developers may override this method to react to the completion of animations.

DidApplyConstraints(ISCNSceneRendererDelegate, ISCNSceneRenderer, Double)
DidRenderScene(ISCNSceneRendererDelegate, ISCNSceneRenderer, SCNScene, Double)

This method is called shortly after the scene has been rendered.

DidSimulatePhysics(ISCNSceneRendererDelegate, ISCNSceneRenderer, Double)

This method is called shortly after physics have been simulated.

Update(ISCNSceneRendererDelegate, ISCNSceneRenderer, Double)

Developers may override this method to perform processing prior to any actions, animations, or physics simulations.

WillRenderScene(ISCNSceneRendererDelegate, ISCNSceneRenderer, SCNScene, Double)

Developers may override this method to do processing immediately prior to the rendering of the scene.

Applies to