I had searched the sites and refer to a few books and i realise that quite a lot of people use plane detection for explanation (which i dun understand at all), and from another book, OpenGL Game Programming, the author uses bounding objects. I dun really get the maths logic behind their explanations (all resources online).
I had tried using this way to do collision detection but it seems a bit weird.
If you want true collision detection then you want to look into plane collision. Basically you check to see if the point intersects the ‘plane’ of whatever triangle or square you are testing against, and then you see if that point is inside the triangle by seeing if the angles between the point and each corresponding vertex adds up to 360.