Comparing OpenSG and OpenSceneGraph
This page tries to give an exhaustive point-by-point comparison of OpenSG's and OpenSceneGraph's (including OpenThreads and OpenProducer) features. It is split into logical pieces to keep it more manageable, and to have a natural spot for explanations, as not everything can really be described by a check mark.
The comparison is given for OpenSG version 1.8 (i.e. the current CVS head)
- Fundamentals
- OpenGL Support
- Multi-Threading
- Clustering
- Node Types
- I/O
- Windows/Viewports
- Advanced Techniques
- Extensions
- 3rd Party tools
Fundamentals
| 1.8 | 2.0 | OSG | |
| Vector library | | | 1
|
| Reflective Core | | |
|
- 1
- Support provided through an OSG introspection plugin.
OpenGL Support
| 1.8 | 2.0 | OSG | |
| Single Textures | | |
|
| Multi Textures | | |
|
| ARB Shaders | | |
|
| GLSL Shaders | | |
|
Multi-Threading
Clustering
| 1.8 | 2.0 | OSG | |
| Cluster possible | | | |
| "Simple" clustering | 2 | 2 | |
| Sort-First Rendering | | | |
| Sort-Last Rendering | | | |
- 1
- The distribution contains an example on how to do clustering, but the system itself doesn't give any support for it.
- 2
- Because of OpenSG's use of changelists, clustering is supported nearly automatically and is very simple to setup. See the cluster examples in the documentation.
Node Types
I/O
External formats supported in the released packages, not counting externally provided loaders).
* Split into image/scene/archive?
* Many of these format names where pasted from OpenSceneGraph's plugin directoy. I'm not sure all names/extensions are correct. /ML
Those types listed supported by OpenSG 1.8 and not 2.0 will be be ported into the 2.0 release.
| 1.8 | 2.0 | OSG | Comment | |
| Model Formats | ||||
| 3dc | | | | Point cloud data |
| 3ds | | | | 3D Studio 3.x/4.x (Writable and readable by 3D Studio Max) |
| ac | | | | AC3D scene |
| arcinfo | 3 | | | ARCInfo scene |
| bsp | | | | Quake Data ?? |
| bpoly | 3 | | | Side Effects Software PRISMS binary |
| collada | | | | Collada scene |
| csb | 3 | | | SGI Optimizer binary format |
| dae | | | | Collada digital asset exchange |
| dat | | | | |
| directx (.x) | | | | DirectX model file |
| dw | | | | Designer Workshop scene |
| dxf | | | | AutoCAD drawing (2D or 3D model) |
| exr | | | | OpenEXR scene |
| flt | 3 | | | OpenFlight scene |
| gdal | | | | http://gdal.org/ |
| geo | | | | Carbon Graphics GEO |
| iv | 34 | | | Inventor scene |
| ive | | | | OpenSceneGraph native binary format |
| lwo | | | | Lightwave object |
| lws | | | | Lightwave scene |
| md2 | | | | Quake 2 model |
| mtd | | |
| |
| nff | 3 | | | Eric Haines' ray tracing test data format |
| obj | | | | Alias|Wavefront scene (predecessor to Maya) |
| off | | | | Object File Format |
| osb | | | | OpenSG native binary format |
| pfb | 3 | | | Performer scene |
| ply | | | | Stanford PLY format |
| shp | | | | ESRI Shapefile |
| slp | | | | |
| stl | | | | stereolithography CAD |
| txp | | | | TerraPage terrain |
| vtk | | | | Visualization Toolkit file |
| vrml (.wrl) | | | | VRML scene |
| Image Formats | ||||
| bmp | | | | Windows Bitmap image |
| dds | | | | DirectDraw? surface |
| exr | | | | OpenEXR image |
| gif | | | | GIF image |
| hdr | | | | HDRI image (OpenEXR format) |
| jp2 | | | | Jasper (JPEG 2000) |
| jpeg | | | | JPEG image |
| mng | | | | Multiple-image Network Graphics |
| nrrd | | | | |
| pic | | | | SGI picture image format |
| png | | | | Portable Network Graphics |
| pnm | | | | Portable AnyMap (variants PPM, PGM, PBM) |
| psd | | | | PhotoShop image |
| qt | | | | QuickTime image only (no movie) |
| raw | | | | Raw image data |
| rgb | | | | SGI rgb image format |
| sgi | | | | SGI rgb image format |
| tga | | | | TARGA image |
| tif | | | | Tagged Image File Format image |
| xine | | |
| |
| Meta loaders | ||||
| rot, scale, trans | | | | OpenSceneGraph loaders for modifying base transformation. |
| net | | | | OpenSceneGraph metaloader for reading data over network |
| normals | | | | Adds normals to file on load |
| tgz | | | 2 | TAR-GZipped archive |
| zip | | | 2 | ZIP archive |
- 2
- OpenSceneGraph uses external programs (unzip and tar) to support these archive formats.
- 3
- Can be loaded using the OpenGL Performer converter from Contrib, needs installed Performer libraries
- 4
- Can be loaded using the Open Inventor converter from Contrib, needs installed Open Inventor libraries
Performer loader source is in $PFROOT/usr/share/Performer/src/lib/libpfdb if performer-devel is installed
OSG loader source can be found here: http://openscenegraph.org/viewcvs/src/osgPlugins/
OpenSG Loader source can be found here: http://opensg.vrsource.org/trac/browser/trunk/Source/System/FileIO
It would be nice to have a poll somewhere about what the most important formats are to add to OpenSG
Windows/Viewports
Advanced Techniques
| 1.8 | 2.0 | OSG | |
| Occlusion Culling | | | |
| Small-feature culling | | |
|
| Imposters | | |
|
| CLOD Terrain | | |
|
| ShadowMaps? | | | |
