You are browsing as a guest. Sign up (or log in) to start making projects!

DubbsPi

@DubbsPi

Joined June 2nd, 2026

  • 30Devlogs
  • 3Projects
  • 2Ships
  • 30Votes
Uhh I like to code shaders a bunch
Open comments for this post

3h 12m 55s logged

We now have some of the most complex handheld lighting in minecraft! I setup a quick light tracing function and inputted the light values for it for each hand, so as you can see there are two shadows being cast. I will add an option in the future to upscale the RTX features since this was taken at 27 fps. I also added bloom and a bunch of settings for it and fixed up the sky ground issues. Now it truly scatters the ground until you hit y ≈ 200 million, then the lowest part breaks ¯(ツ)/¯

1
0
3
Open comments for this post

3h 50m 23s logged

you know what, its 98% working. I call that good enough for tonight! I will continue fixing up the various tracing bugs and add entities, but so far this is pretty good! I plan on also raytracing shadows and lights if possible, although I will keep the standard shadow pass for nearby to get cheaper shadow filtering than with multiple rays. A lot of little issues plagued the final BVH build, mostly with me not clearing buffers :)

0
0
2
Open comments for this post

6h 36m 41s logged

Finally!!! I got the radix sort working! The screen shot doesn’t look like much, but if you notice the bar on the bottom, the colors are generally grouped together and are perfectly stable. I had really struggled with getting this to work correctly as I’m not exactly the most experienced with compute shaders (or I should say was, now I know more about them than I need to). I had reached out to the shader labs discord even (thanks to them btw, they helped with a workgroup dispatching bug I had) and ran about every test possible to eliminate any possible race conditions/out of bounds errors. Then comes gemini to save the day. Apparently, I really should have done some more research into atomics in the past since even though they are meant to be stable, they are not perfect in the slightest, so I was basically attempting to do a radix sort without stable ranking (which is what it needs to achieve its insane parallelism and speed) and yeah it works now. BVH time (which should not take long to setup, the radix is normally the hard part), then true RTX features (not just voxelizations) like raytraced reflections and idk I might add a path tracing option since I’ve made a PT on shadertoy before and it was super enjoyable to do.

0
0
2
Open comments for this post

5h 57m 59s logged

All I can say I got done in this long session is I optimized the rendering slightly. Not the tracing, just the regular lighting by catching the light colors (since they are from the scattered sky) in a tiny 2x2 texture, but it did give me 80+ fps back when I look at the ground at least. I will also have to redo all the BVH setup and actually learn how to do it all since I was leaning a bit heavy on AI use and something broke somewhere and I couldn’t figure out where. Time to actually code it all QwQ (not really sad, probably a good idea to actually learn it fully)

0
0
3
Open comments for this post

57m 20s logged

Haha I feel evil for being mean to my gpu. I got the full world space reflections working (along with a second bar to show how full my triangle buffer is), although I still have to tweak the entities combining with the terrain, but I mean it runs horribly (better than not at all!). You can’t see it in the screen shot really, but I installed a resolution changer mod that puts me at 1/4 resolution, so 1/16 of the pixels and perf is worse than full res with the entities. Definitely will need to get that BVH/acceleration running soon because or else my GPU is going to blow a fuse :D

0
0
3
Open comments for this post

1h 29m logged

Fixed up performance and small bugs!! I removed the combining of vertices into tris and just did that during the trace. Thanks to less memory pressure I got back around 20 idle fps and fixed the jitter bug (hehe)

0
0
8
Open comments for this post

3h 58m 15s logged

(mostly) Finished a major performance win. I figured out a way to use the vertex shader instead of the geometry shader for everything. The geometry shader is notoriously slow (5-10x) compared to everything else, so by not using, my idle performance has went up several times due to no longer having to slowly process so many triangles. I still have some room for improvement (iron golems are black and some weird new backface visual bugs, nothing severe though) but this is much better than before!

1
0
13
Open comments for this post

3h 18m 40s logged

Got FXAA working! Haven’t finished the acceleration for the RT yet, but thought some minor AA wouldn’t be too hard and look nice! Thanks to Simon Rodriguez for his wonderful tutorial on how to add in FXAA!

0
0
3
Open comments for this post

5h 17m 57s logged

The wonderful world space reflections!! Right now they are only setup for entities and are still unaccelerated (that is why its running 25fps). This one was a real challenge to pull off since I learned the hard way entities don’t have texture atlases. That means for each entity on the screen, I had to manually bake their texture to a custom atlas. I will say, I found a pretty smart way to do it that only runs the bake once and caches the texture. If I ever notice overwriting issues, I can change it up, but it should be good. Also, I made it index based off the texture’s color, so modded entities should be supported :)

1
0
24
Open comments for this post

2h 7m 42s logged

We are starting to get fancy!! I finally got just an entity triangle buffer setup. The reason my framerate is so bad so far is I haven’t setup acceleration yet, but that is going to be next. Its surprising how its actually cheaper (so far) to store triangles than storing the block faces I had earlier since info can be omitted pretty easily. The hardest part about doing this was the fact I forgot to put a vertex output in the gbuffers_entities.gsh so it was erring a ton because I forgot two lines 😁

1
0
8
Open comments for this post

1h 17m 51s logged

After optimizing the voxel buffer some more and the DDA march, I have decided to make my life harder. I plan on moving from voxel marches to actual raytracing with acceleration structures due to the fact as of now, block only marches is limited visually, doesn’t have entities, and breaks very quickly when a block uses a 3d model instead of a standard block. My hope will be to use compute shaders for the BVH building so that should be fast. I plan on doing entities first, terrain later just because then I’m not deleting stuff and for once entities are simpler. Plus once this works its basically infinite quality and actually might be faster.

0
0
3
Open comments for this post

1h 42m 45s logged

Got all the shadows in the reflections wired up as well! I also added screen space shadows to stop floating shadows on the foliage, but I set it to not run on blocks since those shadows are normally not floating and this way the most noticeable shadows are soft and without artifacts. I merged a lot of code this time so then WSR and SSR can be used at the same time for more detail (for now, hopefully the WSR will be full detail on its own in the near future). I’m going to ignore the 1.6gb of vram in the one buffer alone issue for now and address extra compression later :D

0
0
4
Open comments for this post

3h 18m 21s logged

Moved world space reflections to a SSBO!! Now they have all the details of the world, but the only issue (which I suppose I couldn’t notice with the lower quality ones before), is 3D models for blocks, since they cannot be voxelized. By moving the reflections to a SSBO in gbuffers_terrain, I was able to get normal shadow mapping back as well! Also I made VRAM storage more efficient - nvm just did the math and using 8 4k textures in RGBA16F was actually more efficient at 1.06gb while the current SSBO requires 1.6gb, but also the 8 4k textures could only store one block face, while the SSBO stores all 6, so if anything, the new SSBO method if I only gave it the same rigor as my setup before, is around 0.27gb of VRAM, way more compressed.

0
0
1
Open comments for this post

6h 3m 24s logged

Got these colored world space reflections working. The only thing I’m running into the issues of voxelizing with the shadow pass, so I am going to do a big refactor and move everything into the regular geometry pass, just that may either require the entire scene be rendered or cleaver caching.

0
0
3
Open comments for this post

51m 7s logged

Got the DDA reflector going! Its actually running faster than screen space reflections were, and obviously has the world within the radius (which is 128 blocks, pretty good actually since 126/16 is 8 chunks). Just need to add texturing and lighting to the blocks. Actually I need lighting everywhere in the shader lol

1
0
8
Open comments for this post

3h 28m 3s logged

Finally got the voxel buffer setup!! I did it at the cost of shadows, so I might try to add shadows back, or just use the voxel buffer for them. My hope is to be able to use the buffer for world space reflections since not many shaders have that.

1
0
9
Open comments for this post

3h 32m 22s logged

Improved SSR and the sky a little bit. Also got LabPBR’s specular
mapping working but couldn’t get the normal map yet. Wasted like two
hours trying to use AI to help me seutp a voxel buffer for world space
reflections. Ended up deleting all the AI’s stuff due to the fact it
didn’t really work right and halved my framerate.

0
0
3
Open comments for this post

2h 31m 17s logged

Added atmospheric scattering. Honestly it looks pretty good and runs really well so far. Had to have AI help explain a couple of the functions, but other than that I hand wrote it all. Took a while to figure out how to replace the fog, but once I did it turned out really nice!

0
0
5
Open comments for this post

3h 15m 10s logged

Got much better looking reflections setup with screen space reflections. Trying to use DDA before wasn’t really a bad move, it basically gives a ton of free perf, until you put it with something that isn’t a cube or have to march through 300 blocks. I will try to add world space reflections in the future, but for now the SSR is pretty performant and looks nice!

0
0
2
Open comments for this post

1h 22m 27s logged

Got these really nice looking dda reflections going that are basically free, just walking too far away or looking at them wrong or doing literally anything that isn’t his photo looks kinda bad. Also non solid blocks are very warped, but in this ideal situation they looks really nice!

0
0
4
Loading more…

Followers

Loading…