PyWavefront icon indicating copy to clipboard operation
PyWavefront copied to clipboard

Radically changing internal data structures

Open einarf opened this issue 7 years ago • 3 comments

Currently it's cumbersome to navigate the parse result. I think some radical changes are needed. There have been a few issues related to this already.

  • Always collect face list
  • Support both quads and triangles
  • Don't create the interleaved vertex list during parsing. This can be obtained through a generator function after. Baking an entire interleaved vertex list also wastes a lot of memory.
  • Binary cache should store vertex list and index list instead. Right now we repeat a lot of data causing large scene geometry to blow up. I have a cached mesh file around 720MB.
  • Store more info in mesh instances so it's possible to obtain geomery for a mesh even if it uses multiple materials. This way users can chose to navigate the scene through materials or meshes.

A version bump to 2.0 probably needed for this kind of change. Proper docs should be written with different use cases. All this would make the library much more suitable for data science as well and not only aimed to render a scene.

einarf avatar Feb 21 '19 23:02 einarf

Any progress on this? The last update was over 5 years ago and I really need this for my projects.

JadeJuno avatar May 20 '25 23:05 JadeJuno

Any progress on this? The last update was over 5 years ago and I really need this for my projects.

Speaking personally, I haven’t looked at the code for this project in years. Maybe if someone tossed some money my way I’d reconsider. However it’s open source, so I’m not holding my breath on that one 😉

greenmoss avatar May 21 '25 01:05 greenmoss

You can look into alternatives like trimesh https://github.com/mikedh/trimesh

einarf avatar May 25 '25 20:05 einarf