Graphics rendering is the process of generating a two-dimensional image from a description of a three-dimensional scene. It is the final, computational stage of the computer graphics pipeline, where abstract mathematical models of geometry, light, and material are converted into the colored pixels that appear on a screen. The subfield is defined by a central question: given a scene and a virtual camera, what is the correct color of each pixel in the image, and how can that color be computed quickly enough to be useful?
To understand rendering, one must first understand what a scene contains. A scene is typically composed of geometric primitives—triangles, spheres, or more complex surfaces—that define the shapes of objects. Each surface has a material, a description of how it interacts with light: whether it is shiny or matte, transparent or opaque, rough or smooth. The scene also contains light sources, which emit photons, and a virtual camera, which defines the viewpoint and the projection onto the image plane.
The physical reality that rendering approximates is the transport of light. Photons travel from light sources, strike surfaces, are absorbed or scattered, and eventually reach the camera's sensor. The color of a pixel is the accumulated energy of all photons that arrive at that point on the sensor. The fundamental challenge is that this process is computationally intractable in its full physical form. A single scene may contain billions of surfaces, and light can bounce between them an effectively infinite number of times. Every rendering algorithm is a strategy for approximating this light transport, making trade-offs between physical accuracy, computational cost, and visual quality.
The stakes are practical as well as theoretical. Rendering is the backbone of visual effects in film, video game graphics, architectural visualization, scientific simulation, and product design. In each domain, the requirements differ. A film studio may allow hours to render a single frame of photorealistic animation, while a video game must produce sixty images per second on consumer hardware. These different constraints have driven the development of distinct rendering approaches, each with its own assumptions and strengths.
The oldest and most widely used rendering approach is rasterization. The term comes from the raster, the grid of pixels that forms a digital image. Rasterization works by projecting each geometric primitive onto the image plane and determining which pixels it covers. For each covered pixel, the algorithm computes a color based on the material, the light sources, and the surface's orientation.
The key insight of rasterization is that it processes geometry in object space, one primitive at a time, rather than simulating light transport globally. This makes it extremely fast and highly parallelizable, which is why it has been the dominant approach for real-time graphics since the 1990s. Graphics processing units (GPUs) are essentially specialized rasterization machines, with dedicated hardware for transforming vertices, filling triangles, and shading pixels.
The central limitation of rasterization is that it handles only direct illumination naturally. When a surface is lit by a light source, the algorithm can compute the light's contribution directly. But light that has bounced off other surfaces—indirect illumination—requires additional techniques. Early rasterization simply ignored indirect light, producing images that looked flat and artificial. Later developments added approximations: ambient light as a constant fill, shadow maps to simulate shadows, and environment maps to fake reflections. These techniques are clever but approximate, and they require careful tuning by artists to avoid visual artifacts.
Modern rasterization has evolved into a sophisticated practice. Deferred shading separates the computation of geometry from the computation of lighting, allowing many lights to be evaluated efficiently. Physically based rendering (PBR) workflows use material models grounded in measured data, giving artists consistent, predictable results. Yet the fundamental architecture remains the same: rasterization is a local, per-primitive process that approximates global light transport with a collection of specialized tricks.
Ray tracing takes the opposite approach. Instead of projecting geometry onto the image plane, it traces the path of light backward from the camera into the scene. For each pixel, the algorithm casts a ray, finds the first surface it intersects, and then computes the color of that surface by evaluating its material and the light arriving at that point.
The earliest ray tracers, developed in the 1960s and 1970s, handled only direct illumination: a ray from the camera hits a surface, and the algorithm checks whether each light source is visible from that point. If it is, the surface is lit; if not, it is in shadow. This simple version already produces more accurate shadows than rasterization, because shadows emerge naturally from the geometry rather than requiring a separate algorithm.
The breakthrough came with recursive ray tracing, which extends the basic idea to handle reflections and refractions. When a ray hits a shiny surface, the algorithm casts a secondary ray in the reflection direction and evaluates what that ray sees. The process repeats recursively, allowing a single pixel to capture multiple bounces of light. This produces stunning images of mirrors, glass, and polished metal, but it remains incomplete: it handles specular reflections well but ignores diffuse interreflection, the light that bounces off matte surfaces and illuminates other surfaces.
The full solution to light transport came with path tracing, introduced in the 1980s. Path tracing is a Monte Carlo method: it casts many rays per pixel, each following a random path of bounces through the scene, and averages the results. As the number of rays increases, the average converges to the correct solution of the rendering equation, the mathematical formalization of light transport. The cost is high—thousands of rays per pixel are needed to reduce noise to acceptable levels—but the result is physically accurate, capturing all forms of indirect illumination.
For decades, path tracing was confined to offline rendering for film and architectural visualization, where a single frame might take hours to compute. The turning point came with the introduction of hardware-accelerated ray tracing in consumer GPUs in the late 2010s. This hardware, combined with denoising algorithms that remove Monte Carlo noise, has made real-time path tracing feasible. The current landscape is one of convergence: rasterization remains the workhorse for interactive graphics, but ray tracing is increasingly used for specific effects like accurate shadows, reflections, and global illumination, even in real-time applications.
The theoretical foundation of modern rendering is the rendering equation, formulated in 1986. It states that the outgoing radiance from a surface point in a given direction equals the emitted radiance plus the integral of incoming radiance from all directions, weighted by the surface's reflectance function. This equation is an energy balance: what goes out equals what is emitted plus what comes in and is reflected.
The rendering equation is elegant but not directly solvable in closed form for arbitrary scenes. Every rendering algorithm is an approximation to this equation, and the differences between approaches can be understood as different strategies for approximating the integral. Rasterization approximates it by considering only direct light and using ad hoc models for indirect light. Ray tracing approximates it by sampling a subset of possible light paths. Path tracing approximates it with Monte Carlo integration, which is unbiased—meaning it converges to the correct answer given enough samples—but noisy.
This theoretical framing has unified the field. Before the rendering equation, rendering was a collection of ad hoc techniques. After it, researchers had a common language for describing what any algorithm computes and how accurately it does so. The equation also clarified the relationship between approaches: they are not fundamentally different methods but different points on a spectrum of approximation accuracy versus computational cost.
One historically important approach deserves separate mention: radiosity, developed in the mid-1980s. Radiosity was an attempt to solve the rendering equation for diffuse scenes using finite element methods rather than ray sampling. It divided surfaces into small patches, computed the light exchange between all pairs of patches, and solved a large linear system to find the equilibrium illumination.
Radiosity produced beautiful images of diffuse interreflection—the soft color bleeding from a red wall onto a white floor—that were impossible with early ray tracing. It was a significant advance in understanding indirect illumination. However, it had severe limitations: it assumed all surfaces were perfectly diffuse, it required expensive preprocessing, and it could not handle specular reflections or refractions. As path tracing matured and became computationally feasible, radiosity faded from mainstream use. Its legacy persists in the understanding that diffuse interreflection is essential for realism and in the mathematical tools used to analyze light transport.
The current state of graphics rendering is characterized by hybrid approaches and a gradual convergence of real-time and offline techniques. The distinction between rasterization and ray tracing, once absolute, has blurred. Modern game engines use rasterization for the primary visibility pass and ray tracing selectively for shadows, reflections, and ambient occlusion. Offline renderers, meanwhile, have become faster and more interactive, with denoising algorithms allowing artists to preview path-traced results in near real time.
Several ongoing challenges define the field's frontier. One is efficiency: how to compute accurate light transport with minimal samples, using importance sampling, multiple importance sampling, and other variance-reduction techniques. Another is the representation of scenes: how to store and access the increasingly large geometric and material datasets that modern production requires. Acceleration structures, such as bounding volume hierarchies, are critical for making ray tracing fast, and their construction and traversal remain active research areas.
A more recent development is neural rendering, which uses machine learning to accelerate or replace parts of the rendering process. Neural networks can denoise path-traced images, predict light transport, or even generate novel views from sparse input images, as in neural radiance fields (NeRFs). These techniques are promising but still maturing; they are best understood as accelerators or approximations rather than replacements for the physical models that remain the field's foundation.
The field's durability comes from its grounding in physics and mathematics. The rendering equation, the Monte Carlo methods used to solve it, and the geometric algorithms for ray intersection are all stable, well-understood results. What changes is the hardware that executes them and the cleverness with which they are approximated. A student entering the field today will find a mature discipline with a clear theoretical core, a rich history of practical techniques, and an exciting frontier where the remaining problems are hard but well defined.