Documentation Archive Developer
Search

SceneKit Changes for Objective-C

SceneKit

ModelIO.h

SceneKit_simd.h (Removed)

Header
FromSceneKit/SceneKit_simd.h
ToSceneKit/SceneKitTypes.h

Header
FromSceneKit/SceneKit_simd.h
ToSceneKit/SceneKitTypes.h

Header
FromSceneKit/SceneKit_simd.h
ToSceneKit/SceneKitTypes.h

Header
FromSceneKit/SceneKit_simd.h
ToSceneKit/SceneKitTypes.h

Header
FromSceneKit/SceneKit_simd.h
ToSceneKit/SceneKitTypes.h

Header
FromSceneKit/SceneKit_simd.h
ToSceneKit/SceneKitTypes.h

SceneKitTypes.h

Declaration
From
bool SCNMatrix4EqualToMatrix4 (
    SCNMatrix4 matA,
    SCNMatrix4 matB
);
To
bool SCNMatrix4EqualToMatrix4 (
    SCNMatrix4 a,
    SCNMatrix4 b
);

Header
FromSceneKit/SceneKit_simd.h
ToSceneKit/SceneKitTypes.h

Declaration
From
SCNMatrix4 SCNMatrix4Invert (
    SCNMatrix4 mat
);
To
SCNMatrix4 SCNMatrix4Invert (
    SCNMatrix4 m
);

Declaration
From
bool SCNMatrix4IsIdentity (
    SCNMatrix4 mat
);
To
bool SCNMatrix4IsIdentity (
    SCNMatrix4 m
);

Declaration
From
SCNMatrix4 SCNMatrix4MakeTranslation (
    CGFloat x,
    CGFloat y,
    CGFloat z
);
To
SCNMatrix4 SCNMatrix4MakeTranslation (
    CGFloat tx,
    CGFloat ty,
    CGFloat tz
);

Declaration
From
SCNMatrix4 SCNMatrix4Mult (
    SCNMatrix4 matA,
    SCNMatrix4 matB
);
To
SCNMatrix4 SCNMatrix4Mult (
    SCNMatrix4 a,
    SCNMatrix4 b
);

Declaration
From
SCNMatrix4 SCNMatrix4Rotate (
    SCNMatrix4 mat,
    CGFloat angle,
    CGFloat x,
    CGFloat y,
    CGFloat z
);
To
SCNMatrix4 SCNMatrix4Rotate (
    SCNMatrix4 m,
    CGFloat angle,
    CGFloat x,
    CGFloat y,
    CGFloat z
);

Declaration
From
SCNMatrix4 SCNMatrix4Scale (
    SCNMatrix4 mat,
    CGFloat x,
    CGFloat y,
    CGFloat z
);
To
SCNMatrix4 SCNMatrix4Scale (
    SCNMatrix4 m,
    CGFloat sx,
    CGFloat sy,
    CGFloat sz
);

Header
FromSceneKit/SceneKit_simd.h
ToSceneKit/SceneKitTypes.h

Declaration
From
SCNMatrix4 SCNMatrix4Translate (
    SCNMatrix4 mat,
    CGFloat x,
    CGFloat y,
    CGFloat z
);
To
SCNMatrix4 SCNMatrix4Translate (
    SCNMatrix4 m,
    CGFloat tx,
    CGFloat ty,
    CGFloat tz
);

Header
FromSceneKit/SceneKit_simd.h
ToSceneKit/SceneKitTypes.h

Header
FromSceneKit/SceneKit_simd.h
ToSceneKit/SceneKitTypes.h

Header
FromSceneKit/SceneKit_simd.h
ToSceneKit/SceneKitTypes.h

Header
FromSceneKit/SceneKit_simd.h
ToSceneKit/SceneKitTypes.h

SCNAnimation.h

SCNCamera.h

SCNConstraint.h

DeclarationReadonly
From
@property(nonatomic, readonly) SCNNode *target
yes
To
@property(nonatomic, retain) SCNNode *target
--

SCNGeometry.h

Added #def SCNGeometryPrimitiveTypePolygon
Declaration
From
- (NSArray<SCNGeometrySource *> *)geometrySourcesForSemantic:(NSString *)semantic
To
- (NSArray<SCNGeometrySource *> *)geometrySourcesForSemantic:(SCNGeometrySourceSemantic)semantic

Declaration
From
+ (instancetype)geometrySourceWithBuffer:(id<MTLBuffer>)mtlBuffer vertexFormat:(MTLVertexFormat)vertexFormat semantic:(NSString *)semantic vertexCount:(NSInteger)vertexCount dataOffset:(NSInteger)offset dataStride:(NSInteger)stride
To
+ (instancetype)geometrySourceWithBuffer:(id<MTLBuffer>)mtlBuffer vertexFormat:(MTLVertexFormat)vertexFormat semantic:(SCNGeometrySourceSemantic)semantic vertexCount:(NSInteger)vertexCount dataOffset:(NSInteger)offset dataStride:(NSInteger)stride

Declaration
From
+ (instancetype)geometrySourceWithData:(NSData *)data semantic:(NSString *)semantic vectorCount:(NSInteger)vectorCount floatComponents:(BOOL)floatComponents componentsPerVector:(NSInteger)componentsPerVector bytesPerComponent:(NSInteger)bytesPerComponent dataOffset:(NSInteger)offset dataStride:(NSInteger)stride
To
+ (instancetype)geometrySourceWithData:(NSData *)data semantic:(SCNGeometrySourceSemantic)semantic vectorCount:(NSInteger)vectorCount floatComponents:(BOOL)floatComponents componentsPerVector:(NSInteger)componentsPerVector bytesPerComponent:(NSInteger)bytesPerComponent dataOffset:(NSInteger)offset dataStride:(NSInteger)stride

Declaration
From
@property(nonatomic, readonly) NSString *semantic
To
@property(nonatomic, readonly) SCNGeometrySourceSemantic semantic

SCNHitTest.h (Added)

Added #def SCNHitTestOptionBackFaceCulling
Added #def SCNHitTestOptionBoundingBoxOnly
Added #def SCNHitTestOptionClipToZRange
Added #def SCNHitTestOptionFirstFoundOnly
Added #def SCNHitTestOptionIgnoreChildNodes
Added #def SCNHitTestOptionIgnoreHiddenNodes
Added #def SCNHitTestOptionRootNode
Added #def SCNHitTestOptionSortResults
Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

SCNLight.h

Modified SCNLight.type
Declaration
From
@property(nonatomic, copy) NSString *type
To
@property(nonatomic, copy) SCNLightType type

SCNMaterial.h

Removed SCNCullBack
Removed SCNCullFront
Declaration
From
@property(nonatomic, copy) NSString *lightingModelName
To
@property(nonatomic, copy) SCNLightingModel lightingModelName

SCNMaterialProperty.h

Deprecation
From--
ToOS X 10.12

SCNNode.h

Declaration
From
- (void)renderNode:(SCNNode *)node renderer:(SCNRenderer *)renderer arguments:(NSDictionary<NSString *,NSValue *> *)arguments
To
- (void)renderNode:(SCNNode *)node renderer:(SCNRenderer *)renderer arguments:(NSDictionary<NSString *,id> *)arguments

SCNParametricGeometry.h

SCNParticleSystem.h

Declaration
From
@property(nonatomic, copy) NSString *inputProperty
To
@property(nonatomic, copy) SCNParticleProperty inputProperty

Declaration
From
- (void)addModifierForProperties:(NSArray<NSString *> *)properties atStage:(SCNParticleModifierStage)stage withBlock:(SCNParticleModifierBlock)block
To
- (void)addModifierForProperties:(NSArray<SCNParticleProperty> *)properties atStage:(SCNParticleModifierStage)stage withBlock:(SCNParticleModifierBlock)block

Declaration
From
- (void)handleEvent:(SCNParticleEvent)event forProperties:(NSArray<NSString *> *)properties withBlock:(SCNParticleEventBlock)block
To
- (void)handleEvent:(SCNParticleEvent)event forProperties:(NSArray<SCNParticleProperty> *)properties withBlock:(SCNParticleEventBlock)block

Declaration
From
@property(nonatomic, copy) NSDictionary<NSString *,SCNParticlePropertyController *> *propertyControllers
To
@property(nonatomic, copy) NSDictionary<SCNParticleProperty,SCNParticlePropertyController *> *propertyControllers

SCNPhysicsShape.h

Added #def SCNPhysicsShapeOptionKeepAsCompound
Added #def SCNPhysicsShapeOptionScale
Added #def SCNPhysicsShapeOptionType
Declaration
From
@property(readonly, nonatomic) NSDictionary<NSString *,id> *options
To
@property(readonly, nonatomic) NSDictionary<SCNPhysicsShapeOption, id> *options

Declaration
From
+ (instancetype)shapeWithGeometry:(SCNGeometry *)geometry options:(NSDictionary<NSString *,id> *)options
To
+ (instancetype)shapeWithGeometry:(SCNGeometry *)geometry options:(NSDictionary<SCNPhysicsShapeOption,id> *)options

Declaration
From
+ (instancetype)shapeWithNode:(SCNNode *)node options:(NSDictionary<NSString *,id> *)options
To
+ (instancetype)shapeWithNode:(SCNNode *)node options:(NSDictionary<SCNPhysicsShapeOption,id> *)options

SCNPhysicsWorld.h

Added #def SCNPhysicsTestOptionBackfaceCulling
Added #def SCNPhysicsTestOptionCollisionBitMask
Added #def SCNPhysicsTestOptionSearchMode
Declaration
From
- (NSArray<SCNPhysicsContact *> *)contactTestBetweenBody:(SCNPhysicsBody *)bodyA andBody:(SCNPhysicsBody *)bodyB options:(NSDictionary<NSString *,id> *)options
To
- (NSArray<SCNPhysicsContact *> *)contactTestBetweenBody:(SCNPhysicsBody *)bodyA andBody:(SCNPhysicsBody *)bodyB options:(NSDictionary<SCNPhysicsTestOption,id> *)options

Declaration
From
- (NSArray<SCNPhysicsContact *> *)contactTestWithBody:(SCNPhysicsBody *)body options:(NSDictionary<NSString *,id> *)options
To
- (NSArray<SCNPhysicsContact *> *)contactTestWithBody:(SCNPhysicsBody *)body options:(NSDictionary<SCNPhysicsTestOption,id> *)options

Declaration
From
- (NSArray<SCNPhysicsContact *> *)convexSweepTestWithShape:(SCNPhysicsShape *)shape fromTransform:(SCNMatrix4)from toTransform:(SCNMatrix4)to options:(NSDictionary<NSString *,id> *)options
To
- (NSArray<SCNPhysicsContact *> *)convexSweepTestWithShape:(SCNPhysicsShape *)shape fromTransform:(SCNMatrix4)from toTransform:(SCNMatrix4)to options:(NSDictionary<SCNPhysicsTestOption,id> *)options

Declaration
From
- (NSArray<SCNHitTestResult *> *)rayTestWithSegmentFromPoint:(SCNVector3)origin toPoint:(SCNVector3)dest options:(NSDictionary<NSString *,id> *)options
To
- (NSArray<SCNHitTestResult *> *)rayTestWithSegmentFromPoint:(SCNVector3)origin toPoint:(SCNVector3)dest options:(NSDictionary<SCNPhysicsTestOption,id> *)options

SCNRenderer.h

SCNScene.h

Added #def SCNSceneAttributeEndTime
Added #def SCNSceneAttributeFrameRate
Added #def SCNSceneAttributeStartTime
Added #def SCNSceneAttributeUpAxis
Declaration
From
+ (instancetype)sceneNamed:(NSString *)name inDirectory:(NSString *)directory options:(NSDictionary<NSString *,id> *)options
To
+ (instancetype)sceneNamed:(NSString *)name inDirectory:(NSString *)directory options:(NSDictionary<SCNSceneSourceLoadingOption,id> *)options

Declaration
From
+ (instancetype)sceneWithURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options error:(NSError * _Nullable *)error
To
+ (instancetype)sceneWithURL:(NSURL *)url options:(NSDictionary<SCNSceneSourceLoadingOption,id> *)options error:(NSError * _Nullable *)error

SCNSceneRenderer.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Declaration
From
- (NSArray<SCNHitTestResult *> *)hitTest:(CGPoint)point options:(NSDictionary<NSString *,id> *)options
To
- (NSArray<SCNHitTestResult *> *)hitTest:(CGPoint)point options:(NSDictionary<SCNHitTestOption,id> *)options

Header
FromSceneKit/SCNView.h
ToSceneKit/SCNSceneRenderer.h

Header
FromSceneKit/SCNView.h
ToSceneKit/SCNSceneRenderer.h

Header
FromSceneKit/SCNView.h
ToSceneKit/SCNSceneRenderer.h

Header
FromSceneKit/SCNView.h
ToSceneKit/SCNSceneRenderer.h

Header
FromSceneKit/SCNView.h
ToSceneKit/SCNSceneRenderer.h

Header
FromSceneKit/SCNView.h
ToSceneKit/SCNSceneRenderer.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

Header
FromSceneKit/SCNSceneRenderer.h
ToSceneKit/SCNHitTest.h

SCNSceneSource.h

Added #def SCNSceneSourceLoadingOptionAnimationImportPolicy
Added #def SCNSceneSourceLoadingOptionAssetDirectoryURLs
Added #def SCNSceneSourceLoadingOptionCheckConsistency
Added #def SCNSceneSourceLoadingOptionConvertToYUp
Added #def SCNSceneSourceLoadingOptionConvertUnitsToMeters
Added #def SCNSceneSourceLoadingOptionCreateNormalsIfAbsent
Added #def SCNSceneSourceLoadingOptionFlattenScene
Added #def SCNSceneSourceLoadingOptionOverrideAssetURLs
Added #def SCNSceneSourceLoadingOptionStrictConformance
Added #def SCNSceneSourceLoadingOptionUseSafeMode
Declaration
From
- (instancetype)initWithData:(NSData *)data options:(NSDictionary<NSString *,id> *)options
To
- (instancetype)initWithData:(NSData *)data options:(NSDictionary<SCNSceneSourceLoadingOption,id> *)options

Declaration
From
- (instancetype)initWithURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options
To
- (instancetype)initWithURL:(NSURL *)url options:(NSDictionary<SCNSceneSourceLoadingOption,id> *)options

Declaration
From
+ (instancetype)sceneSourceWithData:(NSData *)data options:(NSDictionary<NSString *,id> *)options
To
+ (instancetype)sceneSourceWithData:(NSData *)data options:(NSDictionary<SCNSceneSourceLoadingOption,id> *)options

Declaration
From
+ (instancetype)sceneSourceWithURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options
To
+ (instancetype)sceneSourceWithURL:(NSURL *)url options:(NSDictionary<SCNSceneSourceLoadingOption,id> *)options

Declaration
From
- (SCNScene *)sceneWithOptions:(NSDictionary<NSString *,id> *)options error:(NSError * _Nullable *)error
To
- (SCNScene *)sceneWithOptions:(NSDictionary<SCNSceneSourceLoadingOption,id> *)options error:(NSError * _Nullable *)error

Declaration
From
- (SCNScene *)sceneWithOptions:(NSDictionary<NSString *,id> *)options statusHandler:(SCNSceneSourceStatusHandler)statusHandler
To
- (SCNScene *)sceneWithOptions:(NSDictionary<SCNSceneSourceLoadingOption,id> *)options statusHandler:(SCNSceneSourceStatusHandler)statusHandler

SCNShadable.h

Declaration
From
@property(nonatomic, copy) NSDictionary<NSString *,NSString *> *shaderModifiers
To
@property(nonatomic, copy) NSDictionary<SCNShaderModifierEntryPoint,NSString *> *shaderModifiers

SCNTransaction.h

Modified +[SCNTransaction setAnimationDuration:]
Declaration
From
+ (void)setAnimationDuration:(CFTimeInterval)duration
To
+ (void)setAnimationDuration:(CFTimeInterval)animationDuration

Modified +[SCNTransaction setCompletionBlock:]
Declaration
From
+ (void)setCompletionBlock:(void (^)(void))block
To
+ (void)setCompletionBlock:(void (^)(void))completionBlock

Modified +[SCNTransaction setDisableActions:]
Declaration
From
+ (void)setDisableActions:(BOOL)flag
To
+ (void)setDisableActions:(BOOL)disableActions

SCNView.h

Added #def SCNViewOptionPreferLowPowerDevice
Added #def SCNViewOptionPreferredDevice
Added #def SCNViewOptionPreferredRenderingAPI
Header
FromSceneKit/SCNView.h
ToSceneKit/SCNSceneRenderer.h

Header
FromSceneKit/SCNView.h
ToSceneKit/SCNSceneRenderer.h

Header
FromSceneKit/SCNView.h
ToSceneKit/SCNSceneRenderer.h

Header
FromSceneKit/SCNView.h
ToSceneKit/SCNSceneRenderer.h

Header
FromSceneKit/SCNView.h
ToSceneKit/SCNSceneRenderer.h

Header
FromSceneKit/SCNView.h
ToSceneKit/SCNSceneRenderer.h