![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
![]() |
![]() |
![]() |
![]() |
|
*Introduction.     -What is ALEPH?.     -Problem Setting.     -Facts and Details.     -Programming.
*Specifications.
*Gallery. |
![]() |
Specifications for ALEPH 4.0   ALEPH is a software platform for illumination simulation with several components. Except for punctual limitations that will be specified all the soft is independent from hardware and operating system issues. At the moment, the full software runs on many Unix systems (Irix 5.3-6.2,with multiprocessing options,SunOS 4.2,HPUX-9) and a development version of the libraries works on a T800 transputer network. Some previous versions have been tested on Linux,OSF,WindowsNT and MacOS, and in an immediate future we expect to have access to a Solaris system, including the multiprocessing options. ALEPH Components The ALEPH environment is built froma series of soft components:
1.- THE LIBALEPH LIBRARY The system core is a programming library that allows definition of the geometry, light sources, properties, camera, etc. for a scene, and simulates light propagation, giving as result images in some of the available formats. For scene description ALEPH uses RenderMan Interface. The library follows the specifications for C binding of the interface (version 3.6). This implies that some last-version calls are available, like RiReadArchive, that allows inclusion of RIB files from C programs or other RIBs. The library simulates the illumination process by numerical resolution of the Integral Radiance Equation (or Global illumination Equation), using MonteCarlo o quasi-MonteCarlo mehods where necessary. End-User Specifications
Internal Techincal Specifications
2.- THE LIBRU LIBRARY The libru (RenderMan Utilities) library encloses some utility functions defined on top of the RenderMan procedures: they simplify the work on the interface when specifying camera positions, defining objects, working with vectors and matrices, and so on. Available functions cover this aspects:
3.- AUXILIARY SRCIPTS Every-day work with this libraries requires some work for writeing C code, compiling and linking on Unix systems. This process can be complicated, and usual tools to simplify it (mainly the make command) can be difficult to understand. The ALEPH project supplies an automatic makefile generator, the amkmf script (Aleph MaKe MakeFile), that generates configuration files for compilation. 4.- UTILITY PROGRAMS A series of utility programs has been built over the latter two libraries. They allow the user to skip the programming step in some cases, or provide several utilities. This utilities are:
The RenderMan interface allows all the rendering options to have a default value (unless otherwise specified) in either the program or the RIB file. In ALEPH, the standard default values can be modified thru a hidden file named .alephrc. This file is a standard RenderMan Resource File, and contains all the RIB commands necessary for the options to be modified. It can be edited with a word processor or via the interactive program rapp (Render APPlication), which in addition lets the user launch the rendering process. Automatic rendering of RIB files The rib module allows the reading of files with standard RIB models and generation of the images. The RIB file can come from commercial modeling or rendering packages. It does not require any special programming skills or computer graphics knowledg e. It allows the reading of the model and the automatic generation of images or animations. Conversion from other formats to RIB The dxf2rib and irit2rib programs allow the conversion from DXF or IRIT formats to RIB. The rcat program allows the conversion from a binary RIB to ascii. Conversion from IES and CIE luminaire files to RenderMan light shaders The ies2sl and cie2sl filters convert a standard IES or CIE file to a shader appliable to any of the available light sources. Straight on-screen rendering visualization The xafb utility works as the RenderMan framebuffer on X11. Image-data file visualization The xdp program allows the onscreen visualization of PICT files, under both 8 or 24-bit resolution. The vrad program allows the visualization of radiance files (RF), allowing the u ser to adjust the conversion of luminances to RGB monitor values, by several methods: Ward, Rushmeier-Tumblin... Image files conversion The z2pict program converts a depth map to a grey-scaled PICT file. 5.- SHADERS AND TEXTURES The installation of ALEPH leaves a series of external shaders and textures already compiled, such as the shaders that correspond to standard IES luminaries. The shader compiler asc The RenderMan interface allows the use of external illumination models defined in a given language. Once compiled with the script asc, an object file is generated, which can be loaded from the library. Nowadays, the language used in ALEPH is not strictly the same Shading Language defined in the standard RenderMan, but a C subdivision with functions equivalent to those available in the Shading Language. The loading and utilization of these files is based upon the dynamic object management utilities available in almost every Unix system. 6.- DISTRIBUTED RENDERING Works on SMP multiprocess systems (with shared memory), thru the use of threads. The only systems where this has been implemented so far are SGI Challenge and Onyx multiprocessor stations. Within a close future, this is expected to be tested also on Solaris multiprocessor systems. Possibility of achieving parallel renderig on several machines. Based on MPI (currently under investigation). 7.- FUTURE WORK Shading Language Implementation of the optional RenderMan extension known as Shading Language, that allows the use of user-defined shaders without having to access the library sources, and the exchange of compiled shader object files between machines. Networking Networking organization by task queuing. About ALEPh: seron@posta.unizar.es; magallon@ivo.cps.unizar.es |