Collision Detection: ball falling down to a grid

Hello everyone,

I am quite new to opengl and I want to make an application where we have a ball falling to a grid(where z=0) and when it touches the grid the ball just disappears. So far Ive made the ball fall down to the grid but then the ball just penetrate it and continue moving upside down. My guess is that when a vertex of the ball reach z=0 I just stop drawing the ball . I have this vector for my ball std::vector<glm::vec3> vertices; and a modelMatrix. On the do while loop I move the ball using the modelMatrix with the translate function with :

ModelMatrix1 = glm::translate(ModelMatrix1, glm::vec3(0.0f, 0.0f, -0.001f));

Do I need to make something like: transformedVector = modelMatrix * vertices ? to just save the new position of a vertex of our ball? and then when this vector reach z=0 I make the ball disappear?
Any help whould be appreciated!