Skip to main content
App Generation allows you to generate a pre-built Xcode project directly from Spline ready to publish in the App Store using our Metal-based renderer. Our Metal-based renderer enables you to bring all of the interactivity from your 3D designs made in Spline to Apple devices. It also takes full advantage of all the native performance from your Apple devices like the iPhone, iPad, or Mac.
iOS App Generation is a paid feature. You’ll need an active Professional or Team subscription.

Requirements

Follow the steps below to get set up for using App Generation.

1. Sign up for an Apple ID or join the Apple Developer Program

  • To get started testing your app on your devices you’ll need a free Apple ID.
  • In order to publish your app on the App Store, you need to register with the Apple Developer Program.
For more information about the differences between an Apple ID and Apple Developer Program membership, refer to Apple’s documentation on Choosing a Membership.

Team IDs

To build your apps within Xcode, you might need a Team ID. Learn how to find your Team ID on Apple’s documentation: Locate your Team ID.

2. Download and Install Xcode

Current Xcode version supported from 15.2.
To build your app with the Xcode project generated from Spline you’ll need Xcode. Xcode is only available for macOS.

Getting Started

Follow the steps below to use native 3D embeds on your Swift projects with Spline iOS Runtime.

Platform Support

Spline is using the latest technologies to render 3D content on Apple devices.
DeviceMinimum Required OSMinimum Required Chip
iPhoneiOS 16.0 and upA13 and up
iPadiPadOS 16.0 and upA13 and up
MacmacOS 13.0 and up (via Mac Catalyst or Designed for iPad)Apple Silicon
Vision ProVisionOS 1.0M2
Apple TVNot supported-
Apple WatchNot supported-

Language and Libraries Support

The Spline iOS Runtime uses SwiftUI and Swift.

1. Generate an Xcode Project from Spline

  1. From the top toolbar, press the Export button to open the export panel;
  2. Under Apple Platforms, select the App option;
  3. Fill in all the required settings to build your Xcode project. Refer below for more information;
  4. Press the Generate button.
image

1.1 Settings Overview

Refer to the below for more information on all the different settings related to App Generation.
SettingPurpose
App IconUpload a 1024x1024 image to use as your app icon.
App NameThe name of your app or project.
Bundle identifierThe ID of your organization or team. Best practice is to use your domain reversed. com.mycompany
VersionThe version of your app.
Team IDThe ID of your Xcode team or organization. Refer to Team IDs section to learn more.
ModeThe way your Spline scenes will be embedded. - Cloud will load the scene via URL. - Local will download and use a .splineswift file.
Xcode versionThe Xcode version needed to open the generated project.
LogoEnable or disable the Spline logo.
OrientationDefine the orientation that your app will use. When in Auto-Rotation you’ll be able to select which orientations your app can use.
Status BarDefine if your app has the status bar visible or hidden.

2. Build and run the app with Xcode

Building the app and running it is done through Xcode and can be achieved with a few simple steps.
  1. On Xcode, go to File > Open and select the unzipped folder with your project;
  2. Select your build device – you can use your physical device (iPhone, iPad, Mac) or a simulator;
  3. Press ▶️ to build your project.
For more information on how to build an app with Xcode, refer to Apple’s documentation on Building and Running an App. If you don’t add a Team ID from Spline, on Xcode, you might need to go into Signing & Capabilities, under Signing, you can add your team manually.

3. Publishing and distributing your app

For more information on publishing to the App Store, refer to Apple’s documentation on Distributing your app for beta testing and releases.

Possible Warnings

When building your app, even if the app builds properly, there are a few errors that might be displayed on the embed. Refer below to see the warnings and their explanation. "Spline scene file is in an unknown format." The exported file is too old, the runtime is too old, or the file might have become corrupted. "Spline scene file URL could not be reached." It’s displayed when the runtime fails to download a .splineswift file from the web. It can be because of an invalid URL, or just a non-functioning network connection.

Feature Support Roadmap

Full coverage of all Spline features for Metal Renderer is expected to be ready in April-May 2024. Here is a list of each feature’s current status. This list will be updated weekly until everything is fully supported.
FeatureStatusNotes
Parametric Shapes
Non-Parametric Shapes✅ ⏰3D Paths, Lathe, and Subdiv Meshes are baked (Temporarily) - Full support is coming soon
MaterialsNote 1: Some settings in the Outline layer are not supported (yet). Note 2: Some material layers are not supported in VisionOS Volumes.
Physics
Game Controls
Gaussian SplattingNote: Volumes in VisionOS don’t support Gaussian Splatting at the moment.
Variables
Events & States✅ 
Animated Models
Multi Scenes
UI Scenes🚧

Export Native Embeds for iOS

Another way to export your 3D content for Apple Platforms like iOS, is by using native embeds with a Swift code snippet. Learn more about Native 3D Embeds for iOS.