Subdivision levels in geometry shader

Subdivide each triangle to smaller triangles in the geometry shader.

The maximum subdivision level is limited by the amount of max vertex
shader outputs (1024 floats).