diff --git a/NEWS.txt b/NEWS.txt index 49bd4b1f9..995a9dff3 100644 --- a/NEWS.txt +++ b/NEWS.txt @@ -1,6 +1,28 @@ OSG News (most significant items from ChangeLog) ================================================ +16th November 2004 - OpenSceneGraph-0.9.8 + + >>> Support for database archives, improved pager, 3d compressed textures + + Database archives. + + Improved pager support with better multi-processor stability and constant frame rate + peformance. + + STL import. + + Spelling and typo correction blitz on osg, osgDB and osgUtil libraries. + + NodeTrackManipulator improved. + + General bug fixes. + + New examples: + osgplanets + osgspotlight + osglauncher + 18th August 2004 - OpenSceneGraph-0.9.7-2 Build fixes for VisualStudio6.0. diff --git a/README.txt b/README.txt index fbf878ce8..5282129ef 100644 --- a/README.txt +++ b/README.txt @@ -1,9 +1,11 @@ Welcome to the OpenSceneGraph (OSG). -For information on the project, this distribution, how to compile and -run libraries and examples, and for documention open up index.html -in your perfered html browser. +For up to date information on the project, how to compile and run libraries +and examples, and see the documentation on the OpenSceneGraph website. + + http://www.openscenegraph.org + Robert Osfield. robert@openscenegraph.com -April 2002. +November 2004. diff --git a/doc/MindMaps/DesignPatterns/DesignPatterns.gif b/doc/MindMaps/DesignPatterns/DesignPatterns.gif deleted file mode 100755 index 9c6171bba..000000000 Binary files a/doc/MindMaps/DesignPatterns/DesignPatterns.gif and /dev/null differ diff --git a/doc/MindMaps/DesignPatterns/DesignPatterns.html b/doc/MindMaps/DesignPatterns/DesignPatterns.html deleted file mode 100755 index bd61be938..000000000 --- a/doc/MindMaps/DesignPatterns/DesignPatterns.html +++ /dev/null @@ -1,16 +0,0 @@ - - - - - -Design Patterns - - - - -
- - - - - diff --git a/doc/MindMaps/Mission/Mission.gif b/doc/MindMaps/Mission/Mission.gif deleted file mode 100755 index fba220ba6..000000000 Binary files a/doc/MindMaps/Mission/Mission.gif and /dev/null differ diff --git a/doc/MindMaps/Mission/Mission.html b/doc/MindMaps/Mission/Mission.html deleted file mode 100755 index 286604f84..000000000 --- a/doc/MindMaps/Mission/Mission.html +++ /dev/null @@ -1,16 +0,0 @@ - - - - - -Mission - - - - -
- - - - - diff --git a/doc/UML/osg.png b/doc/UML/osg.png deleted file mode 100644 index 7cd87b08e..000000000 Binary files a/doc/UML/osg.png and /dev/null differ diff --git a/doc/UML/osgutils.png b/doc/UML/osgutils.png deleted file mode 100644 index c165859f0..000000000 Binary files a/doc/UML/osgutils.png and /dev/null differ diff --git a/doc/data.html b/doc/data.html deleted file mode 100644 index 0c0907b3d..000000000 --- a/doc/data.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - - Data sources - - - - - - - - - - - - - - - - - - - - -
Index Introduction Contents Install Dependencies examples Data Viewer Stereo osgdemPlan Reference Guides
-

Data Sources

- - - - diff --git a/doc/documentation.html b/doc/documentation.html deleted file mode 100644 index ad006f204..000000000 --- a/doc/documentation.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - OSG Documentation - - - - - - - - - - - - - - - - - - - - -
IndexIntroductionContentsInstallDependenciesexamplesDataViewerStereoosgdemPlanReference Guides
-

Reference Guides

-The documentation on the OSG is still in its early stages, and far from -complete. If you can't find your answers in what documentation there -currently is, please feel free to post the question on the OSG mailing -list. -

Reference guides (automatically generated using doc++)

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
osg/core scene graph
-
osgUtil/utilitiy library
osgDB/database library
-
osgParticle/Nodekit with Particle support
-
osgText/Nodekit with text support
-
osgTerrain/
-
Nodekit with support -generating large scale geospatial paged databases
osgSim/Nodekit for visual simulation
-
osgFX/Nodekit which adds support for -special effects
-
osgGL2/
-
Nodekit with OpenGL2 support
-
osgGA/utility library for adapting -Windowing events etc
-
osgProducer/windowing/viewer library built -ontop of OpenProducer
-
-
-

UML Diagrams

-
osg    -            UML diagram of -the osg core library
- osgUtil     -    UML diagram of the osg utilities library
-

-

Mind Maps

-
Design -Pattern used in the OSG.
- Mission Statement for OSG.
-

- - diff --git a/doc/examples.html b/doc/examples.html deleted file mode 100644 index 4ae5847ae..000000000 --- a/doc/examples.html +++ /dev/null @@ -1,212 +0,0 @@ - - - - - - examples - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IndexIntroductionContentsInstallDependenciesexamplesDataViewerStereoosgdemPlanReference Guides
- -

-Running the examples

-Once the OpenSceneGraph is installed you will -need place the location where it was installed on the you systems paths -environmental variables, and then download the demo -data and set the OSG_FILE_PATH so that the file loading can -locate the datasets. It is probably worth setting you autoexec.bat, .bashrc -or.tcsh etc to pick up on these settings so that next time you log in everything -is in easy reach. -
  • -Windows:
  • - - - -
  • -Unix
  • - - - -
  • -MacOSX:
  • - - - -All the demos run on the commandline, most requiring parameters, such as -what file to load, if you are in any doubt just run the application and -it will either run, or provide help on what options it accepts. -
      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    osgviewer cow.osgThe scene graph viewer demo uses osgProducer::Viewer to bring up a basic -viewer. To find out what command line arguments it takes simply run osgviewer -without any arguments. To load a model simple run osgviewer filename.ext. The -osgProducer::Viewer provides an extensive set of operations that can be used -to display information about the loaded database such as performance stats, -through to output a snapshot of the screen, which is how these thumbnails -were created. For a full list of key presses and mouse interaction read -the osgviewer documentation.
    osgviewer --stereo cessna.osgThe scene graph viewer also supports anaglyphic, quad buffered, and -split screen stereo modes, for a full list of options and environmental -variables see the stereo documentation.
    hangglideThe hang glide demo creates a simple flying site (Don Burns local hang -glide site in fact!), demonstrating how to create simple terrain, trees -and skydomes, and how to implement a simple flight camera manipulator to -allow the user to fly around. 
    osgbillboard lz.rgbDemonstrates how to create the various types of billboard supported -by the OpenSceneGraph. Billboards are typically used for trees or particles -effects. 
    osghud glider.osgVery similar to the basic osgviewer demo, but adds an orthographic projection -over the top of the main 3D view to create a head up display effect. Also -demonstrates how to use osgText. .
    osgimpostor Town.osgOpenSceneGraph is unique among scene graph in the fact that it supports -dynamically updated impostors natively, and this demo uses osgUtil::InsertImpostorVisitor -to traverse the loaded scene graph inserting osg::Importor nodes in place -of groups and LOD, so you can add Impostor into any of your own datasets! -The scene graph then takes over full responsibility for managing required -multistage rendering all dynamically at runtime, whilst keeping it neatly -encapsulated making it incredible easy to use. The Impostor support demonstrates -how powerful the multi-stage multi-pass rendering framework that the OpenSceneGraph -has, almost all other scene graphs have to hardwire such effects into them -and require significant application coding to do so. 
    osgreflect cow.osgAn example of how to set up planar reflections using the standard multi-pass -stencil buffer algorithm. This is all handled within the scene graph, so -there is no need to hardwire multi-pass effects into your own application. -.
    osgscribe.cow.osgAn example of how to decorate your scene graph geometry for useful -effects such as scribing. This demo uses two instances of your model, the -first one uses the state values set in your scene graph, the second instance -override the polygmode to render it as wireframe, and with a polygon offset -to ensure it is seen from all angles. These two instance are grouped together -and then are treated like any other scene graph. 
    osgstereoimage left.rgb right.rgbAn example of use node maks to select different parts of the scene -graph for different traversals, in this case two separate images are drawn -for the left and right eyes to generate a stereo 3D image from two flat -images! .
    osgtextAn example showing how to creating the various different typs of text -that the osgText library supports. 
    osgtexture lz.rgb reflect.rgbAn example showing how to creating the textured quads, each with different -texture parameters, including anisotrophic filtering and texture compression! 
    osgwindows cow.osgAn example of multiple windows all running at once. 
    - - - diff --git a/doc/images/OpenSceneGraphBanner_Distribution.jpg b/doc/images/OpenSceneGraphBanner_Distribution.jpg deleted file mode 100644 index 2184c0b20..000000000 Binary files a/doc/images/OpenSceneGraphBanner_Distribution.jpg and /dev/null differ diff --git a/doc/images/hangglide.jpg b/doc/images/hangglide.jpg deleted file mode 100644 index 13b48d507..000000000 Binary files a/doc/images/hangglide.jpg and /dev/null differ diff --git a/doc/images/osgbillboard.jpg b/doc/images/osgbillboard.jpg deleted file mode 100644 index ad1a2fe7f..000000000 Binary files a/doc/images/osgbillboard.jpg and /dev/null differ diff --git a/doc/images/osgcube.jpg b/doc/images/osgcube.jpg deleted file mode 100644 index 5779067a1..000000000 Binary files a/doc/images/osgcube.jpg and /dev/null differ diff --git a/doc/images/osghud.jpg b/doc/images/osghud.jpg deleted file mode 100644 index 153408e59..000000000 Binary files a/doc/images/osghud.jpg and /dev/null differ diff --git a/doc/images/osgimpostor.jpg b/doc/images/osgimpostor.jpg deleted file mode 100644 index 339036686..000000000 Binary files a/doc/images/osgimpostor.jpg and /dev/null differ diff --git a/doc/images/osgreflect.jpg b/doc/images/osgreflect.jpg deleted file mode 100644 index c96dfdff6..000000000 Binary files a/doc/images/osgreflect.jpg and /dev/null differ diff --git a/doc/images/osgscribe.jpg b/doc/images/osgscribe.jpg deleted file mode 100644 index 3ef27677a..000000000 Binary files a/doc/images/osgscribe.jpg and /dev/null differ diff --git a/doc/images/osgstereoimage.jpg b/doc/images/osgstereoimage.jpg deleted file mode 100644 index 5e2ad5d1b..000000000 Binary files a/doc/images/osgstereoimage.jpg and /dev/null differ diff --git a/doc/images/osgtext.jpg b/doc/images/osgtext.jpg deleted file mode 100644 index c6b501078..000000000 Binary files a/doc/images/osgtext.jpg and /dev/null differ diff --git a/doc/images/osgtexture.jpg b/doc/images/osgtexture.jpg deleted file mode 100644 index 400e670b7..000000000 Binary files a/doc/images/osgtexture.jpg and /dev/null differ diff --git a/doc/images/osgviewer_cow.jpg b/doc/images/osgviewer_cow.jpg deleted file mode 100644 index 26426f79b..000000000 Binary files a/doc/images/osgviewer_cow.jpg and /dev/null differ diff --git a/doc/images/osgviewer_stereo.jpg b/doc/images/osgviewer_stereo.jpg deleted file mode 100644 index fbfe96069..000000000 Binary files a/doc/images/osgviewer_stereo.jpg and /dev/null differ diff --git a/doc/images/osgwindows.jpg b/doc/images/osgwindows.jpg deleted file mode 100644 index 45eca75d9..000000000 Binary files a/doc/images/osgwindows.jpg and /dev/null differ diff --git a/doc/index.html b/doc/index.html deleted file mode 100644 index a568d905b..000000000 --- a/doc/index.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - OSG Documentation - - -
    -
    - - - - - - - - - - - - - - - - - -
    IndexIntroductionContentsInstallDependenciesexamplesDataViewerStereoosgdemPlanReference Guides
    -

    -Index

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    IntroductionIntroduction to Scene Graph in general, the OpenSceneGraph -project -itself and how to use it.
    ContentsA list of the directories in the distribution.
    InstallA guide of how to compile and install on all the supported -platforms.
    DependenciesListing of all the dependencies of the project, with links of -where -to download them.
    examplesThumbnails and info on all the demo applications which come -with this -distribution.
    DataList of websites where one can download interesting and -useful data -from.
    ViewerList of key bindings support by the osgProducer::Viewer and -hence osgviewer and -the rest of demos.
    StereoDocumentation on the commandline parameters and environmental -variables -which control stereo.
    osgdem
    -
    Documentation on how to use the -osgdem utility
    -
    PlanDetails of development plans.
    Reference GuidesReference guides of the core libraries.
    - - diff --git a/doc/install.html b/doc/install.html deleted file mode 100644 index 0893b71a1..000000000 --- a/doc/install.html +++ /dev/null @@ -1,344 +0,0 @@ - - - - - - Installation instructions - - - - - - - - - - - - - - - - - - - - -
    IndexIntroductionContentsInstallDependenciesexamplesDataViewerStereoosgdemPlanReference Guides
    -

    Compiling and installing the OpenSceneGraph

    -The scene graph depends upon Standard C++, STL and OpenGL so you need a -C++ compiler up to the task and OpenGL or Mesa installed. The example -applications depend upon Open Producer which you'll need to download and -install from the Producer website. The OSG has it own native ascii file -format, and .rgb image reader which allows you read the example data -with any dependencies other than C++, STL and OpenGL. -

    The OSG also has a set of plug-ins which support non-native 3d -database and image formats, several have no dependencies on external -libraries (flt,3ds,obj, lwo,dw, tga & pic), while others -(pfb,jpeg,gif,tiff) require other libraries to be installed to compile -them. If you don't already have them installed then don't worry, you'll -still be able to use the OSG, just comment out the plugins you can't -compile from the Make/makedirdefs file. The core osg library and viewer -has been designed to load the plug-ins at run-time only and if they are -required to load a specific data set. If you don't need them for your -datasets then it won't matter that you haven't been able to compile all -the plug-ins. A full list of dependencies and where to download the -required libraries are listed in the dependencies.html

    -

    If you're coming across the OSG for the first time and want to get -started quickly, go right ahead and follow the compilation instructions. -You can always later download the libraries which the plug-ins require -if you eventually need them.

    - -
    -

    Compiling -under Windows with Visual Studio.

    -

    The Microsoft Visual C++ 6.0 workspace file is VisualStudio.dsw -located in the VisualStudio below the OSG this root directory. VC++6.0 -workspace files can also be used in VisualStudio7.0 without problem.

    -

    IMPORTANT NOTE: Whilst the OSG will compile cleanly with the -basic VC++6.0 and its own STL implementation, the OSG will crash -regularily due to bugs in VC++6.0's STL. VC++6.0's STL is horribly -broken and therefore is *NOT* supported. Do not attempt to use -the OSG in conjunction with native VC++6.0 STL implemention.

    -

    The supported combinations are:

    -
      -
    1. Visual Studio7.0 .NET
    2. -
    3. Visual Studio6.0 + Dinkumware's STL bug fix patches (see details -below).
    4. -
    5. Visual Studio6.0 + STLport (see details below)
    6. -
    -

    The OSG is composed of a number of scene graph libraries (with Core -in front of the project names), executables (with examples in front of -the project names), and plugins which read and write 3D data formats and -2D image formats (with osgPlugins in front of the project names). To -get the OSG running you'll need at least to compile Core -osg,osgUtil,osgDB,osgProducer, osgPlugin dot_osg and Demo osgviewer. The -rest of the libraries and executables are optional and can be compiled -if you need them, however for simplicity I would recommend doing a -batch build of all the libraries and executables in the distribution, -some of the plug-ins which support non native file formats may not -compile due to dependencies on other libraries (such as libpng), you -can ignore these compilation errors unless you need to load the related -file types. To help the compilation the plugins, osgProducer and -osgText one can download .zip archive will all the dependencies in it. -Further details on this .zip file can be found in dependencies.html

    -

    To execute the viewer the file path for the .dll's and .exe, both -compiled into the OSG's bin directory, need to be setup, such as by -adding the PATH to your autoexec.bat, its also useful to add the -OSGFILEPATH to your autoexec.bat to help the location of datafiles. For -example :

    -

    SET OSGFILEPATH=D:\OpenSceneGraph-Data;D:\OpenSceneGraph-Data\Images
    -SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;D:\osg-0.8.43\bin;

    -

    To help compilation of the image reader plugins, various image -libraries have been zipped up for your convenience, your find these on -the OSG release download directory

    -

    Using Visual Studio .NET

    -Visual Studio 7.0 .MET has a solid STL implementation and improve -standard C++ complient and works with the OpenSceneGraph without -problems. This is the recommended route. -

    Using Dinkumware STL

    -The basic jist is that you'll need to download their STL -implementation, and follow their instructions of how to force -VisualStudio to pick up the new STL implementation. More details at http://www.dinkumware.com/vc_fixes.html. -

    Once it is installed everything should compile fine and not crash, -but you won't be running at full speed since the build #ifdef's out some -important state optimizations since the basic VisualStudio can't handle -it. You can safely remove the #ifdef from src/osgUtil/Otimizer.cpp, -Line 44. The #ifdef is smart enough to do this automatically when using -VisualStudio .NET and STLport so that modification by hand won't be -required. Unfortunately there doesn't seem to be a special define -associated with the Dinkumware STL for the #ifdef to pick up on.

    -

    Using STLport

    -

    A very good HOWTO for installing and making the STLPort libs on -MSVC6 can be found at http://www.softadvances.com/articles/stlportusing.html

    -

    The OSG has been tested under Windows with STLport-4.5, which allows -the users to configure the type of STL support required for STLport -itself. The key configuration that the OSG needs to do is to enable the -wrapping of MS's own iostreams, than using STLport's own implementation. -The later is not required because this has not be problematic under -Windows, it is only the container classes and algorithms that need -replacing. Using the iostream wrapping option means the STLport can -just be used on your include path, there is no need to compile STLport -itself, or link into any special libraries. To configure STLport simply -comment IN (its commented out by default), the following line from -STLport-4.5/stlport/stl_user_config.h so it should look:

    - -

    Then configure the includes path in Visual Studio to pick up on -STLport: Select the "Tools" menu. Select "Options" In the Options -dialog, select the "Directories" tab Under the "include" option, add the -path to STLport4.5, something like: D:/STLport4.5/stlport Then press -the up array to move the entry all the way to the top of the list, thus -overriding MS's own STL implementations.

    -

    Linking your own apps to the OpenSceneGraph

    -

    All OpenSceneGraph libraries, plugins and executables are compiled -with the multi-threaded dll option turned ON, and with RTTI turned ON. -Your own projects which link to the OpenSceneGraph must uses these same -options or your application will crash or produce unpredicatable -behavior.

    -

    Syntax highlight + OpenScenegraph Standard C++ style headers

    -

    The OpenSceneGraph uses Standard C++ style extensionless headers, -which poor VisualStudio doesn't automatically recognize as suitable for -syntax highlighting (compile works fine though), even the StandardC++ -header themselves require a hack to get VisualStudio to highlight them -properly. The easy answer is to use that same hack to get it to -recognize the OpenSceneGraph headers too. To make easy a modified -header listing file can be found in the VisualStudio/LANDEXT.DAT. First -copy the original LANDEXT.DAT file (located in C:\Progam -Files\Microsoft Visual Studio\Common\MSDev98\Bin) to LANDEXT.DAT.BKP, -and then copy over the OpenSceneGraph one. Once you have done this -VisualStudio will syntax highlight them without problem.

    -
    -

    Compiling under Linux

    -Compile, from the OSG root directory, ('%' is UNIX csh prompt) type: -
    % make
    -Note, make should automatically detect linux and build optimized -targets for your system. And if you wish to install the OSG type: -
    % make install
    -or -
    % make instlinks
    -To get full details of make options, type: -
    % make help
    -(highly recommended) -

    The osgText library now depends upon GLU1.3 functionality, and only -the recent Mesa version have this as standard. Unfortunately not all -Linux distributions are up to date even recent ones. If you have -problems compiling osgText due to GLU problems then check out the -details at the bottom of this file, under the title RedHat7.1 & -GLU1.3 for a quick way of installing GLU1.3 in the right place.

    -

    RedHat 7.2 & GLU1.3

    -I have posted a simple fix for those of us who have been unable to -correctly build OSG 0.8.43 on Redhat 7.2. You can download it at -http://www.openscenegraph.org/download/dependencies/ReadHat7.2_fixglu.tar.gz -To install it, follow these steps: -

    English

    -
    1) Untar the tarball. It will create a directory called -fixosg/
    -2) Change to the ReadHat7.2_fixglu/ directory
    -3) Become root
    -4) Run the script called fixglu
    -Cmd line -
    tar xvzf ReadHat7.2_fixglu.tar.gz
    -cd ReadHat7.2_fixglu/
    -su (your root password)
    -./fixglu
    -exit
    -You should then be able to do a "make" in your OSG directory and -everything will build as it should. Let me know if this doesn't work and -I will try to improve it. Email me directly for help instead of posting -here. There's a README in the tarball with some info on what the script -actually does. There's nothing wrong with OSG itself; the problem with -Redhat 7.2 is that it doesn't have GLU 1.3 by default, which OSG is now -dependent on (for osgText.) Good luck everyone. - Clay -

    -
    -

    Compiling under FreeBSD

    -Compile, from the OSG root directory, ('%' is UNIX csh prompt) type: -
    % make
    -Note, make should automatically detect linux and build optimized -targets for your system. And if you wish to install the OSG type: -
    % make install
    -or -
    % make instlinks
    -To get full details of make options, type: -
    % make help
    -(highly recommended) -

    -
    -

    Compiling under IRIX

    -Since the OSG uses Standard C++ features such as STL it is important to -have an up to date version of the MIPSPro compilers, ie. 7.3 or later. -Support for MIPSPro7.2.1 has now been dropped since it was becoming to -unwildy to support and is very rarely used in the OSG community. It is -recommended to use MIPSPro7.3.1.1m. -

    Compile, from the OSG root directory, ('%' is UNIX csh prompt) type:

    -
    % make
    -Note, make should automatically detect linux and build optimized -targets for your system. And if you wish to install the OSG type: -
    % make install
    -or -
    % make instlinks
    -To get full details of make options, type: -
    % make help
    -(highly recommended)
    -
    -

    Compiling under Solaris

    -Compile, from the OSG root directory, ('%' is UNIX csh prompt) type: -
    % make
    -Note, make should automatically detect linux and build optimized -targets for your system. And if you wish to install the OSG type: -
    % make install
    -or -
    % make instlinks
    -To get full details of make options, type: -
    % make help
    -(highly recommended)
    -
    -

    Compiling under MacOS X

    -For anyone who's ever used a Unix box for development, well, the mac is -a Unix box. It's very simple to get OpenSceneGraph building and running -under Mac OS X. The main requirement is that you need to have installed -the Developer tools from the CD that comes for free with OS X. This -gives you compilers, headers, frameworks - stuff like Producer and -Carbon for developers. Get those here: - -

    Everything is done command-line, so you need to get to a shell -before proceeding. The Mac comes with an app in Applications/Utilities -called Terminal - open up any Finder window (e.g double-click on your -hard disk icon), click on the Applications icon at the top right of the -window, then click on the Utilities folder to get access to the -Terminal. When you start Terminal it brings you up a csh running from -your ~/ directory. Now, go to your OpenSceneGraph directory, and simply -type:

    -

    -
    make -j2
    -And some time later you'll be rewarded with a lovely set of binaries -and libraries. The Mac OSX build currently only builds a subset of the -total functionality in OpenSceneGraph, but a large subset at that. Some -of the remaining projects are known to build as well, but have external -dependencies on libraries such as libtiff, libjpg, libpng, etc. and so -are not included in the default build. However, if you examine the file OpenSceneGraph/Make/makedefs -you will find which extra projects build for the mac, provided you have -the external libraries required. Details on how to install these -external libraries are outside the scope of this document, but for -starting points, see one of: - -

    Running the examples

    -Once you've got OpenSceneGraph built, you're ready to run your -examples. As with other builds on other platforms, OpenSceneGraph -requires you to set a few environment variables which describe your -installation. These environment variables should be full-path, not -relative, and a list of these for a csh-derived environment follow: -
    setenv OSGHOME `pwd`/OpenSceneGraph
    -setenv OSGFILEPATH `pwd`/OpenSceneGraph-Data
    -setenv OSG_LD_LIBRARY_PATH ${OSGHOME}/lib
    -setenv DYLD_LIBRARY_PATH ${OSG_LD_LIBRARY_PATH}
    -setenv DYLD_BIND_AT_LAUNCH
    -
    -

    Notes

    - -

    Compiling under Cygwin

    -To compile, from the OSG root directory, type: make Note, make should -automatically detect your system and build optimized targets for your -system. And if you wish to install the OSG type: make install Note that -make symbolic links don't seem to work under cygwin, so a make instlinks -will simply copy files just like make install. 'make install' places -all files in /usr/local/OpenSceneGraph under appropriate sub -directories. To get full details of make options, type: make help -(highly recommended) -

    OSG_FILE_PATH environmental variable

    -

    For the OSG to locate file data files easily an environmental -variable OSG_FILE_PATH is used at run-time by the osgDB library. Note, -for examples below substitute in the ${OSGDATA} directory with your own -path where appropriate) Add the following to your .cshrc (note paths -separated by colon's): setenv  OSG_FILE_PATH -./:${OSGDATA}:${OSGDATA}/Images Or the following if you're using a sh -compatible shell : export  -OSG_FILE_PATH=./:${OSGDATA}:${OSGDATA}/Images: Or under windows (note -paths seperated by semi-colon's) : SET  -OSG_FILE_PATH=./:${OSGDATA};${OSGDATA}/Images

    - - diff --git a/doc/introduction.html b/doc/introduction.html deleted file mode 100644 index 3ba4d65c5..000000000 --- a/doc/introduction.html +++ /dev/null @@ -1,462 +0,0 @@ - - - - - - Introduction to the OpenSceneGraph - - - - - - - - - - - - - - - - - - - - -
    IndexIntroductionContentsInstallDependenciesexamplesDataViewerStereoosgdemPlanReference Guides
    -

    -Introduction to the OpenSceneGraph

    -

    The OpenSceneGraph is an portable, high level graphics toolkit for -the development of high peformance -graphics applications such as flight simulators, games, virtual reality -or scientific visualization. Providing an object orientated framework -on top of OpenGL, it frees the developer -from implementing and optimizing low level graphics calls, and provide -many additional utilities for rapid development of graphics -applications.

    -

    -The project was started as a hobby by Don Burns in 1998, as means of -porting a hang gliding simulator written on top of the Performer scene -graph running on IRIX to what was then a humble Linux PC. In 1999, -Robert Osfield began helping out with the simulator development and -ported the scene graph element to Windows. In september 1999 the source -code was open sourced, and the openscenegraph.org website was born, -with Robert taking over as project lead and Don remaining focused on -the hang gliding simulator. -

    -

    In April 2001, in response to growing interest in the project -around the world, Robert went fulltime on the project, setting up OpenSceneGraph Professional -Services providing commericial support, consultancy services and -training. At the end of 2001 Don also formed his own company Andes Computer Engineering -and participates in the development and support of OpenSceneGraph as -well as complimentary projects like OpenProducer and BlueMarbleViewer. -

    -

    What is a Scene Graph?

    -Its a tree! Quite simply one the best and most reusable data structures -invented. Typically drawn schematically with the root at the top, -leaves at the -bottom. It all starts with a top-most root node which encompasses your -whole -virtual world, be it 2D or 3D. The world is then broken down into a -hierarchy -of nodes representing either spatial groupings of objects, settings of -the -position of objects, animations of objects, or definitions of logical -relationships -between objects such as those to manage the various states of a traffic -light. -The leaves of the graph represent the physical objects themselves, the -drawable geometry and their material properties. -

    -

    A scene graph isn't a complete game or simulation engine, although -it may -be one of the main components of such an engine; it's primary focus is -representation of your 3d worlds, and efficient rendering thereof. -Physics models, -collision detection and audio are left to other development libraries -that -a user will integrate with. The fact that scene graphs don't typically -integrate all these features is actually a really good thing: it aids -interoprability -with clients' own applications and tools and allows it to serve many -varied -markets from games, visual simulation, virtual reality, -scientific and commercial visualization, training through to modeling -programs. -

    -

    -Benefits that Scene Graphs provide

    -The key reasons that many graphics developers uses scene graphs are Performance, -Productivity, Portability and Scalability: - -

    -The OpenSceneGraph - a robust, high peformance Open Source -scene graph

    -With the OpenSceneGraph our goal is make the benefits of scene graph -technology freely available to all, for both commericial and non -commericial users. Whilst our scene graph -is still in development, it has already gained a respect -amongst the development community for its high performance, cleanness -of -design and portability. Written entirely in Standard C++ and OpenGL, it -makes full use of the STL and Design Patterns, and leverages the open -source -development model to provide a development library that is legacy free -and focused on the needs of end users. The OpenSceneGraph delivers on -the four key benefits of scene graph technology outlined above with the -following features: - -All the source to the OSG is published under the Open Scene Graph -Public License -(a relaxed version on the LGPL) which allows both open source and -closed source projects to use, -modify and distribute it freely as long its usage complies with the -OSGPL. -The project has been developed over the last four years, initiated by -Don -Burns, and then taken over by Robert Osfield who continues to lead the -project -today. There are many other contributors to the library, for a full -list -check out the AUTHORS file. Both Robert and Don now work on the -OpenSceneGraph -in a professional capacity providing consultancy and bespoke -development -on top the library, and are also collaborating on the book. Work on the -core scene graph and support of public mailing list remains unpaid as -are -the contributions of the rest of the community, but this hasn't -impacted -the quality of the source or support which once you get stuck in you -grow -to appreciate. -

    The project is currently in beta, which means the main core features -are now in -place, with a 1.0 release in second half of 2004. Despite the beta -development status, -the project has already earned the reputation as the leading open -source scene -graph, and is establishing itself as a viable alternative to the -commercial -scene graphs. Numerous companies, university researchers and graphics -enthusiasts -have already adopted the OpenSceneGraph for their projects, all over -the world. Examples of the wide variety of applications already -developed ontop of the OpenSceneGraph include Blue -Marble Viewer, Virtual Terrain -Project, Combat -Simulator Project, OSG-Edit. -This is just a snippet of the projects that use the project, more -examples can be found on the screenshot pages and bazaar on the -website. -

    -

    -Getting started

    -The first thing is to select the distribution which suits you, there -are -binary, development and source code distributions, these can be loaded -from the -http://openscenegraph.sf.net/downloads -page. The latest developments area available as via a nightly tarball -or -via cvs. -

    The binary distribution contains just the libraries (.dll's /.so's) -and example executables. This is suitable for using the OpenSceneGraph -with -an application that has already been compiled but depends at runtime on -the OpenSceneGraph. -

    -

    The development distribution contains the libraries (.dll's /.so's), -example executables, include files, and source to the examples. This is -suitable -for developers using the OpenSceneGraph. -

    -

    The source distribution contains all the source and include files -required to build the OpenSceneGraph from scratch, and is ideal if you -want to learn more about how the scene graph works, how to extend it, -and -to track down and fix any problems that you come across. -

    -

    If you are using a source distribution then read the installation -instructions for how to get the OpenSceneGraph compiling and installed -on your system. You may also need to download libraries that parts of -the -OpenSceneGraph depend upon, such as Producer. Check the dependencies -list for further details. -

    -

    For full instructions of how to run the examples read the examples -page. -

    -

    -Learning how to use the OpenSceneGraph

    -

    The main collections of resources for learning how to use the -OpenSceneGraph can be found on openscenegraph.org documentaiton page, -please check this out regular for new entries.
    -

    -

    The OpenSceneGraph distribution comes with a reference guide for -each of -the component libraries - osg, osgDB, osgUtil, osgText, osgSim, -osgParticle and osgProducer, a set -of 42 examples - the source of which can be found in examples/ -directory in the distribution. For questions -or help which can't be easily be answered by the reference guide and -examples -source, one should join the mailing list (details below). -

    -

    Two sets of online tutorial been written by members of the -OpenSceneGraph community:
    -    Jason McVeigh's OpenSceneGraph Tutorials
    -    Joseph Sullivan's  OpenSceneGraph -Tutorials

    -A programming guide will be available in form of a OpenSceneGraph -book -which is being written by Don Burns and Robert Osfield, parts of it -will -be available online. -

    -

    Although not directly related to the OpenSceneGraph, once can learn -about scene graph technology from such sources as the Open -Inventor Mentor, and Performer -Programming Guides. The latter is the closer in design to -the OpenSceneGraph, although the Performer manuals are in C, alas. Also -of use -as a background to some of the techniques used is a SIGGRAPH Vis-Sim -course. -

    -

    The OpenSceneGraph uses OpenGL and does so with a deliberately thin -layer, -making it easy to control the underlying OpenGL and to extend it with -OpenGL -extensions. The close tie with OpenGL is also reflected in the naming -of -many of the OpenGL state related classes, and the parameters that they -encapsulate, which means that knowledge of OpenGL itself will go a long -way -to understanding how to get the best out of the OpenSceneGraph. To this -end it is worth obtaining a copy of the OpenGL programming guide - `Red -Book` and OpenGL reference guide 'Blue Book'. The main OpenGL -website is also a good source of links and further information. -

    -

    -Support and discussion - the osg-user mailing list

    -For scene graph related questions, bug reports, bug fixes, and general -design and development discussion one should join the osg-user -mailing list, and check the the mailing list archives. -

    Professional support is also available in the form of confidential -online, -phone and onsite support and consultancy, for details contact Robert -Osfield -at robert@openscenegraph.com. -

    - - diff --git a/doc/osgdem.html b/doc/osgdem.html deleted file mode 100644 index 7c46b4998..000000000 --- a/doc/osgdem.html +++ /dev/null @@ -1,373 +0,0 @@ - - - - - - examples - - - - - - - - - - - - - - - - - - - - -
    IndexIntroductionContentsInstallDependenciesexamplesDataViewerStereoosgdemPlanReference Guides
    -

    -Using osgdem to generate geospatial -terrain databases

    -
      -
    1. Quick step by step guide
    2. -
    3. osgdem options
    4. -
    -
    -

    Quick step by step guide:

    -What follows are the steps required to get osgTerrain/osgdem compiling and -an example of how to use it to process imagery and DEM's to generate a -paged databases.
    -
    -1) Download, compile & install GDAL.

    -2) Get the latest OSG in CVS.
    -
    -3) For UNIX 'make' users, make a copy of Make/dependencies and change the -GDAL_INSTALL entry to:
    -
    -
    set -GDAL_INSTALL = true
    -
    -
    -   
    Then tell the build to use your custom -dependencies by setting the environmental variable OSG_DEPENDENCIES to -the absolute path to your file i.e.:
    -
    -
    export -OSG_DEPENDENCIES=/home/billgates/my_osg_dependencies
    -

    -4) Rebuild the OSG & install (if you haven't already).

    -5) Oh, make sure you have a couple of GB of spare disk space,  because -you're going to need it :-)

    -6) Download some data, for this example I'm using the Puget Sound data -at:

    -        http://www.cc.gatech.edu/projects/large_models/ps.html -

    -        Download Elevation Map: -16385 × 16385 PNG: 188MB
    -         Download Texture Map: -16384 × 16384 PNG: 268MB  
    -
    -7) To avoid aliasing artifacts when accessing data I use GDAL -utilitiy -programs to generate overviews (basically mip maps stored in the -.tiff format) -via:

    -
    -
    gdal_translate -ps_height_16k.png -ps_height_16k.tif
    -gdaladdo -r average ps_height_16k.tif -2 4 8 16 32
    -  
    -gdal_translate ps_texture_16k.png -ps_texture_16k.tif
    -gdaladdo -r average ps_texture_16k.tif -2 4 8 16 32
    -
    - 
    -
    -8) Now its time to run the osgdem example to generate your PagedLOD -database, the more levels you generate the longer it will take -(exponentially so). 'osgdem' is just a front end to osgTerrain::DataSet -where all the hard work happens. Here's what to run :
    -
    -
    osgdem ---xx 10 --yy 10 -t ../ps_texture.tif \
    -        -    ---xx 10 --yy 10 -d ../ps_height.tif \
    -          -  --l 8 \
    -         -  -v 0.1 \
    -           --o puget.ive
    -
    -
    -Then go away for lunch, afternoon and tea, as generating this much data -takes a while... If you don't wish to wait for the full database then -reduce the number of levels it generates by setting the -l option to a -lower value such as 3.
    -
    -The command line options used above are:
    -
     
    -The first part the --xx and --yy is specifying the size of the pixels -in meters, since these png/tif don't have any geospatial data of their -own, if you have geospatialised files then you won't need this.
    -
    -The second part -t <filename> is the option for specificing the -texture maps to use, you can use as many times as you wish, -osgTerrain::DataSet will moziac them into a single database.  
    -
    -The third part -d is the option for specifying the digital elevation -maps to use, as with the textures you can use as many as you like.

    -The -l option specificies the maximum number of levels to generate. If -you use a large number then the database generation will stop once the -max resolution of your source data is matched by the resulting database. -The database generation will decend further where there is high res -source -data, decend less where there is lower res data.
    -
    -The -v option specifies the scaling factor which the height is -multiplied by.
    -
    -And finally the -o <filename> is the output format to generate the -databases in. This will be the name of the topmost file in the one you -should load. It can be a .ive or a .osg. The .ive is faster and has -embedded files. 
    -
    -
    -9) Time to play. Simply load the database in your app (make sure it -supports the osgDB::DatabasePager - see osgsimplepager -example for details). The standard osgviewer works just fine so, -here goes:

    -   osgviewer output.ive

    -
    -10) You don't actually have to wait for osgdem to complete before you -can browse the database, since osgdem generates -the topmost tiles first. Its not totally robust since osgviewer can end -up -loading tiles that are still being written by osgdem, but it doesn't -crash -here under Linux, so you might be lucky too.
    -
    -11) If your imagery and DEMs have geospatial coords associated with -them then the -xx, --yy and -v options will not be required, making -it much simplier to specify - you just need to specifiy options such as --t imge.tif and -d terran.dt0 -without any need to set the coordinate system.
    -
    -12) osgdem can automatically handle mosaicing of sets of files. These -can be specified via a sequence of -t -<filename> and -d -<filename> pairs on the commandline, or via -t <directoryname> and -d <directoryname>.

    -
    -

    osgdem options

    -There are of osgdem options to use, to list the full ranges of options -do:
    -
    -
    osgdem ---help
    -
    -
    -And you should see:
    -
    -

    -osgdem --help
    -Usage: osgdem [options] filename -...
    -Options:
    -  ---HEIGHT_FIELD                          -Create a height field database
    -  ---LOD                                   -Create a LOD'd database
    -  ---POLYGONAL                             -Create a height field database
    -  ---PagedLOD                              -Create a PagedLOD'd database
    -  ---RGB-16                                -Use 16bit RGB destination imagery
    -  ---RGB-24                                -Use 24bit RGB destination imagery
    -  ---comment                               -Added a comment/description string to
    -                                          -the top most node in the dataset
    -  ---compressed                            -Use OpenGL compression on destination
    -                                          -imagery
    -  --cs <coordinates -system string>        Set the -coordinates system of source
    -                                          -imagery, DEM or destination database.
    -                                          -The string may be any of the usual
    -                                          -GDAL/OGR forms, complete WKT, PROJ.4,
    -                                          -EPS
    -  ---max-anisotropy                        -Max anisotropy level to use when
    -                                          -texturing, defaults to 1.0.
    -  ---max-visible-distance-of-top-level     Set the -maximum visible distance that
    -                                          -the top most tile can be viewed at
    -  ---mip-mapping-hardware                  -Use mip mapped textures, and generate
    -                                          -the mipmaps in hardware when
    -                                          -available.
    -  ---mip-mapping-imagery                   -Use mip mapped textures, and generate
    -                                          -the mipmaps in imagery.
    -  ---no-mip-mapping                        -Disable mip mapping of textures
    -  ---radius-to-max-visible-distance-ratio  Set the maximum visible -distance ratio
    -                                          -for all tiles apart from the top most
    -                                          -tile. The maximum visuble distance is
    -                                          -computed from the ratio * tile radius.
    -  --skirt-ratio -<float>                   -Set the ratio of skirt height to tile
    -                                          -size
    -  ---tile-image-size                       -Set the tile maximum image size
    -  ---tile-terrain-size                     -Set the tile maximum terrain size
    -  --wkt <WKT -string>                      -Set the coordinates system of source
    -                                          -imagery, DEM or destination database
    -                                          -in WellKownText form.
    -  --wkt-file <WKT -file>                   -Set the coordinates system of source
    -                                          -imagery, DEM or destination database
    -                                          -by as file containing WellKownText
    -                                          -definition.
    -  -d -<filename>                           -Specify the digital elevation map
    -                                          -input file to process
    -  -e <x> <y> -<w> -<h>                      -Extents of the model to generate
    -  -h or ---help                            -Display this information
    -  -l -<numOfLevels>                        -Specify the number of PagedLOD levels
    -                                          -to generate
    -  -m -<filename>                           -Specify the 3D database model input
    -                                          -file to process
    -  -o -<outputfile>                         -Specify the output master file to
    -                                          -generate
    -  -t -<filename>                           -Specify the texture map input file to
    -                                          -process
    -  --v                                      -Set the vertical multiplier
    -
    -
    -
    - - diff --git a/doc/osgviewer.html b/doc/osgviewer.html deleted file mode 100644 index fdd76c4f3..000000000 --- a/doc/osgviewer.html +++ /dev/null @@ -1,290 +0,0 @@ - - - - - - Scene graph viewer - - - - - - - - - - - - - - - - - - - - -
    Index Introduction Contents Install Dependencies Demos Data Viewer Stereo osgdemPlan Reference Guides
    - -

    osgProducer::Viewer / Scene Graph Viewer (osgviewer) keyboard bindings:

    - -


    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    KeyBinding
    -
    '1'
    -
    Select the trackball camera manipulator. -
    Left mouse button - rotate, -
    Middle (or Left & Right) mouse button - pan, -
    Right mouse button - zoom.
    -
    -
    '2'
    -
    Select the flight camera manipulator. -
    Left mouse button - speed up, -
    Middle (or Left & Right) mouse button - stop, -
    Right mouse button - slow down, reverse. -
    Move mouse left to roll left, right to roll right. -
    Move mouse back (down) to pitch nose up, forward to pitch down. -
    In mode Q, the default, selected by pressing 'q' -
    The flight path is yawed automatically into the turn to produce -a similar effect as flying an aircaft.
    -In mode A, selected by pressing 'a' -
    The flight path is not yawed automatically into the turn, producing -a similar effect as space/marine flight.
    -
    -
    -
    '3'
    -
    Select the drive camera manipulator. -
      -
    In mode Q, the default, selected by pressing 'q'
    - -
    -
    Move mouse left to turn left, right to turn right. -
    Move mouse back (down) to reverse, forward to drive forward.
    -In mode A, selected by pressing 'a' -
    Move mouse left to turn left, right to turn right. -
    Left mouse button - speed up, -
    Middle (or Left & Right) mouse button - stop, -
    Right mouse button - slow down, reverse.
    -
    -
    -
    '+'
    -
    Half the frame delay which speeds up the frame rate on Linux and -
    Windows.
    -
    '-'
    -
    Double the frame delay and therefore reduce the frame rate on Linux -and Windows.
    -
    '/'
    -
    Divide the Level-Of-Detail (LOD) bias by 1.5, to encourage the selection -of more complex LOD children.
    -
    '*'
    -
    Multiple the Level-of-Detail (LOD) bias by 1.5, to encourage the -
    selection of less complex LOD children.
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    'c' 
    -
    Toggle Small Feature Culling on or off.
    -
    'C'
    -
    Toggle View Frustum Culling on or off.
    -
    'd'
    -
    Toggle use of OpenGL's display lists.
    -
    'b'
    -
    Toggle OpenGL's backface culling.
    -
    't'
    -
    Toggle OpenGL texturing on or off.
    -
    'T'
    -
    Toggle OpenGL two-sided lighting on or off.
    -
    'l'
    -
    Toggle OpenGL lighting on or off.
    -
    'L'
    -
    Toggle SceneView lighting mode between HEADLIGHT, SKY_LIGHT and NO_SCENEVIEW_LIGHT.
    -
    's'
    -
    Toggle OpenGL shade model between flat and smooth shading.
    -
    'w'
    -
    Toggle OpenGL polygon mode between solid, wireframe and points modes.
    -
    'i'
    -
    Calculate and report the intersections with the scene under thecurrent -mouse x and mouse y position.
    -
    'r'
    -
    Calculate and report the intersections with the scene under the currentmouse -x and mouse y position and delete the nearest interesected geoset.
    -
    'p'
    -
    Print frame rate statistics on each frame.
    -
    'o'
    -
    Output the loaded scene to 'saved_model.osg'.
    -
    'O'
    -
    Snap a screen shot image and write it out 'screenshot.bmp'.
    -
    '?'/'h'
    -
    Print out osgviewer's keyboard bindings.
    -
    'f'
    -
    -
    Toggle between fullscreen and the previous window size. Note Producer -fullscreen works properly on Windows and Irix, but on Linux it just maximizes -the window and leaves the window's borders.
    -
    -
    Space
    -
    Reset scene to the default view.
    -
    Esc 
    -
      Exit osgviewer.
    - - - diff --git a/doc/plan.html b/doc/plan.html deleted file mode 100644 index 3c6b114d8..000000000 --- a/doc/plan.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - Plans for future developments - - - - - - - - - - - - - - - - - - - - -
    IndexIntroductionContentsInstallDependenciesexamplesDataViewerStereoosgdemPlanReference Guides
    -

    -Plans for future developments

    -Now we have reached the beta phase (0.9.x) of OpenScenegGraph project, -and are now working towards the full 1.0 release, with a likely release -date in second half of 2004. -

    Future work include:

    - -

    -Books, tutorials and demonstrations

    - -
    - - - diff --git a/doc/stereo.html b/doc/stereo.html deleted file mode 100644 index 88e139fc3..000000000 --- a/doc/stereo.html +++ /dev/null @@ -1,229 +0,0 @@ - - - - - - Native stereo support - - - - - - - - - - - - - - - - - - - - -
    IndexIntroductionContentsInstallDependenciesexamplesDataViewerStereoosgdemPlanReference Guides
    -

    Native Support for Stereo

    -The OSG has support for anaglyphic stereo (i.e. red/green or red/cyan -glasses), quad buffered stereo (i.e. active stereo using shutter -glasses, or passive stereo using polarized projectors & glasses) -and horizontal and vertical split window stereo implementations. Almost -all OSG applications have the potential for stereo support simply by -setting the relevant environmental variables, or via command line -arguments. Little or no code changes will be required, the support is -handled transparently inside osgUtil::SceneView's handling of -rendering. It is a simple as:
    -    osgviewer --stereo cow.osg -

    If the user is planning to use head tracked stereo, or a cave then -it is currently recommend to set it up via a VR toolkit such as -VRjuggler, in this case refer to the VR toolkits handling of stereo, -and keep all the OSG's stereo specific environment variables (below) -set to OFF, or set the values to off within own your own applications.
    -

    -
    -

    The environmental variables of interest:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    OSG_STEREOONTurn stereo on 

    -
    OFFTurn stereo off (default). 
    OSG_STEREO_MODEANAGLYPHICUse anaglyphic stereo when in stereo (default). 

    -
    QUAD_BUFFERUse quad buffered stereo when in stereo. 

    -
    HORIZONTAL_SPLITUse horizontal split stereo mode when in stereo 

    -
    VERTICAL_SPLITUse vertical split stereo mode when in stereo 
    OSG_SCREEN_DISTANCE0.50Set the distance the viewer is from screen in metres (default -shown) 
    OSG_SCREEN_HEIGHT0.26Set the height if image on the screen in metres (default -shown) 
    OSG_EYE_SEPARATION0.06Set the eye separation - interoccular distance (default -shown.) 
    OSG_SPLIT_STEREO_HORIZONTAL_SEPARATION42Set the number of pixels between the left and right viewports -(default shown).
    OSG_SPLIT_STEREO_HORIZONTAL_EYE_MAPPINGLEFT_EYE_LEFT_VIEWPORTSet the left eye to render to left viewport, right eye to -right viewport (default). 

    -
    LEFT_EYE_RIGHT_VIEWPORTSet the left eye to render to right viewport, right eye to -left viewport. 
    OSG_SPLIT_STEREO_VERTICAL_SEPARATION42Set the number of pixels between the top and bottom viewports -(default shown).
    OSG_SPLIT_STEREO_VERTICAL_EYE_MAPPINGLEFT_EYE_TOP_VIEWPORTSet the left eye to render to top viewport, right eye to -bottom viewport (default). 

    -
    LEFT_EYE_BOTTOM_VIEWPORTSet the left eye to render to bottom viewport, right eye to -top viewport. 
    -
    -

    Command line arguments can be used to override these settings:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -stereo
    -
    Switch on stereo. 
    -stereoONSwitch on stereo. 

    -
    OFFSwitch off stereo. 

    -
    ANAGLYPHICSwitch on ANAGLYPHIC stereo. 

    -
    QUAD_BUFFERSwitch on QUAD_BUFFER stereo. 

    -
    VERTICAL_SPLITSwitch on VERTICAL_SPLIT stereo. 

    -
    HORIZONTAL_SPLITSwitch on VERTICAL_SPLIT stereo. 
    -
    -

    Examples:

    -To invoke stereo from the comandline:
    -    osgviewer -stereo cow.osg -

    To invoke quad buffered stereo from the commandline:
    -    osgviewer -stereo QUAD_BUFFER cow.osg

    -

    To force all apps to start up in quad buffered stereo (if system -supports it)
    -    export OSG_STEREO=ON
    -    export OSG_STEREO_MODE=QUAD_BUFFER
    -    osgviewer cow.osg

    -

    To set quad buffered stereo to the default, but use the commandline -to switch stereo on:
    -    export OSG_STEREO=OFF
    -    export OSG_STEREO_MODE=QUAD_BUFFER
    -    osgviewer -stereo cow.osg

    -

    -
    -

    Size matters:

    -For appropriate depth perception the stereo code creates separate left -and eye views, both the frustum and modelview are shifted to account for -the separate eye views.  To achieve the right amount of adjustment -the OSG requires the users eye separation, the distance from the eyes to -the screen and the height of the screen.  The OSG will use the -defaults of 0.05m,0.5m and 0.26m respectively which are assumed to be -reasonable defaults for most users workstation configurations, note the -OSG_SCREEN_HEIGHT is the image height rather than total size of your -monitor/display surface.  For the best stereo effects please -measure these values and set them up via the environmental -variables.  Once set the views you get should give improved depth -perception.  A good way of measuring how well you are configured -for your display is to fly away from objects (using the -FlightManipulator for instance, but not the TrackballManipulator, see -below) so that they go of toward infinity. As they move away the offset -between the two images should tend towards your eye separation, if you -achieve this then the object will be perceived as at infinity.
    -
    - - diff --git a/index.html b/index.html deleted file mode 100644 index e3f90f085..000000000 --- a/index.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - Documentionn Index - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    IndexIntroductionContentsInstallDependenciesExamplesDataViewerStereoosgdemPlanReference Guides
    - -

    -Index

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    IntroductionIntroduction to Scene Graph in general, the OpenSceneGraph project -itself and how to use it.
    ContentsA list of the directories in the distribution.
    InstallA guide of how to compile and install on all the supported platforms.
    DependenciesListing of all the dependencies of the project, with links of where -to download them.
    ExamplesThumbnails and info on all the example applications which come with this -distribution.
    DataList of websites where one can download interesting and useful data -from.
    ViewerList of key bindings support by the osgGLUT::Viewer and hence sgv and -the rest of demos.
    StereoDocumentation on the commandline parameters and environmental variables -which control stereo.
    osgdemDocumentation on the how to use the osgdem utility to generate paged geospatial databases.
    PlanDetails of development plans.
    Reference GuidesReference guides of the core libraries.
    - - -