Automatic generation of vertex normals?

Of course. After all, the egg library is just creating GeomVertexDatas at the end of the day. If you wanted to create a faceted look by hand, you would have to replicate the shared vertices between different triangles, so that each triangle would point its vertex in the right direction. Alternatively, you could call setShadeModel() on your GeomPrimitive to either SMFlatFirstVertex or SMFlatLastVertex, and then also set an appropriate ShadeModelAttrib on the node (but this approach is more complicated, and isn’t obviously better than just replicating vertices).

That’s generally true, though you don’t actually have to write out an .egg file. You can convert your EggData directly to renderable geometry.

I would say that’s generally true. The advantage of using the egg library is that it’s good at doing all the fiddly little things necessary to create geometry (like smoothing vertex normals and putting together attributes). But it doesn’t leave you with a lot of control over the result.

David