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

Project Structure #29

Closed
HellGate94 opened this issue May 29, 2020 · 3 comments · Fixed by #32
Closed

Project Structure #29

HellGate94 opened this issue May 29, 2020 · 3 comments · Fixed by #32
Labels
meta Not related to the actual code

Comments

@HellGate94
Copy link

with your latest commit of async chunks you also changed some things to be generic and imo its not a good change. in fact the whole thing is in a need of a whole new structure that also allows for better control and faster feature integration such as smooth mesh normals.

a lot of the things should be moved from "Example" into the main engine and settings. also separating some components into replaceable monobehaviours instead of generics should be better.

i sent you a privete message on reddit about discussing it if you are interested

@Eldemarkki
Copy link
Owner

True, very true. The "Examples" folder has kind of just become a dump for everything, because back when this project was started, it wasn't even supposed to be a voxel terrain engine. I haven't gotten around to changing it, but now that you brought it up I will do it soon when I have the time.

Could you elaborate more about why the async changes are bad (and specifically what is), and I'll see what I can do about it?

@Eldemarkki Eldemarkki added the meta Not related to the actual code label May 29, 2020
@Eldemarkki Eldemarkki added this to Backlog in Marching Cubes Terrain feature roadmap via automation May 29, 2020
@Eldemarkki Eldemarkki moved this from Backlog to Selected for development in Marching Cubes Terrain feature roadmap May 29, 2020
@HellGate94
Copy link
Author

main thing is to have a common entry point such as VoxelWorld for pretty much all interactions such as editing, getting data, etc. it will redirect the calls to its sub components.

also having a VoxelDataStore that handels all the data things that the VoxelWorld redirects to it. including a function to get all the data in a box. this will be used by the MarchingCubesMesher (or maybe even other meshers) to get the data insted of accessing the chunk array itself. this allows for smooth normals by simply increasing the query box by 1 voxel to have the data it needs.

@Eldemarkki Eldemarkki moved this from Selected for development to In Progress in Marching Cubes Terrain feature roadmap Jun 8, 2020
@Eldemarkki Eldemarkki linked a pull request Jun 10, 2020 that will close this issue
@Eldemarkki Eldemarkki moved this from In Progress to Done in Marching Cubes Terrain feature roadmap Jun 10, 2020
@Eldemarkki
Copy link
Owner

Merged

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
meta Not related to the actual code
Development

Successfully merging a pull request may close this issue.

2 participants