HOME

TheInfoList



OR:

OpenSceneGraph is an
open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
3D graphics application programming interface (library or framework), used by application developers in fields such as
visual simulation Augmented reality (AR) is an interactive experience that combines the real world and computer-generated content. The content can span multiple sensory modalities, including visual, auditory, haptic, somatosensory and olfactory. AR can be def ...
,
computer game Video games, also known as computer games, are electronic games that involves interaction with a user interface or input device such as a joystick, controller, keyboard, or motion sensing device to generate visual feedback. This feedbac ...
s,
virtual reality Virtual reality (VR) is a simulated experience that employs pose tracking and 3D near-eye displays to give the user an immersive feel of a virtual world. Applications of virtual reality include entertainment (particularly video games), e ...
, scientific
visualization Visualization or visualisation may refer to: * Visualization (graphics), the physical or imagining creation of images, diagrams, or animations to communicate a message * Data visualization, the graphic representation of data * Information visualiz ...
and
modeling A model is an informative representation of an object, person or system. The term originally denoted the plans of a building in late 16th-century English, and derived via French and Italian ultimately from Latin ''modulus'', a measure. Models c ...
. The toolkit is written in standard C++ using
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 ha ...
, and runs on a variety of
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs. Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
s including Microsoft Windows,
macOS macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac (computer), Mac computers. Within the market of ...
,
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
,
IRIX IRIX ( ) is a discontinued operating system developed by Silicon Graphics (SGI) to run on the company's proprietary MIPS workstations and servers. It is based on UNIX System V with BSD extensions. In IRIX, SGI originated the XFS file system ...
, Solaris and
FreeBSD FreeBSD is a free and open-source Unix-like operating system descended from the Berkeley Software Distribution (BSD), which was based on Research Unix. The first version of FreeBSD was released in 1993. In 2005, FreeBSD was the most popular ...
. Since version 3.0.0, OpenSceneGraph also supports application development for mobile platforms, namely
iOS iOS (formerly iPhone OS) is a mobile operating system created and developed by Apple Inc. exclusively for its hardware. It is the operating system that powers many of the company's mobile devices, including the iPhone; the term also include ...
and Android. As of 2021, the project is being succeeded by VulkanSceneGraph project, a Vulkan-based library. OpenSceneGraph is in maintenance phase since 2019.


History

The OpenSceneGraph project was initiated by Don Burns in 1998. Robert Osfield joined the project during 1999, working on porting finished components for Microsoft Windows. The project went open source in September 1999 and the officia
project website
was created. Towards the end of the year Osfield took over the project and began extensive refactoring of the existing codebase, putting emphasis on modernisation, embracing modern C++ standards and
design patterns ''Design Patterns: Elements of Reusable Object-Oriented Software'' (1994) is a software engineering book describing software design patterns. The book was written by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, with a fore ...
. In April 2001, taking into account growing community of users and interest of public, Robert Osfield created OpenSceneGraph Professional Services, providing commercial support, consulting and training services. This marks full professionalization of the project. The first official stable version of OpenSceneGraph was version 1.0, released in 2005. An extended version 2.0 followed in 2007, adding support for multi-core and multi-gpu systems, several important NodeKits and usage of unified multiplatform build system
CMake In software development, CMake is cross-platform free and open-source software for build automation, testing, packaging and installation of software by using a compiler-independent method. CMake is not a build system itself; it generates ano ...
. Books and user handbooks were introduced.Martz, P.: OpenSceneGraph Quick Start Guide. Louisville, USA, 2007. The project has been quickly growing and becoming more popular ever since. There are more than 530 contributors signed under current stable version, and the official mailing list contains thousands of names.http://www.openscenegraph.org/projects/osg/wiki/Support/History In 2019, the project was moved to a maintenance phase, the main development effort being routed to its successor project VulkanSceneGraph.


Features

Features in version 1.0: * A feature-rich and widely adopted
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 ...
implementation * Support for performance increasing features *#
View frustum In 3D computer graphics, the view frustum (also called viewing frustum) is the region of space in the modeled world that may appear on the screen; it is the field of view of a perspective virtual camera system. The view frustum is typically ...
, small feature and
occlusion culling In 3D computer graphics, hidden-surface determination (also known as shown-surface determination, hidden-surface removal (HSR), occlusion culling (OC) or visible-surface determination (VSD)) is the process of identifying what surfaces and parts o ...
*# Level of detail *# State sorting and lazy state updating *#
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 ha ...
fast paths and latest extensions *# Multi-threading and database optimization * Support for OpenGL, from 1.1 through 2.0 including the latest extensions * Tightly coupled support for OpenGL Shading Language, developed in conjunction with 3Dlabs * Support for a wide range of 2D image and 3D database formats, with loaders available for formats such as
OpenFlight OpenFlight (or .flt) is a 3d geometry model file format originally developed by Software Systems Inc. for its MultiGen real-time 3d modeling package in 1988. Originally called Flight, the format was designed as a nonproprietary 3d model format for ...
, TerraPage, OBJ, 3DS,
JPEG JPEG ( ) is a commonly used method of lossy compression for digital images, particularly for those images produced by digital photography. The degree of compression can be adjusted, allowing a selectable tradeoff between storage size and im ...
, PNG and
GeoTIFF GeoTIFF is a public domain metadata standard which allows georeferencing information to be embedded within a TIFF file. The potential additional information includes map projection, coordinate systems, ellipsoids, datums, and everything else nece ...
*
Particle effects A particle system is a technique in game physics, motion graphics, and computer graphics that uses many minute sprites, 3D models, or other graphic objects to simulate certain kinds of "fuzzy" phenomena, which are otherwise very hard to repro ...
* Support for anti-aliased
TrueType TrueType is an outline font standard developed by Apple in the late 1980s as a competitor to Adobe's Type 1 fonts used in PostScript. It has become the most common format for fonts on the classic Mac OS, macOS, and Microsoft Windows operating ...
text * Seamless support for
framebuffer A framebuffer (frame buffer, or sometimes framestore) is a portion of random-access memory (RAM) containing a bitmap that drives a video display. It is a memory buffer containing data representing all the pixels in a complete video frame. Moder ...
objects, pbuffers and frame buffer render-to-texture effects * Multi-threaded database paging support, which can be used in conjunction with all 3D database and image loaders * Large scale, whole earth geospatial terrain paged database generation * Introspection support for core libraries allowing external applications to query, get, set and operate on all classes in the scene graph, via a generic interface * Multi-threaded and configurable support for multiple CPU/multiple GPU machines Features in version 2.8.3 *
Mac OS X 10.6 Mac OS X Snow Leopard (version 10.6) is the seventh major release of macOS, Apple's desktop and server operating system for Macintosh computers. Snow Leopard was publicly unveiled on June 8, 2009 at Apple’s Worldwide Developers Conference. ...
(Snow Leopard) support *ImageIO support on
Mac OS X macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lapt ...
*3DS file format export and file conversion *Integrated Autodesk FBX technology *Integrated FFmpeg support for displaying video file content in 3D applications. *PLY file format support Features in version 2.8.4: *VS2010 build support Features in version 3.0.0: * OpenGL ES 1.1, and OpenGL ES 2.0 support * OpenGL 3.x and 4.x support along with associated OpenGL extensions * Support for Android on tablets and phones * Support for IOS on tablets and phones (end users applications have already been accepted on the App Store) * Introduction of Present3D application for immersive 3D presentations * New extensible serializers that provide new .osgb binary, .osgt ascii and .osgx xml file native formats * New generalized serializable metadata architecture * New osgQt library that makes it straight forward to integrate !OpenSceneGraph with Qt, including web browsing via QWebKit. * New FBX plugin based on the Autodesk FBX DSK that enables reading of the .fbx 3D authoring and interchange format * New directshow plugin for handling movies under Windows * New pov plugin for exporting a scene to POV-Ray format, enabling use of POV-Ray to do photo-realistic ray tracing * New ply plugin for reading ply files * Revamped 3ds plugin for reading and writing of .3ds files * Revamped dxf plugin for reading and writing of .dxf files * Support for Cocoa and 64bit OSX build


Stable Version Release History


Architecture

Library architecture can be separated into three main subsets — the core OpenSceneGraph library, osgViewer and a set of NodeKits.


Core

The base of OpenSceneGraph library can be further divided into four main modules.


osg

The core of OpenSceneGraph provides classes and methods for construction and manipulation of the
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 ...
. It contains classes representing various types of
nodes In general, a node is a localized swelling (a "knot") or a point of intersection (a vertex). Node may refer to: In mathematics *Vertex (graph theory), a vertex in a mathematical graph *Vertex (geometry), a point where two or more curves, lines, ...
, scene geometry,
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 ha ...
state abstraction, geometric transformations, as well as mathematical classes for 2D and 3D
vector Vector most often refers to: *Euclidean vector, a quantity with a magnitude and a direction *Vector (epidemiology), an agent that carries and transmits an infectious pathogen into another living organism Vector may also refer to: Mathematic ...
and
matrix operation In mathematics, a matrix (plural matrices) is a rectangular array or table of numbers, symbols, or expressions, arranged in rows and columns, which is used to represent a mathematical object or a property of such an object. For example, \begin ...
s. Advanced
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 ...
is also included.


OpenThreads

The OpenSceneGraph project contains a threading library, ''OpenThreads'', which is a lightweight cross-platform
thread Thread may refer to: Objects * Thread (yarn), a kind of thin yarn used for sewing ** Thread (unit of measurement), a cotton yarn measure * Screw thread, a helical ridge on a cylindrical fastener Arts and entertainment * ''Thread'' (film), 2016 ...
model A model is an informative representation of an object, person or system. The term originally denoted the plans of a building in late 16th-century English, and derived via French and Italian ultimately from Latin ''modulus'', a measure. Models c ...
. It is intended to provide a minimal and complete Object-Oriented (OO) thread interface for C++ programmers. It is loosely modeled on the
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mo ...
thread API, and the POSIX Threads standards. The
architecture Architecture is the art and technique of designing and building, as distinguished from the skills associated with construction. It is both the process and the product of sketching, conceiving, planning, designing, and constructing buildings ...
of OpenThreads is designed around "swappable" thread models which are defined at
compile-time In computer science, compile time (or compile-time) describes the time window during which a computer program is compiled. The term is used as an adjective to describe concepts related to the context of program compilation, as opposed to concep ...
in a shared object library. It is of importance to note that while a factory pattern design could have been used to achieve the goal of generic
interface Interface or interfacing may refer to: Academic journals * ''Interface'' (journal), by the Electrochemical Society * '' Interface, Journal of Applied Linguistics'', now merged with ''ITL International Journal of Applied Linguistics'' * '' Int ...
, it would have required the programmer to allocate each of the 4 fundamental types (Thread, Mutex, Barrier, & Condition) on the
heap Heap or HEAP may refer to: Computing and mathematics * Heap (data structure), a data structure commonly used to implement a priority queue * Heap (mathematics), a generalization of a group * Heap (programming) (or free store), an area of memory f ...
. Due to the cost associated with heap allocation of the underlying concrete implementations of these constructs on some platforms, such allocation was deemed unacceptable at the time this library was originally written, and thus the factory pattern was not used. Instead, a somewhat abstruse - but effective - technique was chosen to provide the necessary data/implementation hiding. This technique uses private
void pointer In computer science, a pointer is an object in many programming languages that stores a memory address. This can be that of another value located in computer memory, or in some cases, that of memory-mapped computer hardware. A pointer ''re ...
s to encapsulate object private data. The void pointers actually point at concrete data structures, but give a uniform interface to the dso. The design goal of OpenThreads is to construct optimized implementations using platform optimized multi-processing constructs such as the sproc methods used on IRIX, and Windows threads.


osgUtil

osgUtil contains
rendering Render, rendered, or rendering may refer to: Computing * Rendering (computer graphics), generating an image from a model by means of computer programs * Architectural rendering, creating two-dimensional images or animations showing the attributes ...
backend functionality and utilities taking care of scene
graph traversal In computer science, graph traversal (also known as graph search) refers to the process of visiting (checking and/or updating) each vertex in a graph. Such traversals are classified by the order in which the vertices are visited. Tree traversal ...
, rendering
optimisation Mathematical optimization (alternatively spelled ''optimisation'') or mathematical programming is the selection of a best element, with regard to some criterion, from some set of available alternatives. It is generally divided into two subfi ...
and transforming the scene into a stream of
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 ha ...
API calls. It also provides means of basic interaction with scene, such as object picking.


osgDB

This library is tasked with loading 3D model files. It supports many 2D/3D data formats manipulators. More than 50 different formats are supported - most common are 3D data formats, such as
COLLADA COLLADA (for ''COLLA''borative ''D''esign ''A''ctivity) is an interchange file format for interactive 3D applications. It is managed by the nonprofit technology consortium, the Khronos Group, and has been adopted by ISO as a publicly available ...
(.dae),
LightWave LightWave 3D is a 3D computer graphics program developed by NewTek. It has been used in films, television, motion graphics, digital matte painting, visual effects, video game development, product design, architectural visualizations, virtual ...
(.lwo),
Wavefront In physics, the wavefront of a time-varying ''wave field'' is the set ( locus) of all points having the same '' phase''. The term is generally meaningful only for fields that, at each point, vary sinusoidally in time with a single temporal fre ...
(.obj),
OpenFlight OpenFlight (or .flt) is a 3d geometry model file format originally developed by Software Systems Inc. for its MultiGen real-time 3d modeling package in 1988. Originally called Flight, the format was designed as a nonproprietary 3d model format for ...
(.flt),
3D Studio Max Autodesk 3ds Max, formerly 3D Studio and 3D Studio Max, is a professional 3D computer graphics program for making 3D animations, models, games and images. It is developed and produced by Autodesk Media and Entertainment. It has modeling capabi ...
(.3ds),
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 "Direc ...
(.x) and many others. OpenSceneGraph also provides its own native
ASCII ASCII ( ), abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because ...
.osg format. There are exporters into .osg format available for
Blender A blender (sometimes called a mixer or liquidiser in British English) is a kitchen and laboratory appliance used to mix, crush, purée or emulsify food and other substances. A stationary blender consists of a blender container with a rotating me ...
,
Maya Maya may refer to: Civilizations * Maya peoples, of southern Mexico and northern Central America ** Maya civilization, the historical civilization of the Maya peoples ** Maya language, the languages of the Maya peoples * Maya (Ethiopia), a popu ...
and 3D Studio MAX. Supported picture formats include .rgb,
.gif The Graphics Interchange Format (GIF; or , see pronunciation) is a bitmap image format that was developed by a team at the online services provider CompuServe led by American computer scientist Steve Wilhite and released on 15 June 1987 ...
,
.jpg JPEG ( ) is a commonly used method of lossy compression for digital images, particularly for those images produced by digital photography. The degree of compression can be adjusted, allowing a selectable tradeoff between storage size and im ...
,
.png Portable Network Graphics (PNG, officially pronounced , colloquially pronounced ) is a raster-graphics file format that supports lossless data compression. PNG was developed as an improved, non-patented replacement for Graphics Interchange ...
,
.tiff Tag Image File Format, abbreviated TIFF or TIF, is an image file format for storing raster graphics images, popular among graphic artists, the publishing industry, and photographers. TIFF is widely supported by scanning, faxing, word processi ...
, .pic,
.bmp The BMP file format, also known as bitmap image file, device independent bitmap (DIB) file format and bitmap, is a raster graphics image file format used to store bitmap digital images, independently of the display device (such as a graphics adap ...
, .dds,
.tga Truevision TGA, often referred to as TARGA, is a raster graphics file format created by Truevision Inc. (now part of Avid Technology). It was the native format of TARGA and VISTA boards, which were the first graphic cards for IBM-compatibl ...
and
quicktime QuickTime is an extensible multimedia framework developed by Apple Inc., capable of handling various formats of digital video, picture, sound, panoramic images, and interactivity. Created in 1991, the latest Mac version, QuickTime X, is a ...
. This module also provides I/O device abstraction. The other file-format loader plugins are registered with osgDB.


osgGA

This is a GUI abstraction library required for different platforms.


osgViewer

osgViewer Library provides a quick and easy way of visualizing the graphics scene. It is also a platform-independent abstraction for various
window system In computing, a windowing system (or window system) is software that manages separately different parts of display screens. It is a type of graphical user interface (GUI) which implements the WIMP (windows, icons, menus, pointer) paradigm for a ...
interfaces.


osgProducer

The OSG is also shipped with a osgProducer which is just a platform-independent viewer supporting multiple graphic contexts and multi-threading.


NodeKits

Project distribution also contains a variety of so-called ''NodeKits''. These are solutions of common problems and frequently used more advanced 3D application components and graphics algorithms. Among the most significant are * osgAnimation — Skeletal models usage, animating and morphing. * osgFX — Special effects and image postprocessing. * osgManipulator — Interactive 3D scene manipulation. * osgParticle — Advanced
particle system A particle system is a technique in game physics, motion graphics, and computer graphics that uses many minute sprites, 3D models, or other graphic objects to simulate certain kinds of "fuzzy" phenomena, which are otherwise very hard to rep ...
usage. * osgQt — Integration with
Qt toolkit Qt (pronounced "cute") is cross-platform software for creating graphical user interfaces as well as cross-platform applications that run on various software and hardware platforms such as Linux, Windows, macOS, Android or embedded systems wit ...
and incorporation of QtGUI elements into OSG applications. * osgShadow — Framework for shadow rendering techniques. * osgTerrain — Extensive
terrain rendering Terrain cartography or relief mapping is the depiction of the shape of the surface of the Earth on a map, using one or more of several techniques that have been developed. Terrain or relief is an essential aspect of physical geography, and as su ...
. * osgText — Quality antialiased fonts, TrueType and FreeType font support. * osgVolume —
Volume rendering In scientific visualization and computer graphics, volume rendering is a set of techniques used to display a 2D projection of a 3D discretely sampled data set, typically a 3D scalar field. A typical 3D data set is a group of 2D slice imag ...
and volumetric data manipulation. * osgWidget — Simple
GUI The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
creation.


Reception and adoption

OpenSceneGraph doesn't provide any functionality for higher "gaming" logic, it is a rendering-only tool. There are several full-scale
engines An engine or motor is a machine designed to convert one or more forms of energy into mechanical energy. Available energy sources include potential energy (e.g. energy of the Earth's gravitational field as exploited in hydroelectric power ge ...
for
computer games A personal computer game, also known as a PC game or computer game, is a type of video game played on a personal computer (PC) rather than a video game console or arcade machine. Its defining characteristics include: more diverse and user-d ...
(or so-called ''
serious games A serious game or applied game is a game designed for a primary purpose other than pure entertainment. The "serious" adjective is generally prepended to refer to video games used by industries like defense, education, scientific exploration, he ...
'') creation using OSG as a base of graphics rendering, the most common framework being
Delta3D Delta3d is an open source software gaming/simulation engine API. Delta3d is managed and supported by Caper Holdings LLC. Previously the Modeling, Virtual Environments, and Simulation (MOVES) Institute at the Naval Postgraduate School in Monter ...
. There is a great variety of software products built on top of OpenSceneGraph; among others
Virtual Terrain Project
an
ViewTec TerrainView
List of OSG users contains companies as
Boeing The Boeing Company () is an American multinational corporation that designs, manufactures, and sells airplanes, rotorcraft, rockets, satellites, telecommunications equipment, and missiles worldwide. The company also provides leasing and ...
,
NASA The National Aeronautics and Space Administration (NASA ) is an independent agency of the US federal government responsible for the civil space program, aeronautics research, and space research. NASA was established in 1958, succeedi ...
,
FlightGear ''FlightGear Flight Simulator'' (often shortened to ''FlightGear'' or ''FGFS'') is a free, open source multi-platform flight simulator developed by the project since 1997. David Murr started the project on April 8, 1996. The project had its ...
, Norcontrol and many others.http://www.openscenegraph.org/projects/osg/wiki/Screenshotshttp://vterrain.org/http://www.delta3d.org At the opensource community level, several projects have adopted OSG as a rendering backend: *
FlightGear ''FlightGear Flight Simulator'' (often shortened to ''FlightGear'' or ''FGFS'') is a free, open source multi-platform flight simulator developed by the project since 1997. David Murr started the project on April 8, 1996. The project had its ...
(Flight Simulation software) *
OpenMW OpenMW is a free and open-source game engine recreation that reimplements the one powering Bethesda Softworks' 2002 open-world role-playing game '' The Elder Scrolls III: Morrowind''. Overview The project aims to address issues with the origi ...
(Open-source engine recreation for Morrowind) OpenSceneGraph has received a javascript/WebGL implementation called
OSG.JS OSG.JS is a WebGL framework based on OpenSceneGraph concepts. It allows an individual to use an “OpenSceneGraph-like” toolbox to interact with WebGL via JavaScript, and provides facilities for exporting various assets to the osgjs format. Th ...
that is used by many online 3D scene viewers including
Sketchfab Sketchfab is a 3D modeling platform website to publish, share, discover, buy and sell 3D, VR and AR content. It provides a viewer based on the WebGL and WebXR technologies that allows users to display 3D models on the web, to be viewed on a ...
and
Clara.io Clara.io is web-based freemium 3D computer graphics software developed by Exocortex, a Canadian software company. The free or "Basic" component of their freemium offering, however, places severe restrictions, such as on saving models and importing ...
. A wrapping from C++ to javascript through Emscripten OGStudio is also currently developed. Among other products that use OSG must be mentioned: *
Remo 3D Remo 3D is a 3D computer graphics software specialized in creating 3D models for realtime visualization. As opposed to many other 3D modeling products that are primarily intended for rendering. Remo 3D focuses on supporting realtime features like ...
OSG Scene Editor


See also

*
OSG.JS OSG.JS is a WebGL framework based on OpenSceneGraph concepts. It allows an individual to use an “OpenSceneGraph-like” toolbox to interact with WebGL via JavaScript, and provides facilities for exporting various assets to the osgjs format. Th ...
*
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 ha ...
*
OGRE An ogre ( feminine: ogress) is a legendary monster depicted as a large, hideous, man-like being that eats ordinary human beings, especially infants and children. Ogres frequently feature in mythology, folklore, and fiction throughout the wor ...
*
Delta3D Delta3d is an open source software gaming/simulation engine API. Delta3d is managed and supported by Caper Holdings LLC. Previously the Modeling, Virtual Environments, and Simulation (MOVES) Institute at the Naval Postgraduate School in Monter ...
*
Irrlicht Engine Irrlicht (pronounced in German) is an open-source game engine written in C++. It is cross-platform, officially running on Windows, macOS, Linux and Windows CE and due to its open nature ports to other systems are available, including FreeBSD, X ...
*
Crystal Space Crystal Space is a framework for developing 3D computer graphics, 3D software, applications written in C++ by Jorrit Tyberghein and others. The first public release was on August 26, 1997. It is typically used as a game engine but the framework i ...
*
Visualization Library Visualization Library (VL) is an open source C++ middleware for 2D/3D graphics applications based on OpenGL 4, designed to develop portable applications for the Microsoft Windows, Linux and Mac OS X operating systems. Design goals Visualization L ...
*
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. It runs on Windows, Linux, Solaris and OS X an ...
* ossimPlanet *
Grome ''Grome'' is an environmental modeling package developed by Quad Software dedicated for procedural and manual generation of large virtual outdoor worlds suitable for games and other 3D real-time simulation applications. History After more than ...
*
Open Inventor Open Inventor, originally IRIS Inventor, is a C++ object-oriented retained mode 3D graphics toolkit designed by SGI to provide a higher layer of programming for OpenGL. Its main goals are better programmer convenience and efficiency. Open Inve ...
*
Unity (game engine) Unity is a cross-platform game engine developed by Unity Technologies, first announced and released in June 2005 at Apple Worldwide Developers Conference as a Mac OS X game engine. The engine has since been gradually extended to support a varie ...


References


External links

* {{URL, http://www.openscenegraph.org/ - official website for the project
AlphaPixel OSG Binaries
- Windows, Mac and Linux x86 and x64 precompiled binaries.
SigmaOSG
- OpenSceneGraph Tutorials (contains all the prior OSGHelp material from retired OSGHelp site)
Scenegraphs and Openscenegraph for 3D Software Development

OpenSceneGraph
- library information webpage on ''www.OpenGL.org'' (one of four promoted libraries) 3D scenegraph APIs