Rendering
API
An application programming interface (API) is a way for two or more computer programs to communicate with each other. It is a type of software Interface (computing), interface, offering a service to other pieces of software. A document or standa ...
s typically provide just enough functionality to abstract a
graphics accelerator
A graphics processing unit (GPU) is a specialized electronic circuit designed to manipulate and alter memory to accelerate the creation of images in a frame buffer intended for output to a display device. GPUs are used in embedded systems, mobil ...
, focussing on
rendering primitive
This is a glossary of terms relating to computer graphics.
For more general computer hardware terms, see glossary of computer hardware terms.
0–9
A
B
...
s, state management, command lists/
command buffer
This is a glossary of terms relating to computer graphics.
For more general computer hardware terms, see glossary of computer hardware terms
This glossary of computer hardware terms is a list of definitions of terms and concepts related to com ...
s; and as such differ from fully fledged
3D graphics libraries,
3D engines (which handle
scene graph
Scene (from Greek σκηνή ''skēnḗ'') may refer to:
Arts, entertainment, and media Music
*Scene (subculture), a youth subculture from the early 2000s characterized by a distinct music and style. Groups and performers
* The Scene who recor ...
s, lights, animation, materials etc.), and GUI frameworks; Some provide fallback
software rasterisers, which were important for compatibility and adoption before graphics accelerators became widespread.
Some have been extended to include support for
compute shader
In computing, a compute kernel is a routine compiled for high throughput accelerators (such as graphics processing units (GPUs), digital signal processors (DSPs) or field-programmable gate arrays (FPGAs)), separate from but used by a main progr ...
s.
Low level rendering APIs typically leave more responsibility with the user for resource
memory management
Memory management is a form of resource management applied to computer memory. The essential requirement of memory management is to provide ways to dynamically allocate portions of memory to programs at their request, and free it for reuse when ...
, and require more verbose control, but have significantly lower
CPU overhead, ''and'' allow greater utilisation of
multicore processor
A multi-core processor is a microprocessor on a single integrated circuit with two or more separate processing units, called cores, each of which reads and executes program instructions. The instructions are ordinary CPU instructions (such a ...
s.
2D rendering APIs
*
OpenVG
OpenVG is an API designed for hardware-accelerated 2D vector graphics. Its primary platforms are mobile phones, gaming & media consoles and consumer electronic devices. It was designed to help manufacturers create more attractive user interfaces ...
*
Direct2D
Direct2D is a 2D computer graphics, 2D vector graphics, vector graphics application programming interface (API) designed by Microsoft and implemented in Windows 10, Windows 8, Windows 7 and Windows Server 2008 R2, and also Windows Vista and Windows ...
*
Quartz 2D
Quartz 2D is the native two-dimensional graphics rendering API for macOS and iOS platforms, part of the Core Graphics framework.
Overview
Quartz 2D is available to all macOS and iOS application environments and provides resolution-independent and ...
*
Anti-Grain Geometry
Anti-Grain Geometry (AGG) is a 2D rendering graphics library written in C++. It features anti-aliasing and sub-pixel resolution. It is not a graphics library, per se, but rather a framework to build a graphics library upon.
The library is opera ...
(AGG)
*
Simple DirectMedia Layer
Simple DirectMedia Layer (SDL) is a cross-platform software development library designed to provide a hardware abstraction layer for computer multimedia hardware components. Software developers can use it to write high-performance computer games ...
(SDL)
*
Simple and Fast Multimedia Library
Simple and Fast Multimedia Library (SFML) is a cross-platform software development library designed to provide a simple application programming interface (API) to various multimedia components in computers. It is written in C++ with
bindings a ...
(SFML)
*
X11
The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems.
X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting wi ...
*
Cairo
Cairo ( ; ar, القاهرة, al-Qāhirah, ) is the capital of Egypt and its largest city, home to 10 million people. It is also part of the largest urban agglomeration in Africa, the Arab world and the Middle East: The Greater Cairo metro ...
*
Skia
*
Qt GUI primitive rendering abstractions, on which Qt widgets are built
Blend2D*
HTML5
HTML5 is a markup language used for structuring and presenting content on the World Wide Web. It is the fifth and final major HTML version that is a World Wide Web Consortium (W3C) recommendation. The current specification is known as the HTML ...
Canvas element
The canvas element is part of HTML5 and allows for dynamic, scriptable rendering of 2D shapes and bitmap images. It is a low level, procedural model that updates a bitmap. HTML5 Canvas also helps in making 2D games.
While the HTML5 canvas off ...
Offline rendering
*
RenderMan The name RenderMan can cause confusion because it has been used to refer to different things developed by Pixar Animation Studios:
* RenderMan Interface Specification (RISpec), an open API (technical specification) developed by Pixar for a standard ...
aimed at offline rendering for CG films.
Software rasterising
As of 2016, these are generally considered obsolete, but were still important during the transition to hardware acceleration:
*
BRender
Argonaut Games PLC was a British video game developer founded in 1982, most notable for the development of the Super NES video game ''Star Fox'' and its supporting Super FX hardware, as well as for developing '' Croc: Legend of the Gobbos'' and ...
by
argonaut software
Argonaut Games PLC was a British video game developer founded in 1982, most notable for the development of the Super NES video game ''Star Fox'' and its supporting Super FX hardware, as well as for developing '' Croc: Legend of the Gobbos'' and ...
3D rendering APIs
These libraries are designed explicitly to abstract 3D graphics hardware for
CAD
Computer-aided design (CAD) is the use of computers (or ) to aid in the creation, modification, analysis, or optimization of a design. This software is used to increase the productivity of the designer, improve the quality of design, improve co ...
and
video games
Video games, also known as computer games, are electronic games that involves interaction with a user interface or input device such as a joystick, game controller, controller, computer keyboard, keyboard, or motion sensing device to gener ...
, with possible software fallbacks.
Cross platform, high level
*
OpenGL
OpenGL (Open Graphics Library) is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics. The API is typically used to interact with a graphics processing unit (GPU), to achieve hardwa ...
and the
OpenGL Shading Language
OpenGL Shading Language (GLSL) is a high-level shading language with a syntax based on the C programming language. It was created by the OpenGL ARB (OpenGL Architecture Review Board) to give developers more direct control of the graphics pipelin ...
*
OpenGL ES
OpenGL for Embedded Systems (OpenGL ES or GLES) is a subset of the OpenGL computer graphics rendering application programming interface (API) for rendering 2D and 3D computer graphics such as those used by video games, typically hardware-accel ...
3D API for embedded devices
*
OpenGL SC a version of openGL for safety critical systems.
*
RenderWare
RenderWare is a video game engine developed by British game developer Criterion Software.
Overview
Released in 1993, RenderWare is a 3D API and graphics rendering engine used in video games, Active Worlds, and some VRML browsers. RenderWare was ...
(combined game engine and cross platform rendering API. Became popular since the
PlayStation 2
The PlayStation 2 (PS2) is a home video game console developed and marketed by Sony Computer Entertainment. It was first released in Japan on 4 March 2000, in North America on 26 October 2000, in Europe on 24 November 2000, and in Australia on 3 ...
had no rendering API, initially relying on
bare metal
In computer science, bare machine (or bare metal) refers to a computer executing instructions directly on logic hardware without an intervening operating system. Modern operating systems evolved through various stages, from elementary to the pre ...
programming.)
Cross platform, low level
*
Vulkan
Vulkan is a low- overhead, cross-platform API, open standard for 3D graphics and computing. Vulkan targets high-performance real-time 3D graphics applications, such as video games and interactive media. Vulkan is intended to offer higher perform ...
Vendor specific, high level
*
Direct3D
Direct3D is a graphics application programming interface (API) for Microsoft Windows. Part of DirectX, Direct3D is used to render three-dimensional graphics in applications where performance is important, such as games. Direct3D uses hardware a ...
(a subset of
DirectX
Microsoft DirectX is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. Originally, the names of these APIs all began with "Direct", ...
)
*
Glide API
Glide is a 3D graphics API developed by 3dfx Interactive for their ''Voodoo Graphics'' 3D accelerator cards. Although it originally started as a proprietary API, it was later open sourced by 3dfx. It was dedicated to rendering performance, supp ...
for the pioneering
3DFX
3dfx Interactive was an American technology company headquartered in San Jose, California, founded in 1994, that specialized in the manufacturing of 3D graphics processing units, and later, video cards. It was a pioneer in the field from the l ...
accelerators
*
QuickDraw 3D
QuickDraw 3D, or QD3D for short, is a 3D graphics API developed by Apple Inc. (then Apple Computer, Inc.) starting in 1995, originally for their Macintosh computers, but delivered as a cross-platform system.
QD3D was separated into two layers ...
developed by Apple Computer starting in 1995, abandoned in 1998
*
PSGL for the
PlayStation 3
The PlayStation 3 (PS3) is a home video game console developed by Sony Interactive Entertainment, Sony Computer Entertainment. The successor to the PlayStation 2, it is part of the PlayStation brand of consoles. It was first released on Novemb ...
, designed to work in a manner similar to openGL
Vendor specific, low level
*
Direct3D 12
Direct3D is a graphics application programming interface (API) for Microsoft Windows. Part of DirectX, Direct3D is used to render three-dimensional graphics in applications where performance is important, such as games. Direct3D uses hardware a ...
(a subset of
DirectX
Microsoft DirectX is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. Originally, the names of these APIs all began with "Direct", ...
)
*
Metal
A metal (from Greek μέταλλον ''métallon'', "mine, quarry, metal") is a material that, when freshly prepared, polished, or fractured, shows a lustrous appearance, and conducts electricity and heat relatively well. Metals are typicall ...
developed by Apple.
*
Mantle developed by AMD.
*
LibGCM for the
PlayStation 3
The PlayStation 3 (PS3) is a home video game console developed by Sony Interactive Entertainment, Sony Computer Entertainment. The successor to the PlayStation 2, it is part of the PlayStation brand of consoles. It was first released on Novemb ...
, a lower level API managing command lists directly
*
LibGXM for the
PlayStation Vita
The PlayStation Vita (PS Vita, or Vita) is a handheld video game console developed and marketed by Sony Interactive Entertainment. It was first released in Japan on December 17, 2011, and in North America, Europe, and other international territo ...
*
LibGNM for the
PlayStation 4
The PlayStation 4 (PS4) is a home video game console developed by Sony Interactive Entertainment. Announced as the successor to the PlayStation 3 in February 2013, it was launched on November 15, 2013, in North America, November 29, 2013 in ...
*
Redline
Redline refers to the maximum engine speed at which an internal combustion engine or traction motor and its components are designed to operate without causing damage to the components themselves or other parts of the engine. The redline of an en ...
, for the obsolete
Rendition Verite accelerator
* ''Kamui'' for the Dreamcast
[kamui manual,naomi board,DC]
{{reflist
Application programming interfaces