Yeah, Insanity has alot of collisions per frame. The fact that it has no slowdown is a testament to the bamfness at Aetherbyte.
But I think 1 frame = 1/30 sec. If Arkhan hadn't insisted on using bounding boxes (ie, not the actual sprite sizes; it varies depending on which way you face) we could have done it in 1/60 sec. All those adds added up. No pun intended. It's one of the things I want to fix for the multi-player version But to be fair, is -was- his decision to make.]
If you used 16x16 boxes the game would be more shitty than it already is!
You'd collide before you get visual confirmation!
and Spenoza, you didn't insult anything lol. I'm sorry if I'm coming off defensive. I'm not! I'm just giving the behind the scenes stuff that most people are unaware of. Things that seem kind of plain/easy on the surface can pandoras box into a nightmare.
... like Insanity did!
More collisions than a commercial shooter! Whoops.
Also, an understanding of math only gets you so far.
See, there are programmers who program, and then there are engineers who program.
I have a buddy that has a masters in controls systems engineering. He is a mathematical god. Tons of physics, calculus, and other odd maths. You give him a math problem, he will solve it. He's reverse engineered Ultima Online to the point where hes got more money than the rest of his server combined. You will probably lose most table top games with him. He crunches numbers in his head and figures out how to pummel everybody before they even finish their turns usually.
He can't program. He openly admits it. He can f*ck with something until it does what he wants, but it will be inefficient and have "what the hell were you thinking" written all over it because he doesn't have a grasp on key good-programming concepts. He will get a problem, figure out how to solve it, get it working, and be done with it. He's not expected to be an ace at efficient programming. Hes an engineer!
Being able to think abstractly, planning for things to be modular (collision checks!), having tightly-knit logical processes.... that stuff is far more important. If your mathematical algorithms are the most amazing things ever, but the logic to implement them is full-retard, it won't matter. You'll bottleneck all over the place and produce tons of overhead just by being sloppy with your planning.
and, lol, pointers in HuC. Yeah right. We don't even get structs.