visionOS Development
This course provides experienced Swift developers with a rapid, hands-on introduction to development on the visionOS platform using Apple’s SwiftUI framework.
Description
This hands-on, instructor-led course provides comprehensive coverage of spatial computing on Apple’s visionOS platform. Along the way, it will introduce you to concepts, principles, and guidelines that are fundamental to designing best-of-breed, visionOS applications in SwiftUI.
The course includes a rapid introduction to SwiftUI — including visionOS-specific features — followed by a thorough, hands-on exploration of RealityKit. You’ll learn how to manage immersive content, such as 3D models, in visionOS windows, volumes and immersive spaces. You’ll also learn how to take advantage of visionOS’s Entity-Component-System architecture to configure RealityKit entities and program their behavior.
- Gain proficiency with the most commonly used features of SwiftUI.
- Manage layout for an adaptive user interface.
- Learn how to create and manage spatial windows and ornaments.
- Work with custom views and view modifiers.
- Configure controls and coordinate their actions.
- Learn how to work with spatial gestures.
- Create and populate scrollable lists and manage their cells.
- Develop powerful view models that support editing and persistence of model data.
- Handle navigation and create custom toolbar content.
- Load and manage 3D models in windows, volumes, and immersive spaces.
- Work with 3D transforms to achieve effects such as rotation and scaling.
- Anchor content to specific locations.
- Work with RealityComposer Pro to configure Entities, Components, and Systems
Course Outline
Swift Essentials. Get a quick review of key features of Swift, with an emphasis on language patterns, including Identifier, Value Binding, Expression, Tuple, Enumeration Case, and Optional.
The Combine Framework. Learn to use property wrappers and function builders, along with publishers and subscribers, to coordinate an application’s backend with its user interface.
Structured Concurrency. Get a solid understanding of Swift structured concurrency using async/await and actors.
Views and Layout. Learn how to work with SwiftUI views and view modifiers to declaratively specify your app’s UI, including flexible layout using lists, stacks, grids, and navigation views.
WindowGroups. Learn techniques for creating and managing plain and volumetric windows in the Vision Pro’s shared space.
Images and Symbols. Learn to work with Apple’s SFSymbols framework and image assets to configure the appearance of controls and backgrounds.
View Models. Gain insight into how view models fit in the architecture, and how best to use them to manage app state.
Dynamic Views, Controls, and Gestures. Learn to interact with controls such as text fields and buttons, as well as to respond to gestures. Also discover how to work with visual effects and animation, as well how to programmatically adjust a view’s geometry.
Navigation and Modal Presentation. Learn how to present and dismiss modal sheets, and configure navigation between views, as well as how to work with tabbed interfaces.
3D Models. Learn how to load 3D models into windows, volumes, and immersive spaces, as well as how to apply transforms to support rotation, translation, and scaling, along with other effects.
Entities and Components. Learn how to configure entities components to achieve a variety of effects, such as image-based lighting and gesture recognition, as well as how add custom views as attachments to entities.
RealityComposer Pro. Gain familiarity with this visual tool for defining and configuring entities, components, shader graphs and more.
Audience
Swift developers who are interested in learning to develop visionOS apps using SwiftUI.
Prerequisites
You should have a basic knowledge of Swift, or have previously taken Swift Programming or the equivalent.