Written by Paul Bourke
May 1993
Examples, technical advice, and testing by:
Matiu Carr,
Alex Plummer,
and Bill Rattenbury
In order to use Radiance with the ArchiCAD package we have written a translator that takes a RIB file as output from ArchiCAD and creates a Radiance scene description file ready for the Radiance rendering package. The program has one required argument which is the RIB file exported from ArchiCAD, it writes the Radiance scene description (header, lighting, materials, and geometry) to STDOUT, this would normally be piped to a file or to some other process in the normal UNIX manner. There are three switches which will determine what data is exported, they are l (light sources), m (materials), and g (geometry). Thus the most common method of calling the translator from UNIX would be
archicad2rad -l -m -g myribfilename > myradiancefilename
This would output lights, materials, and geometry. If the model was modified in ArchiCAD then the next time it was converted only the geometry may need to be created, this would be done with
archicad2rad -g myribfilename > myradiancefilename
A major design aim for the translator was that this file can be rendered without modification and can thus be used by relatively novice Radiance and/or UNIX users.
The Radiance scene description file created by this translator contains the following major sections:
The materials correspond by name and, where possible, to the type of the material specified within ArchiCAD. Thus an ArchiCAD material name is used as the Radiance material name except that all white characters (spaces, commas, etc) and stripped out to ensure a legal Radiance material name. This material name conversion is of vital importance, it allows the user to modify the material descriptions without editing the geometry.
The translator will attempt to create an appropriate material type by looking for Radiance material type keywords within the ArchiCAD material name. For example, the ArchiCAD material name "green glass" will have a Radiance material type "glass", "copper plate" will become a "metal" material type. The translator knows about the following material types.
If the following keywords are found within the ArchiCAD material name the Radiance material type will be "metal"
All unrecognised material types will be defined as "plastic".
The translator will set some of the material parameters automatically. The colour of the material is maintained from the colour used within ArchiCAD. Also various keywords will affect the specular and roughness characteristics of "metals", "plastics" and "trans" material types. These keywords are
The first four affect the specularity, the last two affect the roughness of the appropriate materials. So, for example, if one creates a material in ArchiCAD called "shiny aluminium" or "iron, dull smooth" then sensible initial material types and characteristics will be created for the Radiance material description. Of course these would only be very approximate settings and the user would be expected to modify the exact material description for final renderings.
Note that materials could include the material type keywords "light", "illum" or "spotlight" and would therefore become the appropriate light sources for Radiance. For spotlights the user will need to specify the direction vector, by default it is pointing down (0,0,-1).
This translator was originally written for version 4.2 of ArchiCAD but the RIB export was significantly changed in version 4.5. This translator was modified for the new RIB format and currently supports both formats. There is no guarantee that it will work correctly with future versions of ArchiCAD.
ArchiCAD makes heavy use of holes within polygons and this information is correctly exported to the RIB file. Radiance doesn't support holes in the same manner. To achieve the same result the holes are formed as part of the polygon boundary with coincident edges to and from the exterior boundary. The following diagram shows ArchiCAD polygons (the interior one is defined as a hole) and resulting Radiance polygon.
The translator knows about the following RIB data types, these are the only primitives used at the date of writing for version 4.12 and 4.55 of ArchiCAD.
Other information is acquired by looking at the following RIB comments or key words.
Objects created with the GDL language end up with undescriptive material names. They are called gdl_materialn where n is a number from 1 upward. Their colour is still maintained and that may be used to identify the material.
Occasionally polygons with zero area are generated by ArchiCAD, these are also translated into the Radiance file. They will cause warning messages in Radiance but no other problem. They can be manually deleted from the Radiance scene file if necessary.
The "Construct Group Hierarchy" setting on output must be set to materials. An example of the rib export dialog
A 3D window must be the foremost window for 3D export!