net9.0-ios17.2
namespace SceneKit
{
    [Protocol(Name = "SCNSceneRenderer", WrapperType = typeof(SCNSceneRendererWrapper))]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "HitTest", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(CGPoint), typeof(NSDictionary) }, ReturnType = typeof(SCNHitTestResult[]), Selector = "hitTest:options:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "IsNodeInsideFrustum", ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(SCNNode), typeof(SCNNode) }, ReturnType = typeof(bool), Selector = "isNodeInsideFrustum:withPointOfView:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "ProjectPoint", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(SCNVector3) }, ReturnType = typeof(SCNVector3), Selector = "projectPoint:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "UnprojectPoint", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(SCNVector3) }, ReturnType = typeof(SCNVector3), Selector = "unprojectPoint:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "Prepare", ParameterBlockProxy = new[] { null, typeof(NIDActionArity1V4) }, ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(NSObject[]), typeof(Action<bool>) }, Selector = "prepareObjects:withCompletionHandler:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "PresentScene", ParameterBlockProxy = new[] { null, null, null, typeof(NIDAction) }, ParameterByRef = new[] { false, false, false, false }, ParameterType = new[] { typeof(SCNScene), typeof(SKTransition), typeof(SCNNode), typeof(Action) }, Selector = "presentScene:withTransition:incomingPointOfView:completionHandler:")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "GetNodesInsideFrustum", ParameterByRef = new[] { false }, ParameterType = new[] { typeof(SCNNode) }, ReturnType = typeof(SCNNode[]), Selector = "nodesInsideFrustumWithPointOfView:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "context", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Context", PropertyType = typeof(IntPtr), Selector = "context")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "renderingAPI", IsProperty = true, IsRequired = true, IsStatic = false, Name = "RenderingApi", PropertyType = typeof(SCNRenderingApi), Selector = "renderingAPI")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "currentRenderCommandEncoder", IsProperty = true, IsRequired = true, IsStatic = false, Name = "CurrentRenderCommandEncoder", PropertyType = typeof(IMTLRenderCommandEncoder), Selector = "currentRenderCommandEncoder")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "device", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Device", PropertyType = typeof(IMTLDevice), Selector = "device")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "colorPixelFormat", IsProperty = true, IsRequired = true, IsStatic = false, Name = "ColorPixelFormat", PropertyType = typeof(MTLPixelFormat), Selector = "colorPixelFormat")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "depthPixelFormat", IsProperty = true, IsRequired = true, IsStatic = false, Name = "DepthPixelFormat", PropertyType = typeof(MTLPixelFormat), Selector = "depthPixelFormat")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "stencilPixelFormat", IsProperty = true, IsRequired = true, IsStatic = false, Name = "StencilPixelFormat", PropertyType = typeof(MTLPixelFormat), Selector = "stencilPixelFormat")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "commandQueue", IsProperty = true, IsRequired = true, IsStatic = false, Name = "CommandQueue", PropertyType = typeof(IMTLCommandQueue), Selector = "commandQueue")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "audioEngine", IsProperty = true, IsRequired = true, IsStatic = false, Name = "AudioEngine", PropertyType = typeof(AVAudioEngine), Selector = "audioEngine")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "audioEnvironmentNode", IsProperty = true, IsRequired = true, IsStatic = false, Name = "AudioEnvironmentNode", PropertyType = typeof(AVAudioEnvironmentNode), Selector = "audioEnvironmentNode")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "currentViewport", IsProperty = true, IsRequired = true, IsStatic = false, Name = "CurrentViewport", PropertyType = typeof(CGRect), Selector = "currentViewport")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "currentRenderPassDescriptor", IsProperty = true, IsRequired = true, IsStatic = false, Name = "CurrentRenderPassDescriptor", PropertyType = typeof(MTLRenderPassDescriptor), Selector = "currentRenderPassDescriptor")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "workingColorSpace", IsProperty = true, IsRequired = false, IsStatic = false, Name = "WorkingColorSpace", PropertyType = typeof(CGColorSpace), Selector = "workingColorSpace")]
    [ProtocolMember(IsProperty = false, IsRequired = true, IsStatic = false, Name = "Prepare", ParameterBlockProxy = new[] { null, typeof(NIDFuncArity1V3) }, ParameterByRef = new[] { false, false }, ParameterType = new[] { typeof(NSObject), typeof(Func<bool>) }, ReturnType = typeof(bool), Selector = "prepareObject:shouldAbortBlock:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.Weak, GetterSelector = "delegate", IsProperty = true, IsRequired = true, IsStatic = false, Name = "WeakSceneRendererDelegate", PropertyType = typeof(NSObject), Selector = "delegate", SetterSelector = "setDelegate:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "isPlaying", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Playing", PropertyType = typeof(bool), Selector = "playing", SetterSelector = "setPlaying:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "loops", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Loops", PropertyType = typeof(bool), Selector = "loops", SetterSelector = "setLoops:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.Retain, GetterSelector = "pointOfView", IsProperty = true, IsRequired = true, IsStatic = false, Name = "PointOfView", PropertyType = typeof(SCNNode), Selector = "pointOfView", SetterSelector = "setPointOfView:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "autoenablesDefaultLighting", IsProperty = true, IsRequired = true, IsStatic = false, Name = "AutoenablesDefaultLighting", PropertyType = typeof(bool), Selector = "autoenablesDefaultLighting", SetterSelector = "setAutoenablesDefaultLighting:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "isJitteringEnabled", IsProperty = true, IsRequired = true, IsStatic = false, Name = "JitteringEnabled", PropertyType = typeof(bool), Selector = "jitteringEnabled", SetterSelector = "setJitteringEnabled:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "showsStatistics", IsProperty = true, IsRequired = true, IsStatic = false, Name = "ShowsStatistics", PropertyType = typeof(bool), Selector = "showsStatistics", SetterSelector = "setShowsStatistics:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "sceneTime", IsProperty = true, IsRequired = true, IsStatic = false, Name = "SceneTimeInSeconds", PropertyType = typeof(double), Selector = "sceneTime", SetterSelector = "setSceneTime:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.Retain, GetterSelector = "scene", IsProperty = true, IsRequired = true, IsStatic = false, Name = "Scene", PropertyType = typeof(SCNScene), Selector = "scene", SetterSelector = "setScene:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.Retain, GetterSelector = "overlaySKScene", IsProperty = true, IsRequired = true, IsStatic = false, Name = "OverlayScene", PropertyType = typeof(SKScene), Selector = "overlaySKScene", SetterSelector = "setOverlaySKScene:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.Assign, GetterSelector = "debugOptions", IsProperty = true, IsRequired = true, IsStatic = false, Name = "DebugOptions", PropertyType = typeof(SCNDebugOptions), Selector = "debugOptions", SetterSelector = "setDebugOptions:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.Retain, GetterSelector = "audioListener", IsProperty = true, IsRequired = true, IsStatic = false, Name = "AudioListener", PropertyType = typeof(SCNNode), Selector = "audioListener", SetterSelector = "setAudioListener:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "isTemporalAntialiasingEnabled", IsProperty = true, IsRequired = true, IsStatic = false, Name = "TemporalAntialiasingEnabled", PropertyType = typeof(bool), Selector = "temporalAntialiasingEnabled", SetterSelector = "setTemporalAntialiasingEnabled:")]
    [ProtocolMember(ArgumentSemantic = ArgumentSemantic.None, GetterSelector = "usesReverseZ", IsProperty = true, IsRequired = true, IsStatic = false, Name = "UsesReverseZ", PropertyType = typeof(bool), Selector = "usesReverseZ", SetterSelector = "setUsesReverseZ:")]
    [SupportedOSPlatform("maccatalyst")]
    [SupportedOSPlatform("ios")]
    [SupportedOSPlatform("macos")]
    [SupportedOSPlatform("tvos")]
    public interface ISCNSceneRenderer : INativeObject, IDisposable
    {
        [BindingImpl(BindingImplOptions.GeneratedCode | BindingImplOptions.Optimizable)]
        [Export("presentScene:withTransition:incomingPointOfView:completionHandler:")]
        [Preserve(Conditional = true)]
        [SupportedOSPlatform("maccatalyst")]
        [SupportedOSPlatform("ios")]
        [SupportedOSPlatform("macos")]
        [SupportedOSPlatform("tvos")]
        void PresentScene(SCNScene! scene, SKTransition! transition, SCNNode? pointOfView, [BlockProxy(typeof(NIDAction))] Action? completionHandler);
    }
}
.NET 6.07.08.09.0
Information specific to net9.0
Platforms This API is only available when you target a specific platform:
iOS 10.010.110.210.311.011.111.211.311.412.012.112.212.312.413.013.113.213.313.413.513.614.014.114.214.314.414.515.015.215.416.016.116.216.417.017.2
Mac Catalyst 13.113.213.313.413.514.214.314.414.515.015.215.416.116.216.417.017.2
macOS 10.1410.1510.1611.011.111.211.312.012.112.313.013.113.314.014.2
tvOS 10.010.110.211.011.111.211.311.412.012.112.212.312.413.013.213.313.414.014.214.314.414.515.015.215.416.016.116.417.017.2
Information specific to net9.0-ios17.2
Assembly

Microsoft.iOS , Version=17.2.0.0, PublicKeyToken=84e04ff9cfb79065

Referencing

The API is automatically referenced.

Platform Restrictions

This API is only supported on the following platforms:

  • iOS
  • Mac Catalyst
  • macOS
  • tvOS
  • Built-in API
  • Package-provided API

12/28/2024
An error has occurred. This application may no longer respond until reloaded. Reload 🗙