chinedufn / landon

A collection of tools, data structures and methods for exporting Blender data (such as meshes and armatures) and preparing it for your rendering pipeline.
https://chinedufn.github.io/landon/
147 stars 17 forks source link

Simplify single indexed vertices #13

Closed chinedufn closed 4 years ago

chinedufn commented 4 years ago

Modern graphics APIs such as Metal/Vulkan/etc make it easy to buffer data onto the GPU in a structured manner (you're just copying bytes to buffers).

To align with that, we are returning a Vec and letting the caller decide how to buffer the data.

Previously we returned separate Vec's of data since when first starting with WebGL/OpenGL it can be easier to just dump things into a bunch of buffers than to interleave.

Instead of encouraging worse practices we should expose functions and documentation to make it easier to do things properly.


There's still a lot of refactoring of all of these crates that need to happen. Lots of code that I wrote when I was first learning Rust... It's unpleasant to work with right now.