Robert Osfield
336612359b
From Tugkan Calapoglu, bug fix to FLATTEN_STATIC_TRANSFORMS.
...
Small tweak of the code to make the comparison against Identity matrix clearer.
2005-02-12 16:24:28 +00:00
Robert Osfield
d5409942ee
Fixed spatial groups.
2005-02-11 17:22:55 +00:00
Robert Osfield
6690da4272
Changed RELATIVE_RF to ABSOLUTE_RF to fix bug introduced when naming was changed
...
from RELATIVE_TO_ABSOLUTE to new convention
2004-12-12 22:27:20 +00:00
Robert Osfield
b70ff91eaf
Changed ABSOLUTE and RELATIVE to ABSOLUTE_RF and RELATIVE_RF to avoid stooppid Win32 #define
2004-10-24 20:04:00 +00:00
Robert Osfield
6821a80e14
Changed the ReferenceFrame enums to be RELEATIVE and ABSOLUTE, and
...
deprecated the RELATIVE_TO_ABSOLUTE and RELATIVE_TO_PARENTS.
2004-10-22 19:26:45 +00:00
Robert Osfield
37c8b3a6fb
From Geoff Michel, typos and spelling fixes.
2004-09-26 18:39:34 +00:00
Robert Osfield
9b9cb9cdb0
Added detection and disabling of flattening of static transforms which a
...
LightPointNode exists in the scene graph.
2004-07-29 10:13:02 +00:00
Robert Osfield
1ec5b48148
Fixed the flatten static transform visitor so that it checks to see
...
if a drawable can be flattened or not.
2004-07-28 10:26:14 +00:00
Robert Osfield
6f605d031f
Added support for OSG_OPTIMIZER="OFF"
2004-07-22 18:34:38 +00:00
Robert Osfield
47910f2c2e
Removed enabling of use client stage storage hint.
2004-07-12 17:30:36 +00:00
Robert Osfield
6fd4677868
Added OPTIMIZER_TEXTURE_SETTINGS pass to Optimizer, which enables
...
unref image data after apply, client storage hint.
2004-07-12 13:20:18 +00:00
Robert Osfield
2d35b3cc27
Changed Billboard::g/setPos(..) to g/setPosition(..).
2004-06-14 19:34:43 +00:00
Robert Osfield
df0d0b0fe7
Added missing billboard drawable dirtyBound()
2004-04-29 22:15:04 +00:00
Robert Osfield
061244056d
Added support for using the error metric to guide the simplficiation process
2004-04-19 23:08:30 +00:00
Robert Osfield
c80de01fd7
Further work on the new osgUtil::Simplifier.
2004-04-12 21:29:31 +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
2b9707cdfe
Added rotation of billboard normal into flattern transform Optimizer pass.
2004-01-23 16:29:54 +00:00
Robert Osfield
4390114670
From Romano Magacho, add group->setName() to flattening of static transforms
2004-01-09 14:07:26 +00:00
Robert Osfield
884e046abb
From Geoff Michel, added tesselate pass to Optimizer and added handling of per
...
primitve color to osgUtil::Tesselator.
2003-12-27 13:46:33 +00:00
Robert Osfield
5c199e01c0
Build fixes for VS6.0
2003-12-24 00:14:12 +00:00
Robert Osfield
caaed0d8b8
Added test against MultiSwitch in Optimizer to prevent switch children
...
being removed.
2003-12-15 08:54:38 +00:00
Robert Osfield
9f0dc42efe
Fixed flatten static transform
2003-12-12 17:23:03 +00:00
Robert Osfield
4bf9347fae
Made progress reports use osg::notify(osg::INFO) instread of std::cout
2003-12-12 13:53:04 +00:00
Robert Osfield
995af47ab9
Fixed merging of geometry code.
2003-12-12 13:24:23 +00:00
Robert Osfield
7e012ccfc4
Renamed PermissableOptions to setPermissableOptimizations.
2003-12-11 23:33:27 +00:00
Robert Osfield
1881610a35
Added support for controlling what optimization operations can be applied
...
to specific nodes in the scene graph. Typical use would be tagging a
node so that it can't be optimized away in say a flatten static transform
pass. Added methods to Optimizer are:
inline void setPermissableOptionsForObject(const osg::Object* object, unsigned int options)
{
_permissableOptionsMap[object] = options;
}
inline unsigned int getPermissableOptionsForObject(const osg::Object* object) const
{
PermissableOptionsMap::const_iterator itr = _permissableOptionsMap.find(object);
if (itr!=_permissableOptionsMap.end()) return itr->second;
else return 0xffffffff;
}
inline bool isOperationPermissableForObject(const osg::Object* object,unsigned int option) const
{
return (option & getPermissableOptionsForObject(object))!=0;
}
2003-12-11 23:26:22 +00:00
Robert Osfield
a25e14b42f
Improvements to the TriStripVisitor such that it now groups 4 point tri strips
...
together as quads.
2003-12-09 22:29:56 +00:00
Robert Osfield
9780a7cbd6
Removed osg::Transform::ComputeTransformCallback from osg::Transform.
...
Updated various dependant files to reimplemt callbacks as Transform subclasses.
2003-12-09 14:07:44 +00:00
Robert Osfield
83bf813e58
Moved the responsibility for finding file to load on to the ReaderWriter plugins,
...
instead of osgDB::Registry where it original lay. This has been done to allow
fileName strings to be encode data rather than just file names, such as one
requires when using PagedLOD along with plugins for doing dynamic tesselation.
2003-12-08 11:24:43 +00:00
Robert Osfield
3f14b9a653
Added code for combining adjacent static MatrixTransforms
2003-12-05 14:39:32 +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
3c9d1e0603
Added a spatializer into osgUtil to create a balanced quad/oct tree.
2003-12-01 10:28:23 +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
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
4a6bdad3e1
Removed osg::GeoSet for core osg lib and osgPlugin.
...
Commented out OpenDX plugin as its still based on GeoSet.
Added support for loading and converting GeoSet into the osgconv example.
2003-05-21 12:15:45 +00:00
Robert Osfield
f43d02f496
Added extra checks in the removal of rendundent nodes code so that description
...
fields etc are checked.
2003-01-23 15:12:58 +00:00
Robert Osfield
329a8a1656
Fixed an Optimizer crash where if the top most node of a model was
...
a static transform it would crash when this root was deleted. Have fixed
by recognising this node as one not to remove and set it to identity instead.
2003-01-22 12:06:22 +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
e6b64a5550
Added support for sharing arrays in the .osg format for osg::Geometry.
...
Fixed the osgUtil::Optimizater so it takes into account sharing of arrays when
deciding whether an geometry can be merged or not.
2003-01-07 16:29:07 +00:00
Robert Osfield
adf5c91808
Renamed all instance of AppCallback/AppVisitor to UpdateCallback/UpdateVisitor
...
inline with the decision to rename the "app phase" the "update phase".
2002-12-19 15:55:40 +00:00
Robert Osfield
00cc3a1833
Converted the instance of osgNew and osgDelete back to new and delete as part
...
of depecating the include/osg/MemoryManager
2002-12-16 13:40:58 +00:00
Don BURNS
b63827c5d9
Cleanin' up after Robert's spelling ...er ... challenges.
2002-12-07 06:59:08 +00:00
Robert Osfield
8b58a1df83
Added checking of parents against switch and sequence into the
...
RemoveRendundentNodeVisitor to prevent breaking of the orinal order of the nodes.
2002-12-06 11:16:45 +00:00
Robert Osfield
75fb39adbd
Added a dirtyBound & diryDisplayList to the geometry merge operation in the
...
Optimizer to fix a bug where the bouding volumes where being invildated.
2002-10-31 15:24:17 +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
70861ef70e
Converted osg::LOD from used n+1 successive ranges to n min/max ranges,
...
one min/max pair per child. Converted the rest of the OSG to use the new
osg::LOD node.
2002-10-06 20:33:13 +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