Sign in to follow this  
Metus

veeeery basic 3d-math tutorials

Recommended Posts

Ahhh.. i'm going insane.. the pain in my brain... That's how I'm feeling trying to read those "basic 3d math primers" that you can find in your favourite bookstore. The problem is that those books are to advanced for me (3D Math Primer for Graphics and Game Development, Mathematics for 3D game programming and computer graphics) and i really got stuck at the first chapter with the theroem of a vector dot product. I don't even know what |v| means, more less what this actually means: http://mathworld.wolfram.com/d2img1906.gif I have no idea what i'm supposed to use Vector projections for or what the difference of vector rotation (euler) and quaternion rotation is. So I really need some help, cause I really want to program 3d games; i've got the programming skill, the interest and the knowledge of different hardware, but I just can't learn this darn math. Give me some hints of som very very very basic tutorials or a really n00b-book

Share this post


Link to post
Share on other sites
Hi,

I'd try sticking with 3D Math Primer for a bit. IMO it's a pretty good introduction to 3D math for the non-mathematician.

One thing I usually do when I'm having trouble with a concept is to find as many different references on it as possible and examine. Each will usually come at the problem from a slightly different perspective, allowing you to see the problem in a different way. Sooner or later, things will 'click' and you'll see the big picture.

The dot product is one of the most basic operations in vector math, so you can find countless descriptions and discussions of it - just search the archives here for many threads on the subject.

If you're still confused about anything, ask in the math and physics forum, where you're sure to get help.

Finally, the dot product of two vectors is simply the sum of the products of their components. So if you have two, say, 4-dimensional vectors X and Y, then:

X•Y = X1*Y1 + X2*Y2 + X3*Y3 + X4*Y4

That equation from mathworld simply formalizes the above. The symbol that looks sort of like an E or a Z means to 'sum'. The i = 1 below it and the n above it mean that we're going to use a subscript i which will start at 1 and progress to n. For each i, we're going to multiply together the 'ith' components of x and y, and add them to our running sum.

I don't know how this post got so long, so I'll finish up. It can help to think of the 'sum' notation in terms of code. In code, the equation you posted might look like this:

float dot = 0.0f;
for (int i = 1; i <= n; i++)
dot += X[i] * Y[i];

(Except of course that in C the index would probably start at zero.)

Anyway, I encourage you to give 3D Math Primer another try. Just take it a sentence at a time until you understand it.

Good luck.

Share this post


Link to post
Share on other sites
Well if you just want to learn '3d math', forget about Linear Algebra now. Linear Algebra is far more abstract and 'complex' than what you need. It doesn't hurt tho. Before trying to understand Linear Algebra, I recommend getting into Euclidian Vector Geometry, or well basically just the 'simple 3d math'. The above definition from wolfram is a generic one, targeted at n-dimensional vector spaces, thus an 'academic audience'. Strange huh? With some work and dedication (you really don't need to be a genius to grasp this) you should be able to understand the basic principles of 3 dimensional vector geometry. The link posted above looks well suited for that matter..

Linear Algebra 'expands' this concept, it defines 'vector spaces', which are abstract constructs, who have to follow CERTAIN RULES. With Vectors and Matrices, you can display linear equation systems, polynomials, functions, and 'linear transformations' etc.. It's not connected to the 3 dimensions of space anymore.

If you have any questions, feel free to pm me...

[Edited by - feisar on December 14, 2004 7:52:05 PM]

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this