Open jalberse opened 8 months ago
I misremembered - the Triangles are actually storing an Arc to the shared mesh. Issue #81 discusses reducing that memory consumption.
This can still be done, though - TriangleMeshes are storing lists of usize for example, which can be u32 instead.
There are a number of data structures (such as Tris indexing into the mesh) which store a usize. This takes up 64 bits on a x86_64 machine. That's more memory than we want, since we won't have meshes large enough to need the extra bits.
Go through the codebase and find instances like this to avoid too-large data structures on 64 bit machines.