Instance Method


Loads the entire scene graph from the scene source and calls the specified block to provide progress information.


- (SCNScene *)sceneWithOptions:(NSDictionary<SCNSceneSourceLoadingOption, id> *)options statusHandler:(SCNSceneSourceStatusHandler)statusHandler;



A dictionary containing options that affect scene loading. See Scene Loading Options for available keys and values. Pass nil to use default options.


An SCNSceneSourceStatusHandler block. SceneKit calls this block periodically to report progress while loading the scene.

Return Value

An SCNScene object containing the entire scene graph from the scene source, or nil if loading was not successful.


Use this method if you need to monitor progress while loading a scene from the scene source. For simpler scene loading, use the sceneWithOptions:error: method or the SCNScene method sceneWithURL:options:error:.

A scene source can contain objects that are not part of its scene graph. To obtain these objects, you must load them individually with the the entryWithIdentifier:withClass: or entriesPassingTest: method. For example, a scene file containing a game character could include several animations for the character geometry (such as running, jumping, and standing idle). Because you typically do not apply multiple animations at once, the scene file contains these animations without their being attached to the character geometry.

See Also

Loading a Complete Scene

- sceneWithOptions:error:

Instantiates a scene from the scene source with the specified options.

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.

Learn more about using Apple's beta software