Jump to content
  • Advertisement
Sign in to follow this  
Sansros

Frustum planes in world space

This topic is 2038 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Going through some literature, I became confused about matrices in relation to extracting world space frustum planes. 

 

The way being devised to extract frustum planes was to use the Projection matrix alone and to play around with column values and normalization. That I understood fine. I guess, the problem with this way was that all of the plane normals extracted were in camera space and in effect, all distances would be 0 since, even if the planes are far away in world space, they are always are the origin of the camera. 

 

In any case, the solution to extract world space frustum planes was to still use the same method but to use the View * Projection matrix rather than just the Projection matrix alone. I fail to see though how the resulting matrix helps us get the frustum planes in world coordinates. If I multiply the View and Projection matrices, I get that my view frustum is now in the shape of a box and that vertices, multiplied by this, would be against the box planes. Thus, I am going from world space to NDC space.It would have made sense if I were told to take an NDC space plane normal and to multiply it by the inverse of the View matrix to get a world space coordinate but that's not the current issue. 

 

Btw, for sake of context, here is the way the world space frustum plane was being extracted from the VP matrix:

 

 

Left Plane->Normal.X = - (m14 + m11) = 1.62566
Left Plane->Normal.Y = - (m24 + m21) = 0
Left Plane->Normal.Z = - (m34 + m31) = -0.211452

Share this post


Link to post
Share on other sites
Advertisement
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!