I missed posting last week with a horrible case of flu (my wife and I have been passing it around, unfortunately). Otherwise, a fair amount of work has been performed. Nothing super exciting, but solid progress:

  • Fixed up a bug that was preventing settlers from deciding to hunt for wildlife.
  • Added voxel models for chemist and carpenter shops.
  • Went through replacing std::tie with C++17 structured bindings in a lot of places, simply because I like it.
  • Spent some time getting PCH working in VS2017, for massively improved compilation times.
  • Moved the z-buffers to float precision, rather than partial. This cleaned up some z-fighting, and makes a few other things easier.
  • Refactored the camera into its own set of files, rather than liberally strewn around the render engine code.
  • Implemented a directional sun and moon. It renders to its own z-buffer, and then reprojects the main render to see if an area is shadowed. This gives a very pleasing effect.
  • Brightened everything up; it was too dark.
  • Loaded the ASCII/CP437 graphic correctly on start-up, and put infrastructure in place for both placeholder ASCII art (it still loads REX files for most things) and for ASCII mode.
  • Cleaned up the interfaces for farming and guarding, ready to have those working in the new engine.
  • Chased down the “finalize building” code, which was nastily strewn (and slightly repeated) across a couple of different places, and turned it into a nice, clean interface that only needs to be maintained once.

I think next week should have screenshots (maybe video) of a lot of this; we’re not quite there yet!