Pixar developed USD, and it should really help to standardize 3D tech. In particular, I hope that USD can help make it easier to build high-performance rendering tech for a variety of applications that might not receive so much attention from the 3D graphics people (this is one thing video games do quite well, from a CS approach!)
Having some big names behind the standard should help, but of course, the proof will be in the pudding as to how meaningful their contributions are, and how much their involvement pushes the adoption of the standard.
I don't know. You can stream Unity to mobile with the service I've authored (https://appmana.com/watch/theheretic for an example).
It's hard so say what the input latency is for the head demo you shared. I guess about 100ms, which is totally fine for a mostly static scene with simple orbit controls.
However I also tried out the Lebron James vs Father Time game. Input latency is over 1 second so it's not playable. Any time I touch the screen it freezes for a second then jumps to the new location.
You created Appmana?
> Just order out bro.
For large scenes/models, the normal .usd binary/compressed version is often used for efficiency reasons (and proper round-tripping of float values for xforms, etc), but you can convert between the two with the 'usdcat' util and the python/c++ apis for debugging.
I've been so out of the loop it's insane. I learned not long ago they no longer use the original Renderman Shading Language.
It’s perfect for my needs as an educator and I know just enough to be able to show other educators how to create and deploy their own learning materials.
Here's a hello world for X3D: https://www.web3d.org/x3d/content/examples/Basic/X3dSpecific...
And here's a hello world for OpenUSD: https://www.openusd.org/release/tut_helloworld.html#viewing-...
Although X3D is a bit more verbose, a lot of parallels can be drawn between the two, 20 years apart.
All the plugins that used to be needed to display VRML online are gone now, but you can still display VRML 2.0/97 files online using JavaScript library called X_ITE [1]. I used it recently to view some old VRML I had saved but could no longer view. Works great.
What I wanted (but never built) was a semantic file format, something like:
<room style="square" id="room1">
<wall direction=north>
<picture frame="modern" src="http://foo.com/fancycat.jpg" />
</wall>
<wall direction=south>
<door room="room2" />
</wall>
</room>The examples, demos, and development experience are great, but since it's based on web tech hasn't made a big splash yet with the bigger 3D content businesses.
You can actually render a gltf as a JSX tree too with gltfjsx: https://github.com/pmndrs/gltfjsx
It also used the PHANToM for haptic feedback and used a 3D stereoscopic display
https://www.researchgate.net/figure/A-Reachin-Display-equipp...
The company H3D has built something similar.
That was my initial thought also.
> Although X3D is a bit more verbose
The USDA file format reminds me a lot of the pre-XML VRML 97 file format, with the curly bracket C-style syntax, #comments, and 'def' everywhere.
https://openusd.org/release/spec_usdpreviewsurface.html#usd-...
If, essentially, they are speaking the same language as humans, this curation becomes trivial and the cost of incorporating AI becomes purely artistic in nature rather than a technical or organizational cost. There will be no downside for a 3D artist to tell the servers "render this scene, but generate a few different versions if you finish before I get back to work tomorrow" in the worst scenario it is electricity used, in the average scenario it can inspire new ideas, and in the ideal scenario it creates something usable.
It's just another 3D file format, calm down ;)
There have been quite a few "standard" 3D file formats in the last 30 years (COLLADA, FBX, glTF, to name a few of the more popular ones, check here for a more complete list: https://github.com/assimp/assimp/tree/master/code/AssetLib), USD isn't anything special except that Apple is involved (which means you probably shouldn't put too much hope into the "Open" prefix, or at least expect that Apple jumps ship as soon as the first cracks start to show in the "alliance").
If anyone finds an AI that can do reasonable SVGs, please do let me know.
Although its functionality is way beyond a solo hobbyist's needs, the whole time I was thinking about how cool it is to have a standardized format, and how much it must benefit teams working together on a project.
It's similar to SideFX and Houdini, which is an extremely common way to author USD scenes. SideFX isn't a member either, just a downstream user.
I feel like there's never been a 3D counterpart to standards like Midi for audio.
Even Autodesk is backing USD so presumably even they have given up on the long term prospects of FBX.
USD is to scene authoring what FBX is to 3D object authoring (though it also can do 3D object authoring).
USD adds complex shading, lighting and cameras, state-of-the-art multi-level instancing workflows, and most importantly, a very flexible way of referencing/layering assets and performing per-scene or per-shot overrides, plus tools (payloads) that enable extremely large scenes to be opened and authored in minutes instead of hours.
It really is pretty groundbreaking and has a ton of momentum.
The other hugely helpful component is USD has a very high-performance rendering architecture written in C++ called "Hydra" that allows for both interactive and non-interactive rendering backends to be developed and switched between at runtime. I can't think of a single commercial renderer that either hasn't already built a Hydra delegate, or isn't planning to.
It's just a simple text file but it supports 3D objects and materials and is supported by pretty much everything. A complete novice can write code to generate it.
Edit: it’s actually not just meshes that are supported. But the usual CAD/CAM surfaces are still not supported.
This is very litle about manufacturing, except you can of course always convert a model to 3D mesh for visualization etc. That is quite common, and in that workflow usd is as good as any other ’mesh plus material’ format.
The output of engineering design software usually is: 1) Shop drawings for building the whole thing or sub-assembly 2) CNC machine compatible presentation 3) 3D meshes for visualization 4) conversion to some other engineering format
You can always more or less export a 3D mesh, wich can then be 3D printed. So - printing, yes. But adds nothing to any other visua format in that workflow (stl,obj,…).
https://openusd.org/release/api/usd_vol_page_front.html
So it sounds like it could be possible to use USD to convey data to a 3D printer eventually once the printers have loaders for the new format.
Different apps had different tolerances for correctness leading to that mishmash.
That’s not to say USD support can’t be improved, but that post is actually a bad example.
Apple's USDZ viewer didn't support true independent second UV channels and multiple texture transforms per material, rather it makes a bunch of assumptions that are much more restrictive than the USD format.
That is why that example is messed up I understand.
For example these caveats which screw things up tremendously:
https://developer.apple.com/documentation/realitykit/validat...
"RealityKit supports a single UV Set in iOS 15 and macOS 12. In iOS 16 and macOS 13, it supports two."
"RealityKit supports only a single packed texture per material. You can, however, reference multiple scalar channels within a single texture."
"RealityKit supports USD texture scaling except for normal map textures."
"RealityKit supports a single UsdTransform2d per material. If a material contains multiple UsdTransform2D instances, the renderer will use the first one it finds."
“Unity is committed to the continued adoption of USD standards. AOUSD is an important step forward to delivering a common foundation for content creation, collaboration and interoperability. We are excited to be involved in the alliance and to help shape the future of USD.” - Allan Poore, Senior Vice President, Unity Wētā Tools
"Epic Games recognizes the significance of USD in establishing standards for 3D content, virtual worlds, and the open metaverse. Pixar has demonstrated exceptional leadership in the open source community over the last decade, and we are excited to witness the formation of the Alliance for OpenUSD, which will propel the technology to new levels of standardization." - Marc Petit, VP Unreal Engine Ecosystem, Epic Games
USD has the most traction in the offline rendering world, but it's creeping into gamedev workflows too as a replacement for FBX.
Larimer theorized bitUSD in 2013. [1]
[0] https://openusd.org/release/intro.html#heritage-of-usd-at-pi...
[1] https://www.steem.center/index.php?title=BitShares:Proposal_...
there it is https://allaboutstevejobs.com/videos/misc/nextstep_3_demo_19...
"one of the other things that we've done with NeXTSTEP release 3.0 is we've actually built in some three dimensional graphics. We have built in Pixar's RenderMan photorealistic rendering software, which can produce the most photorealistic rendered images from 3D models. In addition to that, we've built in some real time 3D graphics, interactive RenderMan. We've taken photorealistic RenderMan and made a version that will run interactively on the screen."
OpenUSD is Steve Jobs laughing from the grave, once again he got his way.
There should be several hundreds active corporate alliances now.
Who chases the sponsors for cash, who books the events, who collects the member fees, who creates that crappy member web site?
I'm just curious :)
I did also happen to find small comment about the name from an interview:
> Just a little fun an anecdote, the original name ... And we were looking at the extension for the file. Technically when I do something that says layered scene description. But the extension LSD we thought it was a little too trippy, so we decided that we couldn't go in that route. So that's why the universal came, because it feels a little too far, but technically it was supposed to be a layered scene description. But anyway, we couldn't use that.
https://cesium.com/open-metaverse-podcast/the-genesis-of-usd...
What information does the OpenUSD format carry?
It seems like a great format so far, but I'm skeptical based on Adobe, Apple, Autodesk track records for "open" formats.
"Well-known file formats for interchange in the VFX industry like OBJ, FBX, and Alembic primarily deal with interchanging flat/cached geometry, with no facility for assembling assets or editing the data directly. USD does serve the role of an “interchange file format,” more comprehensively than previous public efforts, because it already interchanges not only geometry, but also shading/materials, lights, rendering, linear-blend skinning and blend-shape animation, rigid body physics, and is extensible along numerous axes."
https://www.amd.com/en/technologies/radeon-prorender ("A Pixar® USD™ Hydra™ render delegate...")
They already made a universal scene description standard.
USD has more layering and referencing capabilities
Apple has been preparing for the VisionPro for a long time. LIDAR makes zero sense on a smartphone, but was foundational. ARKit was foundational. A lot of their scene technologies were clearly targeting a headset, and smartphones were just a temporary kickoff.
(I mean as a universally accepted format that just works everywhere, not literally a JPEG on H.264 inside a scene)
Both of those are generally considered distribution formats, where my understanding is that USD is an authoring/interchange format. In that case, somewhat more analogous file formats might include TIFF and PSD for images. or Motion-JPEG and ProRes for video.
Or maybe glTF and other interchange formats already satisfy that need.
"Well-known file formats for interchange in the VFX industry like OBJ, FBX, and Alembic primarily deal with interchanging flat/cached geometry, with no facility for assembling assets or editing the data directly. USD does serve the role of an “interchange file format,” more comprehensively than previous public efforts, because it already interchanges not only geometry, but also shading/materials, lights, rendering, linear-blend skinning and blend-shape animation, rigid body physics, and is extensible along numerous axes."
Basically, glft is primarily designed for sharing individual 3D geometry, while USD is designed for sharing whole 3D scenes and is designed in a way that lots of different departments can collaborate on different parts of the same scene at the same time.
Additionally Gltf only became a thing thanks to Microsoft changes that originated Gltf 2.0. Initially it was designed as a format specifically for WebGL.
It doesn't fit their displayed principles/ethics/concept/mission from the past 30 years whatsoever, so i'm probably just not clever enough to see what their scheme is yet.
Official repo: [1]
Current Spec: [2]
WIP for DIN Spec release: [3]
[1] https://github.com/mvrdevelopment/spec/
[2] https://github.com/mvrdevelopment/spec/blob/main/mvr-spec.md
BIM requirements are very different to 3D graphics and animation requirements.
It allows splitting the data representation from the render pipeline.
On the data side, OpenUSD can support BIM just fine:
• Can store the geo representation, will render as long is there is a plugin written to render it (for systems that don't, the geo is still available to query) • Can store additional information either on the same file, referenced in a different referenced file (ex.: In-wall pipe layouts can be referenced from the main construction file to keep it small) • Can 'layer' additional information and resolve conflicts according to a well-defined resolution method, allowing multiple authors.
Since its an existing standard hasn't this already been done, at least to a decent extent?
Albeit parts of the implementation are well defined enough that they are a good basis for a specification, many behaviour specifics are only existent in code.
A specification would need to be implementation independent.
Disclaimer: I worked for Allegorithmic and now work for Adobe.
No thanks.
This is just a power play by all the companies most well known for lock-in and monopoly-like behavior.
This is not a good thing.
I left https://news.ycombinator.com/item?id=36962294 out because it has actual interesting information about the project.
As opposed to the United States dollar that became public after 2013?
I mean, seriously: OpenUSD sounds like a cryptocurrency "stablecoin" token name.
It’s ok for jargon and acronyms to be confusing to people who are not at all in the field.
USD is the US Dollar currency everywhere. Even americans who have dabbled with forex know. Apparently though, no one in the management of 5 large american tech companies.
Will they sue every currency exchange shop in the world for using their acronym?
Edit: and how are they going to make their format popular when all search engines are just going to give them the currency converter pages?
Everyone working in 3D content rendering will know what OpenUSD is, and then whenever it gets exposed to broader audiences, we'll get small confusion from people who don't work in 3D rendering.
They want closed systems as much as possible, only open standards etc. when forced to do so, because of course they want all the business and all the money. So USD probably good, but they will wield it against competitors (are there any anymore?) as much as possible.
IMNSHO. Sorry where it offends.
Always spell out acronyms upon first use in any discrete communication.
The reason this is so apt in government work is because workers become so familiar with lazily throwing around acronyms that they forget what those letters represent. I've witnessed first hand a person confidently throwing around acronyms as if they knew all about it, only to find out that they knew pretty much nothing about it aside from the letters that comprise the acronym.
In the fine article above, the acronym was clarified upon first use, and so all is well:
"Alliance to foster global collaboration for Universal Scene Description (USD)"
UNISD? UNIversal Scene Description
At least better than Universal Scene Specific (USS)
> Universal Scene Description (OpenUSD) is an extensible framework and ecosystem for describing, composing, simulating, and collaborating within 3D worlds. Originally developed by Pixar Animation Studios, USD, also referred to as OpenUSD, is more than a file format. It’s an open-source 3D scene description used for 3D content creation and interchange among different tools. [1]
It's so easy to fix... why not call it, say, a "Universal Scene Description Package" (USDP) or a "3D Scene Description" (3DSD) or "Layered Universal Scene Description" (LUSD) or "Modern Scene Description Format" (MSDF) or "Universal Scene Description Format" (USDF) or "Kronos Scene Description" (KSD) or "Kronos Universal Scene Description" (KUSD) or...
bullshit
Sidenote- OpenUSD sounds like a crypto currency.
This is exactly what I thought at first too. But then realized it's August 1st and not April..
But in terms of "common format which different systems can read", then yes, sure.