Honestly, I am not sure exactly where I was when I wrote my last post, in terms of engine work. That is OK. Or should I said, OOK? ;]
That said, here is what I believe has been accomplished since last update:
- Finished defining most of the resources and the resource loader. All resources are stored in JSON files. Examples are shaders, materials, particles, etc.
- Reorganized some rendering code for cleanliness
- Changed the base unit for vert/frag shaders to a shader object
- Changed the base unit for textures/shaders to a material
- Added a basic particle system. This needs work. I don't really like how I am currently doing it, as it isn't very flexible. My plans are to add particle groups so that I can define things like inertia, directional particles, trails, etc.
- I created a makefile generator script in Python, so I can now compile independent of Xcode. This is the first step toward compiling on Linux and Windows.
- Finally, I added a lot of checks and redundancies so that when things fail the program doesn't explode. An example is default textures, shaders, materials, particles, etc. I can't vouch for what happens if you delete all the defaults though. ;] There are still a lot of checks to be had.
I will share all of the details of my particle system, as well as some of my creations using it once I make more progress. In the mean time, I am uploading a video of a test explosion particle I made. You can view it in the videos section.