xirreal@dev:~/projects/camellia $ cat README.md / · projects
[ project/camellia ]

camellia

wip

path-traced minecraft shader using hploc bvh

stack: glsl, iris, minecraft
camellia · demo scene

an iris shaderpack that turns minecraft into a gpu-driven path tracer. the shadow pass is abused as a geometry capture pass: visible quads are packed into ssbos in player space, with material bits, packed vertex positions, uvs, tint colors, entity texture ids and scene bounds. from there a compute pipeline builds a traceable scene every frame: generate aabbs and 3d morton codes, run an 8-bit lsd radix sort through indirect dispatch, then use hploc to build a bvh2 entirely on the gpu.

the renderer has a slower accumulated pathtrace mode, a realtime wavefront mode, and a bvh debug mode. materials pull from block atlases, labpbr normal/specular maps and optional entity textures, with diffuse, ggx specular, f82-tint metals, water absorption/refraction, sss, direct sun/moon sampling, atmosphere luts and agx tonemapping. camera options include thin-lens depth of field with autofocus, focal length, f-stop, sensor size and aperture blades.

wip

i am currently trying to make the realtime path viable without throwing away the interesting material work. right now that means resolution-scaled wavefront queues, persistent path-state images, and a lot of debugging tools for ssbos, sort validation and bvh validation.

renders

path-traced minecraft column scene
column scene
path-traced minecraft flower closeup
flower closeup