What's normal do in creating a triangle?

In this playground, no matter normals is set to +Z: var normals = [0,0,1,0,0,1,0,0,1], or -Z direction: var normals = [0,0,-1,0,0,-1,0,0,-1] (the vertex normals reflects the normals as expected), the visible side of the generated triangle is always facing -Z.

I thought if the normal is pointing at +Z, that means the +Z side is visible. Why it’s not the case here?

“front” face depends on the vertex indices winding order. I reversed the winding order and now the front face matches the normal direction.

1 Like