# Physical Units and Coordinate Systems

RenderWorld differs from most rendering packages in that it works internally with scientific quantities. For example, if you were to go out and measure the brightness of the sky on a clear day, you might get a number like 200 Watts. While most rendering packages will tell you that the sky is 60% blue for example, RenderWorld calculates the true intensity of the sky. This is a direct result of the physical grounding of the rendering algorithms. While it is possible to output these physical quantities, you may want to convert to 8-bit/channel RGB values, or some other image format and bit depth, before writing to disk. You may also write to disk the raw image data, which is 32-bit floating point per channel, then convert to another format afterward using a conversion routine. Details of the conversion process are covered when we discuss the camera descriptive files.

RenderWorld uses a right-handed Cartesian coordinate system for placing objects in space, and three angles (theta, phi, chi) to specify their rotations. The Sun is an exception to this because it doesn't have a position, only a direction, theta and phi (you can't fly past the sun in RenderWorld).

The X, Y, and Z axes are defined such that positive X corresponds to North, positive Y to West, and positive Z to Up. Theta is measured from the Z axis (zero straight up, 90 at the horizon, and 180 straight down). Phi is a rotation about the Z axis, with zero facing along the X axis (North) and 90 facing along the Y axis (West). Finally, following the theta and phi rotations, the object is rotated about its own axis by chi. Positive values of chi rotate clockwise.

All distances are in meters, all angles in degrees, and all times in seconds, unless otherwise noted.

Contents