I got this same assert about 2 hours ago, and I've read through these threads, but I'm on a whole different level as I only started using Ogre 3 days ago. I used Irrlicht briefly before though so I get what you guys are talking about to an extent, but no idea how to ferret out such problems in my own code.
I have a few issues that seem odd however:
I'm using the Advanced Ogre Framework, and it has been working nicely so far. All of a sudden, pretty much the whole program has started dying.
I'm not doing anything fancy with the camera, lighting, shadows, bounding boxes or anything. Still learning the ropes and getting a decent-sized scene set up.
If I add Kojack's _controlfp_s thing at the start of my main() function, the program will crash from "multiple floating point traps" or something, and the stack will be full of CEGUIBase_d.dll calls.
I understand that there's a very real possibility of ugly numbers getting spread through my code, so I don't want to say I've narrowed it down to one line... but the 'head' of the problem is the results I'm getting from Quaternion::Slerp. If I don't use Slerp (just use instant rotation instead), then I can run without the assert (of course, the _controlfp_s doover still complains).
If this post seems a bit chronologically fractured, it's because it's midnight and I wrote it over the course of half an hour while steadily improving my understanding of the problem. I now have two questions: what is going on with CEGUI that would be throwing floating point trap things, and what am I doing wrong with my Slerp?
Regarding my Slerping, I'm doing pretty much exactly what it says in the
Quaternions Primer, but I (FINALLY!) discovered that my Slerped quaternion (delta) was being set to w, x, y, z = -1.#IND000. Is there some obvious reason it would do this, or am I going to need to post code and/or dig? The crazy part is that it has been working fine for a day or two now, and the stuff I changed today was nothing to do with movement/rotation... Sigh.
Apologies, I know this post didn't make sense - I'm dazed, confused, and very tired. Any help will be more coherently responded to tomorrow morning
Cheers!