1. A volumetric renderer for rendering a scene having a set of volumetric scans and a set of manipulators for enabling a user to interact with the rendering, such renderer comprising: a compositing rule table database having therein a plurality of compositing rule tables, each one of the tables providing the compositing rules for a different combination of input volumetric scans into the rendered scene; a data manager for receiving the different volumetric scans and for building therefrom a renderer queue, a representation of the such volumetric scans in graphics memory and a type signature, such data manager preparing a specific one of the volumetric scans for rendering by packing the specific one of the volumetric scans into textures, such data manager creating the render queue having a list of volume bricks, such data manager also creating a type signature based on the types and sequence of the volumetric scans contained in the scene; a shader builder for receiving the type signature of the volumetric scans from the data manager, and for receiving shader functionality from the data manager, the sampler and the transfer functions in the scene and for selecting a compositing rule table from the database based on the type signature of the volumetric scans and for building a shader database from the received shader functionality, and selected one of the composting rule tables; wherein the sampler receives the render queue, the volumetric scans in graphics memory and the shader database for rendering an image of the volumetric scans, for each brick contained in the depth-sorted render queue the sampler determines the least complex shader based on the render parameters and transfer functions in the scene, binds such shader and the required textures to form the final image one brick at a time.