Changeset 1868
- Timestamp:
- 04/13/03 15:26:41 (10 years ago)
- Location:
- OpenSceneGraph/trunk
- Files:
-
- 8 added
- 9 modified
-
Make/makedefs (modified) (2 diffs)
-
Make/makedirdefs (modified) (1 diff)
-
VisualStudio/VisualStudio.dsw (modified) (1 diff)
-
VisualStudio/examples/osgpick (added)
-
VisualStudio/examples/osgpick/osgpick.dsp (added)
-
doc/data.html (modified) (3 diffs)
-
doc/install.html (modified) (1 diff)
-
doc/introduction.html (modified) (11 diffs)
-
doc/plan.html (modified) (3 diffs)
-
examples/osgcameragroup/osgcameragroup.cpp (modified) (3 diffs)
-
examples/osgpick (added)
-
examples/osgpick/GNUmakefile (added)
-
examples/osgpick/GNUmakefile.inst (added)
-
examples/osgpick/osgpick.cpp (added)
-
include/osgUtil/PickVisitor (added)
-
src/osgUtil/GNUmakefile (modified) (1 diff)
-
src/osgUtil/PickVisitor.cpp (added)
Legend:
- Unmodified
- Added
- Removed
-
OpenSceneGraph/trunk/Make/makedefs
r1861 r1868 329 329 ifeq ($(OS),Darwin) 330 330 C++ = c++ 331 INC += 331 INC += -I/usr/X11R6/include 332 LDFLAGS += -L/usr/X11R6/lib 332 333 DEF += -Wall -D__DARWIN_OSX__ 333 334 OPTF = -O2 … … 344 345 CARBON_LIB = -framework Carbon 345 346 GL_LIBS = -framework OpenGL $(CARBON_LIB) 346 X_LIBS = 347 X_LIBS = -lX11 347 348 SOCKET_LIBS = 348 349 OTHER_LIBS = -lm -lstdc++ -lobjc -
OpenSceneGraph/trunk/Make/makedirdefs
r1858 r1868 120 120 osgoccluder\ 121 121 osgparticle\ 122 osgpick\ 122 123 osgprerender\ 123 124 osgreflect\ -
OpenSceneGraph/trunk/VisualStudio/VisualStudio.dsw
r1818 r1868 1144 1144 ############################################################################### 1145 1145 1146 Project: "Example osgpick"=.\examples\osgpick\osgpick.dsp - Package Owner=<4> 1147 1148 Package=<5> 1149 {{{ 1150 }}} 1151 1152 Package=<4> 1153 {{{ 1154 Begin Project Dependency 1155 Project_Dep_Name Core osg 1156 End Project Dependency 1157 Begin Project Dependency 1158 Project_Dep_Name Core osgDB 1159 End Project Dependency 1160 Begin Project Dependency 1161 Project_Dep_Name Core osgGA 1162 End Project Dependency 1163 Begin Project Dependency 1164 Project_Dep_Name Core osgProducer 1165 End Project Dependency 1166 Begin Project Dependency 1167 Project_Dep_Name Core osgUtil 1168 End Project Dependency 1169 }}} 1170 1171 ############################################################################### 1172 1146 1173 Project: "Example osgwindows"=.\examples\osgwindows\osgwindows.dsp - Package Owner=<4> 1147 1174 -
OpenSceneGraph/trunk/doc/data.html
r1862 r1868 31 31 32 32 <li>Open scene graph .osg demo data set can downloaded here:</li> 33 <i><a href="http://www.openscenegraph.org/download/data/OpenSceneGraph-Data-0.9. 1.tar.gz">http://www.openscenegraph.org/download/data/OpenSceneGraph-Data-0.9.1.tar.gz</a></i>33 <i><a href="http://www.openscenegraph.org/download/data/OpenSceneGraph-Data-0.9.4.tar.gz">http://www.openscenegraph.org/download/data/OpenSceneGraph-Data-0.9.4.tar.gz</a></i> 34 34 35 35 <br> … … 41 41 <br> 42 42 <li>Terrain models in OpenFlight .flt format at Grime:</li> 43 <a href="http://www.grime.net ">http://www.grime.net</a>43 <a href="http://www.grime.net/Downloads/simulations.htm">http://www.grime.net</a> 44 44 45 45 <br> … … 59 59 60 60 61 <br>62 <br>63 <li>Vehicle models in OpenFlight .flt format at Full Sail (spinnercar & veritech):</li>64 <a href="http://www.fullsail.com/loader/models.html">http://www.fullsail.com/loader/models.html</a>65 66 61 </ul> 67 62 -
OpenSceneGraph/trunk/doc/install.html
r1862 r1868 37 37 <u>Compiling and installing the OpenSceneGraph</u></h2> 38 38 The scene graph depends upon Standard C++, STL and OpenGL so you need a 39 C++ compiler up to the task and OpenGL or Mesa installed. The viewer depends40 upon Producer which you'll need to download and install from the Producer website.41 The OSG has it own native ascii file format, and .rgb image reader inbuilt39 C++ compiler up to the task and OpenGL or Mesa installed. The example applications depend 40 upon Open Producer which you'll need to download and install from the Producer website. 41 The OSG has it own native ascii file format, and .rgb image reader 42 42 which allows you read the example data with any dependencies other than 43 43 C++, STL and OpenGL. 44 <p>The osgText library adds the dependency of the freetype library for45 support of true type fonts, however it is not essential to the core library,46 so you can comment it out from compilation by modifying the src/Makefile,47 and examples/Makefile. I you wish to use fonts then you can download freetype48 from www.freetype.org. The osgText library also requires an up to date49 GLU implementation which supports GLU1.2 tessellation routines. If you50 your current GLU is out of date you'll need to download the latest, for51 instance the sgi's sample implementation for GLU from the www.opengl.org52 website.53 44 <p>The OSG also has a set of plug-ins which support non-native 3d database 54 45 and image formats, several have no dependencies on external libraries (flt,3ds,obj, -
OpenSceneGraph/trunk/doc/introduction.html
r1862 r1868 72 72 <u>Why use a Scene Graph - Performance, Productivity, Portability and Scalability</u>.</h3> 73 73 74 <ol>< i>Performance</i> - scene graphs provide an excellent framework for74 <ol><b><i>Performance</i></b> - scene graphs provide an excellent framework for 75 75 maximizing graphics performance. A good scene graph employs two key techniques 76 76 - culling of the objects that won't be seen on screen, and state sorting … … 84 84 througput. As GPU's get faster and faster, the cost of stalling the graphics 85 85 is 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 required86 <p><b><i>Productivity</i></b> - scene graphs take away much of the hard work required 87 87 to develop high performance graphics applications. The scene graph manages 88 88 all the graphics for you, reducing what would be thousands of lines of … … 97 97 very little coding. A dozen lines of code can be enough to load your data 98 98 and create an interactive viewer! 99 <p>< i>Portability</i> - scene graphs encapsulate much of the lower level99 <p><b><i>Portability</i></b> - scene graphs encapsulate much of the lower level 100 100 tasks of rendering graphics and reading and writing data, reducing or even 101 101 eradicating the platform specific coding that you require in your own application. 102 102 If the underlying scene graph is portable then moving from platform to 103 103 platform can be as simple as recompiling your source code. 104 <p>< i>Scalability</i> - along with being able to dynamic manage the complexity104 <p><b><i>Scalability</i></b> - along with being able to dynamic manage the complexity 105 105 of scenes automatically to account for differences in graphics performance 106 106 across a range of machines, scene graphs also make it much easier to manage … … 124 124 the four key benefits of scene graph technology outlined above using the 125 125 following 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, 127 127 Level Of Detail (LOD) nodes, state sorting, vertex arrays and display 128 128 lists as part of the core scene graph. These together make the OpenSceneGraph … … 135 135 be found at Vterrain.org and TerrainEngine.com, both of which integrate 136 136 with the OpenSceneGraph. 137 <p>< i>Productivity</i> - by combining lessons learned from established137 <p><b><i>Productivity</i></b> - by combining lessons learned from established 138 138 scene graphs like Performer and Open Inventor, with modern software engineering 139 139 boosts like Design Patterns, along with a great deal of feedback early on … … 144 144 graph and viewers and a wide range of loaders it is possible to create 145 145 an 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 to146 <p><b><i>Portability</i></b> - The core scene graph has also been designed to 147 147 have minimal dependency on any specific platform, requiring little more than 148 148 Standard C++ and OpenGL. This has allowed the scene graph to be rapidly … … 155 155 written on top of Qt, MFC, WxWindows and SDL. Users have also integrated it 156 156 with Motif, and X. 157 <p>< i>Scalability</i> - the scene graph will not only run on portables all157 <p><b><i>Scalability</i></b> - the scene graph will not only run on portables all 158 158 the way up to Onyx Infinite Reality Monsters, it supports the multiple 159 159 graphics subsystems found on machines like a mulitpipe Onyx. This is … … 163 163 scene graph almost entirely as a read-only operation. This allows multiple 164 164 cull-draw pairs to run on multiple CPU's which are bound to multiple graphics 165 subsystems. This has been demonstrated using the OpenSceneGraph in conjunction166 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> 165 subsystems. Support for multiple graphic context and multi-threading is all 166 available out of the box via osgProducer - all the examples in the distribution 167 can run multi-pipe just by use a simple configuation file.</ol> 168 169 169 All the source to the OSG is published under the GNU Lesser General Public License 170 170 (LGPL) which allows both open source and closed source projects to use, … … 181 181 to appreciate. 182 182 <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,183 place, with a 1.0 release in second half of 2003. Despite the beta development status, 184 184 the project has already earned the reputation the leading open source scene 185 185 graph, and is establishing itself as a viable alternative to the commercial … … 212 212 OpenSceneGraph depend upon, such as Producer. Check the <a href="dependencies.html">dependencies</a> 213 213 list 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> 215 215 page. 216 216 <br> … … 219 219 <u>Learning how to use the OpenSceneGraph</u></h3> 220 220 The OpenSceneGraph distribution comes with a reference guide for each of 221 the component libraries - osg, osgDB, osgUtil, osgText, osg Particle and osgProducer, a set222 of demos - the source of which can be found in examples. For questions221 the component libraries - osg, osgDB, osgUtil, osgText, osgSim, osgParticle and osgProducer, a set 222 of examples - the source of which can be found in examples. For questions 223 223 or help which can't be easily be answered by the reference guide and demo 224 224 source, one should join the mailing list (details below). There are also -
OpenSceneGraph/trunk/doc/plan.html
r1862 r1868 38 38 Now we have reached the beta phase (0.9.x) of OpenScenegGraph project, 39 39 and are now working towards the full 1.0 release, with a likely 40 release date in fall 2002.40 release date in second half of 2003. 41 41 42 42 <h3> … … 46 46 47 47 <li> 48 Multi-pass fallback for when multi-texturing is not supported.</li> 48 StateSet composite structure for managing multi-pass effects and alternate rendering implemations. 49 This will allow one to manage the use of extensions and provide effecient fallback rendering paths.</li> 49 50 50 51 <li> … … 53 54 54 55 <li> 55 Open Producer - cross platform library for transparently managing mulitpipe and 56 cluster graphics systems. Similar in concept to OpenGL multipipe SDK, except 57 cross platform and with support of graphics clusters.</li> 56 Support for clustering in Open Producer and osgProducer.</li> 58 57 59 58 <li> 60 osgSim - cross platform library for the visual simulation market with support for light points, 61 small target anti-aliasing, geometry correction and clip mapping.</li> 59 Enhance osgDB and plugins to allow them to be used with alternate input streams. Add support for native binary 60 file format for rapid loading and saving of scene graphs. 61 </li> 62 62 63 63 <li> 64 Replace osgProducer with Open Producer for the demos. Open Producer is a much cleaner and more scalable 65 windowing API. Move osgProducer out of the distribution and into the bazaar.</li> 64 Development of virtual texture support for rendering in real-time massive images, such as whole earth textures.</li> 66 65 67 66 <li> 68 Introduce a new library osgEnv /osgShapes, which adds support for creating69 shapes and environmental effects such as stars, planets, cloud layers and67 Introduce a new library osgEnvironment, which adds support for creating 68 shapes and environmental effects such as stars, planets, cloud layers, oceans and 70 69 ground planes.</li> 71 70 -
OpenSceneGraph/trunk/examples/osgcameragroup/osgcameragroup.cpp
r1855 r1868 148 148 149 149 Producer::Trackball tb; 150 tb.setOrientation( Producer::Trackball:: Y_UP );150 tb.setOrientation( Producer::Trackball::Z_UP ); 151 151 152 152 // create the windows and run the threads. … … 157 157 while( !kbmcb.done() ) 158 158 { 159 // syncronize to screen refresh.159 // syncronize to the when cull and draw threads have completed. 160 160 cg.sync(); 161 161 … … 172 172 cg.frame(); 173 173 } 174 175 // syncronize to the when cull and draw threads have completed. 176 cg.sync(); 177 174 178 return 0; 175 179 } -
OpenSceneGraph/trunk/src/osgUtil/GNUmakefile
r1681 r1868 10 10 InsertImpostorsVisitor.cpp\ 11 11 IntersectVisitor.cpp\ 12 PickVisitor.cpp\ 12 13 Optimizer.cpp\ 13 14 RenderBin.cpp\
