BitReelCo / BJS-PR-Bounty-Pool

Bounties in this pool are incentives for pushing BabylonJS forward for the benefit of our awesome and growing community!
https://forum.babylonjs.com/
15 stars 0 forks source link

[Open RFP] ( $800 ) - Basic USD/Z export ( Mesh, materials w/ PBR support ) #2

Open br-matt opened 1 year ago

br-matt commented 1 year ago

requirements

recommended approach

None

Notes

Skeletons, Lights, Node Materials and many other things USD supports are out of scope for this first version

lokiiarora commented 1 year ago

I would like to take this up :) ! Would a good start be from porting it from Three.js here

br-matt commented 1 year ago

Hey thanks! That seems like a reasonable start to me. Maybe some of the BJS folks will chime in otherwise though @sebavan

sebavan commented 1 year ago

Seems reasonable to me as well !!! let's see if @bghgary approves the idea ???

bghgary commented 1 year ago

I don't see why this won't work.

br-matt commented 1 year ago

Hey @lokiiarora just checking in and wondering how this was going ?

lokiiarora commented 1 year ago

Hey @br-matt , working on it, I've got to the point where I can export a USDZ file with all textures, geometries and zip working fine. Haven't specifically gotten the scene file .usda working as such

br-matt commented 1 year ago

Hey @lokiiarora guessing some things came up. Is it alright if I move this back to Ready status or are you still able to finish it? Not a big deal but want to open it up for someone else in case you became busy

Pryme8 commented 1 year ago

https://github.com/Pryme8/USDZExport/blob/main/src/exporter/exporter.ts

So Ive got this to the point where it will load nearly the same as the Three.js export.

There are a few TODOs but those are probably out of scope for the initial commit.

One thing that I could use some help with is why some geometry is not loading on the viewer even though the underlying buffers are the same on both exports from Three.js and our export. Not sure how that works but yeah....

Also don't want to spend a ton of time on this as the bounty would then become not cost effective for my time.

image Ours is on the left, Three.js is on the right.

Pretty sure the color difference is the normal texture being in sRGB space instead of raw. That is on the list of TODOs that needs to be fixed.

br-matt commented 1 year ago

Wow awesome @Pryme8 :) thanks for picking this up instead. @sebavan what do you think maybe forums is best place or here for assistance ?

sebavan commented 1 year ago

Yup the PR is up so we can discuss on the PR on the forum. @bghgary and @popov72 will do a first PR pass there