- Bug Fix: Fixed black screen on Galaxy SII
- New Feature: Water plants available in settings
- New Feature: Fish flakes cause water ripples
- Update: More visible fish flakes
- Update: Adjusted fish turning behavior
The big reason for this update was the Galaxy SII issue, which was resulting in a black screen similar to Chroma Wave. We were, again, using a RGB render target. In this case that wasn't the only incompatibility though.
For whatever reason rendering the fish was breaking everything, even once we got the buffer format switched. A lot of poking and prodding eventually demonstrated that the Mali 400 (The SII's GPU) has drivers that seem to stick very strictly to the OpenGL spec. As it turns out, we weren't properly unregistering our attributes when switching shaders, and as best I can tell all the other drivers just go ahead and do that for you, so it was never an issue previously. We now unregister all our attributes and uniforms whenever we switch shaders, and everything's fixed now.
Why was it the fish breaking everything? They use animation blending, so they register an extra set of attributes for the blend frame's positions and normals. Those stuck around when we switched shaders, and the data they had wasn't relevant for the new model, so things broke and rendered black.
Going back to the other updates in this, uh, update: You can now add water plants to the scene! There's a slider in the settings menu letting you go from just a couple all the way up to 16. These are affected by the water distortion currently, which isn't entirely correct but looks much better than the first draft that wasn't. We'll investigate having them float on top the water and respond more appropriately eventually.
Lots of people didn't think the fish feeding worked, and I largely chalk it up to the fact that the fish food blended in quite seamlessly with most of the backgrounds. To that end, any fish flakes that spawn now cause a water distortion. In addition, we've dyed them blue for better visibility.
While all the rest of this was going on I adjusted the handling of the koi's angular acceleration. I think it's a notch smoother than it was before, please let me know if you disagree.