Drew Noakes
Drew Noakes

Reputation: 311275

Generating vertex normals for smooth shading with crease angle in Three.js

I have several objects in Three.js's JSON Model Format. It specifies vertex positions, and faces -- sometimes triangles, sometimes quads, sometimes with material indices and sometimes not.

However none of these files have vertex normals specified.

I want an algorithm that can calculate such normals over a set of mesh faces. I'd like to specify an angular limit beyond which a crease is shown (normals are not shared by adjacent faces at a vertex.)

Before coding this myself I wondered, does this exist either in Three.js already or somewhere else that's usable?

Upvotes: 5

Views: 4483

Answers (1)

WestLangley
WestLangley

Reputation: 104843

The only thing available is

geometry.computeFaceNormals();
geometry.computeVertexNormals();

See the source for the algorithm.

three.js r.55

Upvotes: 5

Related Questions