I'm trying to simulate the environment on a Squash Court on Android with my own physics and using OpenGL for visualization. Basically, its about a rubber ball bouncing around in 3d, not just on the floor but also on the walls.
What I'm not quite sure about is what kind of physical concepts are altering the movement of the ball or how much they are.
- Obviously there's gravity...
- Also, air friction, but I'm not sure how to calculate air friction of a rubber ball that is roughly 40mm in diameter. I've tried different formulae but I wasn't happy with them (eg. some were linear to speed and some were quadratic lol) and I was missing some material-dependant constants.
- Then there's the normal force applied from the solid shape on which the ball bounces. I don't think I need to alter any values as the normal force is "taken into account" by changing the ball's direction. I mean, if the solid shape where the ball bounces is vertical, normal force is zero but the ball still changes direction. Correct?
- Now, every collision reduces the kinetic energy as it emits sound and warms the ball. I assume that this reduction is greater if the ball hits the solid shape on a tighter angle. Is there a way to quantify it? So far, all I could do was use values "to make it look like it might be".
- Furthermore, I suspect that the angle at which the ball hits the shape is not equal to the angle in which it leaves the ball. Obviously, if the ball hits at 90° (orthogonal), then it will leave at 90°. On the other hand, if the ball hits at, say, 45°, it might leave at 30° (compared to the solid shape eg. the floor).
- There is spin which I have not spend much thought on but if anyone knows where I might find something about that I'd be greatful.
- Other forces/effects on the trajectory of the ball...??
Thanks in advance :)
Edit: To summarize, I am looking for (1) an applicable formula that represents air friction with possible constant values depending on the rubber-ball-scenario, for (2) a confirmation that my way of handling normal force is correct, that (3) a way of quantifying energy loss of the ball in a collision, (4) how (if) the angle after the collision is altered, with regard to the incoming angle, and lastly (5) how to handle spin.