Releases: wabiverse/SwiftUSD
v23.11.7
What's New
- Extend
Pixar.Usd.Stage
with the ability to undergo scene traversal with thePixar.Usd.Stage.traverse()
function and the ability to open existing scenes withPixar.Usd.Stage.open(_:load:)
function. - Resolve duplicate symbols with some
wrapXXX()
python functions due to Swift ignoring the hidden visibility attribute on those symbols. - Initial working ability to create a new
Usd.Stage
withPixar.Usd.Stage.createNew("HelloUSD.usda")
. - Addition of the Pixar.Bundle API to automatically install all plugin resources across USD, use it like the following:
Pixar.Bundle.shared.setup(.resources) // check your console for any coding errors here, if any are found please create a new issue from the link below. Pixar.Usd.Stage.createNew("HelloUSD.usda")
- Correct the paths used to register with
PlugRegistry
when usingPixar.Bundle.shared.setup(.resources)
, please create a new issue if you experience any crashes when creating a new USD stage withPixar.Usd.Stage.createNew("HelloUSD.usda")
, to ensure the configured paths match all systems and edge cases. - Addition of the GfVec3f type from
Pixar.Gf
to the Swift API. - Easily embed Vulkan for applications or libraries that link with SwiftUSD.
- Support successfully building SwiftUSD (in addition to MetaverseKit) with Xcode.
We are now prepared to commence comprehensive development of the Swift API for Pixar USD. Following the successful integration of each module so far, packed with umbrella headers that encompass the entirety of their associated header files.
Our current focus will be on ensuring Linux compatibility and transforming MetaverseKit into a cross-platform Swift package. Additionally, we will collaborate with the SwiftPM team to enhance the capabilities of the package manager. Our goal is to seamlessly incorporate this Package.swift file into the root of the official OpenUSD project, preserving its existing project structure.
What Works
Pixar/Base
- Pixar.Arch
- Pixar.Tf
- Pixar.Gf
- Pixar.Js
- Pixar.Trace
- Pixar.Vt
- Pixar.Work
- Pixar.Plug
Pixar/Usd
- Pixar.Ar
- Pixar.Kind
- Pixar.Sdf
- Pixar.Pcp
- Pixar.Usd
-
Powered by 👾MetaverseKit v1.3.7 🌍.
What's Fixed
-
Provide a workaround related to Xcode's inability to build swift packages that depend on (more than one) .xcframework that contain a
module.modulemap
file to it's headers. -
Provide another Xcode workaround for Xcode's inability to build a target that does not provide object files, because its tooling is hardcoded to expect the output of at least some symbols for all libraries.
-
Resolved a tiny but catastrophic error that was causing the Swift compiler to crash with no error given, the stack trace appeared it was getting hung up somewhere around here, at the following function in Tf.refPtr.h:
// swift hated this.
friend T *get_pointer(TfRefPtr const &p) {
return static_cast<T *>(const_cast<TfRefBase *>(p._refBase));
}
// this got things working seamlessly again.
using DataType = T;
friend DataType *get_pointer(TfRefPtr const &p) {
return static_cast<DataType *>(const_cast<TfRefBase *>(p._refBase));
}
Usage
To use this release of Pixar's USD in your swift project, add the following to your Package.swift file:
dependencies: [
.package(url: "/~https://github.com/wabiverse/SwiftUSD.git", from: "23.11.7"),
]
Note
Zero prerequisites, just run swift build
in your own swift app, game, library, or plugin.

Note
The Wabi Foundation uses SwiftUSD to build the Kraken metaversal creation suite, you can always find an up to date configuration to use for your own Swift project here.
v23.11.6
What's New
- Resolve duplicate symbols with some
wrapXXX()
python functions due to Swift ignoring the hidden visibility attribute on those symbols. - Initial working ability to create a new
Usd.Stage
withPixar.Usd.Stage.createNew("HelloUSD.usda")
. - Addition of the Pixar.Bundle API to automatically install all plugin resources across USD, use it like the following:
Pixar.Bundle.shared.setup(.resources)
- Correct the paths used to register with
PlugRegistry
when usingPixar.Bundle.shared.setup(.resources)
, please create a new issue if you experience any crashes when creating a new USD stage withPixar.Usd.Stage.createNew("HelloUSD.usda")
, to ensure the configured paths match all systems and edge cases. - Addition of the GfVec3f type from
Pixar.Gf
to the Swift API. - Easily embed Vulkan for applications or libraries that link with SwiftUSD.
- Support successfully building SwiftUSD (in addition to MetaverseKit) with Xcode.
We are now prepared to commence comprehensive development of the Swift API for Pixar USD. Following the successful integration of each module so far, packed with umbrella headers that encompass the entirety of their associated header files.
Our current focus will be on ensuring Linux compatibility and transforming MetaverseKit into a cross-platform Swift package. Additionally, we will collaborate with the SwiftPM team to enhance the capabilities of the package manager. Our goal is to seamlessly incorporate this Package.swift file into the root of the official OpenUSD project, preserving its existing project structure.
What Works
Pixar/Base
- Pixar.Arch
- Pixar.Tf
- Pixar.Gf
- Pixar.Js
- Pixar.Trace
- Pixar.Vt
- Pixar.Work
- Pixar.Plug
Pixar/Usd
- Pixar.Ar
- Pixar.Kind
- Pixar.Sdf
- Pixar.Pcp
- Pixar.Usd
-
Powered by 👾MetaverseKit v1.3.7 🌍.
What's Fixed
-
Provide a workaround related to Xcode's inability to build swift packages that depend on (more than one) .xcframework that contain a
module.modulemap
file to it's headers. -
Provide another Xcode workaround for Xcode's inability to build a target that does not provide object files, because its tooling is hardcoded to expect the output of at least some symbols for all libraries.
-
Resolved a tiny but catastrophic error that was causing the Swift compiler to crash with no error given, the stack trace appeared it was getting hung up somewhere around here, at the following function in Tf.refPtr.h:
// swift hated this.
friend T *get_pointer(TfRefPtr const &p) {
return static_cast<T *>(const_cast<TfRefBase *>(p._refBase));
}
// this got things working seamlessly again.
using DataType = T;
friend DataType *get_pointer(TfRefPtr const &p) {
return static_cast<DataType *>(const_cast<TfRefBase *>(p._refBase));
}
Usage
To use this release of Pixar's USD in your swift project, add the following to your Package.swift file:
dependencies: [
.package(url: "/~https://github.com/wabiverse/SwiftUSD.git", from: "23.11.6"),
]
Note
Zero prerequisites, just run swift build
in your own swift app, game, library, or plugin.

Note
The Wabi Foundation uses SwiftUSD to build the Kraken metaversal creation suite, you can always find an up to date configuration to use for your own Swift project here.
v23.11.5
What's New
- Resolve duplicate symbols with some
wrapXXX()
python functions due to Swift ignoring the hidden visibility attribute on those symbols. - Initial working ability to create a new
Usd.Stage
withPixar.Usd.Stage.createNew("HelloUSD.usda")
. - Addition of the Pixar.Bundle API to automatically install all plugin resources across USD, use it like the following:
Pixar.Bundle.shared.setup(.resources)
- Addition of the GfVec3f type from
Pixar.Gf
to the Swift API. - Easily embed Vulkan for applications or libraries that link with SwiftUSD.
- Support successfully building SwiftUSD (in addition to MetaverseKit) with Xcode.
We are now prepared to commence comprehensive development of the Swift API for Pixar USD. Following the successful integration of each module so far, packed with umbrella headers that encompass the entirety of their associated header files.
Our current focus will be on ensuring Linux compatibility and transforming MetaverseKit into a cross-platform Swift package. Additionally, we will collaborate with the SwiftPM team to enhance the capabilities of the package manager. Our goal is to seamlessly incorporate this Package.swift file into the root of the official OpenUSD project, preserving its existing project structure.
What Works
Pixar/Base
- Pixar.Arch
- Pixar.Tf
- Pixar.Gf
- Pixar.Js
- Pixar.Trace
- Pixar.Vt
- Pixar.Work
- Pixar.Plug
Pixar/Usd
- Pixar.Ar
- Pixar.Kind
- Pixar.Sdf
- Pixar.Pcp
- Pixar.Usd
-
Powered by 👾MetaverseKit v1.3.7 🌍.
What's Fixed
-
Provide a workaround related to Xcode's inability to build swift packages that depend on (more than one) .xcframework that contain a
module.modulemap
file to it's headers. -
Provide another Xcode workaround for Xcode's inability to build a target that does not provide object files, because its tooling is hardcoded to expect the output of at least some symbols for all libraries.
-
Resolved a tiny but catastrophic error that was causing the Swift compiler to crash with no error given, the stack trace appeared it was getting hung up somewhere around here, at the following function in Tf.refPtr.h:
// swift hated this.
friend T *get_pointer(TfRefPtr const &p) {
return static_cast<T *>(const_cast<TfRefBase *>(p._refBase));
}
// this got things working seamlessly again.
using DataType = T;
friend DataType *get_pointer(TfRefPtr const &p) {
return static_cast<DataType *>(const_cast<TfRefBase *>(p._refBase));
}
Usage
To use this release of Pixar's USD in your swift project, add the following to your Package.swift file:
dependencies: [
.package(url: "/~https://github.com/wabiverse/SwiftUSD.git", from: "23.11.3"),
]
Note
Zero prerequisites, just run swift build
in your own swift app, game, library, or plugin.

Note
The Wabi Foundation uses SwiftUSD to build the Kraken metaversal creation suite, you can always find an up to date configuration to use for your own Swift project here.
v23.11.4
What's New
- Initial working ability to create a new
Usd.Stage
withPixar.Usd.Stage.createNew("HelloUSD.usda")
. - Addition of the Pixar.Bundle API to automatically install all plugin resources across USD, use it like the following:
Pixar.Bundle.shared.setup(.resources)
- Addition of the GfVec3f type from
Pixar.Gf
to the Swift API. - Easily embed Vulkan for applications or libraries that link with SwiftUSD.
- Support successfully building SwiftUSD (in addition to MetaverseKit) with Xcode.
We are now prepared to commence comprehensive development of the Swift API for Pixar USD. Following the successful integration of each module so far, packed with umbrella headers that encompass the entirety of their associated header files.
Our current focus will be on ensuring Linux compatibility and transforming MetaverseKit into a cross-platform Swift package. Additionally, we will collaborate with the SwiftPM team to enhance the capabilities of the package manager. Our goal is to seamlessly incorporate this Package.swift file into the root of the official OpenUSD project, preserving its existing project structure.
What Works
Pixar/Base
- Pixar.Arch
- Pixar.Tf
- Pixar.Gf
- Pixar.Js
- Pixar.Trace
- Pixar.Vt
- Pixar.Work
- Pixar.Plug
Pixar/Usd
- Pixar.Ar
- Pixar.Kind
- Pixar.Sdf
- Pixar.Pcp
- Pixar.Usd
-
Powered by 👾MetaverseKit v1.3.7 🌍.
What's Fixed
-
Provide a workaround related to Xcode's inability to build swift packages that depend on (more than one) .xcframework that contain a
module.modulemap
file to it's headers. -
Provide another Xcode workaround for Xcode's inability to build a target that does not provide object files, because its tooling is hardcoded to expect the output of at least some symbols for all libraries.
-
Resolved a tiny but catastrophic error that was causing the Swift compiler to crash with no error given, the stack trace appeared it was getting hung up somewhere around here, at the following function in Tf.refPtr.h:
// swift hated this.
friend T *get_pointer(TfRefPtr const &p) {
return static_cast<T *>(const_cast<TfRefBase *>(p._refBase));
}
// this got things working seamlessly again.
using DataType = T;
friend DataType *get_pointer(TfRefPtr const &p) {
return static_cast<DataType *>(const_cast<TfRefBase *>(p._refBase));
}
Usage
To use this release of Pixar's USD in your swift project, add the following to your Package.swift file:
dependencies: [
.package(url: "/~https://github.com/wabiverse/SwiftUSD.git", from: "23.11.3"),
]
Note
Zero prerequisites, just run swift build
in your own swift app, game, library, or plugin.

Note
The Wabi Foundation uses SwiftUSD to build the Kraken metaversal creation suite, you can always find an up to date configuration to use for your own Swift project here.
v23.11.3
What's New
- Addition of the GfVec3f type from
Pixar.Gf
to the Swift API. - Easily embed Vulkan for applications or libraries that link with SwiftUSD.
- Support successfully building SwiftUSD (in addition to MetaverseKit) with Xcode.
We are now prepared to commence comprehensive development of the Swift API for Pixar USD. Following the successful integration of each module so far, packed with umbrella headers that encompass the entirety of their associated header files.
Our current focus will be on ensuring Linux compatibility and transforming MetaverseKit into a cross-platform Swift package. Additionally, we will collaborate with the SwiftPM team to enhance the capabilities of the package manager. Our goal is to seamlessly incorporate this Package.swift file into the root of the official OpenUSD project, preserving its existing project structure.
What Works
Pixar/Base
- Pixar.Arch
- Pixar.Tf
- Pixar.Gf
- Pixar.Js
- Pixar.Trace
- Pixar.Vt
- Pixar.Work
- Pixar.Plug
Pixar/Usd
- Pixar.Ar
- Pixar.Kind
- Pixar.Sdf
- Pixar.Pcp
- Pixar.Usd
-
Powered by 👾MetaverseKit v1.3.7 🌍.
What's Fixed
-
Provide a workaround related to Xcode's inability to build swift packages that depend on (more than one) .xcframework that contain a
module.modulemap
file to it's headers. -
Provide another Xcode workaround for Xcode's inability to build a target that does not provide object files, because its tooling is hardcoded to expect the output of at least some symbols for all libraries.
-
Resolved a tiny but catastrophic error that was causing the Swift compiler to crash with no error given, the stack trace appeared it was getting hung up somewhere around here, at the following function in Tf.refPtr.h:
// swift hated this.
friend T *get_pointer(TfRefPtr const &p) {
return static_cast<T *>(const_cast<TfRefBase *>(p._refBase));
}
// this got things working seamlessly again.
using DataType = T;
friend DataType *get_pointer(TfRefPtr const &p) {
return static_cast<DataType *>(const_cast<TfRefBase *>(p._refBase));
}
Usage
To use this release of Pixar's USD in your swift project, add the following to your Package.swift file:
dependencies: [
.package(url: "/~https://github.com/wabiverse/SwiftUSD.git", from: "23.11.3"),
]
Note
Zero prerequisites, just run swift build
in your own swift app, game, library, or plugin.

Note
The Wabi Foundation uses SwiftUSD to build the Kraken metaversal creation suite, you can always find an up to date configuration to use for your own Swift project here.
v23.11.2
What's New
- Addition of the GfVec3f type from
Pixar.Gf
to the Swift API. - Easily embed Vulkan for applications or libraries that link with SwiftUSD.
We are now prepared to commence comprehensive development of the Swift API for Pixar USD. Following the successful integration of each module so far, packed with umbrella headers that encompass the entirety of their associated header files.
Our current focus will be on ensuring Linux compatibility and transforming MetaverseKit into a cross-platform Swift package. Additionally, we will collaborate with the SwiftPM team to enhance the capabilities of the package manager. Our goal is to seamlessly incorporate this Package.swift file into the root of the official OpenUSD project, preserving its existing project structure.
What Works
Pixar/Base
- Pixar.Arch
- Pixar.Tf
- Pixar.Gf
- Pixar.Js
- Pixar.Trace
- Pixar.Vt
- Pixar.Work
- Pixar.Plug
Pixar/Usd
- Pixar.Ar
- Pixar.Kind
- Pixar.Sdf
- Pixar.Pcp
- Pixar.Usd
-
Powered by 👾MetaverseKit v1.3.4 🌍.
What's Fixed
-
Provide a workaround related to Xcode's inability to build swift packages that depend on (more than one) .xcframework that contain a
module.modulemap
file to it's headers. -
Resolved a tiny but catastrophic error that was causing the Swift compiler to crash with no error given, the stack trace appeared it was getting hung up somewhere around here, at the following function in Tf.refPtr.h:
// swift hated this.
friend T *get_pointer(TfRefPtr const &p) {
return static_cast<T *>(const_cast<TfRefBase *>(p._refBase));
}
// this got things working seamlessly again.
using DataType = T;
friend DataType *get_pointer(TfRefPtr const &p) {
return static_cast<DataType *>(const_cast<TfRefBase *>(p._refBase));
}
Usage
To use this release of Pixar's USD in your swift project, add the following to your Package.swift file:
dependencies: [
.package(url: "/~https://github.com/wabiverse/SwiftUSD.git", from: "23.11.2"),
]
Note
Zero prerequisites, just run swift build
in your own swift app, game, library, or plugin.

Note
The Wabi Foundation uses SwiftUSD to build the Kraken metaversal creation suite, you can always find an up to date configuration to use for your own Swift project here.
v23.11.1
What's New
We are now prepared to commence comprehensive development of the Swift API for Pixar USD. Following the successful integration of each module so far, packed with umbrella headers that encompass the entirety of their associated header files.
Our current focus will be on ensuring Linux compatibility and transforming MetaverseKit into a cross-platform Swift package. Additionally, we will collaborate with the SwiftPM team to enhance the capabilities of the package manager. Our goal is to seamlessly incorporate this Package.swift file into the root of the official OpenUSD project, preserving its existing project structure.
An additional change has been provided to this release which easily embeds Vulkan for applications or libraries that link with SwiftUSD.
What Works
Pixar/Base
- Pixar.Arch
- Pixar.Tf
- Pixar.Gf
- Pixar.Js
- Pixar.Trace
- Pixar.Vt
- Pixar.Work
- Pixar.Plug
Pixar/Usd
- Pixar.Ar
- Pixar.Kind
- Pixar.Sdf
- Pixar.Pcp
- Pixar.Usd
-
Powered by 👾MetaverseKit v1.3.4 🌍.
What's Fixed
-
Resolved a tiny but catastrophic error that was causing the Swift compiler to crash with no error given, the stack trace appeared it was getting hung up somewhere around here, at the following function in Tf.refPtr.h:
// swift hated this.
friend T *get_pointer(TfRefPtr const &p) {
return static_cast<T *>(const_cast<TfRefBase *>(p._refBase));
}
// this got things working seamlessly again.
using DataType = T;
friend DataType *get_pointer(TfRefPtr const &p) {
return static_cast<DataType *>(const_cast<TfRefBase *>(p._refBase));
}
Usage
To use this release of Pixar's USD in your swift project, add the following to your Package.swift file:
dependencies: [
.package(url: "/~https://github.com/wabiverse/SwiftUSD.git", from: "23.11.1"),
]
Note
Zero prerequisites, just run swift build
in your own swift app, game, library, or plugin.

Note
The Wabi Foundation uses SwiftUSD to build the Kraken metaversal creation suite, you can always find an up to date configuration to use for your own Swift project here.
v23.11.0
What's New
We are now prepared to commence comprehensive development of the Swift API for Pixar USD. Following the successful integration of each module so far, packed with umbrella headers that encompass the entirety of their associated header files.
Our current focus will be on ensuring Linux compatibility and transforming MetaverseKit into a cross-platform Swift package. Additionally, we will collaborate with the SwiftPM team to enhance the capabilities of the package manager. Our goal is to seamlessly incorporate this Package.swift file into the root of the official OpenUSD project, preserving its existing project structure.
What Works
Pixar/Base
- Pixar.Arch
- Pixar.Tf
- Pixar.Gf
- Pixar.Js
- Pixar.Trace
- Pixar.Vt
- Pixar.Work
- Pixar.Plug
Pixar/Usd
- Pixar.Ar
- Pixar.Kind
- Pixar.Sdf
- Pixar.Pcp
- Pixar.Usd
-
Powered by 👾MetaverseKit v1.3.4 🌍.
What's Fixed
-
Resolved a tiny but catastrophic error that was causing the Swift compiler to crash with no error given, the stack trace appeared it was getting hung up somewhere around here, at the following function in Tf.refPtr.h:
// swift hated this.
friend T *get_pointer(TfRefPtr const &p) {
return static_cast<T *>(const_cast<TfRefBase *>(p._refBase));
}
// this got things working seamlessly again.
using DataType = T;
friend DataType *get_pointer(TfRefPtr const &p) {
return static_cast<DataType *>(const_cast<TfRefBase *>(p._refBase));
}
Usage
To use this release of Pixar's USD in your swift project, add the following to your Package.swift file:
dependencies: [
.package(url: "/~https://github.com/wabiverse/SwiftUSD.git", from: "23.11.0"),
]
Note
Zero prerequisites, just run swift build
in your own swift app, game, library, or plugin.

Note
The Wabi Foundation uses SwiftUSD to build the Kraken metaversal creation suite, you can always find an up to date configuration to use for your own Swift project here.
v23.8.20
What's New
-
This release moves SwiftUSD along with the addition of modules from the Pixar/Usd package.
Pixar/Base
- Pixar.Arch
- Pixar.Tf
- Pixar.Gf
- Pixar.Js
- Pixar.Trace
- Pixar.Vt
- Pixar.Work
- Pixar.Plug
Pixar/Usd
- Pixar.Ar
- Pixar.Kind
- Pixar.Sdf
- Pixar.Pcp 🎉.
- Pixar.Usd 🎉🎉.
-
Powered by 👾MetaverseKit v1.3.4 🌍.
What's Fixed
-
Resolved what SwiftPM considers to be "unstable versioning" in some community packages, which often causes headaches for the consumers of packages which depend on packages with "unstable versioning".
-
Added a hotfix patch workaround for app bundles failing to compile due to some metal shader compilation errors in MXResources.
-
Resolved an issue where static initializers would lead to duplicate linker symbols because Pixar modules need to define their respective module name and link against the monolithic target instead of the individual libraries.
Usage
To use this release of Pixar's USD in your swift project, add the following to your Package.swift file:
dependencies: [
.package(url: "/~https://github.com/wabiverse/SwiftUSD.git", from: "23.8.20"),
]
Note
Zero prerequisites, just run swift build
in your own swift app, game, library, or plugin.

Note
The Wabi Foundation uses SwiftUSD to build the Kraken metaversal creation suite, you can always find an up to date configuration to use for your own Swift project here.
v23.8.19
What's New
-
This release moves SwiftUSD along with the addition of modules from the Pixar/Usd package.
Pixar/Base
- Pixar.Arch
- Pixar.Tf
- Pixar.Gf
- Pixar.Js
- Pixar.Trace
- Pixar.Vt
- Pixar.Work
- Pixar.Plug
Pixar/Usd
- Pixar.Ar 🎉.
- Pixar.Kind 🎉.
- Pixar.Sdf 🎉.
-
Powered by 👾MetaverseKit v1.3.4 🌍.
What's Fixed
-
Resolved what SwiftPM considers to be "unstable versioning" in some community packages, which often causes headaches for the consumers of packages which depend on packages with "unstable versioning".
-
Added a hotfix patch workaround for app bundles failing to compile due to some metal shader compilation errors in MXResources.
-
Resolved an issue where static initializers would lead to duplicate linker symbols because Pixar modules need to define their respective module name and link against the monolithic target instead of the individual libraries.
Usage
To use this release of Pixar's USD in your swift project, add the following to your Package.swift file:
dependencies: [
.package(url: "/~https://github.com/wabiverse/SwiftUSD.git", from: "23.8.19"),
]
Note
Zero prerequisites, just run swift build
in your own swift app, game, library, or plugin.

Note