Additionally, I’ll put the lighting calculations on c++ to speed up chunk graphics generation. With this, all processor heavy functions will be running in native c++, while maintaining the ease of project management that java provides.
On top of that, the graphics engine will be upgraded with a lot of functionality. Starting with simplifying a lot of block graphics data management, the main upgrade would be a new pipeline containing deferred rendering and dynamic lighting. Since dynamic lighting on its own never really works for voxel games of this scale, it will be built to be used in tandem with the baked lighting. This means that everything up close (or further away depending on the power of the graphics card) will be lit dynamically, meaning that light will look a lot better as well as affect other objects (cross entity lighting), while light in far away areas will be used the baked lighting as an approximation giving us optimal performance mixed with much better-looking visuals.