My college Physics class keeps on increasing my interest for physics, and I'm getting bored of the in class work so I've decided that I want to try to make a physics engine so that I can play around with physics and help myself learn more of it without being confined to just what my professor teaches us. I'm also a Computer Science major so programming all of this is double the fun! :) Anyways, so in my engine right now I just have a particle that is falling due to the force of gravity. I have no air resistance or anything like that yet, gravity is the only thing acting on it. Now what I'm wondering is, how do I make the particle stop when it hits the ground? I've been googling this for about a week now and just can't figure out what keeps an object from falling through something when the collide. This isn't two objects colliding, it's one object with the ground which has no velocity and the mass seems like it'd be way to big to do anything with, so I don't think I can use the conservation of momentum. Also, wouldn't the material of the object and the surface it collides with have an impact on it? A bouncy ball is going to have more of a reaction when it falls to the ground than say a cement brick. And if you were to simply drop a bouncy ball on the cement, it would bounce higher than if you were to drop it on the grass or some other surface, correct? So could someone please help me figure out what keeps an object from passing through another stationary object?