Rendering APIs typically provide just enough functionality to abstract a graphics accelerator, focussing on rendering primitives, state management, command lists/command buffers; and as such differ from fully fledged 3D graphics libraries, 3D engines (which handle scene graphs, 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 shaders.

Low level rendering APIs typically leave more responsibility with the user for resource memory management, and require more verbose control, but have significantly lower CPU overhead,[1] and allow greater utilisation of multicore processors.

2D rendering APIs

Offline rendering

  • RenderMan 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:

3D rendering APIs

These libraries are designed explicitly to abstract 3D graphics hardware for CAD and video games, with possible software fallbacks.

Cross platform, high level

Cross platform, low level

Vendor specific, high level

Vendor specific, low level

  1. "imagination shows off vullkan gains".
  2. "dreamcast development board".kamui manual,naomi board,DC
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.