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

Analysis of external mesh loading libraries and comparing with the existing approach #3209

Open
onurtore opened this issue Apr 14, 2022 · 5 comments

Comments

@onurtore
Copy link

onurtore commented Apr 14, 2022

Gazebo's mesh loading library doesn't support glTF2 and FBX mesh loaders. There are two ways to extend the capabilities of the Gazebo's mesh loading system, (A) Using an external open-source library or (B) Writing glTF2 and FBX mesh loaders consistent with the current approach.

An initial analysis is required to decide which approach is better. I am planning to generate such analysis in the next couple of days, so any idea is welcome. The main aspect of the analysis will be around:

  1. Maturity Analysis
    This section covers external library’s supported file types, and development history.
  2. Complexity Analysis
    This section mainly covers how hard it is to understand the design structure of candidate libraries.
  3. Implementation/Integration & Testing Analysis
    This section covers the required implementation and integration steps for each candidate library. Additionally covers an analysis of both internal and external possible testing scenarios for unit and integration tests.
@onurtore
Copy link
Author

onurtore commented Apr 14, 2022

I created an additional document for this analysis in here. I will start my analysis with assimp.

@onurtore
Copy link
Author

onurtore commented Apr 15, 2022

Is it possible to get any feedback for this approach @ahcorde, @iche033?

@iche033
Copy link
Contributor

iche033 commented Apr 15, 2022

hi, thanks for looking into this. Since the doc mentions GSOC, we'll be targeting this functionality to the Ignition / Gazebo simulator. The mesh loaders have moved to one its libraries here: https://github.com/ignitionrobotics/ign-common/tree/ign-common4/graphics/src

I think you're on the right direction with your analysis. assimp is promising if it has good support for the 2 formats already. If we're to writer the loader ourselves, I think glTF2 importer is easier to write as its a open format but there may be more work with fbx as there is a text and also a binary format.

@onurtore
Copy link
Author

onurtore commented Apr 15, 2022

Thanks for valuable feedback, I will update my documentations and software stack.

@onurtore
Copy link
Author

onurtore commented Apr 17, 2022

This issue moved to here: gazebosim/gz-common#344

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants