Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LLMesh -> Collada -> LLMesh conversion code to allow for in-proxy mesh upload #24

Open
SaladDais opened this issue Mar 5, 2022 · 1 comment
Labels
enhancement New feature or request

Comments

@SaladDais
Copy link
Owner

This would be a good first step to writing mesh upload code totally independent of the viewer, allowing prototyping of new importer features like glTF support (via https://github.com/SaladDais/impasse,) as well as file watchers for the local mesh feature.

Having code to allow round-tripping LLMesh -> Collada -> LLMesh is probably the easiest way to ensure we haven't gotten confused about LLMesh or Collada semantics in our import code.

We should make an example .dae that uses joint positions, vertex weights, multiple materials and multiple instances of the same mesh data, and then log the LLMesh-serialized version the viewer's uploader sends off to make sure that:

  • Our own conversion code gives the same result as the viewer when converting the .dae to LLMesh (assuming no normal or LoD generation)
  • Our LLMesh upload data -> Collada converter generates a .dae that's semantically equivalent to the original input .dae
@SaladDais SaladDais added the enhancement New feature or request label Mar 5, 2022
SaladDais added a commit that referenced this issue Jun 24, 2022
First half of the LLMesh -> Collada -> LLMesh transform for #24
@SaladDais
Copy link
Owner Author

SaladDais commented Aug 18, 2022

There's a basic version of LLMesh -> Collada in https://github.com/SaladDais/Hippolyzer/blob/master/hippolyzer/lib/base/colladatools.py, and I have a very very basic version of .fbx and .gltf -> LLMesh conversion and upload using assimp working in a local branch. Upload of basic mesh without rigging from .fbx seems to mostly work, with UVs and normals correctly handled.

Still need to figure out the exact deal with the transforms SL does on mesh data on upload, even with my mesh manually resized to fit within a 1m cubed bounding box I'm still getting slightly different results than SL's uploader. Will start to add round-tripping tests once I've figured that out.

SaladDais added a commit that referenced this issue Aug 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant