Jump to content
  • Advertisement
Sign in to follow this  
fejimush

Camera space angular distance for up(y), forward(z), and sideways(x) vectors question

This topic is 3789 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

What are the effects of applying a transformation matrix (camera space) to the view (if any) when the angles between the up (y), forward (z), and sideways (x) vectors are not 90 degrees? The camera object implementation that I am using doesn't enforce the up, forward, and sideways vectors to be perpendicular to each other. It only looks for 0 degree cases. Is this something that needs to be enforced? (Linear algebra isn't my strong suite) Thanks.

Share this post


Link to post
Share on other sites
Advertisement
With an orthonormal basis, think of your 3D space as being divided up into a grid of cubes. Once this basis is no longer orthogonal, your space becomes divided up by parallelepipeds. It basically skews your space depending on how parallel the basis vectors are, but other than that there are no serious math issues (other than parallel basis vectors which you already check for) and everything should work the same. You will have to go through your code and re-work all the math that might have previously assumed orthogonal/orthonormal basis vectors (i.e. the inverse is no longer just the transpose).

It's hard to verbalize the effect, you'd simply have to try it out and see for yourself.

Share this post


Link to post
Share on other sites
Ah! So would that explain the occasional stretching and skew effect I see when the up, forward, and side vectors are not orthonormal?

Thanks again for the response.

Share this post


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

  • Advertisement
×

Important Information

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

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!