1. A method comprising: selecting fragments to process; executing a culling program for said fragments, said culling program being replaceable; and executing a set of instructions, selected from a plurality of sets of instructions based on an output value of said culling program, for each of a plurality of subsets of said fragments.