How do I find the projection of a point onto a plane Lets say I have the point $(x, y, z)$ and the plane with normal $(a, b, c)$ with the point $(d, e, f)$. I am trying to use this in $3D$ programming.  Thank you!

Take the displacement vector from the point in the plane to the given point:
$$
{\bf v}=(x-d , y-e, z-f)
$$
and let ${\bf w}$ be the normal vector to the plane.
We can describe ${\bf v}$ as a sum of two vectors; one that is perpendicular to the normal vector ${\bf w}$ (denoted by ${\bf v}_\perp$), and another that is parallel to the normal vector ${\bf w}$ (denoted by ${\bf v}_\parallel$).
$$
{\bf v} = {\bf v}_\perp + {\bf v}_\parallel 
$$
${\bf v}_\parallel$ is given by 
$$
{\bf v}_\parallel = {{\bf v}\cdot{\bf w}\over\Vert{\bf w}\Vert^2} {\bf w}
$$
Then 
$$
{\bf v}_\perp =  {\bf v} - {{\bf v}\cdot{\bf w}\over\Vert{\bf w}\Vert^2} {\bf w}
$$
From this, the required point is $(d,e,f)+{\bf v}_\perp$.
