-
Conheça o USDKit e as novidades no OpenUSD
Explore os avanços mais recentes no suporte a Universal Scene Description (USD) nas plataformas da Apple, incluindo o USDKit baseado em Swift, a nova API de pré-visualização espacial e recursos aprimorados para web espacial. Confira como as últimas atualizações do padrão OpenUSD adicionam suporte a acessibilidade, Gaussian splats e geometria comprimida. Também vamos analisar as ferramentas expandidas para edição e renderização de USD na Pré-visualização no Mac, mostrando como você pode aproveitar esses recursos nos seus apps.
Capítulos
- 0:07 - Introdução
- 0:53 - OpenUSD: Fundação da Indústria e Novos Padrões
- 2:51 - Splats Gaussianos e Campos de Partículas
- 3:47 - Apresentando USDKit
- 4:06 - Edição 3D no Preview e Novos Renderizadores
- 5:42 - Visualização Espacial: Colaboração em tempo real entre Mac e Vision Pro
- 6:25 - USD na Web: A tag Model do Safari
- 6:57 - USDKit: Conceitos-chave e tutorial da API Swift
- 10:05 - Metadados de Acessibilidade em USD
- 11:19 - Compressão de Assets: Malhas e Texturas
- 12:36 - Caminhos de Integração: USDKit, SwiftUSD e OpenUSD
- 13:24 - Próximas etapas
Recursos
Vídeos relacionados
WWDC26
-
Buscar neste vídeo...
-
-
8:12 - Opening a USD Stage
import USDKit // Create a new empty in-memory stage let stage = USDStage() // Open a stage from a file on disk let url = URL(fileURLWithPath: "/ALab/entry.usda") let stage = try USDStage.open(url) -
8:44 - Traversing the Stage Hierarchy
// Traverse all prims looking for the oscilloscope for prim in stage.descendants { if prim.name == "scope" { // There it is! 🔬 } } // It wasn't there — define a new Xform prim for it let scope = stage.definePrim(at: "/World/scope", type: “Xform")) // Add a file reference to the prim try scope.references.add(“/ALab/assets/scope.usda”) -
9:36 - Moving a Prim with a Transform Operation
// Creates xformOp:translate and updates xformOpOrder automatically scope.addTransformOperation(type: .translate) scope["xformOp:translate", as: USDValue.Vec3d.self] = [2.5, 0.0, -1.0] -
10:42 - Applying Accessibility Metadata
// Apply the multi-apply AccessibilityAPI schema with instance name "default" try scope.applyAPISchema("AccessibilityAPI", instanceName:"default") // Create the label and description attributes scope.makeAttribute(named: "accessibility:default:label", as: .string) scope.makeAttribute(named: "accessibility:default:description", as: .string) // Set their values scope["accessibility:default:label", as: String.self] = "Oscilloscope" scope["accessibility:default:description", as: String.self] = "Vintage signal analyzer with a 3D wireframe display, topped by a color bar test monitor" -
12:05 - Exporting with Mesh and Texture Compression
let output = URL(fileURLWithPath: "/ALab/alab_compressed.usdz") // Export the stage as a USDZ package try stage.exportPackage( to: output, options: [ .preferSmallTextureFiles(quality: .standard), // compress textures .preferSmallMeshFiles // compress mesh geometry ] )
-