SCNRenderer Class

Definition

Renders an SCNScene into an OpenGL context.

[Foundation.Register("SCNRenderer", true)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 8, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Unavailable(ObjCRuntime.PlatformName.WatchOS, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 8, ObjCRuntime.PlatformArchitecture.All, null)]
public class SCNRenderer : Foundation.NSObject, IDisposable, SceneKit.ISCNSceneRenderer, SceneKit.ISCNTechniqueSupport
type SCNRenderer = class
    inherit NSObject
    interface ISCNSceneRenderer
    interface INativeObject
    interface IDisposable
    interface ISCNTechniqueSupport
Inheritance
SCNRenderer
Attributes
Implements

Constructors

SCNRenderer(IntPtr)

A constructor used when creating managed representations of unmanaged objects; Called by the runtime.

SCNRenderer(NSObjectFlag)

Constructor to call on derived classes to skip initialization and merely allocate the object.

Properties

AudioEngine

Gets the audio engine for rendering sound.

AudioEnvironmentNode

Gets the audio environment node.

AudioListener

Gets or sets the listener's position node.

AutoenablesDefaultLighting

Gets or sets a value that controls whether a default light is added to scenes.

Class (Inherited from NSObject)
ClassHandle

The handle for this class.

ColorPixelFormat

Gets the format for color pixels.

CommandQueue

Gets the command queue.

Context

Gets the OpenGL context that is used for rendering the scene.

CurrentRenderCommandEncoder

Gets the current command encoder.

CurrentTime
DebugDescription

A developer-meaningful description of this object.

(Inherited from NSObject)
DebugOptions

Gets or sets the options that specify which debug overlays to display.

DepthPixelFormat

Gets the format for depth pixels.

Description

Description of the object, the Objective-C version of ToString.

(Inherited from NSObject)
Device

Gets the Metal device that is used for rendering.

Handle

Handle (pointer) to the unmanaged object representation.

(Inherited from NSObject)
IsDirectBinding (Inherited from NSObject)
IsProxy (Inherited from NSObject)
JitteringEnabled

Gets or sets a value that controls whether images are sampled from multiple nearby perspectives to reduce aliasing.

Loops

Gets or sets a value that controls whether the scene restarts after all animations are finished running.

NextFrameTimeInSeconds

Gets the time at which the next frame will be rendered.

OverlayScene

Gets or sets the 2-dimensional content, such as a player scoreboard, that is displayed in front of the scene.

Playing

Gets or sets a value that controls whether the scene is currently playing.

PointOfView

Gets or sets the node from which the scene is viewed..

RenderingApi

Gets or sets the rendering API.

RetainCount

Returns the current Objective-C retain count for the object.

(Inherited from NSObject)
Scene

Gets or sets the scene being rendered.

SceneRendererDelegate

Gets or sets the scene renderer delegate.

SceneTimeInSeconds

Gets or sets the scene time.

Self (Inherited from NSObject)
ShowsStatistics

Gets or sets a value that controls whether rendering performance statistics are overlayed on the scene.

StencilPixelFormat

Gets the format for stencil pixels.

Superclass (Inherited from NSObject)
SuperHandle

Handle used to represent the methods in the base class for this NSObject.

(Inherited from NSObject)
Technique

Gets or sets the multipass rendering technique.

WeakSceneRendererDelegate

Gets or sets a weak reference to the scene renderer delegate..

Zone (Inherited from NSObject)

Methods

AddObserver(NSObject, NSString, NSKeyValueObservingOptions, IntPtr)

Registers an object for being observed externally (using NSString keyPath).   Observed changes are dispatched to the observer’s object ObserveValue(NSString, NSObject, NSDictionary, IntPtr) method.

(Inherited from NSObject)
AddObserver(NSObject, String, NSKeyValueObservingOptions, IntPtr)

Registers an object for being observed externally (using string keyPath).   Observed changes are dispatched to the observer’s object ObserveValue(NSString, NSObject, NSDictionary, IntPtr) method.

(Inherited from NSObject)
AddObserver(NSString, NSKeyValueObservingOptions, Action<NSObservedChange>)

Registers an object for being observed externally using an arbitrary method.

(Inherited from NSObject)
AddObserver(String, NSKeyValueObservingOptions, Action<NSObservedChange>)

Registers an object for being observed externally using an arbitrary method.

(Inherited from NSObject)
AwakeFromNib()

Called after the object has been loaded from the nib file. Overriders must call base.AwakeFromNib().

(Inherited from NSObject)
BeginInvokeOnMainThread(Action) (Inherited from NSObject)
BeginInvokeOnMainThread(Selector, NSObject)

Invokes asynchrously the specified code on the main UI thread.

(Inherited from NSObject)
Bind(NSString, NSObject, String, NSDictionary) (Inherited from NSObject)
Bind(String, NSObject, String, NSDictionary) (Inherited from NSObject)
BindingInfo(String) (Inherited from NSObject)
BindingOptionDescriptions(String) (Inherited from NSObject)
BindingValueClass(String) (Inherited from NSObject)
CommitEditing() (Inherited from NSObject)
CommitEditing(NSObject, Selector, IntPtr) (Inherited from NSObject)
ConformsToProtocol(IntPtr)

Invoked to determine if this object implements the specified protocol.

(Inherited from NSObject)
Copy()

Performs a copy of the underlying Objective-C object.

(Inherited from NSObject)
DangerousAutorelease() (Inherited from NSObject)
DangerousRelease() (Inherited from NSObject)
DangerousRetain() (Inherited from NSObject)
DidChange(NSKeyValueChange, NSIndexSet, NSString)

Indicates a change occurred to the indexes for a to-many relationship.

(Inherited from NSObject)
DidChange(NSString, NSKeyValueSetMutationKind, NSSet) (Inherited from NSObject)
DidChangeValue(String)

Indicates that a change occurred on the specified key.

(Inherited from NSObject)
Dispose()

Releases the resources used by the NSObject object.

(Inherited from NSObject)
Dispose(Boolean)

Releases the resources used by the SCNRenderer object.

DoesNotRecognizeSelector(Selector)

Indicates that this object does not recognize the specified selector.

(Inherited from NSObject)
Equals(NSObject) (Inherited from NSObject)
Equals(Object) (Inherited from NSObject)
ExposedBindings() (Inherited from NSObject)
FromContext(CGLContext, NSDictionary)
FromContext(EAGLContext, NSDictionary)

Creates a new renderer from the specified graphics context and options.

FromContext(IntPtr, NSDictionary)

Creates a new renderer from the specified graphics context and options.

FromDevice(IMTLDevice, NSDictionary)

Creates and returns a new SceneKit renderer from the provided Metal device.

GetBindingInfo(NSString) (Inherited from NSObject)
GetBindingOptionDescriptions(NSString) (Inherited from NSObject)
GetBindingValueClass(NSString) (Inherited from NSObject)
GetDictionaryOfValuesFromKeys(NSString[])

Retrieves the values of the specified keys.

(Inherited from NSObject)
GetHashCode()

Generates a hash code for the current instance.

(Inherited from NSObject)
GetMethodForSelector(Selector) (Inherited from NSObject)
GetNativeField(String) (Inherited from NSObject)
GetNativeHash() (Inherited from NSObject)
GetNodesInsideFrustum(SCNNode)

Returns the SceneKit nodes that are within the frustrum of a point of view.

GetSnapshot(Double, CGSize, SCNAntialiasingMode)
HitTest(CGPoint, NSDictionary)
HitTest(CGPoint, SCNHitTestOptions)
Init() (Inherited from NSObject)
InitializeHandle(IntPtr) (Inherited from NSObject)
InitializeHandle(IntPtr, String) (Inherited from NSObject)
Invoke(Action, Double) (Inherited from NSObject)
Invoke(Action, TimeSpan) (Inherited from NSObject)
InvokeOnMainThread(Action) (Inherited from NSObject)
InvokeOnMainThread(Selector, NSObject)

Invokes synchrously the specified code on the main UI thread.

(Inherited from NSObject)
IsEqual(NSObject) (Inherited from NSObject)
IsKindOfClass(Class) (Inherited from NSObject)
IsMemberOfClass(Class) (Inherited from NSObject)
IsNodeInsideFrustum(SCNNode, SCNNode)

Returns true if node can be seen from the specified point of view.

MarkDirty()

Promotes a regular peer object (IsDirectBinding is true) into a toggleref object.

(Inherited from NSObject)
MutableCopy()

Creates a mutable copy of the specified NSObject.

(Inherited from NSObject)
ObjectDidEndEditing(NSObject) (Inherited from NSObject)
ObserveValue(NSString, NSObject, NSDictionary, IntPtr)

Indicates that the value at the specified keyPath relative to this object has changed.

(Inherited from NSObject)
PerformSelector(Selector) (Inherited from NSObject)
PerformSelector(Selector, NSObject) (Inherited from NSObject)
PerformSelector(Selector, NSObject, Double)

Invokes the selector on the current instance and if the obj is not null, it passes this as its single parameter.

(Inherited from NSObject)
PerformSelector(Selector, NSObject, Double, NSString[]) (Inherited from NSObject)
PerformSelector(Selector, NSObject, NSObject) (Inherited from NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean) (Inherited from NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean, NSString[]) (Inherited from NSObject)
Prepare(NSObject, Func<Boolean>)

Supplies a parameterless handler that is used to halt preparation of a scene by returning true, or allowing preparation to continue by returning false. Returns true if preparation was successful.

Prepare(NSObject[], Action<Boolean>)

Prepares content for smoothly rendering a new animated scene.

PrepareAsync(NSObject[])

Asynchronously prepares content for smoothly rendering a new animated scene, returning a task that indicates whether scene preparation succeeded.

PrepareForInterfaceBuilder() (Inherited from NSObject)
PresentScene(SCNScene, SKTransition, SCNNode, Action)

Presents the scene.

PresentSceneAsync(SCNScene, SKTransition, SCNNode)

Asynchronously presents the scene, returning a task that represents the operation.

ProjectPoint(SCNVector3)

Projects the specified 3D point onto the 2D viewport.

RemoveObserver(NSObject, NSString)

Stops the specified observer from receiving further notifications of changed values for the specified keyPath.

(Inherited from NSObject)
RemoveObserver(NSObject, NSString, IntPtr)

Stops the specified observer from receiving further notifications of changed values for the specified keyPath and context.

(Inherited from NSObject)
RemoveObserver(NSObject, String)

Stops the specified observer from receiving further notifications of changed values for the specified keyPath.

(Inherited from NSObject)
RemoveObserver(NSObject, String, IntPtr)

Stops the specified observer from receiving further notifications of changed values for the specified keyPath and context.

(Inherited from NSObject)
Render()

Developers should not use this deprecated method.

Render(CGRect, IMTLCommandBuffer, MTLRenderPassDescriptor)
Render(Double)

Renders the scene at the specified time.

Render(Double, CGRect, IMTLCommandBuffer, MTLRenderPassDescriptor)
RespondsToSelector(Selector)

Whether this object recognizes the specified selector.

(Inherited from NSObject)
SetNativeField(String, NSObject) (Inherited from NSObject)
SetNilValueForKey(NSString)

Sets the value of the specified key to null.

(Inherited from NSObject)
SetValueForKey(NSObject, NSString)

Sets the value of the property specified by the key to the specified value.

(Inherited from NSObject)
SetValueForKeyPath(IntPtr, NSString)

A constructor used when creating managed representations of unmanaged objects; Called by the runtime.

(Inherited from NSObject)
SetValueForKeyPath(NSObject, NSString)

Sets the value of a property that can be reached using a keypath.

(Inherited from NSObject)
SetValueForUndefinedKey(NSObject, NSString)

Indicates an attempt to write a value to an undefined key. If not overridden, raises an NSUndefinedKeyException.

(Inherited from NSObject)
SetValuesForKeysWithDictionary(NSDictionary)

Sets the values of this NSObject to those in the specified dictionary.

(Inherited from NSObject)
ToString()

Returns a string representation of the value of the current instance.

(Inherited from NSObject)
Unbind(NSString) (Inherited from NSObject)
Unbind(String) (Inherited from NSObject)
UnprojectPoint(SCNVector3)

Unprojects the specified point into the 3D scene by treating the first two coordinates as a 2D point, and the third coordinate as a fraction of the distance between the near and far clipping planes.

Update(Double)
Update(SCNNode[], Double)
ValueForKey(NSString)

Returns the value of the property associated with the specified key.

(Inherited from NSObject)
ValueForKeyPath(NSString)

Returns the value of a property that can be reached using a keypath.

(Inherited from NSObject)
ValueForUndefinedKey(NSString)

Indicates an attempt to read a value of an undefined key. If not overridden, raises an NSUndefinedKeyException.

(Inherited from NSObject)
WillChange(NSKeyValueChange, NSIndexSet, NSString)

Indicates that the values of the specified indices in the specified key are about to change.

(Inherited from NSObject)
WillChange(NSString, NSKeyValueSetMutationKind, NSSet) (Inherited from NSObject)
WillChangeValue(String)

Indicates that the value of the specified key is about to change.

(Inherited from NSObject)

Extension Methods

ObjectDidBeginEditing(NSObject, INSEditor)
ObjectDidEndEditing(NSObject, INSEditor)
GetValidModes(NSObject, NSFontPanel)
ValidateToolbarItem(NSObject, NSToolbarItem)
GetDebugDescription(INSObjectProtocol)
AcceptsPreviewPanelControl(NSObject, QLPreviewPanel)
BeginPreviewPanelControl(NSObject, QLPreviewPanel)
EndPreviewPanelControl(NSObject, QLPreviewPanel)
GetAudioEngine(ISCNSceneRenderer)

Returns the audio engine that is used to render sounds in the scene

GetAudioEnvironmentNode(ISCNSceneRenderer)

Returns the audio environment node for the scene..

GetAudioListener(ISCNSceneRenderer)

Returns the node that represents the position of the listener in the scene.

GetColorPixelFormat(ISCNSceneRenderer)

Returns the format for color pixels..

GetCommandQueue(ISCNSceneRenderer)

Returns the command queue..

GetCurrentRenderCommandEncoder(ISCNSceneRenderer)

Returns the current command encoder that is used for rendering.

GetCurrentTime(ISCNSceneRenderer)
GetDebugOptions(ISCNSceneRenderer)

Returns a value that controls which, if any, debug overlays to show in the rendered output..

GetDepthPixelFormat(ISCNSceneRenderer)

Returns the format for depth pixels.

GetDevice(ISCNSceneRenderer)

Returns the metal device that is used for rendering.

GetNodesInsideFrustum(ISCNSceneRenderer, SCNNode)

Returns the nodes that are contained in the frustrum that is defined by the provided node.

GetRenderingApi(ISCNSceneRenderer)

Returns the rendering API that is used to render the scene.

GetStencilPixelFormat(ISCNSceneRenderer)

Returns the format for stencil pixels..

PrepareAsync(ISCNSceneRenderer, NSObject[])

Asynchronously prepares content for smoothly rendering a new animated scene, returning a task that indicates whether scene preparation succeeded.

PresentScene(ISCNSceneRenderer, SCNScene, SKTransition, SCNNode, Action)

Displays the provided scene.

PresentSceneAsync(ISCNSceneRenderer, SCNScene, SKTransition, SCNNode)

Asynchronously presents the scene, returning a task that represents the operation.

SetAudioListener(ISCNSceneRenderer, SCNNode)

Sets the node that represents the position of the listener in the scene.

SetCurrentTime(ISCNSceneRenderer, Double)
SetDebugOptions(ISCNSceneRenderer, SCNDebugOptions)

Sets a value that controls which, if any, debug overlays to show in the rendered output.

GetAccessibilityCustomRotors(NSObject)

Gets the array of UIAccessibilityCustomRotor objects appropriate for this object.

SetAccessibilityCustomRotors(NSObject, UIAccessibilityCustomRotor[])

Sets the array of UIAccessibilityCustomRotor objects appropriate for this object.

Applies to

See also