List of 3D graphics APIs
Encyclopedia
3D graphics have become so popular, particularly in video games, that specialized API
Application programming interface
An application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...

s (application programming interfaces) have been created to ease the processes in all stages of computer graphics generation. These APIs have also proved vital to computer graphics hardware manufacturers, as they provide a way for programmer
Programmer
A programmer, computer programmer or coder is someone who writes computer software. The term computer programmer can refer to a specialist in one area of computer programming or to a generalist who writes code for many kinds of software. One who practices or professes a formal approach to...

s to access the hardware in an abstract way, while still taking advantage of the special hardware of any specific graphics card.

The first 3D graphics framework was probably Core
3D Core Graphics System
The 3D Core Graphics System was the very first graphical standard ever developed. A group of 25 experts of the ACM Special Interest Group SIGGRAPH developed this "conceptual framework". The specifications were published in 1977 and it became a foundation for many future development in the field...

, published by the ACM in 1977.

Low-level 3D API

These APIs for 3D computer graphics are particularly popular:
  • X3D
    X3D
    X3D is the ISO standard XML-based file format for representing 3D computer graphics, the successor to the Virtual Reality Modeling Language . X3D features extensions to VRML X3D is the ISO standard XML-based file format for representing 3D computer graphics, the successor to the Virtual Reality...

  • OpenGL
    OpenGL
    OpenGL is a standard specification defining a cross-language, cross-platform API for writing applications that produce 2D and 3D computer graphics. The interface consists of over 250 different function calls which can be used to draw complex three-dimensional scenes from simple primitives. OpenGL...

     and the OpenGL Shading Language
  • OpenGL ES
    OpenGL ES
    OpenGL for Embedded Systems is a subset of the OpenGL 3D graphics application programming interface designed for embedded systems such as mobile phones, PDAs, and video game consoles. OpenGL ES is managed by the not-for-profit technology consortium, the Khronos Group, Inc.- Versions :Several...

     3D API for embedded devices
  • Direct3D
    Direct3D
    Direct3D is part of Microsoft's DirectX application programming interface . Direct3D is available for Microsoft Windows operating systems , and for other platforms through the open source software Wine. It is the base for the graphics API on the Xbox and Xbox 360 console systems...

     (a subset of DirectX
    DirectX
    Microsoft DirectX is a collection of application programming interfaces for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms. Originally, the names of these APIs all began with Direct, such as Direct3D, DirectDraw, DirectMusic, DirectPlay,...

    )
  • RenderMan
    RenderMan Interface Specification
    The RenderMan Interface Specification, or RISpec in short, is an open API developed by Pixar Animation Studios to describe three-dimensional scenes and turn them into digital photorealistic images...

  • RenderWare
    RenderWare
    RenderWare is a computer and video game middleware from British games developer Criterion Software.-Overview:RenderWare is a 3D API and graphics rendering engine used in video games, Active Worlds, and some VRML browsers...

  • Glide API
    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 gaming performance, supporting geometry and texture mapping primarily, in data...

  • TruDimension LC Glasses and 3D monitor API
  • QuickDraw 3D
    QuickDraw 3D
    QuickDraw 3D, or QD3D for short, is a 3D graphics API developed by Apple Inc. starting in 1995, originally for their Macintosh computers, but delivered as a cross-platform system....

     developed by Apple Computer starting in 1995, abandoned in 1998

JavaScript-based API

WebGL
WebGL
WebGL is a software library that extends the capability of the JavaScript programming language to allow it to generate interactive 3D graphics within any compatible web browser...

 is a JavaScript interface for OpenGL-ES-2.x API, promoted by Khronos
Khronos Group
The Khronos Group is a not-for-profit member-funded industry consortium based in Beaverton, Oregon, focused on the creation of open standard, royalty-free APIs to enable the authoring and accelerated playback of dynamic media on a wide variety of platforms and devices...

. This is gaining more interest recently, as this enables applications to use native graphics.

High-level 3D API

There are also higher-level 3D scene-graph
Scene graph
A scene graph is a general data structure commonly used by vector-based graphics editing applications and modern computer games. Examples of such programs include Acrobat 3D, Adobe Illustrator, AutoCAD, CorelDRAW, OpenSceneGraph, OpenSG, VRML97, and X3D....

 APIs which provide additional functionality on top of the lower-level rendering API. Such libraries under active development include:
  • ClanLib
    ClanLib
    ClanLib is a cross-platform C++ game SDK, currently supporting Microsoft Windows, Linux and Mac OS X. It has full hardware accelerated graphics support through OpenGL, and also a software renderer...

  • CrystalSpace
  • HOOPS 3D Graphics System
    HOOPS 3D Graphics System
    The HOOPS 3D Graphics System is a 3D Graphics API, part of The HOOPS 3D Application Framework. The HOOPS 3D Application Framework has three main elements the first of which is the core HOOPS 3D Graphics System itself, a 3D scene-graph API. The second is a rendering pipeline which can drive a...

  • Irrlicht Engine
    Irrlicht Engine
    Irrlicht is an open source 3D engine written in C++. It is cross-platform, officially running on Windows, Mac OS X, Linux and Windows CE and due to its open nature ports to other systems are available, including Xbox, PlayStation Portable, SymbianOS and iPhone.Irrlicht is known for its small size...

  • Java 3D
    Java 3D
    Java 3D is a scene graph-based 3D application programming interface for the Java platform. It runs atop either OpenGL or Direct3D. Since version 1.2, Java 3D has been developed under the Java Community Process....

  • JMonkey Engine
    JMonkey Engine
    jMonkeyEngine is a game engine made especially for modern 3D development, as it uses shader technology extensively. jMonkeyEngine is written purely in Java and uses LWJGL as its default renderer. OpenGL 2 through OpenGL 4 is fully supported....

  • Mobile 3D Graphics API
    Mobile 3D Graphics API
    The Mobile 3D Graphics API, commonly referred to as M3G, is a specification defining an API for writing Java programs that produce 3D computer graphics. It extends the capabilities of the Java ME, a version of the Java platform tailored for embedded devices such as mobile phones and PDAs...

     (M3G; JSR-184)
  • JT Open
    JT (visualization format)
    JT is a 3D data format developed by and is used for product visualization, collaboration, and CAD data exchange. It can contain any combination of approximate data, exact boundary representation surfaces , Product and Manufacturing Information , and Metadata either exported from the native CAD...

     from Siemens PLM Software
    Siemens PLM Software
    Siemens PLM Software is a computer software company specializing in 3D & 2D Product Lifecycle Management software. The company is a business unit of Siemens Industry Automation division, and is headquartered in Plano, Texas....

  • Nvidia Scene Graph (NVSG)
  • OGRE
    OGRE
    OGRE is a scene-oriented, flexible 3D rendering engine written in C++ designed to make it easier and intuitive for developers to produce applications utilizing hardware-accelerated 3D graphics...

  • Open Inventor
    Open Inventor
    Open Inventor, originally IRIS Inventor, is a C++ object oriented retained mode 3D graphics API designed by SGI to provide a higher layer of programming for OpenGL. Its main goals are better programmer convenience and efficiency.-Early history:...

  • OpenGL Performer
    OpenGL Performer
    OpenGL Performer, formerly known as IRIS Performer and commonly referred to simply as Performer, is a commercial library of utility code built on top of OpenGL for the purpose of enabling hard real-time visual simulation applications. OpenGL Performer was developed by SGI which continues to...

  • OpenSceneGraph
    OpenSceneGraph
    OpenSceneGraph is an open source 3D graphics application programming interface, used by application developers in fields such as visual simulation, computer games, virtual reality, scientific visualization and modeling....

  • OpenSG
    OpenSG
    OpenSG is a scene graph system to create real-time graphics programs, e.g. for virtual reality applications. It is developed following Open Source principles, LGPL licensed, and can be used freely...

  • QSDK
    QSDK
    The QSDK is a streaming scene graph retained-mode Application Programming Interface combined with a cell-portal system to connect scene graphs. Audio and animation are fully supported....

  • Quesa
  • Vega Prime by Presagis
    Presagis
    ' is a provider of commercial off-the-shelf modeling, simulation, and embedded display graphics software. The company provides software solution to customers in the Aerospace, Defense, and Automotive industries.- History :...

  • VR-Vantage by VT MAK

JavaScript-based engines

There is more interest in web browser
Web browser
A web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information resource is identified by a Uniform Resource Identifier and may be a web page, image, video, or other piece of content...

 based high-level API for 3D graphics engines. Below mentioned are some.
  • CopperLicht
  • O3D
    O3D
    O3D is an open source JavaScript API created by Google for creating interactive 3D graphics applications that run in a web browser window or in a XUL desktop application...


Flash-based engines

3D engines have been developed on the Adobe Flash
Adobe Flash
Adobe Flash is a multimedia platform used to add animation, video, and interactivity to web pages. Flash is frequently used for advertisements, games and flash animations for broadcast...

 platform to run in web browsers.
  • Away3D
    Away3D
    Away3D is an open source 3D graphics engine, written for the Adobe Flash platform in ActionScript 3, and runs in modern web browsers that utilize Adobe Flash Player.Away3D can be used to render 3D models and perform various other 3D computations...


See also

  • Graphics library
    Graphics library
    A graphics library is a program library designed to aid in rendering computer graphics to a monitor. This typically involves providing optimized versions of functions that handle common rendering tasks. This can be done purely in software and running on the CPU, common in embedded systems, or being...

  • Game engine
    Game engine
    A game engine is a system designed for the creation and development of video games. There are many game engines that are designed to work on video game consoles and personal computers...

  • 3D computer graphics software
    3D computer graphics software
    3D computer graphics software refers to programs used to create 3D computer-generated imagery. This article covers only some of the software used.-Uses:...

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK