
| Github | https://github.com/sjb3d |
| Blog | https://www.sjbrown.co.uk |
| Github | https://github.com/sjb3d |
| Blog | https://www.sjbrown.co.uk |

The #Zig folks understandably do not want language proposals from outside their core team, so this is just a local experiment.
I was surprised how easy it was to just start hacking on the compiler though! Code changes are here if anyone is interested: https://codeberg.org/sjb3d/zig/compare/bbc77df..vector-gather-shuffle
One thing I miss in #Zig compared with shaders/clang ext_vector is postfix syntax for vector swizzles.
So, weekend experiment as a compiler noob: can I locally modify the compiler to allow postfix syntax via a kind of vector gather op? Answer: yes!
Zig update to 0.14 done, was almost entirely search-replace on standard library changes.
Excellent work #zig folks! ⚡
Very happy with how well adaptive resolution is working. Dreams voxelizes each sculpt uniformly, so there is a heavy tradeoff between size and detail, is super nice to lift that restriction.
Quick demo of adaptivity, code is still super dumb and rebuilds the whole object on a single thread, so hopefully plenty of perf headroom left!
With thanks to the Vulkan validation layer, moving uploads/compute off the graphics queue seems to be working fine, hurrah.
With a bit of refactoring to support multiple objects, it's now fairly easy to make temporary objects for a selection effect, which helps a lot to visualise subtractive CSG:
Quick clip of editing the last scene.
Still single-threaded here, with ispc for SIMD. Currently refactoring onto multiple threads with async upload to Vulkan, what could possibly go wrong...