diff --git a/include/osg/Drawable b/include/osg/Drawable index 60a78c126..934003ae9 100644 --- a/include/osg/Drawable +++ b/include/osg/Drawable @@ -22,7 +22,13 @@ class Vec2; class Vec3; class Vec4; +// this is define to alter the way display lists are compiled inside the +// the draw method, it has been found that the NVidia drivers fail completely +// to optimize COMPILE_AND_EXECUTE in fact make it go slower than for no display +// lists, but optimize a seperate COMPILE very well?! Define it as default +// the use of a sperate COMPILE, then glCallList rather than use COMPILE_AND_EXECUTE. +#define USE_SEPERATE_COMPILE_AND_EXECUTE /** Pure virtual base class for drawable Geometry. Contains no drawing primitives directly, these are provided by subclasses such as GeoSet. State attributes @@ -232,10 +238,19 @@ inline void Drawable::draw(State& state) } else if (_useDisplayList) { +#ifdef USE_SEPERATE_COMPILE_AND_EXECUTE + globj = glGenLists( 1 ); + glNewList( globj, GL_COMPILE ); + drawImmediateMode(state); + glEndList(); + + glCallList( globj); +#else globj = glGenLists( 1 ); glNewList( globj, GL_COMPILE_AND_EXECUTE ); drawImmediateMode(state); glEndList(); +#endif } } diff --git a/index.html b/index.html index c67d010fd..383611c70 100644 --- a/index.html +++ b/index.html @@ -226,6 +226,35 @@ CodeWarroir's Make/Workspace files for Mac.

+Scene graph dependencies

+Currently the only dependancy of the core scene graph libraries (osg,osgUtil +and osgDB) is Standard C++ and OpenGL. The osgText library, osgGLUT and osgWX +have the following dependancies, these arn't core libraries so arn't needed +to be compiled unless you need that feature. The demos do however require +osgGLUT so its likely that you will typically need it when trying out the osg. +The osgtext and wxsgv demos add osgText and osgWX dependancies as well, you +only need to compile them if you need to a demo of those features. + + + +
+
+
+

Plug-in dependencies

Follows is the list of depedencies which some of the osgPlugins require, note the core osg and viewer do not need the following dependencies, you diff --git a/src/osgPlugins/Makefile b/src/osgPlugins/Makefile index fe3e09a85..eea69a44d 100644 --- a/src/osgPlugins/Makefile +++ b/src/osgPlugins/Makefile @@ -2,8 +2,7 @@ SHELL=/bin/sh #DIRS = osg rgb lib3ds flt pfb obj lwo dw bmp pic png jpeg tga tiff gif osgtgz tgz zip -DIRS = osg rgb lib3ds flt obj lwo dw bmp pic jpeg tga tiff osgtgz tgz zip - +DIRS = osg rgb lib3ds flt obj lwo dw bmp pic png jpeg tga tiff gif osgtgz tgz zip all : for f in $(DIRS) ; do cd $$f; $(MAKE) || exit 1; cd ..; done