norman784 / gaiku

3d agnostic framework (game engine) terrain engine
40 stars 1 forks source link

Feature flags vs different crates, and others #29

Closed norman784 closed 3 years ago

norman784 commented 3 years ago

I'm trying to figure out what's the easiest way for the user to use the library, if we use a monolithic library we need to set feature flags, but they can become quickly a mess, while in the other hand we can have different crates gaiku-baker-voxel, gaiku_file_gox, etc so will be cleaner what are you using, but you will end up having a lot of small crates.

In both cases the idea is to reduce the sub dependencies used by the final user, by only including what they really need, for gaiku-common will be no option but use feature flags, but maybe we can move the Texture, Chunk and Mesh implementations into another crate gaiku-common-impls (?)

Also other issue, is better to use underscores instead of dash, for the sake of consistency when declaring the deps in the Cargo.toml and importing them?

norman784 commented 3 years ago

I think to solve our issue (https://github.com/norman784/gaiku/pull/23#issuecomment-761862010) we need to run the test for each folder independently, and I would like to move the crates to a crate folder, but for that to happen we need to close/merge all PR's first.

norman784 commented 3 years ago

Closing this, discussion can continue here #35.