Im rendering a geodesic sphere of radius 1 in OpenGL and in my glsl tesselation shader multiplying the vertex by a value from a height/ displacement map which creates some large rays protruding from the sphere. I am looking for a way to be able to clearly see the geometry this creates. Some diffuse lighting or outlining or something like a sobel filter would be ideal, but I am having trouble calculating the normals needed to apply the lighting or outlining.
I was able to calculate the surface normals in a geometry shader, but this created an un acceptable bottleneck as even with it mostly just being a passthrough shader the large number of polygons bogged the gs down. I am stuck with OpenGL 4.2 so nVidias passthrough extension is unavailable to me.
I was thinking maybe a pre computed normal map might be the way to go, but I am not sure how to generate that based on my equirectangular projection displacement map. Any thoughts or helpful advice?