March 2013
Intermediate to advanced
984 pages
26h 18m
English
We have already covered the concept of transform feedback and seen how it works when only a vertex shader is present. In summary, the output of the vertex shader is captured and recorded into one or more buffer objects. Those buffer objects can subsequently be used for rendering (e.g., as vertex buffers) or read back by the CPU using functions like glMapBuffer() or glGetBufferSubData(). We have also seen how to disable rasterization such that only the vertex shader is active. However, the vertex shader is a relatively simple one-in, one-out shader stage and cannot create or destroy vertices. Also, it only has a single set of outputs.
You have just read about the ability of a geometry shader to produce a variable amount ...