ACBob / VoxelThingYeah

Voxel Game Engine
1 stars 1 forks source link

Rendering Module #12

Open ACBob opened 3 years ago

ACBob commented 3 years ago

*Shader language would translate between GLSL, whatever Vulkan uses & HLSL. It would be simple and fragile possibly but the idea is one shader file for all the renderers.

ACBob commented 3 years ago

Rendering overall needs to be improved, Water causes some visual issues as it's drawn in the same stretch as the world.

I don't particularly feel like hacking together a back->forward drawing system, so ideally it's a case of splitting world models into two layers, 'Blend' and 'Regular'. Because of funny shaders, we can avoid a cut-out layer because textures with cut-out just work - Although we might want to look into a cut-out enable/disable, because otherwise we get X-Ray.

Or we could do it with some more shaders!

ACBob commented 3 years ago

I investigated doing some of the funny dithered transparency (where every equal x/y coordinate on the screen is discarded), and it looked neat but had some considerable art-style issues and was honestly quite distacting.

ACBob commented 3 years ago

Water has been split off from the main Mesh, much in the way MC Does it. This move was more for having a separate shader with waves, but has also fixed the transparency issues (just about).

Related; #26

ACBob commented 2 years ago

OpenGL 4.5 rendering suits us for now but isn't well supported on underpowered or old systems. OpenGL 3 is much more widespread.\ OpenGL 1.0 would be funny.

DirectX would only be usable on windows and would be "spiffy", but doesn't serve much purpose. Same for Vulkan.