3 pointsby swalsh2 days ago3 comments
  • ben_w2 days ago
    I finished off a browser-based modern take on Asteroids, and the game engine to support it. The music synthesiser is definitely still buggy, if I go back to this I'll replace "synthesise this MIDI file" with "loop a pre-rasterised sound file", but TBH it's almost certainly more sensible for my next project to just use an existing engine, this was originally just an experiment to see what GenAI could even do.

    Everything else besides the music is basically as I'd like it to be: gameplay progression, achievements, particle effects, game controller support, collision detection, etc. The art assets are also AI-generated.

    I also updated my Raspberry Pi webcam interface. It's now 30fps, not 4, and has an acceptable UI. Also made progress with some automated motion detection in there, but I have yet to test that, I won't speak for it actually working until I do.

    Couple of other projects too, but now's not the time to reveal them. One might even turn into from project into product.

  • shudv2 days ago
    you are right - december is a good time to disconnect from the daily chaos and do some focussed work.

    I worked on this: https://github.com/shudv/deltasort

    Its a more efficient way to incrementally repair sorted arrays. Feedback welcome!

    What did you build?

    • swalsh2 days ago
      That's interesting, what was the original problem that inspired you to build it?
      • shudv2 days ago
        If you have worked with React before - you would know that its actually not straightforward to correctly memoize computation. That is specially true for operations on collection data like filters and sorts.

        That pushed me to first build this - https://github.com/shudv/memotable

        which is a way to build a "read-optimised" in-memory collection so that re-renders in the ui layer do not run filters and sorts on the data again and again unnecessarily.

        And this was sufficient to solve my original problem.

        DeltaSort was just something that came to me while I was thinking about taking memotable performance to the next level - make the sorting as fast as possible. Thats when it hit me - if I am able to somehow use the information about the delta since the previous sort - that might help me re-sort much faster. And it turns out, it actually is much faster (at least for the Rust based implementation)

  • niksystems2 days ago
    [dead]