Interactive multi-pass programmable shading
SGI
In SIGGRAPH ’00: Proceedings of the 27th annual conference on Computer graphics and interactive techniques (2000), pp. 425-432
@conference{peercy2000interactive,
title={Interactive multi-pass programmable shading},
author={Peercy, M.S. and Olano, M. and Airey, J. and Ungar, P.J.},
booktitle={Proceedings of the 27th annual conference on Computer graphics and interactive techniques},
pages={425–432},
isbn={1581132085},
year={2000},
organization={ACM Press/Addison-Wesley Publishing Co.}
}
Programmable shading is a common technique for production animation, but interactive programmable shading is not yet widely available. We support interactive programmable shading on virtually any 3D graphics hardware using a scene graph library on top of OpenGL. We treat the OpenGL architecture as a general SIMD computer, and translate the high-level shading description into OpenGL rendering passes. While our system uses OpenGL, the techniques described are applicable to any retained mode interface with appropriate extension mechanisms and hardware API with provisions for recirculating data through the graphics pipeline. We present two demonstrations of the method. The first is a constrained shading language that runs on graphics hardware supporting OpenGL 1.2 with a subset of the ARB imaging extensions. We remove the shading language constraints by minimally extending OpenGL. The key extensions are color range (supporting extended range and precision data types) and pixel texture (using framebuffer values as indices into texture maps). Our second demonstration is a renderer supporting the RenderMan Interface and RenderMan Shading Language on a software implementation of this extended OpenGL. For both languages, our compiler technology can take advantage of extensions and performance characteristics unique to any particular graphics hardware.
November 24, 2010 by hgpu