Wednesday, May 5, 2021 (3:00PM PT/6:00PM ET)
Wednesday, April 7, 2021
Working example of WebASM build of USD with a Hydra delegate for Filament
- https://github.com/marsupial/USD/tree/HdFilament
- Working on macOS & Firefox-87.0
Ideally GitHub Pages version at https://marsupial.github.io/USD/extras/imaging/examples/hdFilament would be a live demo, but
- due to the lack of 2 http headers WebASM using threads will fail to load
- a local server.py can be used to serve the branch locally instead
- Colored Quad, Sphere, and Cube are USDA. Gold monkey rotating in circle is USDZ. PBR monkey spinning around its center is glTF.
- HdFilament shader generation is minimal and displayColor is used for primitives. Textures on monkey.usdz are not loading correctly.
- USDA loaded can be edited in the HTML: https://github.com/marsupial/USD/blob/HdFilament/extras/imaging/examples/hdFilament/index.html#L119
Wednesday, March 10, 2021
- Roman Zulak
- Philippe Sawicki
- Alexander Schwank
- Dhruv Govil
- Alex Gerveshi
- Nick Porcino
- JT Nelson
Goal is to have USD WebAsm branch and a WebAsm build of Filament Hydra Delegate by next meeting (April 7).
- Gain a better understanding of performance and limitations loading arbitrary assets and materials.
- Let a larger audience see the size of changes needed to support the platform.
- If the changes are too large for Pixar to mainline, what options are there?
- Provide a use case for Filament that could help push HdFilament code into Google's repo.
- Initially may be a private repo/branch not totally accessible to the world.
JavaScript bindings to USD.
- Roman has started porting a ui-handle implementation to WebGL that would be simplified with re-use of Gf/math library.
- What is the cost (in terms of source code) for additional bindings.
Python support via browser (à la Pyodide)?
- Is there any gain in having existing Python scripts run in a browser?
- May be too expensive of a runtime environment.
Plugins and external dependencies for a WebASM build:
- http(s) ArResolver would be very useful once everything starts working.
- OpenSubdiv is probably a good candidate for a next-step.
- Is OpenVDB support in WebASM via NanoVDB a possibility (or useful)?
- Qt WebASM is interesting, but a little too unstable right now.