• Create Account

## Normals

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

8 replies to this topic

### #1_Buster_  Members

122
Like
Likes
Like

Posted 23 September 2001 - 05:43 PM

Hello everyone. I can''t seem to get the hang of normals . . . I just don''t understand how to calculate them. I don''t know what to say other than that . . . I want to fully understand this before I continue on with lighting. any help? _BUSTER_ www.dotspot.cjb.net ______________________________ Check out my for sale domain name! http://www.theatermonkey.com

### #2Slinger  Members

122
Like
Likes
Like

Posted 23 September 2001 - 05:55 PM

Try thinking of a normal as a direction surface is facing.

If you set a piece of paper on the ground, its normal would be facing up(if you ignore the backside of the paper)

normals are used to calculate lighting and collition detection (or collition response),

The normal faces strait outward from a surface, on a 90 degree angle. (although for some lighting techniques you might want to change that)

### #3_Buster_  Members

122
Like
Likes
Like

Posted 23 September 2001 - 06:10 PM

but does it matter where on the "paper" it is? see example below:

the + is the normal
_____________
| |
| |
| |
| + |
|___________|

-------------
| |
| + |
| |
|___________|

can it be ANYWHERE? or does it have to be in a certain place on the surface?

Thanks for the help!

_BUSTER_

### #4illuzion  Members

122
Like
Likes
Like

Posted 23 September 2001 - 11:05 PM

It''s a /direction/, not a position. The normal is the direction that is up, not saying ''from this point on the plane to the point defined by (your normal coords)''.

### #5_Buster_  Members

122
Like
Likes
Like

Posted 24 September 2001 - 10:38 AM

. . . oh,

Well. . . whats the formulas for then? Thanks for your help! I think I get it now. Oh yeah, my above "drawings" were messed up. . .

_BUSTER_

www.dotspot.cjb.net
______________________________
Check out my for sale domain name!

http://www.theatermonkey.com

### #6 Anonymous Poster_Anonymous Poster_*   Guests

Likes

Posted 24 September 2001 - 10:39 AM

. . . oh,

Well. . . whats the formulas for then? Thanks for your help! I think I get it now. Oh yeah, my above "drawings" were messed up. . .

_BUSTER_

www.dotspot.cjb.net
______________________________
Check out my for sale domain name!

http://www.theatermonkey.com

### #7Null and Void  Members

1087
Like
Likes
Like

Posted 24 September 2001 - 11:15 AM

You''d use the cross product (a formula for calculating perpendicular vectors). See this tutorial (I think this one covers normals): http://www.gamedev.net/reference/articles/article415.asp

[Resist Windows XP''s Invasive Production Activation Technology!]

### #8_Buster_  Members

122
Like
Likes
Like

Posted 24 September 2001 - 12:09 PM

Edge1 = P1 - P2
Edge2 = P3 - P2

Normal = Edge1 X Edge2

so if:

P1 = (-2, 2)
P2 = (-2,-2)
P3 = ( 2,-2)
P4 = ( 2, 2)

Edge1 = (-2, 2) - (-2,-2) == 4 (right?)
Edge2 = ( 2,-2) - (-2,-2) == 4 (right?)

Normal = 16

Is that right? Maybe I''m doing this all wrong. . .

This is the part I don''t get:
(from http://www.gamedev.net/reference/articles/article415.asp)

Ax + By + Cz + D = 0

What about the D component of the equation? We simply isolate D, plot the
values of any of the three point in the equation, and we get it:
D = - (Ax + By + Cz)
or
D = - (A·P1.x + B·P1.y + C·P1.z)
or even trickier:
D = - Normal · P1
But to compute the A, B, C components (because sometimes, we need
themselves, not the normals), you can simplify all these operations with
these equations:
A = y1 ( z2 - z3 ) + y2 ( z3 - z1 ) + y3 ( z1 - z2 )
B = z1 ( x2 - x3 ) + z2 ( x3 - x1 ) + z3 ( x1 - x2 )
C= x1 ( y2 - y3 ) + x2 ( y3 - y1 ) + x3 ( y1 - y2 )
D = - x1 ( y2z3 - y3z2 ) - x2 ( y3z1 - y1z3 ) - x3 ( y1z2 - y2z1 )

### #9silvren  Members

122
Like
Likes
Like

Posted 27 September 2001 - 12:56 PM

quote:

Edge1 = P1 - P2
Edge2 = P3 - P2

Normal = Edge1 X Edge2

so if:

P1 = (-2, 2)
P2 = (-2,-2)
P3 = ( 2,-2)
P4 = ( 2, 2)

Edge1 = (-2, 2) - (-2,-2) == 4 (right?)
Edge2 = ( 2,-2) - (-2,-2) == 4 (right?)

Normal = 16

Is that right? Maybe I''m doing this all wrong. . .

Actually it''s not quite right.
Edge1 = (0,4) these are VECTORS
Edge2 = (4,0)
although the length (euclidean) of each edge is 4.

cheers

/Mankind gave birth to God.

Old topic!

Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.