Sign in to follow this  
6666662000

How to compute point's normal which shared in 23 triangle?

Recommended Posts

darookie    1441
One way to compute the normal is to compute the face normal of each of the triangles that share the vertex and use the average of them.

Share this post


Link to post
Share on other sites
Mercury    776
Quote:
Original post by 6666662000
what does "average" mean?
(normal1 + normal2 + normal3)/3?

Yes. Make sure the three normals are normalized first, though. This is how vertex normals are [usually?] generated.

Share this post


Link to post
Share on other sites
Dmytry    1151
Quote:
Original post by Mercury
Quote:
Original post by 6666662000
what does "average" mean?
(normal1 + normal2 + normal3)/3?

Yes. Make sure the three normals are normalized first, though. This is how vertex normals are [usually?] generated.

also it's more important to make sure that normals is normanized after computing the average.
Btw, if you do not normalize first (and just use cross product), your normals will be weighted by surface area of triangle (so larger triangle will influence the normal more) and it could be desirable in many applications.

Share this post


Link to post
Share on other sites
JohnBolton    1372
There is no need to divide by the number of vectors, as the final normalize step will do that automatically. Just do this: normalize( n1 + n2 + n3 + ... ).

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