USD Suite - Replace 3d rendering engine with Hydra

Moderator: Chad

User avatar
theotheo
Fusionista
Posts: 318
Joined: Thu Aug 07, 2014 8:35 am
Answers: 2
Been thanked: 21 times

USD Suite - Replace 3d rendering engine with Hydra

#1

Post by theotheo » Sat Nov 09, 2019 3:51 am

USD is clearly the future of interchange formats for CG and VFX. SideFX's impressive commitment to it via H18/Solrais, Autodesk joining in on the fun with Anima lLogic and its active push is going to make some serious waves in the community.

Fusion really could use an update to its now ageing 3d toolset, especially on the rendering and shading side of things. Luckily USD caters to not just the file format and geometry but also how rendering are handled.

USD targets its own rendering scheme via Hydra, which is the interface to visualizing USD scene graphs / data. A Hydra Delegate is a renderer that supports Hydra, for instance Renderman, Redshift, 3Delight and Radeon Pro Render has delegates (soon) available for Hydra. Which means if a software supports viewport rendering via Hydra you can instantly render with any one of the renderers that support it.

Feature request:
- Native USD import and data manipulation. (nodes are already a perfect way of visualizing it)
- Full USD authoring.
- Rebuild the viewport to be based on Hydra
- Integrate Radeon Pro Render as a default render delegate. (OpenCL, GPU/CPU, Vulkan, Metal, Path tracing etc all supported) instead of the current OGL render.

This way they dont have to create a new renderer by them selves, they instantly get access to 3rd party renderers almost for free via Hydra, and can author USD files directly.

What NOT to do:
- Treat USD as just another IO format to support. You'll be missing out on the whole point of the format.

USD with Hydra will allow us to view the exact same data and renderings in Houdini, Maya, Fusion and whatever that supports USD and Hydra. Its an incredible flexible proposal.

Thoughts ?

Relevant links

USD Primer:


Solaris / USD in Houdini reveal


Houdini18 Launch - USD Solaris details


Radeon Pro Render USD support
Last edited by theotheo on Sat Nov 09, 2019 4:03 am, edited 2 times in total.

User avatar
AndrewHazelden
Fusionator
Posts: 1476
Joined: Fri Apr 03, 2015 3:20 pm
Answers: 6
Location: West Dover, Nova Scotia, Canada
Been thanked: 76 times
Contact:

Re: USD Suite - Replace 3d rendering engine with Hydra

#2

Post by AndrewHazelden » Sat Nov 09, 2019 3:53 am

theotheo wrote:
Sat Nov 09, 2019 3:51 am
USD with Hydra will allow us to view the exact same data and renderings in Houdini, Maya, Fusion and whatever that supports USD and Hydra. Its an incredible flexible proposal.

Thoughts ?
Hail Hydra? :)

User avatar
Midgardsormr
Fusionator
Posts: 1270
Joined: Wed Nov 26, 2014 8:04 pm
Answers: 5
Location: Los Angeles, CA, USA
Been thanked: 106 times
Contact:

Re: USD Suite - Replace 3d rendering engine with Hydra

#3

Post by Midgardsormr » Sat Nov 09, 2019 7:58 am

+15 (the number of artists currently employed at Muse—I feel confident in speaking for all of us!)

User avatar
SirEdric
Fusionator
Posts: 1995
Joined: Tue Aug 05, 2014 10:04 am
Answers: 4
Real name: Eric Westphal
Been thanked: 146 times
Contact:

Re: USD Suite - Replace 3d rendering engine with Hydra

#4

Post by SirEdric » Sat Nov 09, 2019 12:46 pm

+10...:-)

User avatar
SecondMan
Site Admin
Posts: 3678
Joined: Thu Jul 31, 2014 5:31 pm
Answers: 6
Location: Vancouver, Canada
Been thanked: 125 times
Contact:

Re: USD Suite - Replace 3d rendering engine with Hydra

#5

Post by SecondMan » Sat Nov 09, 2019 4:05 pm

+3988 (give or take a handful of double accounts)

Kidding aside, USD is being adopted very fast all over the VFX industry and beyond. It's a game changer in terms of speed, flexibility and consistency. To see Fusion adopt this would be sure to turn a lot of heads.

Totally agree that this is not about having an importer/exporter. That won't even scratch the surface of its potential.

User avatar
AndrewHazelden
Fusionator
Posts: 1476
Joined: Fri Apr 03, 2015 3:20 pm
Answers: 6
Location: West Dover, Nova Scotia, Canada
Been thanked: 76 times
Contact:

Re: USD Suite - Replace 3d rendering engine with Hydra

#6

Post by AndrewHazelden » Sat Nov 09, 2019 4:10 pm

SecondMan wrote:
Sat Nov 09, 2019 4:05 pm
Totally agree that this is not about having an importer/exporter. That won't even scratch the surface of its potential.
Someone should tell that to Autodesk's dev team who is married to viewport 2.0, and the Scene Assembly based USD implementation that can't export nested USD hierarchies. :roll:
Last edited by AndrewHazelden on Sat Nov 09, 2019 4:21 pm, edited 1 time in total.

User avatar
SecondMan
Site Admin
Posts: 3678
Joined: Thu Jul 31, 2014 5:31 pm
Answers: 6
Location: Vancouver, Canada
Been thanked: 125 times
Contact:

Re: USD Suite - Replace 3d rendering engine with Hydra

#7

Post by SecondMan » Sat Nov 09, 2019 4:14 pm

AndrewHazelden wrote:
Sat Nov 09, 2019 4:10 pm
Autodesk
What's Autodesk? ;)

User avatar
AndrewHazelden
Fusionator
Posts: 1476
Joined: Fri Apr 03, 2015 3:20 pm
Answers: 6
Location: West Dover, Nova Scotia, Canada
Been thanked: 76 times
Contact:

Re: USD Suite - Replace 3d rendering engine with Hydra

#8

Post by AndrewHazelden » Sat Nov 09, 2019 4:22 pm

SecondMan wrote:
Sat Nov 09, 2019 4:14 pm
AndrewHazelden wrote:
Sat Nov 09, 2019 4:10 pm
Autodesk
What's Autodesk? ;)
LOL. Autodesk is likely the (bad example) person who BMD will copy homework from on how to do a quick and dirty USD implementation that meets the needs of a bullet entry on a product features list while failing to deliver on the promise of the technology. ;)

Doing something on the scale of the Houdini 18 LOPS implementation requires a bigger vision roadmap and more dev time allocation then some companies can justify. Especially if the product owner doesn't "get" why an end-user wouldn't stick to using a tried and tested format like FBX for their scene interchange... (which is someone just like Autodesk is since FBX is their own proprietary scene description format).

Let's say hypothetically USD was added to Fusion v16.5 or v17, would BMD even update the Fusion 8 Script Manual.pdf to let TDs know how to use and control the USD implementation? It's not looking likely on that front as we move further past Fusion 8.2.1, 9, 16, 16.1 and don't see a commitment to explaining what is already in Fusion's API today.
Last edited by AndrewHazelden on Sat Nov 09, 2019 5:20 pm, edited 5 times in total.

User avatar
AndrewHazelden
Fusionator
Posts: 1476
Joined: Fri Apr 03, 2015 3:20 pm
Answers: 6
Location: West Dover, Nova Scotia, Canada
Been thanked: 76 times
Contact:

Re: USD Suite - Replace 3d rendering engine with Hydra

#9

Post by AndrewHazelden » Sat Nov 09, 2019 4:59 pm

Realistically before getting excited about a new USD implementation in Fusion, it's kinda worth talking for a moment about the existing ABCMesh3D and FBXMesh3D nodes in Fusion today and how they work today vs how they would function in an ideal world. There is little benefit in adding new technology like USD if it would be created with the same implementation based design/usage limitations as the pre-existing Fusion 3D workspace asset loading nodes have today.

It's worrying to me that neither of those two existing 3D asset importing approaches allows the full scene graph, cameras, and materials to be re-imported and updated again on the fly by the user inside the Nodes view level, or via Py/Lua scripting for automated approaches.

All the magic code is embedded in the "File > Import > " menus. Fusion has total amnesia where it doesn't even write an entry on imported Camera3D nodes to record what data file the keyframe information and other settings were sourced from.





I find it specifically frustrating that I can't navigate an "Outliner" like an expandable scene hierarchy view of the active .fbx/abc mesh contents to then select new elements as the active "Object Name" or "Take Name".



Here are examples of how tools like RenderMan and V-Ray allow you to browse inside of an existing Alembic file and interact with elements on the fly.

RenderMan for Maya | Inspect Alembic & Dynamic Rules Editor Views




V-Ray for Maya | VRayMesh Node | VRayMesh File Info field



Additionally, Katana and its excellent CEL Reference system allow precise control via pattern matching to select subsets of objects inside a larger hierarchy and affect them. Katana's Scene Graph view can be expanded and collapsed on the fly which instantly adjusts the hierarchy that shows up in the Hydra Viewport.





IMHO it would be a miraculous improvement in Fusion's ABCMesh3D node if it had a mini "scene graph" navigator packed into the inspector view. And if you could tap into Fusion 3D workspace based scene information and pass it downstream in a fashion like 2D image metadata records allow you to do. Then your macro nodes, intool scripts, fuses and other addons could know more about the scene that is represented.

If the workflow failings of the FBX and ABC mesh nodes in Fusion aren't explored and deconstructed, I don't think you can expect to get much more then a USDC/USDA/USDZ importer/exporter and a PBR shader to appear in the medium-term timescale in Fusion.
Last edited by AndrewHazelden on Sat Nov 09, 2019 6:16 pm, edited 1 time in total.

User avatar
AndrewHazelden
Fusionator
Posts: 1476
Joined: Fri Apr 03, 2015 3:20 pm
Answers: 6
Location: West Dover, Nova Scotia, Canada
Been thanked: 76 times
Contact:

Re: USD Suite - Replace 3d rendering engine with Hydra

#10

Post by AndrewHazelden » Sat Nov 09, 2019 5:36 pm

Here's an Andrew Original™ Fusion 17 - Compare page mockup that bends the content on the current Fusion Compare page product matrix to show how you could get USD support in Fusion via web and AR/XR media focused "USDZ and glTF" approaches with no support for nested USD hierarchies, or overrides, or variants.

All doable in a single bulleted item on that compare page, and accessed via a one-time File > Import menu item without the needs for a deep and complex USD scene composition backend system to power it. Now that would be a cheap implementation. :mrgreen:

Fusion 17 Mockup.png

Adding USDZ/glTF asset rendering, and import/export support would be good for smartphone-centric content creators. While being a positively huge fail for VFX and animation industry production needs who would need USDC/USDA support and functionality across the Fusion 3D workspace running at the node level to affect the data stream and override it on-the-fly.

Leveraging the Open-Asset-Importer-Lib next year would be a lazy shortcut to a USDZ single model loading only concept. And dev cost/focus wise it would bypass the effort of a Houdini LOPS, Clarisse, or Katana level effort of USD integration. 8-)
You do not have the required permissions to view the files attached to this post.

User avatar
theotheo
Fusionista
Posts: 318
Joined: Thu Aug 07, 2014 8:35 am
Answers: 2
Been thanked: 21 times

Re: USD Suite - Replace 3d rendering engine with Hydra

#11

Post by theotheo » Sun Nov 10, 2019 2:21 am

Great writeup Andrew, agreed on your points about ABC. Its frustrating that Fu doesn't expose the parameters that makes even this format useful. Being able to select individual items from a mini scene outliner would be one step in the right direction, but also having things like regex-filters to procedural select items or filter out items would be insanely useful. Something ABC and USD lends itself to quite nicely.

User avatar
andromeda_girl
Fusionista
Posts: 435
Joined: Sun Feb 21, 2016 6:25 am
Been thanked: 3 times

Re: USD Suite - Replace 3d rendering engine with Hydra

#12

Post by andromeda_girl » Sun Nov 10, 2019 6:50 am

AndrewHazelden wrote:
Sat Nov 09, 2019 4:59 pm
It's worrying to me that neither of those two existing 3D asset importing approaches allows the full scene graph, cameras, and materials to be re-imported and updated again on the fly by the user inside the Nodes view level, or via Py/Lua scripting for automated approaches.
...
If the workflow failings of the FBX and ABC mesh nodes in Fusion aren't explored and deconstructed, I don't think you can expect to get much more then a USDC/USDA/USDZ importer/exporter and a PBR shader to appear in the medium-term timescale in Fusion.
I wonder if anybody at BMD remembers my went-nowhere attempt to get them to join up with Newtek once more to make the Lightwave render engine live inside of Fusion and have full scene importing including materials.

Newtek was interested, went nowhere after a long struggle trying to get them to just discuss.
that was ten years ago.

Now, after reaching out to Allegorithmic regarding a similar bridge with substance PBR shaders; still, it's crickets on the BMD side.

Maybe BMD wants to wait until a decade after the foundry adds all my wishlist items into nuke before considering following instead of being a leader.
Back when it was Eyeon at least they had a mandate to add functionality that still don't exist in nuke, so i just can't wrap my head around where the blockage is on BMD's end when it comes to just adding game-changer features that we know will come with their competitor.

really tired of the lack of vision at BMD.

User avatar
andromeda_girl
Fusionista
Posts: 435
Joined: Sun Feb 21, 2016 6:25 am
Been thanked: 3 times

Re: USD Suite - Replace 3d rendering engine with Hydra

#13

Post by andromeda_girl » Sun Nov 10, 2019 6:54 am

and yeah, +infinity on Theo's post.

User avatar
ShadowMaker SdR
Fusionista
Posts: 675
Joined: Sun Sep 21, 2014 6:17 am
Answers: 4
Been thanked: 22 times

Re: USD Suite - Replace 3d rendering engine with Hydra

#14

Post by ShadowMaker SdR » Sun Nov 10, 2019 8:28 am

features that we know will come with their competitor.
I still think that BMD sees Premiere/After Effects as their competitor, not Nuke.

User avatar
miaz3
Fusioneer
Posts: 216
Joined: Sat Jan 03, 2015 1:43 am
Location: Angoulême / France
Been thanked: 2 times
Contact:

Re: USD Suite - Replace 3d rendering engine with Hydra

#15

Post by miaz3 » Sun Nov 10, 2019 10:04 am

yes, yes , yes but already that they have a lot of things to do, to add the USD ... it is hardly lost