Minecraft Shader Development Update - Jan 2025
Jan 29, 2025A whopping six months has passed since I last posted one of these, I'm sure everyone has been hanging on the edge of their seats. Since the last update I've made significant progress on my flagship pack Glint (mentioned at the end of the last post), and released another entirely new pack, Glimmer.
Glimmer
When I came home for Christmas this year, I wanted to continue working on my shader projects, but because I was only on my laptop, I didn't have the GPU horsepower to work on Glint. Instead, I started development of a new pack called Glimmer, which was designed with the philosophy that if I could develop it on my laptop, it would run pretty damn well on most hardware. Over the last two months it's come a long way, and is now out on Modrinth. It features physically based rendering (including the sky), full LabPBR support, fog you might not believe isn't volumetric, and full Distant Horizons support. I'm really happy with the cleanliness of the codebase, and hope to do more with it in the future.
Glint
I've frankly been a bit of a perfectionist about this pack which is why it has not seen a full release despite the fact I started developing it in July. In those six months I have learned an awful lot more about shader development, so things have been rewritten an awful lot. The bulk of that time, though has been spent on the clouds. Clouds are an absolute bastard to render nicely, and it took two months of work to get anything I was remotely happy with.
In October I finally had something I was happy to release to the public in an alpha state, so I published alpha one. Reception seemed positive, although quite a few people pointed out the absolutely atrocious performance.
Over the next month or so I spent some time improving things, but got a bit sidetracked by SSPT, and became more and more frustrated by the way I had laid out the codebase (and more busy with exams). With some changes to the lighting, I also couldn't get the colours to look nice, so at this point development on Glint was abandoned somewhat.
That is, until over Christmas, Aperture began development. Aperture is a new pipeline for Iris which makes the development experience a lot better by giving developers CPU side control of how and when passes are run. It also gives us cascaded shadow maps which is very cool. Armed with a fresh perspective on laying out my codebase from Glimmer, I'm now working on a rewrite of Glint making use of Aperture, and have made decent progress already. I'll not give an estimated release date because I have absolutely no idea.
Ebin
Having been spending most of my time on Glint and Glimmer, Ebin has been basically untouched for the last few months. Since most of my changes to it were written by a much less experienced Josh, there are a lot of flaws I can't really be bothered working around.
I did spend some time digging through older versions of Ebin's codebase though, and in the process discovered the amount of features it used to have but were canned by Bruce further on in development, especially in the rewrite that he did right before he stopped development of the pack. Something I might do is take an older pre-rewrite version of Ebin, fork that, and reimplement most of the quality-of-life changes I made in my fork. Don't hold me to that though.
Screenshot by slightlyoverweightcat in the shaderLABS Discord server.
Other Stuff
I've also spent a bit of time playing around with voxel tracing. Here's Glimmer, but with fully ray traced shadows and reflections (in world space).
What's Next?
Glimmer and Glint 👍