- Visualization Library
infobox software
name = Visualization Library
genre =3D graphics
latest_release_version = Alpha 1
operating_system =Cross-platform
license = GNU GPL 3
website = http://www.visualizationlibrary.com[http://www.visualizationlibrary.com Visualization Library] is an open source C++ middleware for 2D/3D graphics applications based on OpenGL 2.1, designed to easily develop portable applications for the Windows XP, Windows Vista and Linux/X11 operating systems.
Design
Visualization Library has been designed with two main purposes:
# Distilling the experience of well-known 3D graphics engines such as Performer, OpenSceneGraph, OGRE3D, VTK, Renderware, Unreal Engine in a light, portable and user friendly solution.
# Implementing an intuitive and thin C++ wrapper around OpenGL 2.1.From the technical point of view Visualization Library is a scene-graph oriented 3d graphics
middleware with some notable characteristics that make Visualization Library stay somehow at the edge of the scene-graph family:
# The scene-graph is actually a plain shader-tree and its nodes have the sole purpose of defining the aspect of the objects in the scene.
# The matrix transform tree is independent from the shader-tree.
# The scene-graph is implemented as a DAG (Directed acyclic graph ) but is used most of the time as a simple tree (Tree (graph theory) ), this simplifies the architecture and makes the library's collision and culling system much easier to extend with ad-hoc techniques.
# The scene-graph doesn't carry spatial information about the objects in the scene, instead such information can be kept externally usingKd-tree s,BSP tree s,Potentially visible set s,Portal rendering techniques and so on, since they are much more efficient then a generic scene-graph when performingHidden surface determination andCollision detection (at the moment Visualization Library provides an AABB/Kd-tree system to be used out of the box for culling and collision detection).Key Features
* C++ thin wrapper around OpenGL 2.1
* OpenGL Shading Language 1.20 support
* Frame Buffer Objects
* Multiple render targets
* Render to texture
* Multiple cameras and rendering pipelines
* Vertex Buffer Objects
* AABB/Kd-tree based frustum culling
* Accelerated rendering via render state sorting and lazy update
* Automatic transparency management
* C++ math library based on the OpenGL Shading Language conventions
* Billboards
*FreeType andUnicode multilingual text rendering engine
* Texturing: multi-texturing, anisotropic filtering, mipmapping, 1D/2D/3D textures, cubemaps, texture combiners, automatic texture coordinate generation
* LOD: geometrical LOD, shader LOD
* MultipassingDevelopment Status
Visualization Library has been released to the public for the first time on May 7th 2008 as Visualization Library Alpha 1. The release includes full source code, demos, tests, project and make files and some basic documentation. The [http://www.visualizationlibrary.com/index.html#phoenix Alpha 2 release] is expected to be available around October and will focus on enhancing Visualization Library's interoperability with third party GUI frameworks (such as Qt, Win32, Windows Forms) and file formats (such as
COLLADA and OBJ).According to the [http://www.visualizationlibrary.com official website] the first stable release of Visualization Library will be available by 2009/Q1 with the name "Visualization Library Core".
See Also
*
OpenGL
*Scientific Visualization
*VTK
*Unreal Engine
*OpenGL Performer
*OGRE 3D
*OpenSceneGraph
*Irrlicht Engine External links
* [http://www.visualizationlibrary.com Official website]
Wikimedia Foundation. 2010.