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

Reintroduce IO functionality #33

Open
7 tasks
LukasKalbertodt opened this issue Apr 19, 2023 · 0 comments
Open
7 tasks

Reintroduce IO functionality #33

LukasKalbertodt opened this issue Apr 19, 2023 · 0 comments
Labels
area:IO Area: IO category:new-feature Category: New feature needs:design Needs: design of some sort priority:high Priority: High

Comments

@LukasKalbertodt
Copy link
Owner

LukasKalbertodt commented Apr 19, 2023

As explained in the docs, IO code was thrown out to reduce the scope of the initial release. Of course, IO is important for many use cases, so it should be added back. The code lives in old_code/ and was fully working (and fast!), but it needs quite a bit of adjustments still to:

  • Make it compile on stable
  • Improve/polish the API
  • Make it maintainable

Here is an incomplete and unsorted list of things that need to be addressed:

  • Use GATs where possible (IntoMeshWriter?)
  • Adjust to make it compile again with the recent code changes.
  • Get rid of duplication in set_vertex_positions, set_vertex_colors, ...
    • I think that's the main thing I'm currently concerned about. It results on tons of code, making it very unmaintainable. It would be great if I could replace all those props methods with a single generic method. set_prop::<VertexPositions>() or sth like that.
  • Take a look at all the API again and see what can be simplified or improved
  • Adjust derives to have fewer special cases and be easier to maintain. The derive code is biiig and a bit of a mess.
  • Think about "fat meshes" again, maybe use a different name.
  • ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area:IO Area: IO category:new-feature Category: New feature needs:design Needs: design of some sort priority:high Priority: High
Projects
None yet
Development

No branches or pull requests

1 participant