Ok, if you didn't get the joke in the title, I appologize. You'll get it after you finish reading this post. If you still don't go take a physics class, you dolt.
Ok, well, I stumbled onto the solution to our problem with the asteroids not moving correctly. I did this by thinking it was one thing, but then in fixing the fallout from my change, stumbling across a bit of code that made no sense, and was the source of all our problems. We were setting the translation matrix to a dummy matix. I think we'd done this to fix unstable rotations.. but the simple fact is, it broke everythign horribly. Removing that code, and some old, uneeded workarounds for problems now gave us some sweet physics actions! I mean, this shit really works! I shoved the Ar-1 model all over the place... granted, I had to work hard at it, since it's about four times the mass of my little ship, but still! Also, we bounce off the asteroids without doing much... as we should.
Now, however, we ran into some problems with high speed collisions. I think the rotation matrix values are overflowing. 0.o Yeah, not kewl. Looking into that problems, we did soe back of the envolope calculations.
The Ares is 520 kg (in ODE's units). The main engines provide 2,000,000 Newtons of thrust. Therefore, that's an accelleration of about 4,000 m/s^2. Now, ruff calculations lead us to the startling conclusion that in 7 minutes of constant thrust, the Ares would reach the speed of light! Umm... oops?
So, yeah, we're trying to do physics calculations at points where newtonian physics breaks down really badly. This isn't good. We just never noticed it because of how horribly nurfed the physics were. So, now we've gotta put in velocity limiting, and rotation limiting.
Btw, it looks like if we want an appropriate velocity limiting, we use this: v = c tanh U / C (There V is the velocity, U is the velocity it would be if the universe operated souly on Newtonian Physics... aka the velocity wthout limiting, and c is the speed of light in m/s^2). Pretty simple.
Now, for rotational stuff, I think we'll have to break realism, and put in our own form of limiting... just because the phsyics engine can't handle things. Who knows, we might fix the physics engine somewhere down the line.
So, yeah, shit moves now! (Well, more to the point, it DOESN'T move... much. Unless you hit it fast, and even then you go spinning off like there's no tommarow!)
--Chris