Very interesting commit, creates some seperation between chunk logic and
planular logic. impliments some key needed code to allow all this to
work with projecting the planular into chunk coords and all.
No regressions so far, hopefully we keep going on a roll because
everything working is really really nice.
Imagine the source engines map editor in your head, it has the top down
view, it has side views, it has it all.
We can re-create something kind of like this but we need to mesh all the
block faces for each side...
Once we do this, we can simulate depth more easily by using a block
overlay with light or darker areas.
This is just setting up the basic infrastructure to go through with
these changes. A TODO was also setup with a list of things i need to go
through.
Now uses more server code, more of the indexing was corrected to work
with this somewhat.
The variables for positions, cube, voxels were all renamed to be more
clear with their expressions.
The stuff in the greedy mesher to do with AxisIterator was improved to
be more iterator like in the use, and the variables surrounding them
such as the iterator use themselves and the south_ and east_ names were
cleared up from "down" and "side".
Overral this was a big refactor and mostly a rename fest, looks nice so
far.
oh yea, debug if()s to help cut down on chat spam.
Did some changes to distinguish our chunks from the cuberite ones, also
changed the ITEM ids to be using cuberite.
Changing some constants to use cChunkDef::
This is only part one of many, its quite difficult to do a quick change
due to the different XYZ referencing system. Currently this is built
with entirely 2d in mind, getting it to play nicely with 3d will be a
bit of a challenge for the while.
Courtesy of the disbanded TrueCraft development team, they have done
alot of hard word discovering the methods and the ways of the minecraft
sunset and sky.
Truecraft is in MIT license meaning we can easily add this to the client
without fear of license conflicts. It isnt required I dont believe due
to the license, but there are credits that I will leave in this codebase
till the end of time.
Once again thank you for the past efforts <3 I cannot thank you enough.
The skybox is basic, appears to be buggy(at least to me it does...)
So far it works for me :) we can modify it later as needed but until
later arrives, this works perfectly as a skybox :D
This commit was done specially since it interfaces heavily with Lua.
First it was diffed out in a standard cuberite repo so we can tell what was changed,
and we apply this diff to a basic cuberite repo right before the commit was made.
I then promptly reverted lua changes that would conflict with applying
the patch. I also had to remove whole sections from the patchfile
afterwards but it was made easier having the actual repo with the
patches applied able to remake the diff as needed before i removed the
bigger sections.
Somehow it all worked out.