A system, method and computer program product are provided for
programmable vertex processing. Initially, a vertex program is identified
including branch labels and instruction sequences with branch commands.
The vertex program is then converted to a binary format capable of being
executed by a hardware graphics pipeline. The vertex program may then be
executed in the binary format utilizing the hardware graphics pipeline
for transforming vertices. As an option, the vertex program is initially
written in a textual format capable of being read by a human prior to
being converted.