Robert Osfield
b2ead391b3
From Mathias Froehlich, "it appears to me that sun CC cannot use static functions from template
...
functions. The attached change is required to make it compile with sun CC."
2008-03-11 13:23:49 +00:00
Robert Osfield
5c6869ccc9
Fixed Geometry::removePrimitiveSet method so that it no longer emits a warning when
...
removing 0 elements form an empty primtive set list.
2008-01-21 12:00:10 +00:00
Robert Osfield
11db24e6b3
From Colin McDonald, build fixes for Solaris.
2008-01-08 18:13:06 +00:00
Robert Osfield
be5f709bdb
From Mike Garrity, "There was an on again/off again thread on OSG users about
...
creating subclasses of osg::Array that referenced data
stored an application's internal data structures. I took
a stab at implementing that and ran into a couple of
downcasts in Geometry.cpp. Enclosed is my take at fixing
those along with a simple example of how to do this."
2007-12-11 15:55:02 +00:00
Robert Osfield
f4afa427a7
From Roland Smeenk, "Attached you will find a large set of small typo fixes (mainly in the comments)."
2007-12-10 17:30:18 +00:00
Robert Osfield
2d4ef642e6
from Paul Matz, "Understood. Well, I think it's reasonable to assume that the non-env var
...
case is the more tested case, and therefore it is correct to set
_supportsVertexBufferObjects to the same value as _fastPath. So here's a
change that does the same thing for the env var case."
2007-12-08 17:00:38 +00:00
Robert Osfield
1b1c5bbdd1
Added support for new double Vec*Array classes in various functors.
2007-12-04 14:46:46 +00:00
Robert Osfield
8b46a624c2
Fixed errors is setup of VBO/EBO's.
2007-10-19 09:58:11 +00:00
Robert Osfield
60052a0488
Fixed getOrCreateVertexBufferObject().
2007-10-19 08:39:07 +00:00
Robert Osfield
8e7e6529be
From David Callu, warning fixes
2007-09-07 15:03:56 +00:00
Robert Osfield
59d3e0ceb7
From Andy Skinner, adding C includes to avoid issues when mixing C and C++ standard includes
2007-07-28 10:44:03 +00:00
Robert Osfield
859bcf3c4b
Further perfomrmance optimizations and clean up on new VBO/EBO/PBO API.
2007-05-01 18:03:32 +00:00
Robert Osfield
fe85a439fb
Cleaned up the optional code paths in new VBO code
2007-05-01 09:29:30 +00:00
Robert Osfield
40db1a8934
Moved VBO switching code into inline methods into osg::State to speed performance
2007-05-01 06:28:20 +00:00
Robert Osfield
d625a5e114
Implementated new dirty buffer mechansim for BufferObjects to make it more efficient
2007-04-30 12:18:27 +00:00
Robert Osfield
9e07a72119
Added temporary code (but comment out) for testing VBO performance
2007-04-29 20:13:53 +00:00
Robert Osfield
921eb0fdd0
Further work on new VertexBufferObject/ElementsBufferObject support
2007-04-29 08:12:29 +00:00
Robert Osfield
4968eb7136
Further work on the new VBO support
2007-04-27 14:52:30 +00:00
Robert Osfield
f242570269
Unified the setup of version numbers so that they all are based on the version
...
number setup in the include/osg/Version header file.
2007-04-22 20:19:43 +00:00
Robert Osfield
7fc714ada1
Removed deprecated drawImplementation(State&) method from Drawable and Drawable::DrawCallback
2007-03-28 11:30:38 +00:00
Robert Osfield
2151573ccd
From Michael Platings, Fixed Geometry cloning of the texture
...
coordinates and vertex attributes.
2006-11-16 16:25:29 +00:00
Robert Osfield
b832453c10
From Uwe Woessner, implementated by Robert Osfield, Fixed vertex attribute bug, changed _vertexAttribList[unit] -> _vertexAttribList[index]
2006-08-04 13:17:56 +00:00
Robert Osfield
f1c2694c17
Updated copyright years.
2006-07-18 15:21:48 +00:00
Robert Osfield
1dcb923c15
From Daniel Trastenjak, added checking of binding modes to ensure that changes are only applied
...
when the binding mode changes, thereby avoiding uncessary calls to dirtyDisplayList.
Note, from Robert Osfield, moved bodies of set*Binding() into Geometry.cpp to avoid
clutter in the header.
2006-05-15 11:48:05 +00:00
Robert Osfield
c64f527925
From Brede Johansen, added missing array handling into Geometry::accept(AttributeFunctor&
...
af) and Geometry::accept(ConstAttributeFunctor& af).
2006-02-28 19:46:02 +00:00
Robert Osfield
e311cf83d8
Added checks in the drawImplementation to catch when attribute bindings are set on
...
but the relevant arrays remain unset, this prevents previous crash when this
occured.
2005-12-06 11:24:24 +00:00
Robert Osfield
33f4494830
Added missing dirtyDisplayList call into osg::Geometry::set calls.
2005-11-22 13:56:50 +00:00
Robert Osfield
c02e91c1b4
Added support for GrapicsOpeations that are reused each frame, cleaned up
...
osgcamera example.
2005-08-30 22:28:30 +00:00
Robert Osfield
d35ea68f3e
Renamed Byte2,3,4 and Short2,3,4 and UByte4 to use the Vec*b, Vec*s and Vec4ub form
2005-07-15 14:41:19 +00:00
Robert Osfield
facb0e2638
From Pavel Moloshtan, Byte2,3,4 and Short2,3,4 classes and their Array counterparts.
...
With a few build tweaks and bug fixes by Robert Osfield.
2005-07-05 15:57:53 +00:00
Robert Osfield
2b08f729f3
Updated change log.
...
From Fredric Marmond, changed unsigned int to unsigned long to avoid compile errors under 64 bit compile.
2005-05-25 15:35:51 +00:00
Robert Osfield
678b22ce83
Updated Copyright notices to 1998-2005.
2005-04-14 21:41:28 +00:00
Don BURNS
b84342c59a
Spelling errors fixed by Brede Johansen
2004-12-07 00:42:21 +00:00
Robert Osfield
c27bf441e2
Improved the osg::Geometry::computeCorrectBindingsAndArraySizes() implemention
...
so that it produce more optimal settings.
Changed flt/GeoSetBuilder so that it doensn't merge geometry, as it was
merging geometry even when inappropriate.
2004-10-06 20:32:09 +00:00
Robert Osfield
5b0739bcf0
Updates for better DatabasePager peformance w.r.t constant frame rates.
2004-09-23 12:27:56 +00:00
Robert Osfield
0d884d66eb
Various improvements to database paing.
2004-09-21 17:26:08 +00:00
Robert Osfield
bd68cf9f50
Changed binding warnings to be reported as info rather than as warnings.
2004-08-07 19:08:12 +00:00
Robert Osfield
ba295ccab7
Added a more flexible variable on the textured quad generation function
2004-07-12 01:01:00 +00:00
Robert Osfield
888d9e2a25
From Pavel Moloshtan, added support for storing primitive sets in VBO's
2004-06-29 15:04:38 +00:00
Robert Osfield
ad6bf73037
From David Fries, small treak to debugging output.
2004-06-16 06:02:12 +00:00
Robert Osfield
773ffc0c05
Added better debugging messages for verify bindings.
2004-06-11 21:05:50 +00:00
Robert Osfield
0fac56f56a
From Max Behensky, fixes to the computation of the number of primitives
2004-06-04 08:13:36 +00:00
Robert Osfield
aa52005b87
Added empty() method to Geometry to facilitate tests for removing empty
...
geometry from the scene graph.
Added removal of empty geometry leaves from within the RemoveEmptyNodeVisitor
2004-03-29 10:24:16 +00:00
Robert Osfield
86dbbb2874
Added PrimitiveIndexFunctor for better support of TriangleIndexFunctor
2004-03-14 21:54:17 +00:00
Robert Osfield
a3d99d88ff
Added float s, float t parameters to createTexturedGeometry function
2004-03-09 14:58:50 +00:00
Robert Osfield
57ed6ebb79
Warning fix
2004-02-24 12:04:48 +00:00
Robert Osfield
dea22aeb8e
Added support for a OSG_DISABLE_FAST_PATH_IN_DISPLAY_LISTS environmental
...
variable in the computeFastPathsUsed() method so that use of vertex arrays
can be forced off. This is a work around for a bug in the OpenGL drivers in
OSX/Panther.
2004-02-17 09:46:16 +00:00
Robert Osfield
ca06afbc79
Changed the ArrayData constructor to use copyop for copying arrays, instead
...
of by default doing cloning.
2003-12-18 12:20:38 +00:00
Robert Osfield
4b63fde145
Added a cast (Array*) to get round VS.NET compiler error.
2003-12-05 09:22:03 +00:00
Robert Osfield
9c2f01fd61
Added support for expanding index'd attributes from within
...
osgUtil:TriStripVisitor.
2003-12-04 17:14:06 +00:00
Robert Osfield
db66abd6d6
Implemented duplicate removal code into TriStripVisitor and added an
...
extra pass to doing tri stripping in the osgUtil::Optimzer.
Added validity checks into osg::TexEnvCombine to catch eronous enumarant values.
Improved the efficient of CullingSet's handling of new transforms.
Added a copy shared subgraphs and subdivision code into osgUtil::Optimizer.
2003-12-03 21:45:32 +00:00
Robert Osfield
f1c4dc3b0d
Updates for osgdem. Including new read/writeHeightField() methods.
2003-10-29 11:11:17 +00:00
Robert Osfield
d55d8f941d
Fixed error when handling mulltiple non per vertex vertex attributes during
...
rendering.
2003-10-22 13:39:16 +00:00
Robert Osfield
c00a88f4a4
From Tree, added missing setTextureData method.
2003-10-01 09:18:24 +00:00
Robert Osfield
b57404d17e
Fixed the Geometry::verifyBindings && computeCorrectBindingsAndArraySizes so they
...
correctly check the indices and array elements.
2003-09-29 14:07:46 +00:00
Robert Osfield
f8df9991b2
Improves to CullStack.
...
From M.Grngr. options support for f=switching off internal imagery in .ive files
2003-09-26 11:20:43 +00:00
Robert Osfield
2812c50329
Improved the Geometry::verifyBinding() and computeCorrectBindingsAndArraySizes()
...
methods to check all atributes and to report warnigns when errors are detected.
Added a CheckGeomtryVisitor to osgUtil::Optimizer to detect eroneous Geometry
before rendering.
2003-09-24 15:54:22 +00:00
Robert Osfield
b165fc9b4d
Cleaned up handling of vertex arrays in osg::Geometry.
...
Added support for vertex attribute arrays in .osg and .ive.
2003-09-09 22:18:35 +00:00
Robert Osfield
0ebf005ac1
Added a call to disable all vertex attrib arrays when none are present
...
on an osg::Geometry.
2003-09-01 11:23:29 +00:00
Robert Osfield
4c62cfe6e5
Added experiment Tempated fast path implemenation, #if 0 out right now.
2003-08-31 22:08:22 +00:00
Robert Osfield
02561a96c7
Compile/Warnings fixes.
2003-08-21 14:26:40 +00:00
Robert Osfield
1de167cd37
Fixed DrawVertex/DrawColors access of null arrays errors.
2003-08-12 10:15:59 +00:00
Robert Osfield
ef4535a2a4
Added s/getFastPathHint().
2003-08-09 00:46:48 +00:00
Robert Osfield
a11395feec
Added missing copy ops in the copy constructor.
...
Added computeInternalOptimziedGeometry() and associated methods to Geometry
to support alternate versions of a geometry to be used to optimize rendering,
such as flattening indexed attributes to straight attribute arrays.
2003-08-08 00:21:30 +00:00
Robert Osfield
f4d093df36
Fixed computeFastPathsUsed() so that it includes a check for the presence
...
of _vertexIndices and disables fast paths in this case.
2003-08-04 22:03:55 +00:00
Robert Osfield
9239173019
Tweaked osg::Geometry's VBO code so that it should not call
...
VBO when the extension is not supported.
2003-07-07 08:01:09 +00:00
Don BURNS
092c094752
Fixed glBindBufferARB to extensions->glBindBuffer()
2003-07-02 01:56:12 +00:00
Robert Osfield
b5442ac835
Added support for the ARB_vertex_buffer_object into osg::Geometry.
2003-06-29 21:41:57 +00:00
Robert Osfield
d70ab592ed
Additions since the CVS back up was made.
2003-06-24 21:57:13 +00:00
Don BURNS
15f88f35b2
*** empty log message ***
2003-06-24 15:40:09 +00:00
Robert Osfield
efa16a34c5
Fixes to the Optimizer's handling of merging of osg::Geometry
2003-05-22 15:29:20 +00:00
Robert Osfield
57af40ee95
Updates to the handling of vertex attributes.
2003-05-09 13:07:06 +00:00
Robert Osfield
cda2c90315
From Romano José Magacho da Silva, support for vertex attributes in vertex program.
2003-05-07 13:13:13 +00:00
Robert Osfield
43f1c0121b
Bug spotted and fix by Sébastien Kuntz. Changed < to <= on Geometry.cpp, in removePrimitiveSet(),
...
if( i+numElementsToRemove<_primitives.size() )
2003-04-01 15:08:30 +00:00
Robert Osfield
ce46db87b0
Spotted by Brede - missing !
2003-03-25 13:01:34 +00:00
Robert Osfield
c2b4a05825
Minor fixes to ReaderWriter and Paragraph to help work with use of Doxygen.
...
Fix to CullVisior to handle the new no referenced counted cull and draw traversal.
2003-02-10 13:58:39 +00:00
Robert Osfield
48bda9cc79
Added new Copyright/License notice to header and source files.
2003-01-21 16:45:36 +00:00
Robert Osfield
c1831b21f7
Made the setting of default glNormal and glColor values an compile
...
option via #ifdef USE_DEFAULT_NORMAL and USE_DEFAULT_COLOR defines respectively.
2003-01-20 11:02:27 +00:00
Robert Osfield
3ef3666d0f
Added new ARB vertex program state attribute and demo program,
...
sent in my Brede Johansen.
2003-01-04 20:45:53 +00:00
Robert Osfield
22c313cf3e
Warning fixes.
2002-11-22 09:46:25 +00:00
Don BURNS
c735c379af
Fixed std:: prefix and reinitialized variable for gcc 3.2
2002-11-21 20:28:28 +00:00
Robert Osfield
5ddcd5d878
Added osg::Geometry::setPrimtiveSet,removePrimtiiveSet, insertPrimitiveSet
...
and getPrimitiveSetIndex().
Renamed osg::Group::findChildNum(..) to getChildIndex().
Renamed osg::Geode::findDrawableNum(..) to getDrawableIndex().
2002-11-21 09:07:11 +00:00
Robert Osfield
3bd400130c
Name change and const change of Drawable::drawImmediateMode(State&) to
...
Drawable::drawImplementation(State&) const. Various updates to the
rest of the OSG to accomodate this.
2002-11-06 15:43:11 +00:00
Robert Osfield
5eb65f65cc
Added support for recording camera animation paths in osgGLUT::Viewer, and fixed
...
the osgGA::AnimationPathManipulator to handle it.
Added a new Drawable::ConstAttributeFunctor and make the accept(PrimitiveFunctor)
be a const method so can disallows modification. Added Drawable::supports(...) methods
for each of the AttributeFunctor, ConstAttributeFunctor and PrimitiveFunctor so
that programs can querry whether it is possible to use functors with that object type.
2002-11-06 10:24:33 +00:00
Robert Osfield
31e8323f17
Added default colour and normal definition to the Geometry draw to prevent state
...
inheritance of these attributes from causing problems of Geometry which arn't
fully defined.
2002-10-18 12:26:23 +00:00
Robert Osfield
c59fc9a2b7
Fixed a bug in the Optimizer where BIND_PER_PRIMITIVE_SET primitives where being eroneously merged.
...
Added missing support for reading geometry indices from the .osg format.
Added handling of geometry indices into the primitive functor in osg::Geometry.
Moved the method implementions of AnimationPathManipulator into src/osgGA and added extra convinience
methods for setting the manipulator with an hand built AnimationPath.
FCVS: VisualStudio/osgPlugins/iv/iv.dsp
2002-10-08 14:10:55 +00:00
Robert Osfield
0a5ed26940
Moved the new osg::IndexedGeometry class over the top of the the existing
...
osg::Geometry class, and removed the temporary IndexedGeometry. Port the rest
of the OSG across to account for the change in method calls -
osg::Geometry::addPrimitive(..) becomes osg::addPrimitiveSet(..)
2002-10-02 13:12:16 +00:00
Robert Osfield
2a28a4297f
Futher work on the IndexedGeometry class. Indexed coordinates should now
...
work.
2002-09-26 15:26:22 +00:00
Robert Osfield
55215651d7
Renamed osg::Primitive to osg::PrimitiveSet which better reflect what it
...
encapsulates.
Added new osg::IndexGeometry implemention, *not* complete yet.
Changed the rest of the OSG to handle the renaming og Primitive to PrimitiveSet.
2002-09-20 14:51:59 +00:00
Robert Osfield
02d920c930
Fix the sceondary color code.
2002-09-18 16:10:42 +00:00
Robert Osfield
61ff1c7b0a
Fixes for Win32 build
2002-08-25 11:00:30 +00:00
Robert Osfield
c2c6bb5ca6
Moved the include<osg/GLExtensions> from the State header into State.cpp, and
...
added it into other files which now required it.
2002-08-20 22:43:42 +00:00
Robert Osfield
058ef0dc98
Merged fixes to the osg::GLExtensions function pointer code from Stefan Huber,
...
and a fix to osg::State's secondary color code from Bob Kuehne.
Moved the body of the getGLExtensionFuncPtr() into the header to help out
support for Windows mapping of different OpenGL extensions function ptr per
dll.
2002-08-20 10:14:12 +00:00
Robert Osfield
a9732aa046
Added check to disable color binding when the secondary colour extension doesn't
...
exist.
2002-08-18 11:16:31 +00:00
Robert Osfield
8551e1c555
Supported added for secondary color & fog coords to osg::Geometry and osg::State.
2002-08-15 20:27:33 +00:00
Robert Osfield
95bdcfc3f6
Fixes to Doxygen files from Neil.
...
Removed unused set/getReportMode() methods and member variables from IntersectVisitor.
Added deep copy construction of Geometry objects.
2002-07-25 21:50:08 +00:00
Robert Osfield
b2fa79293c
Added the missing _primtives from the copy constructor list.
2002-07-23 15:48:12 +00:00
Robert Osfield
3cba9a52ef
Updates NEWS file for 0.9.0 release.
...
Added default computeBound() implementation to osg::Drawable which uses
a PrimtiveFunctor to compute the bounding box in a generic way, that
will work for all Drawable subclasses that implement the accept(PrimitiveFunctor&).
2002-07-18 22:35:54 +00:00
Robert Osfield
ff8b4c001d
Rewrote the osg::Drawable::AttributeFunctor and PrimtiveFunctor to make
...
them more consistent with each other. This does mean an API change, so
dependanct code in the OSG has been updated accordingly.
2002-07-18 15:36:14 +00:00
Robert Osfield
8036901ea1
Rewrote osg:Statistics so that it is PrimitiveFunctor as is now completely
...
decoupled from osg::Drawable. The Drawable::getStats() virtual method
no longer exists.
Updated the Viewer to use the osg::Statistics incarnation and reformated stats
to clean it up.
2002-07-18 14:20:01 +00:00