Posts

Showing posts from December, 2020

Ray-Tracing Experiments

Image
Inspired by the upcoming Ray-Tracing Kajam event , I decided to start fooling around with some ray-tracing code. I'm still feeling inspired by DOS limitations, so I'm rolling with that.  But I'm not so interested in making a Wolfenstein-a-like, which is a classic ray-tracing type of thing.  I also don't think I'm capable of making something as awesome as Death Taxi 3000 , which is just a phenomenal piece of work. So my mind settled on trying to get a height-map, voxel-style terrain rendering on something like a 486 PC.  Still a significant challenge, but something I feel I can get my head around. The trick to anything like this seems to be getting your data/algorithm simplifications right to make life easy for the CPU.  To that end, over the last few days, I've been playing around trying to see the effect different simplifications have and I think I'm onto something:   This experiment was done on a modern workstation running Linux.  It's a 256x256 height

RAID 6 --> ZFS pool

Today I completed the transition of my NAS machine from RAID 6 to a ZFS pool.  To document the process for my future self and any semi-interested rando who stumbles across this, here is an outline of how I did it. Part 1 - Research I found this 'ZFS for Dummies' post really useful to re-familiarise myself with the core concepts.  Once I'd done that, the Ubuntu examples here were really useful as well as this post with more detailed information than I would ever need. My RAID was nowhere near full, which meant I could manage the process without having to restore everything from backups (although I made damn sure I had working backups before I messed with it). Part 2 - Degrading the RAID and pooling the freed-up drives First, I marked two drives from the RAID as failed so I could use them in the zfs pool.  I changed their partition type with cfdisk but I had trouble making a pool out of them because they kept on being picked up and re-started as a raid device.  In the end

NAS 'Case'

Image
I dun maed a frame for my home NAS machine.  It's been sitting as an untidy pile of connected components for just too long, so I finally did something about it. And here it is in-situ under the stairs: It's made from plywood off-cuts - the back from an old cupboard and the sides and drive supports from when I put boards up in the loft. I tried holding the PSU in with battens, but the glue wouldn't hold and they split when I tried using screws.  So instead I sank dowels into the plywood.  You can see four in the photo (two on the back board and two on the side), but there's another two on the back board holding the PSU's weight from underneath.  Rather improbably, it's actually quite a strong fit and the only way to get the PSU out is to slide it upwards. The bar across the front hooks onto two dowels (one from each side-board) so I can easily get at the drives to replace any failures.  It's got corrugated card on it to dampen vibrations and provide some grip

November Projects - Review

With Christmas right there *points*, I'm not going to set any December projects for myself.   This term at school has been gruelling, close to the hardest term I've ever had in teaching.  I have managed to get through it and get some stuff done though, so it's not all gloomy defeatism. Physical make: Loganberry frame/trellis.  I did finally finish it and I'm looking forward to properly clearing up the workshop so I can get some more physical makes done.  The garden also needs a huge tidy-up, with cutting back and weeding.  Maybe I'll get out there over the Christmas break, but I'm not going to beat myself up if that doesn't happen. Coding make: Turning my Silkworm tribute into an entry for the DOS Games Fall Jam .  I submitted a playable almost-level.  It was pretty disappointing from the content side - literally less than a dozen helicopter swoops and a simple boss.  From a technical side, it was much more of a success.  During the course of it, I develo