1. A machine-implemented method of 3-D rendering, comprising: establishing a frame buffer having respective locations for storing results of a rendering process that produces pixels of a frame of pixels; executing a shader on a processor, the executing comprising storing a value in a location in the frame buffer, and emitting a definition of a ray to be traced, the definition of the ray comprising identification of a temporary buffer location that is distinct from the location in the frame buffer where the value was stored; identifying an intersection between the ray and an element of 3-D geometry; shading the intersection, the shading comprising determining a value and causing the determined value to be stored in the temporary buffer location; and combining contents of the temporary buffer location with the contents of the location in the frame buffer.