#### Archived

This topic is now archived and is closed to further replies.

# how to calculate face normals?

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

## Recommended Posts

I now have a clue about BSP, but I need to calculate the face normals for all my polygons. I tried looking in the SKD docs, but they didn''t say. (it says normals are calculated by D3D when needed, so you don''t have to worry about them). Anyone know a formula to do this? Proceeding on a brutal rampage is the obvious choice.

##### Share on other sites
the face normal will be the cross product of two lines defined each by two of the three vertices of a triangle.

##### Share on other sites
If you have three points of the triangle: A,B,C, then you do this:
vector Normal;vector U;vector V;U = A - C;V = A - B;Normal = U cross V;

"Cross" is the cross-product. If A, B, and C are in counterclockwise order, this will return the correct normal... either that, or clockwise order, I forget.

~CGameProgrammer( );

##### Share on other sites
This is the cross-product:

  Vector( (V1.Y * V2.Z) - (V1.Z * V2.Y), (V1.Z * V2.X) - (V1.X * V2.Z), (V1.X * V2.Y) - (V1.Y * V2.X) );

~CGameProgrammer( );

Edited by - CGameProgrammer on January 30, 2002 8:26:24 PM

1. 1
2. 2
3. 3
4. 4
Rutin
17
5. 5

• 11
• 32
• 12
• 12
• 11
• ### Forum Statistics

• Total Topics
631409
• Total Posts
2999928
×