Minor tweaks. Still trying to decide how I want to refactor this, so things are more contained/flexible.
Some outlining in comments on changes I want to make.
Started outlining changes to lifegraphics.c. Began writing Vector handling functions.
Prototyping of functions that will be used in lifrgraphics.c as well as filling out some of my vector3 functions.
Rewrote SyncWorldToScreen critical section to not duplicate code.
Added code to normalize vectors, and fixed build string comment.
Cool, so I've successfully inflated the structure I set out to replace. But new code works, just need to fill in all the empty functions.
QuadDrawData_t is now an opaque type. Woohoo!
Shaders now support scaling/translation input.
Scaling works! Right now test code written to just do a slow zoom.
Can now zoom in/out with scroll wheel and move the world around by left-clicking and moving the mouse.
Scroll wheel appears to roll-over, should be fixed.
Code is a bit hackish and could stand to be cleaned up.
Added 3 files to the data directory, all exhibit infinite growth.
Other minor tweaks included.
Rewrote the CopyWorld function. MUCH faster now.
Rewrote stack initialization function in a more OOP-ish style with a NewStack() function that returns a ptr to the stack.
Updated readme.
Changed readme.md to readme.txt, doesn't render correctly on GitHub and I don't feel like messing with it.
Some data hiding in stack.h
There is now a background quad drawn so you can tell where the world ends and void space begins. It's good to know when your toroidal world takes effect...
My data hiding tricks are bad practice, removed.
Sim supports variable Life rules now.