This example shows that the ordering of the polygon vertices is important.

#VRML V2.0 utf8


Group {
   children [
      Shape {
         appearance
         Appearance {
            material
            Material {
               ambientIntensity 0.1
               diffuseColor     1 1 1
            }
         }
         geometry
         IndexedFaceSet {
            coord
            Coordinate {
               point    [ 0 5 0,
                          -2.5 0 -2.5,
                          2.5 0 -2.5,
                          2.5 0 2.5,
                          -2.5 0 2.5 ]
            }
            ccw FALSE
            creaseAngle 0.5
            coordIndex  [ 0, 4, 3, -1, # Counter-Clockwise
	                  0, 3, 2, -1, # Clockwise
                          0, 2, 1, -1, # Counter-Clockwise
                          0, 1, 4, -1, # Clockwise
                          1, 3, 4, -1, # Counter-Clockwise
                          1, 2, 3, -1  # Counter-Clockwise
	    ]
         }
      }
     ]
}

The creaseAngle field tells the browser to do a smooth transition from one
polygon to another. This will have more pronounced effect on a curved
surface.  The visual effect of this mistake depends on the browser.