I'm trying to read vertex and face info from a file and calculate the vertex normals. I've read lots of other answers but I'm still not sure I understand. The consensus is that the vertex normals should be the average of the surrounding face normals, which makes sense at first glance. For a cube the normals should all be at 45 degrees. Is that right? Because the calculations only come out like this if the triangles are arranged in such a way that each vertex shares either 3 or 6 'faces.'
Question:
If a cube has a vertex with, say, 4 triangles, should I weight them somehow so that the normals do come out at 45 degrees. Or should I sum the face normals? Does OpenGL expect the vertex normal to slope more towards the face with 2 triangles? Also, should I normalise the face normals before summing?