I worked on the Mac port — so seeing Brawe and its demo featured on Mac Steam makes me quite happy! You can grab Kaptain Brawe for PC and Mac on Steam for 19,99EUR. It’s also available for Mac on Mac App Store, Gamer’s Gate, MacGameStore, and more. You should visit Kaptain Brawe’s page on Cateia.com for info.
/Users/ivucica/Developer/ogre/Mac/Ogre/../../OgreMain/include/OgreAxisAlignedBox.h:246: failed assertion `(min.x <= max.x && min.y <= max.y && min.z <= max.z) && "The minimum corner of the box must be less than or equal to maximum corner"'
In Cateia, we were getting this bug on one particular place in the game, related to a particle system in Ogre3D.
We use PythonOgre and we normally quite liberally throw around try..except blocks to catch issues. Most exceptions are caught properly on the Python level because PythonOgre wraps most Ogre3D exceptions. However, this is not an exception, this is an assertion.
Basically, particle systems in Ogre are interesting in that they automatically update their own AAB (axis aligned boundary [box]) for initial 10 seconds (after which they are presumed to reach their maximum size). You can change the length during which update will happen, if at all.
We have a particle system of water which falls to the ground. This means that at one point AAB becomes very, very small (or perhaps even inverses itself?) Since our game is a 2.5D adventure (2D backgrounds, 3D characters), we really don’t need AABs that much because only objects that are on scene are relevant.
So the solution is:
We expand to infinite boundary box, and tell the particle system not to update itself. C++ code is the same.
Akella’s site about LoCV is here.
Now, if only they didn’t put outdated screenies on the cover … 😉
Iron Roses, aside from great work by our own musicians, includes nice tunes from Megasapien.
Check out the game, and go buy it!