v26.8.3 | OpenUSD v26.08 #44
Pinned
furbytm
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
SwiftUSD v26.8.3
OpenUSD v26.08, apple/SwiftUsd v8.0.0, HydraKit viewport picking with selection outline overlays on Metal + hotkeys
Changelog
Changes
F), select-all (A), deselect-all (Alt+A), panning (Shift+MMB), etc.SWIFTUSD_BUILD_FROM_SOURCE=1is required until some changes are upstreamed into apple/SwiftUsd to support it, namely, exposingUsdImagingGL.Engine.GetAovRenderBuffer(_:)to Swift (apple/SwiftUsd issue#40), and patching theHgiMetalgraphics pipeline (like this) in a PR to OpenUSD so that it doesn't fail pipeline validation by gating against enabling blending for integer render target formats (e.g.primId/instanceIdid AOVs) which are not blendable in Metal.Rolling changes since v26.8.2
HioOpenVDBplugin since Xcode and Swift toolchains differ in their strictness on imports within namespaces, once OpenVDB imports are removed from within namespaces in MetaverseKit, we can add it back in.Hydra.RenderEngine:waitUntilSceneReady()- Populates the stage off the main thread if this hasn't already started, then returns once population is complete. Safe to call from multiple places - population only actually runs once, backed by a single memoized task. (This is useful for knowing when to present theHydra.Viewportwith ex.ProgressView("Loading Stage")subbing in until scene population is complete).poll(every:onChange)- PollsPollForAsynchronousUpdates()at a fixed interval, callingonChangeon the main actor whenever the engine reports the scene changed. RequiresallowAsynchronousSceneProcessing: trueto have been passed at engine construction - otherwise this always returnsfalseandonChangeis never called, with no error to indicate why. Cancel the enclosingTaskto stop polling.UsdImagingGLEngineconstructor params toHydra.RenderEngine, so users can override the previously hardcoded defaults:Rolling changes since v26.8.1
render()call) off of the main thread, so that application UI's that compose withHydra.Viewportdo not freeze during full stage population, which was especially noticeable when populating large production USD scenes.colorCorrectionModeparameter which defaults to.sRGBforHydra.RenderEngine(stage:colorCorrectionMode:)to support color management features such as.openColorIOconfigurations, this is usually used in tandem with the following Swift code:devbranch, as of commitc32a446.Commits
Rolling changes since v26.5.2
OpenUSDKit, a unified cross-platform Swift API for OpenUSD. It is a direct replacement for thePixarUSDtarget.HydraKit, a composable Hydra viewport with SwiftCrossUI:OpenUSDKitand brings precompiled binaries for Darwin platforms by default, use the environment variableSWIFTUSD_BUILD_FROM_SOURCE=1if you prefer to build from source and match the behavior on all other platforms (Android, Linux, and Microsoft Windows).Thank you
Usage
To use this release of USD in your swift project, add the following to the dependencies section in your Package.swift file:
Linux
For Linux, these are the only dependencies required, as MetaverseKit provides everything else.
Tip
If you are on a distro like Ubuntu there is a good chance you already have most of these installed.
All reactions