Im proficient with c++ and and OpenGL(at a basic Level), I am trying to get deeper into 3d drawing. So I have created simple FPS movement. My camera works fine, and I have created a basic Terrain out of triangles. The problem I have not been able to solve is, how to handle ground collisions. I want the set the camera at player height above the ground and run around realisticly even on hills and valleys.

I have searched for days and none of the solutions Ive seen have helped. I am struggling to understand how to find the point where the actors possition intersects with the ground. My understanding of trigonometry is pretty weak, so can anybody help me out?

Thank you in advance.