3D computer graphics
Graphics that use a three-dimensional representation of geometric data
From Wikipedia, the free encyclopedia
3D computer graphics, sometimes called 3D computer-generated imagery (3D-CGI), refers to computer graphics that use a three-dimensional (3D) representation of geometric data (often Cartesian) stored in the computer for the purposes of performing calculations and rendering digital images, usually 2D images but sometimes 3D images. The resulting images may be stored for viewing later (possibly as an animation) or displayed in real time.[1]


3D computer graphics, contrary to what the name suggests, are most often displayed on two-dimensional displays. Unlike 3D film and similar techniques, the result is two-dimensional, without visual depth. Increasingly, 3D graphics are also displayed on 3D displays, such as in virtual reality systems.
3D graphics stand in contrast to 2D computer graphics which typically use completely different methods and formats for creation and rendering.
3D computer graphics rely on many of the same algorithms as 2D computer vector graphics in the wire-frame model and 2D computer raster graphics in the final rendered display. In computer graphics software, 2D applications may use 3D techniques to achieve effects such as lighting, and similarly, 3D may use some 2D rendering techniques.[1]
The objects in 3D computer graphics are often referred to as 3D models. Unlike the rendered image, a model's data is contained within a graphical data file. A 3D model is a mathematical representation of any three-dimensional object; a model is not technically a graphic until it is displayed. A model can be displayed visually as a two-dimensional image through a process called 3D rendering, or it can be used in non-graphical computer simulations and calculations. With 3D printing, models are rendered into an actual 3D physical representation of themselves, with some limitations as to how accurately the physical model can match the virtual model.[citation needed]
History
William Fetter was credited with coining the term computer graphics in 1961[2][3] to describe his work at Boeing. Sketchpad, written by Ivan Sutherland and demonstrated in 1963 at the Massachusetts Institute of Technology's Lincoln Laboratory, was an interactive program for two-dimensional drawing.[4] Displaying a perspective view beside top, front, and side views, Timothy E. Johnson's Sketchpad III extended that system in the same year to interactive wire-frame models in three dimensions.[5] Hidden edges remained visible.[5]
Shading research through the mid-1970s made polygonal models look continuous rather than faceted. Point-by-point shading of solid objects, together with the problem of deciding which regions lie in shadow, was set out by Arthur Appel in 1968.[6] Henri Gouraud's 1971 method calculated illumination at polygon vertices and interpolated it across each face, which reduced the visible seams between polygons.[7] Tighter highlights on a polygonal approximation of a curved surface came from Bui Tuong Phong's 1975 model, which interpolated surface normals and evaluated a specular term at each sample.[8]
One of the first displays of computer animation was Futureworld (1976), which included an animation of a human face and a hand that had originally appeared in the 1972 experimental short A Computer Animated Hand, created by University of Utah students Edwin Catmull and Fred Parke.[9]
3-D computer graphics software began appearing for home computers in the late 1970s. The earliest known example is 3D Art Graphics, a set of 3-D computer graphics effects, written by Kazumasa Mitazawa and released in June 1978 for the Apple II.[10][11]
Turner Whitted's 1980 illumination model continued rays past the first surface, so reflection, refraction, and shadows from point lights were computed together.[12] The method he extended was rays cast from the viewer, which he credited to Appel, rather than rays followed outward from the lamps.[12] Distributed ray tracing, published in 1984 by Robert L. Cook, Thomas Porter, and Loren Carpenter, replaced those exact secondary rays with stochastic samples.[13] Motion blur, depth of field, penumbras, translucency, and glossy reflection were effects those samples could produce.[13] James T. Kajiya's rendering equation, presented at SIGGRAPH 1986, writes light transport as one integral equation, of which Whitted's model and distributed ray tracing are approximations.[14] Beyond a fixed tree of reflection and refraction rays, path tracing, the Monte Carlo solution he described, simulates a wider range of optical effects.[14]
For feature animation, Robert L. Cook, Loren Carpenter, and Edwin Catmull described the Reyes architecture in 1987: each surface is diced into micropolygons, shaded in that surface's own coordinates, and tested for visibility by stochastic sampling into a z-buffer.[15] On Silicon Graphics and Sun workstations, artists at Pixar built the models for Toy Story (1995), and RenderMan produced the frames.[16] John Lasseter directed the film, the first theatrical motion picture whose imagery was entirely computer-generated.[16] One chip integrating transform, lighting, and rendering, which NVIDIA called the world's first graphics processing unit, was the GeForce 256, unveiled on 31 August 1999.[17]
The first head-mounted display for virtual reality was patented in 1960, and the Oculus Rift project began with a Kickstarter campaign in 2012.[18]
Overview
3D computer graphics production workflow falls into three basic phases:[citation needed]
- 3D modeling – the process of forming a computer model of an object's shape
- Layout and CGI animation – the placement and movement of objects (models, lights, etc.) within a scene
- 3D rendering – the computer calculations that, based on light placement, surface types, and other qualities, generate (rasterize the scene into) an image
Modeling
The modeling describes the process of forming the shape of an object. The two most common sources of 3D models are those that an artist or engineer originates on a computer with a 3D modeling tool, or models scanned into a computer from real-world objects (polygonal modeling, patch modeling, and NURBS modeling are some popular tools used in 3D modeling). Models can also be produced procedurally or via physical simulation.[citation needed]
Basically, a 3D model is formed from points called vertices that define the shape and form polygons. A polygon is an area formed from at least three vertices (a triangle). A polygon of n points is an n-gon.[19] The overall integrity of the model and its suitability to use in animation depend on the structure of the polygons.[citation needed]
Layout and animation
Before rendering into an image, objects must be laid out in a 3D scene. This defines spatial relationships between objects, including location and size. Animation refers to the temporal description of an object (i.e., how it moves and deforms over time). Popular methods include keyframing, inverse kinematics, and motion capture. These techniques are often used in combination. As with animation, physical simulation also specifies motion.
Rendering
Rendering converts a model into an image either by simulating light transport to get photo-realistic images, or by applying an art style as in non-photorealistic rendering. The two basic operations in realistic rendering are transport (how much light gets from one place to another) and scattering (how surfaces interact with light). This step is usually performed using 3-D computer graphics software or a 3-D graphics API.
Altering the scene into a suitable form for rendering also involves 3D projection, which displays a three-dimensional image in two dimensions. Although 3-D modeling and CAD software may perform 3-D rendering as well (e.g., Autodesk 3ds Max or Blender), exclusive 3-D rendering software also exists (e.g., OTOY's Octane Rendering Engine, Maxon's Redshift).
Rasterization
Real-time 3D graphics usually form the image by rasterization.[1] Projected into the frame, each polygon covers pixels, and a depth test retains the nearest surface.[8] Gouraud shading computes a color at the vertices and interpolates it, while Phong shading interpolates normals and evaluates the highlight at each sample.[7][8] After each surface is diced into micropolygons, Reyes calculates visibility in screen space with a z-buffer.[15]
Ray tracing and path tracing
Ray tracing forms the image by following rays from the camera through the scene.[12] Once a primary ray has left the camera through a pixel, Whitted's shader may spawn a reflection ray, a refraction ray, and a shadow ray toward each light.[12] Recursion ends at a depth limit or when a ray misses the scene.[12] Averaged over many random paths of light, path tracing estimates the rendering equation.[14] Because each pixel is only a mean of random samples, stopping that average early leaves the image noisy.[14] To produce photorealistic imagery, many production studios had by 2017 moved from Reyes-style micropolygon rendering to physically based path tracing, Bako and colleagues wrote.[20] Bako and colleagues trained a convolutional network on frames from Finding Dory and tested it on Cars 3.[20] From a few dozen samples per pixel, that network predicts a filter that removes much of the Monte Carlo noise.[20] From ray-traced images, Intel Open Image Denoise removes Monte Carlo noise, and renderers including Arnold, Blender, and V-Ray integrate it.[21] To Attila T. Áfra for Open Image Denoise, and to Timo Aila for applying U-nets to denoising, the Academy of Motion Picture Arts and Sciences gave a Technical Achievement Award in 2025.[22]
Real-time ray tracing
NVIDIA announced RTX on 19 March 2018, at first for Volta GPUs, together with Microsoft's DirectX Raytracing API.[23] Dedicated RT Cores for ray-traced shadows, reflections, refractions, and global illumination came with the GeForce RTX series, announced on 20 August 2018.[24] Before full-frame path tracing, NVIDIA's description of game practice was that shadows, reflections, or indirect light were ray traced as separate effects, and only for a limited number of lights.[25] Off by default because the mode is very demanding on the GPU, Ray Tracing: Overdrive, added in Cyberpunk 2077 patch 1.62 on 11 April 2023, path traces the frame.[26] CD PROJEKT RED recommended that preview for GeForce RTX 40-series cards from the 4070 Ti upward, and for a GeForce RTX 3090 at 1080p and 30 frames per second.[26]
- Examples of 3-D rendering
- A 3D model of a Dunkerque-class battleship rendered with flat shading
- During the 3D rendering step, the number of reflections "light rays" can take, as well as various other attributes, can be tailored to achieve a desired visual effect. Rendered with Cobalt.
- A 3D rendering of a penthouse
Materials and textures
Materials and textures are properties that the render engine uses to render the model. One can give the model materials to tell the render engine how to treat light when it hits the surface. Textures are used to give the material color using a color or albedo map, or give the surface features using a bump map or normal map. It can also be used to deform the model itself using a displacement map.
By treating a surface as microfacets, the Cook–Torrance model (1982) accounts for the relative brightness of materials shown together, the directional spread of reflected light, and a color shift as the angle of incidence changes.[27] Brent Burley's principled BRDF, described in a SIGGRAPH 2012 course, was built at Walt Disney Animation Studios around a short list of design rules.[28] Intuitive rather than strictly physical, few in number, normally valued from zero to one but allowed past that range, and plausible in combination: those were the rules.[28] The studio used the resulting shader on virtually every material in Wreck-It Ralph.[28]
AI-assisted rendering and generative 3D
Denoising restores a picture the renderer was already simulating, reconstruction fits a scene to photographs, and text-to-3D synthesizes a new asset from a prompt. Outside those three jobs sits a generator that returns only a flat image and keeps no geometric model for a second viewpoint to share, even when the picture looks three-dimensional.
In denoising, a network writes a cleaned frame from the noisy render and, when the renderer exports them, from auxiliary buffers such as albedo and surface normals. What it estimates is the image a much larger sample count would have converged to.[20][21]
Reconstruction starts from photographs with known camera poses. Through a neural network, a neural radiance field (NeRF) maps a 3D point and a viewing direction to a density and a view-dependent color.[29] Ben Mildenhall, Pratul P. Srinivasan, Matthew Tancik, Jonathan T. Barron, Ravi Ramamoorthi, and Ren Ng introduced that representation at the European Conference on Computer Vision in 2020.[29] Along camera rays, classical volume rendering samples the function and forms an image.[29] Kerbl and colleagues describe neural radiance fields as costly to train and to render, set against the Gaussian representation that followed.[30]
3D Gaussian splatting, published in 2023 by Bernhard Kerbl, Georgios Kopanas, Thomas Leimkühler, and George Drettakis, replaces the network with anisotropic 3D Gaussians that are optimized and then drawn by splatting.[30] At 1080p, and at or above 30 frames per second on the scenes they tested, the authors report real-time novel views.[30] Those Gaussians are the stored scene, a radiance field drawn by splatting. In glTF, the ratified KHR_gaussian_splatting extension can carry those splats.[31]
DreamFusion, the text-to-3D method of Ben Poole, Ajay Jain, Jonathan T. Barron, and Ben Mildenhall, optimizes a randomly initialized NeRF until renderings from random cameras score well under a frozen text-to-image diffusion model.[32] Because that prior was trained on ordinary images, the optimization needs no corpus of 3D models.[32] Each prompt is its own optimization.[32] Multiple front faces on one object, called the Janus artifact, appear when each sampled view collapses toward a canonical front.[33] Peihao Wang and colleagues trace that failure to mode collapse of the score-distillation objective that DreamFusion popularized.[33]
Software
3D computer graphics software produces computer-generated imagery (CGI) through 3D modeling and 3D rendering or produces 3D models for analytical, scientific, entertainment, and industrial purposes.
Modeling
3D modeling software is a class of 3D computer graphics software used to produce 3D models. Individual programs of this class are called modeling applications or modelers.
3D modeling starts by describing 3 display models: drawing points, drawing lines and drawing triangles and other polygonal patches.[34]
3D modelers allow users to create and alter models via their 3D mesh. Users can add, subtract, stretch and otherwise change the mesh to their desire. Models can be viewed from a variety of angles, usually simultaneously. Models can be rotated and the view can be zoomed in and out.
3D modelers can export their models to files, which can then be imported into other applications as long as the metadata are compatible. Many modelers allow importers and exporters to be plugged-in, so they can read and write data in the native formats of other applications.
Most 3D modelers contain a number of related features, such as ray tracers and other rendering alternatives and texture mapping facilities. Some also contain features that support or allow animation of models. Some may be able to generate full-motion video of a series of rendered scenes (i.e. animation).
Computer-aided design (CAD)
Computer-aided design software may employ the same fundamental 3-D modeling techniques that 3-D modeling software uses but their goal differs. They are used in computer-aided engineering, computer-aided manufacturing, Finite element analysis, product lifecycle management, 3D printing and computer-aided architectural design.
Complementary tools
After producing a video, studios then edit or composite the video using programs such as Adobe Premiere Pro or Final Cut Pro at the mid-level, or Autodesk Combustion, Digital Fusion, Shake at the high-end. Match moving software is commonly used to match live video with computer-generated video, keeping the two in sync as the camera moves.
Use of real-time computer graphics engines to create a cinematic production is called machinima.[35]
File formats
Each 3D file type generally tends to have its own unique data structure. Most formats are read natively by the applications that created them, though many can also be opened through third-party importers and converters. Many widely used formats, such as Blender (.blend),[36] Wavefront (.obj)[37] and Autodesk FBX (.fbx),[38] are proprietary or have no formal standard. The tables below list formats with a published standard or one in development.
Standardized formats
3D file formats can be grouped by purpose: scene interchange, web and real-time delivery, CAD and engineering exchange, architecture, geospatial and point cloud data, and 3D printing.
| Extension | Name | Category | Common uses | Standard |
|---|---|---|---|---|
| .3mf | 3D Manufacturing Format (3MF) | 3D printing | 3D printing; carries full-fidelity models from design software to other applications, services and printers[39] | ISO/IEC 25422:2025[39][40] |
| .amf | Additive manufacturing file format (AMF) | 3D printing | XML-based interchange format for additive manufacturing[41] | ISO/ASTM 52915:2020[41] |
| .b3dm, .i3dm, .pnts, .cmpt, .glb (with tileset.json) | 3D Tiles | Geospatial | Streaming massive 3D geospatial datasets such as photogrammetry, 3D buildings, BIM/CAD models and point clouds; glTF is the primary tile format[42] | OGC Community Standard (2019)[43] |
| .e57 | ASTM E57 3D imaging data exchange format | Point cloud | Point clouds, colour and intensity values, and photographs captured by 3D imaging systems such as laser scanners[44] | ASTM E2807-11 (reapproved 2026)[44] |
| .gltf, .glb | glTF (GL Transmission Format) | Web and real-time | Efficient transmission and loading of 3D scenes and models in web and real-time applications[45]; 3D Gaussian splats through the ratified KHR_gaussian_splatting extension[31] | ISO/IEC 12113:2022[45] |
| .gml | CityGML (City Geography Markup Language) | Geospatial | 3D city and landscape models for urban planning, BIM, disaster management, navigation and energy simulation[46] | OGC CityGML 3.0, GML Encoding Standard (2023)[47] |
| .ifc | Industry Foundation Classes (IFC) | Architecture | Building information modeling for buildings and infrastructure such as bridges, roads, railways and ports[48] | ISO 16739-1:2024[48] |
| .jt | JT | CAD and engineering | 3D visualisation of product data across computer systems and the product lifecycle[49]; used with STEP AP242 for automotive data exchange[50] | ISO 14306 series (ISO 14306-1:2024)[49] |
| .las | LAS (LASer) format | Point cloud | Exchange of lidar point cloud data between different hardware and software tools[51] | ASPRS LAS 1.4; OGC Community Standard[51][52] |
| .laz | LAZ (compressed LAS) | Point cloud | Lossless compression of LAS 1.4 point clouds, stored in chunks that can be decompressed independently[52] | OGC Community Standard (2026)[52] |
| .prc | Product Representation Compact (PRC) | CAD and engineering | 3D content, especially CAD data, embedded in PDF documents for visualisation and exchange[53] | ISO 14739-1:2014[53] |
| .slpk | Indexed 3D Scene Layers (I3S) Scene Layer Package | Geospatial | Streaming and analysis of large 3D geographic datasets, including buildings, textured meshes from aerial or drone imagery, and point features[54] | OGC Community Standard (2017)[54] |
| .stp, .step | STEP (Standard for the Exchange of Product model data) | CAD and engineering | Exchange of product data between CAD systems and long-term archiving; AP242 (managed model-based 3D engineering) replaced AP203 and AP214[55] | ISO 10303 (AP242: ISO 10303-242:2025)[56] |
| .usd, .usda, .usdc, .usdz | Universal Scene Description (OpenUSD) | Scene interchange | 3D content creation and interchange across the media, technology and design industries[57] | OpenUSD Core Specification 1.0 (Alliance for OpenUSD, 2025)[57][58] |
| .x3d, .x3dv, .x3db | X3D (Extensible 3D) | Web and real-time | Interactive 3D on the web, with HTML5 integration, glTF physically based rendering and Web Audio support[59] | ISO/IEC 19775-1:2023[60] |
Proposed formats
As of October 2026[update], these formats are being developed but have not yet been published as standards.
| Extension | Name | Category | Intended uses | Status |
|---|---|---|---|---|
| .ifcx | IFCX (also called IFC 5) | Architecture | Modular successor to IFC for building information modeling; draft versions are JSON files that can be layered, so several parties can add data to one model and exchange only what has changed[61] | buildingSMART International project, developed with ISO/TC 59/SC 13 for international standardisation; project plan approved in August 2026[62] |
| Not yet defined | Gaussian Splat Coding (GSC) | Gaussian splats | Compressed storage and streaming of 3D Gaussian splats, for which existing formats such as .ply, .splat and .spz are fragmented[63]; static splats in the original Inria layout are covered first[64] | MPEG amendments to ISO/IEC 23090-5 (V-PCC) and ISO/IEC 23090-9 (G-PCC); committee draft and working draft respectively in January 2026[64] |
Legacy formats
These formats are still encountered but have been superseded or are no longer actively developed.
| Extension | Name | Former uses | Standard | Status |
|---|---|---|---|---|
| .dae | COLLADA (Collaborative Design Activity) | Asset interchange between content-creation tools, interactive 3D applications, prototyping tools and real-time visualisation[65] | ISO/PAS 17506:2012[65] | Removed from Blender 5.0; glTF, USD and FBX suggested as replacements[66][67] |
| .igs, .iges | IGES (Initial Graphics Exchange Specification) | Neutral exchange of product definition data between different CAD and CAM systems[68] | ANSI Y14.26M-1981[68] | Superseded by STEP; migration plan published in 1996[69] |
| .u3d | Universal 3D (U3D) | Downstream reuse and visualisation of CAD data, with compression, progressive streaming and level-of-detail support[70] | ECMA-363 (4th edition, 2007)[70] | No longer actively maintained; use expected to decline in favour of PRC[71] |
| .wrl | VRML (Virtual Reality Modeling Language) | Interactive 3D scenes on the web[72] | ISO/IEC 14772-1:1997[73] | Superseded by X3D[72][74] |
Other types of 3D appearance
Photorealistic 2D graphics
Not all computer graphics that appear 3D are based on a wireframe model. 2D computer graphics with 3D photorealistic effects are often achieved without wire-frame modeling and are sometimes indistinguishable in the final form. Some graphic art software includes filters that can be applied to 2D vector graphics or 2D raster graphics on transparent layers. Visual artists may also copy or visualize 3D effects and manually render photo-realistic effects without the use of filters.[75]
2.5D
Some video games use 2.5D graphics, involving restricted projections of three-dimensional environments, such as isometric graphics or virtual cameras with fixed angles, either as a way to improve performance of the game engine or for stylistic and gameplay concerns. By contrast, games using 3D computer graphics without such restrictions are said[by whom?] to use true 3D.
See also
- 3D data acquisition and object reconstruction
- 3D projection on 2D planes
- Computer graphics workstation
- Geometry processing
- Graphics processing unit (GPU)
- Isometric graphics in video games and pixel art
- List of 3D computer graphics software
- List of stereoscopic video games
- Medical animation
- Render farm
- Ray tracing (graphics)
- Path tracing
- Physically based rendering
- Neural radiance field
- 3D Gaussian splatting
- Rendering equation