So I just realized how easy it would be to gpgpu for chunk vbo generation and possibly even generating the blocks.
Bind transform feedback
Bind chunk id[] as an isamplerBuffer
Render 16^3 points with no attribs
Use gsh to out pos, uv.
In gsh detect blocks surrounded by 6 opaque blocks, cull them by not emitting
Considering theres 16^3~=4k blocks in a chunk, im guessing this would be at least 100x as fast. Since when using an ssd on a pregenerated world loading is still an issue: I believe creating the vbo is the main bottleneck for speed. So this would be an absolutely immense performance boost for anyone with GL>3.1 (pretty much everyone)
The catch is that I'm busy with my game engine, and I've forsaken mc modding. But - if someone decent at complex mods wants to do all the hooking, then I will do all the GL.
Rollback Post to RevisionRollBack
[ Type 1 Anarchy ] - 3D guns - Mechs - Missiles - Turrets - Frikkin Laser Beams
rewriting part of every mod in a different language
not that much benefit
Stuff like generating trees and mod generation could be done as a postprocess. This would be advantageous for the generation of the basic stone still. But you're right about the benefit being negligible then, because if its just a few ops per cube then it might actually be slower because the cpu has to read/write the data to send it to gpu anyways, then driver overhead
Rollback Post to RevisionRollBack
[ Type 1 Anarchy ] - 3D guns - Mechs - Missiles - Turrets - Frikkin Laser Beams
Bind transform feedback
Bind chunk id[] as an isamplerBuffer
Render 16^3 points with no attribs
Use gsh to out pos, uv.
In gsh detect blocks surrounded by 6 opaque blocks, cull them by not emitting
Considering theres 16^3~=4k blocks in a chunk, im guessing this would be at least 100x as fast. Since when using an ssd on a pregenerated world loading is still an issue: I believe creating the vbo is the main bottleneck for speed. So this would be an absolutely immense performance boost for anyone with GL>3.1 (pretty much everyone)
The catch is that I'm busy with my game engine, and I've forsaken mc modding. But - if someone decent at complex mods wants to do all the hooking, then I will do all the GL.
Edit: chunk rendering could be optimized in other ways though.
Stuff like generating trees and mod generation could be done as a postprocess. This would be advantageous for the generation of the basic stone still. But you're right about the benefit being negligible then, because if its just a few ops per cube then it might actually be slower because the cpu has to read/write the data to send it to gpu anyways, then driver overhead