Hi Roland,

Hrm - I get the angle -almost- for free...my vertices and faces are linked in the internal data structure, so the weighting cost is the cost of:

- calculating the normalized vector to the adjacent points on the polygon (the vertex "object" can be found by ptrs easily)

- calculating the dot product of those vectors

- applying acos to get a radian angle weight.

I don't need to normalize - after all, the angles going into the vertex may not sum up to 360 or 2pi. I just use the relative weights and renormalize the normal at the end, something I would have had to do anyway.

Adding the weighting coefficient only slowed smoothing by 5% - that's a pretty light cost to pay to get the specular hilights looking right when a face is/must be triangulated. :-)

cheers

Ben

Hrm - I get the angle -almost- for free...my vertices and faces are linked in the internal data structure, so the weighting cost is the cost of:

- calculating the normalized vector to the adjacent points on the polygon (the vertex "object" can be found by ptrs easily)

- calculating the dot product of those vectors

- applying acos to get a radian angle weight.

I don't need to normalize - after all, the angles going into the vertex may not sum up to 360 or 2pi. I just use the relative weights and renormalize the normal at the end, something I would have had to do anyway.

Adding the weighting coefficient only slowed smoothing by 5% - that's a pretty light cost to pay to get the specular hilights looking right when a face is/must be triangulated. :-)

cheers

Ben