[Apple] Swift Xcode Project Type for iOS, iPadOS, and tvOS available in Unity 6.5

We’re very excited to announce the experimental release of Swift Xcode Project Type in Unity 6.5 Alpha. Under the hood, this is a complete re-architecture of the layer connecting Unity Engine to Apple platforms, delivered in modern Swift language. It represents the foundation for Unity’s next generation of Apple platform development.

What this means for you:

  • A cleaner, Swift-first approach and Swift-native plug-in workflows
  • Improved alignment with Apple platform standards
  • A future-proof development architecture
  • A dedicated Unity public API for plug-ins

What’s available now

Starting in Unity 6000.5.0a9, you can switch to Swift Xcode projects for iOS and tvOS by selecting the Swift project type in Edit > Project Settings > Player > iOS > Configuration > Xcode Project Type.

The experimental release includes:

  • SwiftUI-based Xcode project template
  • Full Unity Player functionality
  • Native plug-in support in Swift, Objective-C, Objective-C++, C, and C++
  • Public API for native plug-in developers
  • Interchangeability with Objective-C project type for plug-ins adopting new APIs

You can read in-depth technical details on our accompanying documentation update.

Note: Swift projects will require iOS 16+ as the minimum deployment target.

Note: Support for full screen video, Unity as a Library, and visionOS windowed mode will come in a future update.

If you are a game developer

Throughout this re-architecture work, project stability, performance, and feature parity was a driving factor for us. We expect that your games can smoothly transition to the modern architecture across core gameplay areas such as performance, graphics, audio, input, orientation, etc. We ask you to try the Swift Project Type with your projects and give us feedback/submit potential issues about core areas that may not behave as you expect. While marked experimental, this release is stable for testing and development. We encourage you to try it with new/existing projects in non-production environments first. Critical bugs will be addressed promptly, but we recommend waiting for the LTS release later this year, and the removal of experimental status, before shipping production titles with the Swift Project Type.

If you are a plug-in maintainer

If you’re a Unity plug-in creator with native iOS support: we need your help making this transition smooth for the Unity community. We ask you to begin testing your plug-ins with Swift Project Type now, provide feedback on the new APIs, and - if necessary for your product- start releasing updates that support our Swift direction.

We’ve built new APIs for the Swift Project Type and a mechanism to help you support both project types during the migration period. We’ve provided comprehensive migration documentation and tools to make this as straightforward as possible.

Key things to know:

  • Your plug-ins can support both Objective-C and Swift project types simultaneously.
  • We’ve introduced UnityPlayer as the new primary interface (replacing much of UnityAppController).
  • Lifecycle events now use NotificationCenter for cleaner integration.
  • Full migration guides and API references are available in our documentation.

We are currently working on the following features for an upcoming release:

  • Provide native plug-ins with an Editor version at compile time.
  • Encapsulate the plug-in context to prevent mixing the public API with private implementation details.

Looking to the future

Long term, we plan to make Swift Project Type the default, with the eventual phase-out of the Objective-C architecture. This will not happen overnight. Existing LTS (6.0-6.3) and the 2026 upcoming LTS will retain the Obj-C project type for the duration of their support window.

For the next generation after the 2026 LTS, and due to the nature of modern Apple APIs being available only in Swift, we expect to release new capabilities to the Swift Project Type stream only.

By starting this journey now, we’re ensuring Unity remains aligned with Apple’s ecosystem for years to come. In the interests of transparency, here is our provisional timeline that can help both plug-in and game developers plan your next steps:

Date Unity version Status What you need to do
Spring 2026 6.5 Alpha Swift Project Type released as experimental Plug-in developers: start supporting both types. Game developers: Test core gameplay
Autumn 2026 LTS shipped in 2026 Swift Project Type production-ready. Obj-C project type available Game Developers: you can use in production projects. Game Developers: Feedback to 3rd party plug-ins in case of support. Plug-in developers: release updates to your SDKs with Swift Project Type support if needed
2027+ Next generation onwards Swift Project Type recommended for all projects. New features on Swift Architecture only. Obj-C project type evaluated for deprecation & removal Game Developers: Prepare for a Swift-only world. Plug-in Developers: maintain support for both project types

Share your feedback

We need your feedback to make it production-ready. Whether you’re building a new project, updating an existing one, or creating native plug-ins, we want to hear about your experience:

Get started:

  1. Review the documentation and API reference.
  2. Update to Unity 6000.5.0a9 or later.
  3. Navigate to Edit > Project Settings > Player > iOS > Configuration > Xcode Project Type and select Swift.
  4. Build your project and explore the new structure.

Share your feedback in this thread. Your input will directly shape capabilities and fixes and influence the provisional transition roadmap. This is an exciting step forward for Unity on Apple platforms, and we can’t wait to see what you build with it.

Found a bug? Use the in-editor bug report functionality with a reproduction project. Please add “#SwiftProjectType” in your description so it reaches us faster. You can also report any documentation issues using the Report a problem on this page option at the bottom of each page.


For detailed technical information, API references, and step-by-step migration guides, visit our documentation.

17 Likes

No more warnings in Xcode! :slightly_smiling_face:

1 Like

Will visionOS be updated simultaneously? Could you provide some relevant information?

2 Likes

Yes, we are planning to update the Xcode project for the windowed app visionOS as well, and it will come in future updates. We don’t plan to update other visionOS modes.

2 Likes

Thank you for your reply. That is very clear; I understand.

:face_holding_back_tears: It’s finally happening.

1 Like

Hi Unity Team,

Thank you for introducing the Swift Xcode Project Type in the 6.5 Beta! Removing the old Objective-C++ friction and making it so clean to integrate modern Swift and SwiftUI plugins for iOS, iPadOS, and tvOS is a massive quality-of-life improvement.

I would love to request that this same Swift-first architecture and modern lifecycle approach be expanded to include the macOS build target. Having a unified, modern Swift pipeline across the entire Apple ecosystem would be a game-changer for those of us building native desktop integrations.

Thanks for the huge step forward!