So with vertex normals, when you try to shade a simple cone, you have to use a lot of geometry or a normal map. Because if you try to use just 1 vertex on top, the back side will not shade correctly. And if you use quads with a flat cylinder top, you get these hard smoothing edges from the tris. I know the simplest…
I couldn't do any better either, but I wonder if there's any special shader out there just for cones? Here's a really stupid "solution" with 20 faces though! ...but it also uses transparency and a normal map.