Show
Ignore:
Timestamp:
04/13/03 15:26:41 (12 years ago)
Author:
robert
Message:

Added Geoff Michel's osgpick and osgUtil::PickVisitor? code.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • OpenSceneGraph/trunk/doc/introduction.html

    r1862 r1868  
    7272<u>Why use a Scene Graph - Performance, Productivity, Portability and Scalability</u>.</h3> 
    7373 
    74 <ol><i>Performance</i> - scene graphs provide an excellent framework for 
     74<ol><b><i>Performance</i></b> - scene graphs provide an excellent framework for 
    7575maximizing graphics performance. A good scene graph employs two key techniques 
    7676- culling of the objects that won't be seen on screen, and state sorting 
     
    8484througput. As GPU's get faster and faster, the cost of stalling the graphics 
    8585is also going up, so scene graphs are becoming ever more important. 
    86 <p><i>Productivity</i> - scene graphs take away much of the hard work required 
     86<p><b><i>Productivity</i></b> - scene graphs take away much of the hard work required 
    8787to develop high performance graphics applications. The scene graph manages 
    8888all the graphics for you, reducing what would be thousands of lines of 
     
    9797very little coding. A dozen lines of code can be enough to load your data 
    9898and create an interactive viewer! 
    99 <p><i>Portability</i> - scene graphs encapsulate much of the lower level 
     99<p><b><i>Portability</i></b> - scene graphs encapsulate much of the lower level 
    100100tasks of rendering graphics and reading and writing data, reducing or even 
    101101eradicating the platform specific coding that you require in your own application. 
    102102If the underlying scene graph is portable then moving from platform to 
    103103platform can be as simple as recompiling your source code. 
    104 <p><i>Scalability</i> - along with being able to dynamic manage the complexity 
     104<p><b><i>Scalability</i></b> - along with being able to dynamic manage the complexity 
    105105of scenes automatically to account for differences in graphics performance 
    106106across a range of machines, scene graphs also make it much easier to manage 
     
    124124the four key benefits of scene graph technology outlined above using the 
    125125following features: 
    126 <ol><i>Performance</i> - supports view frustum culling, occlusion culling, small feature culling, 
     126<ol><b><i>Performance</i></b> - supports view frustum culling, occlusion culling, small feature culling, 
    127127Level Of Detail (LOD) nodes, state sorting, vertex arrays and display 
    128128lists as part of the core scene graph. These together make the OpenSceneGraph 
     
    135135be found at Vterrain.org and TerrainEngine.com, both of which integrate 
    136136with the OpenSceneGraph. 
    137 <p><i>Productivity</i> - by combining lessons learned from established 
     137<p><b><i>Productivity</i></b> - by combining lessons learned from established 
    138138scene graphs like Performer and Open Inventor, with modern software engineering 
    139139boosts like Design Patterns, along with a great deal of feedback early on 
     
    144144graph and viewers and a wide range of loaders it is possible to create 
    145145an application and bring in user data with a very small amount of code. 
    146 <p><i>Portability</i> - The core scene graph has also been designed to 
     146<p><b><i>Portability</i></b> - The core scene graph has also been designed to 
    147147have minimal dependency on any specific platform, requiring little more than 
    148148Standard C++ and OpenGL. This has allowed the scene graph to be rapidly 
     
    155155written on top of Qt, MFC, WxWindows and SDL. Users have also integrated it 
    156156with Motif, and X. 
    157 <p><i>Scalability</i> - the scene graph will not only run on portables all 
     157<p><b><i>Scalability</i></b> - the scene graph will not only run on portables all 
    158158the way up to Onyx Infinite Reality Monsters, it supports the multiple 
    159159graphics subsystems found on machines like a mulitpipe Onyx. This is 
     
    163163scene graph almost entirely as a read-only operation. This allows multiple 
    164164cull-draw pairs to run on multiple CPU's which are bound to multiple graphics 
    165 subsystems. This has been demonstrated using the OpenSceneGraph in conjunction 
    166 with SGI's OpenGL multipipe SDK. We also have osgMP in development, which 
    167 will be cross platform and will transparently support multiple multipipe systems 
    168 like the Onyx and graphics clusters</ol> 
     165subsystems. Support for multiple graphic context and multi-threading is all 
     166available out of the box via osgProducer - all the examples in the distribution 
     167can run multi-pipe just by use a simple configuation file.</ol> 
     168 
    169169All the source to the OSG is published under the GNU Lesser General Public License 
    170170(LGPL) which allows both open source and closed source projects to use, 
     
    181181to appreciate. 
    182182<p>The project is currently in beta, which means the main core features are now in 
    183 place, with a 1.0 release in fall 2002. Despite the beta development status, 
     183place, with a 1.0 release in second half of 2003. Despite the beta development status, 
    184184the project has already earned the reputation the leading open source scene 
    185185graph, and is establishing itself as a viable alternative to the commercial 
     
    212212OpenSceneGraph depend upon, such as Producer. Check the <a href="dependencies.html">dependencies</a> 
    213213list for further details. 
    214 <p>For full instructions of how to run the demos read the <a href="examples.html">demos</a> 
     214<p>For full instructions of how to run the examples read the <a href="examples.html">examples</a> 
    215215page. 
    216216<br> 
     
    219219<u>Learning how to use the OpenSceneGraph</u></h3> 
    220220The OpenSceneGraph distribution comes with a reference guide for each of 
    221 the component libraries - osg, osgDB, osgUtil, osgText, osgParticle and osgProducer, a set 
    222 of demos - the source of which can be found in examples. For questions 
     221the component libraries - osg, osgDB, osgUtil, osgText, osgSim, osgParticle and osgProducer, a set 
     222of examples - the source of which can be found in examples. For questions 
    223223or help which can't be easily be answered by the reference guide and demo 
    224224source, one should join the mailing list (details below). There are also