Commit Graph

968 Commits

Author SHA1 Message Date
Robert Osfield
5ecfb11e1b Changed the argument parser to accept strings that start with a - as being
valid strings.
2004-10-01 18:32:42 +00:00
Robert Osfield
884544c52c Added setPlanesFromMatrix method 2004-10-01 15:48:58 +00:00
Robert Osfield
08d4fdefb0 Fixed newly introduced compressed mipmnap error. 2004-09-30 12:10:45 +00:00
Robert Osfield
d204a087c3 Added proper handling of 3d texture compression 2004-09-30 09:10:29 +00:00
Robert Osfield
e08328a449 Preliminary steps to support for compressed 3D textures. 2004-09-29 10:01:46 +00:00
Robert Osfield
7b826228bb From Brad Christiansen, fix expandBy(const BoundingSphere&) method to properly
handle the instance of when the two bounding sphere's have a coincident center.
2004-09-28 07:15:01 +00:00
Robert Osfield
de0e616433 Added new methods into osg::Referenced for controlling the use of thread safe
ref/unref:

        /** Set whether reference counting should be use a mutex to create thread reference counting.*/
        static void setThreadSafeReferenceCounting(bool enableThreadSafeReferenceCounting);

        /** Get whether reference counting is active.*/
        static bool getThreadSafeReferenceCounting();
2004-09-27 14:15:13 +00:00
Robert Osfield
7e5c87de6a Changed the version strings to use OpenSceneGaph rather than "Open Scene Graph" 2004-09-27 12:07:34 +00:00
Robert Osfield
1b31024cd5 Clean up of new DatabasePager code, and change of osgProducer so that
DatabasePager support is now integrated into the OsgSceneHandler.
2004-09-23 18:50:38 +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
54b45ce3bc Updated to DatabasePager support 2004-09-21 21:33:52 +00:00
Robert Osfield
0d884d66eb Various improvements to database paing. 2004-09-21 17:26:08 +00:00
Robert Osfield
63f8935afb From George Papagiannakis, added extra Quat length to catch case
where length is zero.
2004-09-13 14:33:41 +00:00
Robert Osfield
790da0776a Made the computeLocalToWorld etc method to use const NodePath's parameters. 2004-09-09 15:14:33 +00:00
Robert Osfield
a36b10ac24 From Marco Jez, added missing TexGenNode constructor. 2004-09-06 14:30:25 +00:00
Robert Osfield
d9af748b78 From Tom Jolly, add detection for whether multi-texturing is supported before
checking for number of texture units supported, using 1 as a fallback value
2004-09-01 10:41:50 +00:00
Robert Osfield
19bf7bb1ce From Eric Sokolsky, add support for recording default values for env vars 2004-09-01 09:48:17 +00:00
Robert Osfield
e5cfe0a27a From Marco Jez, addition of new interal texture formats to osg/Texture and Image.cpp 2004-09-01 08:49:48 +00:00
Robert Osfield
08017daf37 Added rescale of quaternion in Matrix::set(Quat), a copy operation in osg::Quat and
extra tracking options in NodeTrackerManipulator.
2004-08-31 09:20:31 +00:00
Robert Osfield
2733324701 Fixed the Matrix::get(Quat&) method 2004-08-30 18:51:42 +00:00
Robert Osfield
f15877f89b Changed the AnimationPathCallback::reset() to reset the _firstTime to DBL_MAX
so that it resets on the next update traversal.
2004-08-24 18:23:53 +00:00
Robert Osfield
b2d39d7f5b Added s/getLoopingMode() to ImageStream and MPEG plugin 2004-08-24 12:55:15 +00:00
Robert Osfield
1a455e1aad Rejigged the __int* definitions to try and get round Mingw compile errors 2004-08-18 06:06:02 +00:00
Robert Osfield
5460013a92 From Bruce Clay, fixes for VS6.0 build. 2004-08-17 19:42:45 +00:00
Robert Osfield
a1fc4b986c Changed sizeof(..) references to 1,2,4 respectively. 2004-08-17 18:56:24 +00:00
Robert Osfield
ca61c11134 From David Fries, "I added code to also check the local up vector, but
only if one of the rotation modes is selected, because autoscale isn't
affected by the camera rotations. "
2004-08-17 07:58:32 +00:00
Robert Osfield
a9cb803404 Added a handling of different hex long long handling for VS and non
VS.
2004-08-16 21:03:41 +00:00
Robert Osfield
cf99c3c9bd Added support in Image::flipVertical for flipping mipmapped imagery
and for flipping compressed imagery.
2004-08-16 20:57:24 +00:00
Robert Osfield
bb6fe74738 Fixed _MSC_VAR reference 2004-08-16 16:43:17 +00:00
Robert Osfield
8c1f1e05c8 Added fxtctool in prep for adding compressed imagery swap 2004-08-16 15:43:12 +00:00
Robert Osfield
6c3eb95f7b Disabled the culling for clear node. 2004-08-16 08:55:48 +00:00
Robert Osfield
61033103bc Removed inappropriate #ifdefs 2004-08-13 10:49:45 +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
3579506fa8 Added support for osg::AutoTransform::setAutoRotateMode(AutoRotateMode) deprecating
the previous setAutoRotateToScreen().  Added support for ROTATE_TO_CAMERA mode.

Cleaned up the autotransform demo to use a sensible number of labels
2004-08-06 08:22:58 +00:00
Robert Osfield
e9f4ed87bc From Jay Zuckerman, fixes to AutoTransform so that it includes checking of
previous position value.
2004-08-05 15:15:51 +00:00
Robert Osfield
ddb7423e46 Set version numbers for 0.9.7 release 2004-08-05 08:02:48 +00:00
Robert Osfield
98d30a8ce0 From Pavel Moloshtan, fix to Image copy constructor so that it used the
correct size of image including mipmaps.
2004-08-03 18:06:36 +00:00
Robert Osfield
7126ca44e9 Better macro support for switching on/off use of mutex 2004-08-03 11:01:39 +00:00
Robert Osfield
ebad31c3dd Fixed warnings 2004-08-02 13:57:47 +00:00
Robert Osfield
6524fe1293 From Norman Vine, fixes for Mingw 2004-08-02 09:11:31 +00:00
Robert Osfield
40a1a39bff Replaced GL_PACK_ROW_LENGTH by GL_UNPACK_ROW_LENGTH 2004-07-28 12:38:54 +00:00
Robert Osfield
7deea8531e Clean up of debugging messages 2004-07-27 13:32:15 +00:00
Robert Osfield
654764a0e9 Fixed unref image so it only unref's when images are STATIC 2004-07-27 13:24:35 +00:00
Robert Osfield
bb5576bef8 Added support s/getImage(uint i) and getNumImages(). 2004-07-27 10:11:45 +00:00
Robert Osfield
c9f5749c12 Added preliminary support for thread safety in various delete GLobjects code 2004-07-21 19:16:49 +00:00
Robert Osfield
1963fac426 Replaced STOPPED by PAUSED. 2004-07-21 19:14:15 +00:00
Robert Osfield
aa833acfd3 Added support for releasing GLObjects, and renamed DisplayListVisitor the
GLObjectVisitor to better fit its function, and added support for releasing
objects as well as compiling them.
2004-07-20 05:37:59 +00:00
Robert Osfield
3e5c491f54 Added debugging message, currently commented out. 2004-07-12 13:13:58 +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
788a19d3b5 Made debugging message write to osg::INFO instead of osg::NOTICE 2004-07-11 23:07:47 +00:00
Robert Osfield
363d13d7ce Added CLUSTER_CULLING mask to CullSettings, and modified the ClusterCullingCallback
to use the mask to see if cluster culling is enabled or disabled.
2004-07-11 21:46:23 +00:00
Robert Osfield
3f4b8e9034 Fixed cluster culling. 2004-07-09 20:58:43 +00:00
Robert Osfield
ba20259794 Removed debugging message 2004-07-06 12:32:09 +00:00
Robert Osfield
b8aa8bfc40 Fixed warning. 2004-07-06 12:15:03 +00:00
Robert Osfield
518cedf6c7 Added dealloc or previous image data into readImageFromTexture 2004-07-05 21:46:02 +00:00
Robert Osfield
cce00c475b Added suppor for copying mipmaps of compressed textures 2004-07-05 21:09:30 +00:00
Robert Osfield
1c2c5c4f43 From Ulrich Hertlein, added check for detailRatio<=0.0 2004-07-05 09:04:53 +00:00
Robert Osfield
c58891d168 Fixed missing member variable initialized varaibles 2004-07-05 07:42:46 +00:00
Robert Osfield
2ce192f0ae Change the light in LightSource from a generic osg::StateAttribute to
a osg::Light.
2004-07-02 14:46:24 +00:00
Robert Osfield
0c38189018 Moved the radius parameter from PageLOD into LOD. 2004-07-01 13:53:30 +00:00
Robert Osfield
a8ee967f14 Added support for using pixel size control of LOD levels. 2004-06-30 19:07:05 +00:00
Robert Osfield
c45138f977 Fixed handling of PROCTED/OVERRIDE 2004-06-30 09:02:41 +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
fdbb1fe021 Re-organised Texture::computeInternalFormatWithImage() to avoid testing
for extensions when not required.
2004-06-28 22:09:52 +00:00
Robert Osfield
4c0aa24526 Added handling of GL_INTENSITY in osg::Image::computeNumComponents() 2004-06-17 15:07:50 +00:00
Robert Osfield
06aa06d686 Added support for setting texture units in the new TexGenNode. 2004-06-17 14:02:15 +00:00
Robert Osfield
840d5d4930 From Loic Dachary, added missing copy contructor operations. 2004-06-16 15:05:01 +00:00
Robert Osfield
ad6bf73037 From David Fries, small treak to debugging output. 2004-06-16 06:02:12 +00:00
Robert Osfield
78d075eb24 Added new TexGenNode class for positioning tex gens. 2004-06-14 19:11:04 +00:00
Robert Osfield
773ffc0c05 Added better debugging messages for verify bindings. 2004-06-11 21:05:50 +00:00
Robert Osfield
f75a7c6294 Added CoordinateSystemNode::set(const CoordinateSystemNode&) method to conviniently
set up a coordindate system.
2004-06-09 15:11:27 +00:00
Robert Osfield
a8ce6b01d6 Added CoordinateSystem::s/getFormat(). 2004-06-09 15:00:03 +00:00
Robert Osfield
6f82b37dd0 Improved the precision of animation paths. 2004-06-08 14:30:48 +00:00
Robert Osfield
eec378a885 Moved the osg::ClusterCullingCallback into into own header and source file. 2004-06-07 15:05:22 +00:00
Robert Osfield
c69a8a5b80 Added check to Quat::makeRotate(,,,) to catch zero lengh axis. 2004-06-04 10:05:18 +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
eb3917060f From George Tarantilis, fixes to DDS size computations.
From Robert Osfield, addition of constructors for internal DDS structures.
2004-05-25 16:10:28 +00:00
Robert Osfield
ab2b817e61 Made improvements to the handling of small rotations in Quat and
TerrainManipulator
2004-05-20 23:25:26 +00:00
Robert Osfield
f02c75f5ea Added Vec2d, Vec3d and Vec4d classes, and remapped Vec2, Vec3 and Vec4 to
Vec2f, Vec3f an Vec4f respectively, with typedef's to the from Vec* to Vec*f.
2004-05-20 10:15:48 +00:00
Robert Osfield
867a1ae105 From Bob Kuehne, more general checks for existance of extensions. 2004-05-17 13:20:41 +00:00
Robert Osfield
45998cfdf7 Revert the computeNearFar mode to using bounding volumes as default. 2004-05-13 22:06:20 +00:00
Robert Osfield
0307463746 Added GL_TEXTURE_RECTANGLE define 2004-05-07 12:40:21 +00:00
Robert Osfield
48dad727b1 From Bob Kuehne, added getting of the max number of texture units in
the Texture::Extension object
2004-05-07 11:28:55 +00:00
Robert Osfield
eedfe44a1c Fixed computeLocalTransform to generate correct orientation of local coordinate
frame.
2004-05-06 10:54:58 +00:00
Robert Osfield
8bdb68ef97 Added support for reading environmental varables in CullSettings. 2004-05-05 09:16:12 +00:00
Robert Osfield
1678066e6e Changed the default near far calculation mode so that it uses the
fine grained computation of near/far.
2004-05-02 14:03:15 +00:00
Robert Osfield
5836d60fbd Added osg::CullSettings class as a way of collecting all the various
settings related to the cull traversal in one place, so we can keep APIs
for settings these values more consistent.
2004-04-30 15:35:31 +00:00
Robert Osfield
36cd372847 Added osg::CoordinateSystemNode 2004-04-29 22:16:50 +00:00
Robert Osfield
017983429b Added getBoundingBox() method to osg::Geode to provide a closer bound
of the bounding volume of a Geode to be tracked.  This sits alongside
the existing getBound() method which returns a bounding sphere.
2004-04-22 10:47:12 +00:00
Robert Osfield
715cdcf5e2 From Don Tidrow, changed "setupGLExtenions()" to "setupGLExtensions()" in Texture and
Texture.cpp
2004-04-16 22:50:41 +00:00
Robert Osfield
884099b11c From Bob Kuehne, updated extension/version checking for border clamp extension. 2004-04-16 10:05:57 +00:00
Robert Osfield
97ef4985f7 From Eric Wing, clean ups for OSX support. 2004-04-11 21:21:38 +00:00
Robert Osfield
50d066d756 From Bob Kuehne, reworked code to use a marco instead of duplicated code,
done as measure for reducing the risk of copy and paste errors.
2004-04-02 15:45:34 +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
02f9ce48bc Added ArgumentParser::Parameter class to make the argument parsing much more
flexible, and to simplifying the API.  The read(,,,) methods now take
Parameter objects as arguments, and this Parameter adapt what ever basic
type is passed in, so is able to transparently handle float, double, int,
unsigned int & strings.
2004-03-19 22:03:09 +00:00
Robert Osfield
28214337a3 Moved the LineSegment destructor from the header to the source to avoid
compilation problems under MingW.
2004-03-19 09:18:21 +00:00
Robert Osfield
6800b7d29a Added the setting of the _internalTextureFormat from within osg::Image. 2004-03-17 20:03:56 +00:00
Robert Osfield
86dbbb2874 Added PrimitiveIndexFunctor for better support of TriangleIndexFunctor 2004-03-14 21:54:17 +00:00
Robert Osfield
28759baa98 From Marco Jez, added support NVidia extension to imager formats. 2004-03-14 15:08:12 +00:00
Robert Osfield
6112a373c1 Replaced eronous GL_TEXTURE_2D instances with GL_TEXTURE_3D and GL_TEXTURE_RECTANGLE_NV
respectively.
2004-03-11 14:34:59 +00:00
Robert Osfield
b0aede8dfe From Bob Kuehne, fixed eroneous use of GL_TEXTURE_2D token in texture object
manager usage
2004-03-11 14:34:08 +00:00
Robert Osfield
9f6383f5dd Added TextureRectangle(Image*) contructor. 2004-03-09 14:59:33 +00:00
Robert Osfield
a3d99d88ff Added float s, float t parameters to createTexturedGeometry function 2004-03-09 14:58:50 +00:00
Robert Osfield
8b47c9c85d Preliminary work on general support of video textures. 2004-03-09 09:42:07 +00:00
Robert Osfield
7c6734ff01 Added support for APPLE_client_storage to TextureRectange 2004-03-08 17:13:22 +00:00
Robert Osfield
358743f999 Added support for APPLE_client_storage of textures. 2004-03-08 17:09:58 +00:00
Robert Osfield
bd37f999c4 From Bob Kuehne, change on __DARWIN_OSX__ define to __APPLE__ 2004-03-08 11:02:05 +00:00
Robert Osfield
1e4bceb562 Added #include <memory> for Win32 build 2004-03-07 21:03:01 +00:00
Robert Osfield
ccefa05523 Clean up of headers. 2004-03-07 14:21:11 +00:00
Robert Osfield
c8b8a81052 Changed StateAttribute::getAssociatedModes(std::vector<GLMode>&) across
to StateAttribute::getModeUsage(StateAttribute::ModeUsage&).
2004-03-03 15:38:22 +00:00
Robert Osfield
4aa7afedf3 Removed include <iostream> where possible, replacing with istream or ostream and changing
std::cout/cerr to osg::notify().
2004-03-03 13:27:21 +00:00
Robert Osfield
f8f1456654 From Ruben, addition of osg::PointSprite and osgpointsprite example. 2004-03-02 22:36:11 +00:00
Robert Osfield
f10a47ed75 From David Fries, changed the Win32 Timer init code across to using
QueryPerformanceCounter to avoid inaccurate and slow original Sleep based code.
2004-03-02 21:37:44 +00:00
Robert Osfield
e2469aece9 From David Jung, added support for osg::Capsule shape 2004-03-02 20:33:00 +00:00
Robert Osfield
57ed6ebb79 Warning fix 2004-02-24 12:04:48 +00:00
Robert Osfield
ac812539d8 Added scale parameter into PositionAttitudeTransform.
Added pivotPoint parameter into AnimationPathCallack.
2004-02-22 11:58:44 +00:00
Robert Osfield
e36ceae483 Changed the Timer class to default to using the standard clock under
Linux to prevent Timer problems occur under Linux32 on the Athlon64.
2004-02-21 16:59:14 +00:00
Robert Osfield
a992676a98 Added missing initialization in the AnimationPathCallback constructor. 2004-02-20 20:10:51 +00:00
Robert Osfield
ebbf92e43c Added Material::operator = 2004-02-20 11:51:14 +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
eca2fc2837 Improved osgSim::SphereSegmenet's handling of transparancy. 2004-02-12 01:15:37 +00:00
Robert Osfield
2f63f0fa21 Added support for draw back then front faces of the osg::Sphere shape 2004-02-11 12:06:37 +00:00
Robert Osfield
61cb27806f From Brad Christiansen, fix to enable AutoTransform to keep track of window
size/perspective changes
2004-02-11 10:19:52 +00:00
Robert Osfield
c13ece9672 Added defined(__x86_64__) to force X86-64 build to use standard clock 2004-02-11 10:18:34 +00:00
Robert Osfield
05c2e8bd19 From David Fries, added _frameTime copying into copy constructor of osg::Sequence 2004-02-10 10:07:32 +00:00
Robert Osfield
2af70e3c4c From Ronny Krueger:
In RenderStage.cpp removed erroneous else statement.

    In ShapeDrawable.cpp's PrimitiveShapeVisitor::apply(const Box& box) fixed
    order of the last face.
2004-02-09 22:56:39 +00:00
Robert Osfield
24b710986f Fixed the PagedLOD::removeExpiredChildren() so it only removes the high
res child that has expired and no more.
2004-02-01 16:13:07 +00:00
Robert Osfield
4714f93054 Fixed second pathway for computing HeightField bounding box. 2004-01-31 21:27:02 +00:00
Robert Osfield
1ec93f9cce Fixed HeightField compute bounding box implementation. 2004-01-31 20:45:40 +00:00
Robert Osfield
d83fa3fca5 Added AnimationPathCallback::getAnimationTime() method 2004-01-31 11:34:28 +00:00
Robert Osfield
475c583975 From Pavel Moloshtan, add support to osg::Texture files for GL_ARB_shadow_ambinet support 2004-01-29 11:16:49 +00:00
Robert Osfield
635f302a2a Added support for osg::Texture::setBorderWidth(). 2004-01-27 21:29:58 +00:00
Robert Osfield
e247b11861 Added proper handling of the rotation of billboards about an artbitary axis.
Note, this code while mathermatically is not optimal, and will need to
reviewed in the future to optimize it.
2004-01-23 21:47:39 +00:00
Robert Osfield
635cf7f7c5 Made getLookAt() etc methods const 2004-01-23 16:09:56 +00:00
Robert Osfield
edce2211fa From Romano Magacho, fixes to handle the subloading from Image when the
internal format changes requiring a rebuild of the texture object.
2004-01-23 13:25:45 +00:00
Robert Osfield
694aec666c Fixed bug in logic in areAllTextureObjectsLoaded() which was producing the
exact opposite result to what it should have been generating.
2004-01-19 11:01:45 +00:00
Robert Osfield
b9f032bbb5 Updates for improvements to osgdem, such as adding support for skirt
and border into osg::HeightField, handling of computation of neigherbouring
tiles in osgdem's DestinationGraph.
2004-01-18 21:59:20 +00:00
Robert Osfield
6ff3f430b0 Clean ups of floats & .0f's 2004-01-14 15:14:20 +00:00
Robert Osfield
273b9c47b4 Fixed #undef's 2004-01-13 16:07:02 +00:00
Robert Osfield
4765c8744d Introduce new Matrix::invert() implementation from Ravi Mathur, with tweaks
by Robert Osfield.
2004-01-12 14:22:18 +00:00
Robert Osfield
b89ec5dcf9 Changed of _firstTime intial values of 0 to DBL_MAX. 2004-01-12 13:53:04 +00:00
Robert Osfield
23443aa5db From Alberto Farre, added osgDB::SharedStateManager. Also a couple of
ammendments by Robert Osfield, adding get/setSharedStateManager()
methods into osgDB::Registry, and clean up fixes in SharedStateManager
for the StateSet arrays.
2004-01-10 17:13:20 +00:00
Robert Osfield
8747b5161a Standardised on using value_type in most methods in Matrixd & Matrixf interfaces
and Matrix_implementation.cpp.
2004-01-09 20:33:23 +00:00
Robert Osfield
cace776940 Moaved PagedLOD::PerRangeData implementaton into .cpp and add missing
return *this to copy operator.
2004-01-07 08:39:33 +00:00
Robert Osfield
3f9ba1484c Added code to scale the priority by the offset and scale. 2004-01-05 20:51:30 +00:00
Robert Osfield
413064fc6e Added support for priority offset and scale into PagedLOD. 2004-01-05 20:45:28 +00:00
Robert Osfield
2cb360dd38 From Rommano Silva, admendments to Texture::computeRequiredTextureDimensions
so that it takes into account the current mip map settings.
2003-12-27 11:30:41 +00:00
Robert Osfield
96a8fa1f21 Fixes for VS6.0 2003-12-24 19:28:39 +00:00
Robert Osfield
477739f6fc Fixed typos in error reporting 2003-12-24 00:14:45 +00:00
Robert Osfield
315065df24 Fixed PagedLOD's handling of distances beyond the furthest range. 2003-12-20 23:25:05 +00:00
Robert Osfield
30bafd8867 Added Mode parameter to constructor. 2003-12-20 14:19:09 +00:00
Robert Osfield
3ee8ed15a6 Added _ARB to GL_COMPARE_R_TO_TEXTURE 2003-12-19 10:52:17 +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
8fefec9f47 From Pavel Moloshtan, added GL_ARB_shadow_support to osg::Texture. 2003-12-17 19:26:16 +00:00
Robert Osfield
2e9676f2cb Put the ordering of the callbacks so that the update callback is first,
then cull then draw.  Added missing copy of update callback into copy
constructor.
2003-12-16 08:56:49 +00:00
Robert Osfield
de0253aac7 Changed the default wrap modes from REPEAT to CLAMP since CLAMP is the OpenGL
default value.
2003-12-15 23:22:35 +00:00
Robert Osfield
5295d68fd3 Added _maximumNumberOfActiveOccluders variable to CollectOccludersVisitor(), to
limit the maximum number of occluders used in the cull traversal, default is
now 10.

Added set/getCollectOccluderVisitor() method into SceneView to allow control
of the the settings of the CollectOccluderVisitor.
2003-12-11 16:46:45 +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
1baffa3a77 Addition of the following methods:
/** Set the object-space reference radius of the volume enclosed by the PagedLOD.
          * Used to detmine the bounding sphere of the PagedLOD in the absense of any children.*/
        inline void setRadius(float radius) { _radius = radius; }

        /** Get the object-space radius of the volume enclosed by the PagedLOD.*/
        inline float getRadius() const { return _radius; }


        /** Set the number of children that the PagedLOD must keep around, even if thay are older than their expiry time.*/
        inline void setNumChildrenThatCannotBeExpired(unsigned int num) { _numChildrenThatCannotBeExpired = num; }

        /** Get the number of children that the PagedLOD must keep around, even if thay are older than their expiry time.*/
        unsigned int getNumChildrenThatCannotBeExpired() const { return _numChildrenThatCannotBeExpired; }
2003-12-09 12:08:27 +00:00
Robert Osfield
6d5eb79804 Addition of Mode mode=MODULATE constructor. 2003-12-09 12:05:50 +00:00
Robert Osfield
393f1580c8 From Pavel Moloshtan, extension support for ARB_occlusion_querry 2003-12-09 11:20:44 +00:00
Robert Osfield
73c5896432 Removed DOFTransform. 2003-12-05 13:26:47 +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
31c5528ffb Moved osg::DOFTransform to osgSim::DOFTransform.
Fixed crash associated with .osg files which contain empty description fields.

From Sondra Inverson, added support to .ive plugin for osgSim::DOFTransform.
2003-11-25 14:11:05 +00:00
Robert Osfield
92fc29a22c Fixed type of unrecognized 2003-11-25 11:06:39 +00:00
Robert Osfield
d82b3d0105 Added read(string,float,float,float,float) method 2003-11-25 10:56:12 +00:00
Robert Osfield
f28783e22b From Romano J M Silva, changed osg::Texture2D::copyTexImage2D so that it uses the
_internalFormat for the texture format to read rather than default to GL_RGBA.

From Robert Osfield, changed the osg::Texture2D::copyTexImage2D and copyTexSubImage
code so that it set the _internalFormat to GL_RGBA if is is zero.
2003-11-21 13:45:40 +00:00
Robert Osfield
62c955fa19 Added the missing insertChild(index,child) and insertChild(index,child,value) into
osg::Switch.
2003-11-20 12:03:51 +00:00
Robert Osfield
3f33163c47 Fixed setting of OSG_SPLIT_STEREO_AUTO_ADJUST_ASPECT_RATIO value. 2003-11-12 15:03:05 +00:00
Robert Osfield
54a8ea33ce Added support to slideshow3D for -s commandline option allow the size of
the display to be specified.

Also implementaited some code for display position and speed info in
osgProducer::Viewer, not fully implemented yet.
2003-11-04 16:38:10 +00:00
Robert Osfield
bc7622149d Updated to slideshow3D to support animation + pausing of animation.
Updated associated osg/osgUtil classes that provide animation pausing.
2003-11-03 23:13:31 +00:00
Robert Osfield
fd016af34b Added support for 565 textures to osgbluemarble.
Added a osg::Image::scaleImage() version which allows the datatype to be varied.
2003-10-29 23:10:11 +00:00
Robert Osfield
f1c4dc3b0d Updates for osgdem. Including new read/writeHeightField() methods. 2003-10-29 11:11:17 +00:00
Robert Osfield
eb4ee3afad *** empty log message *** 2003-10-27 16:07:21 +00:00
Robert Osfield
bce184e87c Added a check into osg::Sequence::traverse() against an empty sequence, so
that a non existant child is not traversed.
2003-10-27 10:29:52 +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
c199e74bfc Added support for generating compressed textures in osgbluemarble. 2003-10-17 15:26:30 +00:00
Robert Osfield
fad832425f Improvements to DatabasePager 2003-10-10 19:25:14 +00:00
Robert Osfield
5d35daa970 Udates to Drawable + IVE plugin with support for new ClusterCullingCallack.
Improvement to osgbluemarble.
2003-10-10 12:54:21 +00:00
Robert Osfield
1a6dc82d32 Made the Drawable::*Callback derive from osg::Object so that they can be
saved to .osg properly.

Added osg::ClusterCullingCallback to Drawable header/source.  Not complete yet,
but will enable drawables to culled is they are facing away from the eye point.
2003-10-08 21:29:45 +00:00
Robert Osfield
9d6bf8d1b6 From Jason Ballenger, fix for ArgumentParser::getApplicationName() 2003-10-03 16:29:34 +00:00
Robert Osfield
4700b8902c Introduced new DisplaySettings::set/getDisplayType() and environemtal variables
to and command line arguments to set it.

Added support for using the DisplaySettings::getDisplayType() to detect use
of a Head Mounted Display when doing stereo so that the asymtric frustum can
be switched off.
2003-10-01 15:56:52 +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
e693f148cb Made osg::Quat support either float or double internal representation, defaulting to double.
Generalised the osgDB::Field so that its getFloat() method can be used with either doubles or
floats governed by the type passed in - this helps support either float/double
Quat and Matrix classes seemlessly.
2003-09-29 13:35:02 +00:00
Robert Osfield
7d69f8e193 Added getPerspective() method to Matrix* and SceneView 2003-09-29 13:14:34 +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
c2b02608d1 Renamed instance of variables called format to pixelFormat to make a
clearer distinction between pixelFormat and internalTextureFormat.
2003-09-22 09:13:22 +00:00
Robert Osfield
d45fcb5613 From Alberto Farre, added support for GL_EXT_blend_color, GL_ARB_multisample,
GL_NV_multisample_filter_hint extension in the form of osg::BlendColor and
osg::Multisample state attribute classes.
2003-09-17 12:04:48 +00:00
Robert Osfield
c91a2d3d3e Updated version numbers and ChangeLog for the release. 2003-09-16 21:25:25 +00:00
Robert Osfield
41a07127fe Added applyProjectionMatrix(0); & applyModelViewMatrix(0); into
osg::State::popAllStateSets(), removed some debugging output.
2003-09-10 23:18:52 +00:00
Robert Osfield
69c4e87bb7 Added osg::State::popAllStateSets() method to pop all remain StateSet's off
the state stack, thus readying the state object to recieve a new frame.

Removed the state.reset() call in osgUtil::SceneView::cull() as this was
causing problems with stats producing inheritance of state when toggling
stats on.
2003-09-10 21:22:47 +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
792bba05b9 Added new Matrixf and Matrixd implementations.
Made Matrix be a typedef to either Matrixf or Matrixd.  Defaults to Matrixf.

Converted the osgGA::MatrixManipulators and osgProducer::Viewer/OsgCameraGroup
across to using exclusively Matrixd for internal computations and passing betwen
Manipulators, Producer and SceneView. Note, SceneView still uses Matrix internally
so will depend on what is set as the default in include/osg/Matrix.

Added the ability to osgProducer::setDone/getDone(), kept done() as the
method that the viewer main loop uses for detecting the exit condition.
2003-09-05 22:35:34 +00:00
Robert Osfield
a2834d74d2 Added set and get methods for Matrixd and Matrixf. 2003-09-05 20:52:36 +00:00
Robert Osfield
5b93250eb0 Added support for Matrixd and Matrixf implementations, with the default
Matrix typedef's to either Matrixd or Matrixf.
2003-09-05 20:48:42 +00:00
Robert Osfield
f8107a39b9 Build Fixes for IRIX. 2003-09-04 08:50:06 +00:00
Robert Osfield
bd44cfcfd8 Added a Matrix::value_type typedef'd trait into osg::Matrix, defaulting its
value to float, and converted the internal code across to use value_type.  This
allows Matrix to be converted to use double's simply by change the definition
of value_type.  Added Matrix::glLoadlMatrix and Matrix::glMultMatrix() to
help encapsulate the changes between float and double matrix usage.

Updated code that uses Matrix so it doesn't assume float or double matrices.
2003-09-03 10:47:25 +00:00
Robert Osfield
e530912744 Made Matrix a typedef to Matrixf, and converted the old Matrix to Matrixf, as
part of prep for supporting both Matrixf (float) and Matrixd (double).

Added osg::Matrixf::glLoadMatrix() and osg::Matrixf::glMultiMatrix() methods
and changed corresponding usage of glLoad/MultMatrixf() calls across to use these
methods. Again prep for support Matrixd.

Fixes for VisualStudio 6.0 compile.
2003-09-02 17:19:18 +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
bd798a6c4e Added getInitialInverseViewMatrix() to osg::State. 2003-08-25 13:06:15 +00:00
Robert Osfield
02561a96c7 Compile/Warnings fixes. 2003-08-21 14:26:40 +00:00
Robert Osfield
1a68dd80d7 Added explicit calls cancel and wait until thread and no longer running to the
DatabasePager and TXP pager.
2003-08-20 12:52:33 +00:00
Robert Osfield
18abc3aff7 Renamed instances of Click to Tick for consistency. 2003-08-20 12:51:40 +00:00
Robert Osfield
1c3b2b2554 Standardised the culling flags between CullingSet and CullStack, and
made ENABLE_ALL_CULLING enable all culling including the near and far plane.
DEFAULT_CULLING is now used for the default as uses the same original
values as ENABLE_ALL_CULLING once did - view frustum culling with near and
far culling. SceneView now uses DEFAULT_CULLING.
2003-08-20 12:50:54 +00:00
Robert Osfield
bca7e4e73b Added osg::setGLExtensionDisableString && osg::getGLExtensionDisableString()
functions the GLExtensions file, and made the isGLExtensionSupported() function
use the extension disable string when extension are querried.
2003-08-20 10:38:54 +00:00
Robert Osfield
169eb0fd07 Changed applyTextParamaters() to set the wrap modes :
GL_TEXTURE_WRAP_S for all texture targets.
	GL_TEXTURE_WRAP_T for all texture targets except GL_TEXRTURE_1D
	GL_TEXTURE_WRAP_R for only GL_TEXTURE_3D

And changed the defaults to OpenGL defaults of GL_REPEAT.
2003-08-18 19:51:27 +00:00
Robert Osfield
0685c2a852 Added applyTexImage_subload() implemention into TextureRectangle class
to provide automatic support for texture subloading.
2003-08-18 19:36:50 +00:00
Robert Osfield
07f120fb1c Fixes to Cygwin/Mingw makedefs.
Converted unix line endinges to dos line endings in various VS project files.
2003-08-16 20:42:54 +00:00
Robert Osfield
282eb39ec5 Changed cout's to notufy(INFO). 2003-08-15 09:38:36 +00:00
Robert Osfield
4b7bde1440 Removed the deprecated NodeVisitor::getLocalToWorld/WorldToLocal methods as
this are replaced by the osg::computeLocalToWorld/WorldToLocal() functions
found in osg/Transform.

Made the ReleaseTextureAndDisplayListsVisitor a public nested class of
osgDB::DatabasePager to allow it to be used in the TXP plugin, and added
usage of this visitor to the TXP plugin to make sure that textures and
display lists are released during the update thread.
2003-08-14 00:05:34 +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
2f47ab559a Made the fine grained checking of GL errors off by default. 2003-07-23 20:55:26 +00:00
Robert Osfield
8bd3e9f1b2 From Romano José Magacho da Silva, extension checking for NV_occlusion_query extension. 2003-07-23 20:53:53 +00:00
Robert Osfield
cc529aebe0 Bumped up version numbers in preperation for the 0.9.5 release. 2003-07-23 08:54:29 +00:00
Robert Osfield
a36d45e68b Added check to allocateImage() so that if the pixel size wouldn't be computed
unless valid _data already existed on the object.
2003-07-23 08:18:19 +00:00
Robert Osfield
ee30f2e30c Added support for osg::State::s/getInitialViewMatrix();
Added slideshow3D examples to the runexamples.bat.

Fixed DatabasePager to work with the latest OpenThreads.
2003-07-22 21:03:59 +00:00
Robert Osfield
23fc1900ce From Romano Jose Magacho da Silva, added osg:FragmentProgram.
From Robert, add .osg support for FragmentProgram.
2003-07-17 06:43:15 +00:00
Robert Osfield
a4b29996fd Added osg::Matrix::getOtho,getFrustum and getLookAt() methods.
Added test for new matrix methods into unit tests example, but these really
should go in their own lib...
2003-07-16 20:14:48 +00:00
Robert Osfield
a0d0803f1f Improvements to the handling of deletion of OpenGL rendering objets such as
display lists and textures object such that they can be deleted according
to an available amount of time given to do deletes.
2003-07-16 09:52:43 +00:00
Robert Osfield
82008d5ecd Updates to the flush rendering objects function calls to allow for
managment of amount of time available to do gl delete's.  This control is
required for constant frame rate applications.
2003-07-15 21:19:03 +00:00
Robert Osfield
1b9d7d458a Added support for texture object manager, which provides an automatic mechansim
for reusing deleted textures.
2003-07-14 14:42:10 +00:00
Robert Osfield
606daca904 Added default constructor implemention to LOD and PagedLOD.
Added verbose messages to DatabasePager.
2003-07-10 14:53:07 +00:00
Robert Osfield
9c5f84e99e From Eric Sokolosky, insertChild(). 2003-07-10 13:11:25 +00:00
Robert Osfield
12c7526f87 From Bob Kuehne, Fixed typo. 2003-07-10 08:05:24 +00:00
Robert Osfield
5aa47a77c2 Improvements to the DatabasePager and PagedLOD class adding support for
deleting expuired children in the database thread.
2003-07-09 14:55:39 +00:00
Robert Osfield
c2eabe1d4b Added osg::PagedLOD and osgProducer::DatabasePager class, and linked up osgProducer::Viewer
to manage the pager.
2003-07-08 14:44:00 +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
Robert Osfield
639fc547d5 Added missing setUseVertexBufferObject(). 2003-07-05 19:49:06 +00:00
Robert Osfield
4c576770fb Integrated various fixes from users. 2003-07-05 19:08:30 +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
258ba3d806 Added #include<TextureRectangle> 2003-06-27 14:33:13 +00:00
Robert Osfield
46c5eec0d0 From Ulrich Hertlein, added support for TextureRectangle to .osg format. 2003-06-25 08:58:48 +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
b444cc1ab3 Added support for scaling the projection in vertical and horizontal split stereo
modes.
2003-05-27 11:03:49 +00:00
Robert Osfield
4a804ebf32 Reverted recent changes so the set(Matrix&) method. 2003-05-27 11:02:45 +00:00
Robert Osfield
b17d2abc87 Adjustments to the horizontal and vertical split stereo code for better
handling of aspect ratio.
2003-05-26 15:00:38 +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
fb55f6ffbc Improved the handling of scaled matrices in the Quat::set(Matrix&) method. 2003-05-21 21:32:56 +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
ab1b199da8 Removed the now redundent osg::Camera. 2003-05-20 08:09:36 +00:00