So, for the first dev blog type post, I'm going to share what I've been working on for the last few months:
Implementing
lsqlin in C#, in a way that's efficient.
It doesn't sound very exciting, but it's really important for fluid and bots changing shape. It's also what the Physics will use to solve constraints and contact points. Most importantly, it's what will let all three systems (fluid, physics, bot shape) work together consistently, without producing any
problems.
The solver I'm working on uses a
Complete Orthogonal Decomposition and needs to update a QR decomposition, so I've been working on those over the summer. I've finished with them, and run them through a rather aggressive suite of tests, and things look good. Importantly they are very memory and cache efficient, so I should be able to get performance out of the solver that's better than Octave (an opensource Matlab clone).
I'm going to put them together in to the final lsqlin algorithm, and then I'll be done with this part (hopefully). I expect that to take me another month maybe to code up and test.
Once that's done, my plan is to combine it, my graphics engine, and the code for DNA to produce a simple app to try out changing and controlling robot shape. My obstacles there will be ensuring that the robot roughly maintains its total area and doesn't self intersect itself, and how best to actually control the shape of a robot from DNA.