6049840aa632e847cee214c0b755b508698dce63
Rewriten almost all stuff in core.render. Changes made: 1. Added LightmapTexture object 2. Moved&Renamed LodShader & LodShaderProgram to be under render/objects/ 3. All class under render/objects are actual objects for OpenGL 4. Add LodRenderProgram which is a ShaderProgram + VertexAttribute. If we change the method on how we render stuff (Like modifying input/output), we should change this file as this is the repesentation of the Rendering Program that we are using. 5. Add VertexAttribute, and a GL43+ vesion of it. I implemented both versions because the GL43+ will get a noticable speedup due to some additions to OpenGL standard. However I still included older version for backward compatibilities. To access VertexAttributes, it is recommended to access it though the VertexAttribute abstract class's method. 6. Rewritten the main renderLod() method. Now it will cache as much stuff as possible. 7. To do '6.', now the renderer has a setup() and a cleanup() method, both that must be called inside Render Thread. The renderer should automatically detects when it needs to call the setup() and cleanup(). However, you can expicitly request the renderer to do cleanup() on next rendering by calling markForCleanup(). 8. ...I think that's all? Don't quite remember tbh. Hopefully I didn't miss any points. Note: This overhaul of the renderer means that THERE WILL BE BUGS. I can't test all versions on both Nvidia and AMD cards with all OPENGL versions so please report any bugs to me straight away. Thanks in advance! Note 2: I will add more docs in the source code next.
Distant Horizons
This repo is for the Distant Horizons mod. The purpose of this submodule is to isolate code that isn't tied to a specific version of minecraft. This prevents us from having duplicate code; reducing errors and potentially helping us port to different versions faster and easier.
Check out the mod's main GitLab page here: https://gitlab.com/jeseibel/minecraft-lod-mod
source code installation
You shouldn't download this repo directly. It should be automatically included when pulling the full mod.
Open Source Acknowledgements
XZ for Java (data compression)
https://tukaani.org/xz/java.html
Languages
Java
97.5%
GLSL
2.5%