Don BURNS
4ebb2ddd5a
Ooops... previous fix didn't work, corrected.
2004-05-08 18:41:18 +00:00
Don BURNS
3b92e02f29
Fixed a define for __sgi. Irix does not allow dlsym(0L, ...) without
...
calling dlopen() first, just like __sun
2004-05-08 18:37:26 +00:00
Robert Osfield
3d3199017e
From Ken Sewel, added osgDB::fileType(filename) method and usage of this
...
new function in osgdem to automatcally handle directories as part of the
regular -d and -t options.
2004-05-08 06:35:32 +00:00
Robert Osfield
26f80f1341
From Marco Jez, replacement of local mutex lock/unlock with ScopedLock.
2004-05-07 19:55:12 +00:00
Robert Osfield
bdeb391a00
From Mike Weiblen, added new rot, scale and trans pseudo loaders.
2004-05-07 15:18:59 +00:00
Robert Osfield
aec98259a8
Added support for osgDB::ReaderWriter::ReadResult::FILE_LOADED_FROM_CACHE
2004-05-07 13:43:41 +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
47dd0ece28
Added new TerrainManipulator to osgGA, and new callback for getting the
...
CoordinateFrame for a given X,Y,Z location.
2004-05-06 11:01:16 +00:00
Robert Osfield
1a09763515
Removed Terrain.cpp and header from CVS repository.
...
Added support for setting the maximum visiable distance of top level
to osgTerrain::DataSet, and debugging code which insert a axes.osg
above each tile.
2004-05-06 10:59:08 +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
9db6e84d3d
Cleaned up osgTerrain, renaming the Terrain and Renderer class to
...
HeightFieldNode and HeightFieldRender to better reflect their function.
Removed the GeoMipMapRenderer.cpp stub as the implemention will be left
to a plugin. Added Version functions.
2004-05-03 20:42:58 +00:00
Robert Osfield
b7746ff56e
Added support for automatically finding CoordinateSystemNode's in the
...
scene graph and then using them to set up the CoordinateFrame used
by the camera manipulators.
2004-05-03 12:04:25 +00:00
Robert Osfield
04798b4e63
Fixed compile error
2004-05-03 07:42:30 +00:00
Robert Osfield
fced94fab3
Added support for decoration of the osgTerrain::DataSet generated databases
...
with a CoordinateSystemNode which reflect the coordinate system of the
database.
Added support for reading and writing CoordianteSystemNode into the .osg
and .ive formats.
2004-05-02 21:50:15 +00:00
Robert Osfield
6223c11570
Made the generation of QUADS for strip with the length of 4 an option.
2004-05-02 15:43:55 +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
7596b3b361
Added getKeyManipMap() method
2004-04-30 09:04:10 +00:00
Robert Osfield
0ba2d26b1a
Added Support for cluster culling.
...
Removed osgTerrain::CoordinateSystem which is now replaced by
osg::CoordinateSystemNode.
2004-04-29 22:22:22 +00:00
Robert Osfield
5d79eb1c9d
Added support for fine grained computation of the near plane, by taking
...
into account individual primitives culled against the view frustum.
Added better support for computing the near far for billboards.
2004-04-29 22:21:06 +00:00
Robert Osfield
522ffca03c
Added support for tracking a user specified CoordinateSystemNode for the
...
CoordinateFrame to use in the camera manipulation
2004-04-29 22:19:57 +00:00
Robert Osfield
f81447e839
Added support for handling a user define CoordinateFrame in the flight
...
and trackball manipulators with API access via the MatrixManipulator
base class
2004-04-29 22:18:54 +00:00
Robert Osfield
36cd372847
Added osg::CoordinateSystemNode
2004-04-29 22:16:50 +00:00
Robert Osfield
678c456fc8
Made s/getBackgroundColor() deprecated, and add in new s/getClearColor() to
...
replace it.
2004-04-27 19:09:58 +00:00
Robert Osfield
9ef61d83e0
Added extra parameter policy enum
2004-04-23 14:47:54 +00:00
Robert Osfield
91516305d9
Added support for protecting points from being simplified.
...
Added back in support for generation of skirts in osgTerrain::DataSet.
2004-04-22 13:36:30 +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
e3a7db4559
Added update() method to enable the ScaleBar to be updated after changes
...
to attached classes.
2004-04-22 10:44:23 +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
a1caa14a61
Added osgsimplifier example.
2004-04-18 16:15:49 +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
7d5e44205d
Fixed bogus read*Implementation calls in ReadFileCallback.
2004-04-13 16:03:18 +00:00
Robert Osfield
c80de01fd7
Further work on the new osgUtil::Simplifier.
2004-04-12 21:29:31 +00:00
Robert Osfield
97ef4985f7
From Eric Wing, clean ups for OSX support.
2004-04-11 21:21:38 +00:00
Robert Osfield
2a6e155d03
From Alberto Farre, changed the cache hint option in read*() calls from being
...
a bool to a enum osgDB::Registru::CacheHintOptions to be used a bit mask flag.
From Robert Osfied, added osgDB::Registry::ReadFileCallback and
osgDB::Registry::WriteFileCallback to allow customizition of read and write
calls.
2004-04-10 16:11:56 +00:00
Robert Osfield
ae7ceae631
From Paul Martz, added support for OpenFlight15.8 LightPointSystems
2004-04-10 11:30:16 +00:00
Robert Osfield
51c8655630
Added beginning of new osgUtil::Simplifier
2004-04-08 11:27:01 +00:00
Robert Osfield
6e854d04c7
Fixes from Per Månsson for Win32 build
2004-04-06 16:01:05 +00:00
Robert Osfield
01cbfd6715
Added local transform support. Fixed skirt generation to work during geocentric
...
transformations. Fixed output of image files so that compressed textures are
turned off when external image files are required.
2004-04-05 15:39:33 +00:00
Robert Osfield
2efea80728
From Nathan Cournia, fix to = operator, was eroneous written as an == operator.
2004-04-05 09:00:37 +00:00
Robert Osfield
398fa56bb4
Prelimary work on adding support for local tile transforms
2004-04-04 15:33:26 +00:00
Robert Osfield
dbc3dbc5fa
Added scaling of the PagedLOD range to be relative to the radius of children.
2004-04-01 13:09:05 +00:00
Robert Osfield
9d2002f3c4
Added preliminary support for converting datasets into geocentric coords
2004-03-31 22:31:46 +00:00
Robert Osfield
b67858f388
Added osgTerrain::EllipsodeTransform helper class for converting to and from
...
lat, long, height to geocentric X,Y,Z and back.
2004-03-31 15:50:30 +00:00
Robert Osfield
663801c0c8
Clean up freeing of no longer required tiles
2004-03-31 09:20:46 +00:00
Robert Osfield
316c646a8f
From David Fries, add init() call to SphereSegment constructor, and
...
new get methods for draw mask and color.
2004-03-31 08:52:47 +00:00
Robert Osfield
2f2030aba4
Fixed the boundary equalization
2004-03-30 21:13:08 +00:00
Robert Osfield
a1b46de936
Added normal generation in polygonal tile generation, and add --wtk option
...
for setting coord systems in osgdem
2004-03-29 22:26:51 +00:00
Robert Osfield
e44176a7aa
Fixed the handling begin()/vertex()/end() sequences in TriangleIndexFunctor.
2004-03-29 12:28:40 +00:00
Robert Osfield
cad1e2a075
Groundwork for adding support for polygonal tiles
2004-03-29 10:45:58 +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
a48460c27c
Added support for recording the animation paths relative to an 0.0 start
...
time.
2004-03-26 11:04:37 +00:00
Robert Osfield
c46855976c
Added empty() method as a convinience method for setting checking whether
...
an animation path contains any control points
2004-03-26 10:48:29 +00:00
Robert Osfield
ec1fd733b8
Added TextureType and GeometryType parameters to DataSet. These will be used
...
to control what type of database is generated.
2004-03-21 12:17:44 +00:00
Robert Osfield
88bbdb325d
Implemented support for overriding the coordinate system and geo transform
...
using in generate of databases.
2004-03-20 18:32:49 +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
3fea25a0a1
From Marco Jez, updates to osgParticle, with integration of changes from Tom
...
Jolly.
2004-03-17 20:31:55 +00:00
Robert Osfield
e2e779bed7
Added support for generation of PagedLOD databases in osgTerrain::DataSet
2004-03-16 16:54:08 +00:00
Robert Osfield
84562208d0
Added support for controlling the type of destiation database to create into
...
osgTerrain::DataSet.
2004-03-15 15:47:22 +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
e082008d8a
Moved osgTerrain::DataSet from the osgdem example into osgTerrain. Added
...
various improvements.
2004-03-11 16:14:25 +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
358743f999
Added support for APPLE_client_storage of textures.
2004-03-08 17:09:58 +00:00
Robert Osfield
136db7b63a
Clean up of headers.
2004-03-08 11:53:12 +00:00
Robert Osfield
ce79e6f400
Added osgGA::TrackballManipulator::g/setMinimumZoomScale() method.
2004-03-08 11:41:57 +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
ccefa05523
Clean up of headers.
2004-03-07 14:21:11 +00:00
Robert Osfield
89d9ca11c9
From Marco Jez, on behalf of Farshid Lashkari. Details from Marco's email: "I've just received an addition to osgParticle from Farshid Lashkari. It enhances the generation of texture coordinates on particles so that animated textures can be used, with the current frame of animation being computed from each particle's current age.
...
Clients just have to call Particle::setTextureTile() and specify the number of
horizontal and vertical tiles that make the animation up in the texture image."
2004-03-05 15:44:15 +00:00
Robert Osfield
8540414ae0
Removed redundent getAssociatedModes()
2004-03-04 14:32:27 +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
e2469aece9
From David Jung, added support for osg::Capsule shape
2004-03-02 20:33:00 +00:00
Robert Osfield
20252db7ff
From Brede Johansen, added support for incrementing animation of DOFTransform
...
w.r.t. time rather than frame number.
2004-03-02 16:53:21 +00:00
Robert Osfield
cfe376b644
From Paul Martz, with a couple of mods by Robert Osfield:
...
"Changes to return the lat/long origin of an
OpenFlight model as userData of the root node object."
2004-03-02 16:12:11 +00:00
Robert Osfield
1b7b65389e
From Brad Christiansen: added _matrixDirty=true to AutoTransform::setPosition(..)
...
method. From Robert Osfield, probagated this change to other AutoTransform set
methods.
2004-03-02 15:27:59 +00:00
Robert Osfield
8a1c39bffb
Fixed warning message
2004-03-02 15:26:31 +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
d2491f6750
Added AnimationPathCallback::s/getTimeOffset and s/getTimeMultiplier() methods.
2004-02-21 16:56:23 +00:00
Robert Osfield
a6541a27bf
Added missing _pause(false) into AnimationPathCallback default contructor.
2004-02-20 20:47:35 +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
b73d3c3e7f
Fixed typo in inline docs on the default value of the clear stencil value
2004-02-19 10:10:25 +00:00
Robert Osfield
eca2fc2837
Improved osgSim::SphereSegmenet's handling of transparancy.
2004-02-12 01:15: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
5fa64ba416
Made getViewport(...) const.
2004-02-10 12:36:17 +00:00
Robert Osfield
33201a8f25
Added new TriangleIndexFunctor.
2004-02-09 10:14:06 +00:00
Robert Osfield
345298badd
Fixed the className() defintations to be const
2004-02-05 12:11:06 +00:00
Robert Osfield
22b2e7343e
From Tom Jolly, Fixes to osgSim::BlinkSequence to enable proper saving and
...
loading.
2004-02-05 10:50:29 +00:00
Robert Osfield
f5e2f7c731
Added atan2f to the list of #define's into include/osg/Math.
2004-02-02 08:55:17 +00:00
Robert Osfield
d83fa3fca5
Added AnimationPathCallback::getAnimationTime() method
2004-01-31 11:34:28 +00:00
Robert Osfield
268096be69
Added osg:: infront of State in Draw callback to make the callback work
...
when copy and pasting it in user code.
2004-01-30 21:10:05 +00:00
Robert Osfield
b4774099d6
Fixed the clampProjectionMatrix method so it doesn't modify the input
...
znar and zfar, by avoid the use of float/double&.
2004-01-29 20:14:20 +00:00
Robert Osfield
dea75f5510
Attempts to fix compile problems under IRIX due to namespace problems.
2004-01-29 15:47:51 +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
39d7afaed2
Added support for CullVisitor::clampProjectionMatrixCallback
2004-01-28 10:49:23 +00:00
Robert Osfield
635f302a2a
Added support for osg::Texture::setBorderWidth().
2004-01-27 21:29:58 +00:00
Robert Osfield
43df3b90ef
Fixed problems with the DatabasePager free of texture objects and display
...
list before they are finished with.
2004-01-27 14:49:59 +00:00
Robert Osfield
6f61b34590
Added className() method to GlyphTexture for debugging purposes.
2004-01-27 14:47:41 +00:00
Robert Osfield
6700faccf4
Added operator = implementations to template classes.
2004-01-27 14:46:29 +00:00
Robert Osfield
d226e3ec68
From Nick, added VectorUInt in osgText/String hack to get around VS's stoopid compiler bugs.
...
From Robert, removed an #if #else #endif block, for code clarity.
2004-01-27 11:50:32 +00:00
Robert Osfield
ffec17c6bf
Removed redundent , from enum.
2004-01-24 20:50:33 +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
84737941e1
Added controls over the datatbase pager threading priority during and outwith the frame.
2004-01-22 10:42:32 +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
d4cfaae406
Fixed typo's of ImpostorSprite
2004-01-13 09:47:50 +00:00
Robert Osfield
72b8e5797c
Fixed for Win32 build
2004-01-13 09:47:31 +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
c3b888c862
Fixed compile warning
2004-01-12 14:21:26 +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
d072e1087c
Added support for controlling the LODScale via '*' and '+' keys in
...
osgProducer::Viewer.
2004-01-10 21:29:15 +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
6bdd84e3b0
Made the default settings of Quat 0,0,0,1 to represent a zero rotation.
2004-01-08 21:04:42 +00:00
Robert Osfield
2f918d62d7
Added DatabasePager::setUseFrameBlock(bool) method
2004-01-07 12:37:44 +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
894537a016
Simplified the API for using the DatabasePager, by providing a single
...
DatabasePager::updateSceneGraph(..) method, and added a ref_ptr<> into
osDB::Registry for managing a single DatabasePager in a centralised way.
2004-01-06 21:18:36 +00:00
Robert Osfield
413064fc6e
Added support for priority offset and scale into PagedLOD.
2004-01-05 20:45:28 +00:00
Robert Osfield
f230f5a132
Added support into osgProducer::Viewer for flushing and compiling GL objects
...
via a Producer post swap callback.
2004-01-05 13:40:36 +00:00
Robert Osfield
d25b682269
Fixed osgFX::Validator::compare(..) so that it checked for the correct
...
StateAttribute type before comparing member variables.
Fixed docs typo in Material
2004-01-04 12:37:18 +00:00
Robert Osfield
249eddb3d8
Updates to osgGL2 from Mike Weiblen
2004-01-03 09:06:52 +00:00
Robert Osfield
458e10c796
Fixed getFogCoord methods
2004-01-02 20:44:18 +00:00
Robert Osfield
401c3ec45d
From Geof Michel, addition of TESSELATE_GEOMETRY pass.
2003-12-27 22:17:25 +00:00
Robert Osfield
fdd5a72115
Added extra clampProjectionMatrix methods to handle both Matrixd and Matrixf
...
pathways.
2003-12-21 13:11:36 +00:00
Robert Osfield
fd9777101c
*** empty log message ***
2003-12-20 14:20:48 +00:00
Robert Osfield
30bafd8867
Added Mode parameter to constructor.
2003-12-20 14:19:09 +00:00
Robert Osfield
b1945b865e
Added swap bytes methods.
2003-12-19 22:34:18 +00:00
Robert Osfield
d99e7a2d00
Changed inline docs for readPixels to say "read pixels from current frame buffer"
2003-12-18 20:53:23 +00:00
Robert Osfield
7f76c66a00
Added definition of GL_DEPTH_TEXTURE_MODE_ARB
2003-12-18 16:15:58 +00:00
Robert Osfield
3eef331f2a
Fixed s/getCreateBackFace(bool on) methds so that use used the correct variable.
2003-12-18 10:57:57 +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
1e361017c8
From Pavel Molishtan, Fixed comparision of _t plane.
2003-12-17 17:05:20 +00:00
Robert Osfield
6bdbe942b1
From Marco Jez, fixes to osgFX so that effects are compiled correctly.
...
Fixed title name of osgkeyboardmouse example.
2003-12-16 23:43:37 +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
1158e4605d
Added support for updating the SceneView projection matrix from the values
...
of near and far computed during the cull traversal.
2003-12-15 23:23:45 +00:00
Robert Osfield
0cbe10d399
From Michael Gronager, with updates from Robert Osfield, to add support
...
for Registry::closeAllLibrary and forced Registry destruction via
Registry::instance(true).
2003-12-13 16:36:29 +00:00
Robert Osfield
4c95f0db1f
Fixed typo of s/getUpdateVisitor().
2003-12-12 20:33:36 +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
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
5011d994e8
Added a special AvailablerReaderWriterIterator class to handle the task
...
of iterating through the list of available reader writer, whilst handling
cases where the list itself changes size during iteration through the list.
Previous size changes during iteration was cause invalid iterators, which
in turn was causing a crash.
2003-12-10 15:24:14 +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
f5a79aec4e
Added get() method to ReaderWriterProxy class to allow the readerwriter to
...
be obtained once its constructed.
2003-12-09 12:07:41 +00:00
Robert Osfield
6d5eb79804
Addition of Mode mode=MODULATE constructor.
2003-12-09 12:05:50 +00:00
Robert Osfield
bbde1b2ae7
Fixes for optional compile of GL_LUMINANCE_ALPHA and GL_ALPHA texture usage
...
in fonts. Default to GL_ALPHA.
2003-12-09 12:04:14 +00:00
Robert Osfield
4c3f6004df
Moved osgText across to create GL_ALPHA textures instead of GL_LUMINANCE_ALPHA
2003-12-09 11:31:33 +00:00
Robert Osfield
393f1580c8
From Pavel Moloshtan, extension support for ARB_occlusion_querry
2003-12-09 11:20: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
75174c1be1
Changed the minium tri strip length to 2 rather than 0.
2003-12-05 22:42:02 +00:00
Robert Osfield
3f14b9a653
Added code for combining adjacent static MatrixTransforms
2003-12-05 14:39:32 +00:00
Robert Osfield
1046c73731
Fixes for Win32 build.
2003-12-05 14:39:09 +00:00
Robert Osfield
f9fcffd9cd
Added optional TraversalMask paramter to computeIntersections() methods.
2003-12-04 09:43:34 +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
cdb6f9a1df
Made removedExpiredChildren() virtual.
2003-12-03 21:28:42 +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
4f71f1becd
From Qing Shen, addition of computeIntsect methods which take a
...
node pointer to intersect with rather than assume the viewer's scene pointer.
2003-11-28 13:41:10 +00:00
Robert Osfield
f2da687d0f
Standardised the tabbing so that 4 spaces are used instead of hardware tabs.
2003-11-27 22:06:11 +00:00
Robert Osfield
2353d55697
From Michael Gronager, osgSim::VisibilityGroup
2003-11-27 16:23:07 +00:00
Robert Osfield
e7f9a51f0f
Updates to osgdem + BoundingBox to support graph iterators
2003-11-27 15:13:55 +00:00
Robert Osfield
091151e4ce
Warning fix from Romano
2003-11-26 16:43:28 +00:00
Robert Osfield
148c24d69c
Changed SG_EXPORT to OSGSIM_EXPORT.
2003-11-26 11:01:12 +00:00
Robert Osfield
023d2254ab
Early development work on osgTerrain.
2003-11-25 19:42:35 +00:00
Robert Osfield
7bebda5e4d
Added OSGSIM_EXPORT to scalarbar::printer
2003-11-25 19:25:42 +00:00
Robert Osfield
953bbd85e8
Tweaked MultiSwitch IO
2003-11-25 16:07:32 +00:00
Robert Osfield
72ba462251
Added osgSim::MultiSwitch and support for it in the OpenFlight and
...
.osg plugins
2003-11-25 15:58:57 +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
9c311b4077
Added intersect method.
2003-11-25 10:56:42 +00:00
Robert Osfield
d82b3d0105
Added read(string,float,float,float,float) method
2003-11-25 10:56:12 +00:00
Robert Osfield
845adb8745
Reorganised posstion of getViewMatrix*() methods.
2003-11-25 10:55:37 +00:00
Robert Osfield
78a0fd5a16
Added support for case insenstive searches of the filepaths.
2003-11-25 09:04:41 +00:00
Robert Osfield
709e1de9c8
Removed newline from top of header
2003-11-21 16:19:07 +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
bddd49c86a
Changed the credit from NVidia's NvTriStrip to Tanguy Faure's traingulation code.
2003-11-14 09:25:17 +00:00
Robert Osfield
5fb06a1d77
Moved the getTime to inside the locked part of the add events.
2003-11-12 10:13:31 +00:00
Robert Osfield
8bbbd1fc70
Made getWidth and getHeight const.
2003-11-07 09:00:22 +00:00
Robert Osfield
8f2a688eff
Added TextureObjectManager constructor.
2003-11-04 22:00:16 +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
bbc55c14fd
Added osgText::Text::getTextureGlyphQuadMap().
2003-11-04 13:40:24 +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
8bb2ca48b7
Made = opeator const.
2003-10-17 10:26:31 +00:00
Robert Osfield
594f25b5d1
Added SceneView::s/getDrawBufferValue(GLenum) to allow customization of what
...
glDrawBuffer() value is set on each frame.
2003-10-17 10:25:59 +00:00
Robert Osfield
ea04f48251
Moved Producer::Block temporarily into osgDB to ensure that osgDB isn't dependent
...
on Producer.
2003-10-12 14:51:54 +00:00
Robert Osfield
42eb39ef37
Improvements to the DatabasePager
2003-10-12 12:13:58 +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
83816dac04
Added ImageOptions for use with the GDAL plugin
2003-10-08 14:24:13 +00:00
Robert Osfield
5c17b5059a
From Mike Weiblen, added support for OpenGL SL to osgFX::Cartoon.
2003-10-05 11:42:26 +00:00
Robert Osfield
ce15c880b1
From Mike Weiblen, updates to osgGL2 to support Uniform values
2003-10-05 11:30:54 +00:00
Robert Osfield
82143f7553
Added osgDB::Registry::s/getUseObjectCacheHint()
2003-10-02 13:26:01 +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
facbdcf43b
Added addEntryToObjectCache method to osgDB::Registry
2003-10-01 13:12:25 +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
da8ef894c1
Added equals operator to CUllingSet.
...
Update AUTHORS file.
Change tabs to 4 spaces in ive/TextureCubeMap.cpp
2003-09-28 10:15:10 +00:00
Robert Osfield
5027d831c0
Fixed nameing of getAllocationMode()
2003-09-28 09:23:45 +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
7fb9f6be4b
Added the beginnings of a new osgforest example.
...
Added support into osg::TriangleFunctor for specifying whether the vertices
being generates are temporary or not.
2003-09-25 21:54:33 +00:00
Robert Osfield
243b288d87
Made the calling of drawable update callbacks always happen when a geode
...
is traversed in the update traversal.
2003-09-24 18:53:47 +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
c342b29a04
Warning fixes for Win32.
2003-09-16 19:56:19 +00:00
Robert Osfield
cec0b35cd4
Fixes for .osg output of UByte4 values, and added missing template contructor
...
to DrawElementsUShort.
2003-09-16 19:54:57 +00:00
Robert Osfield
a2f9222753
Added support for handling of wordwrap in osgText::Text, so that whole words
...
are cut in two, but rather moved completely to the next line.
2003-09-15 21:43:54 +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
6c22afa51c
Fixes for osgFX.
2003-09-10 12:38:28 +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
584f805327
Updates to osgFX, from Marco Jez, to map Effect across to being derived
...
from osg::Group rather than from osg::Node.
2003-09-09 11:54:05 +00:00
Robert Osfield
33b03f7ac3
Updated docs for release.
...
Added OSG_USE_DOUBLE_MARTRICES define into include/osg/Matrix to make it more
convinient to switch between single and double matrices.
2003-09-09 08:56:51 +00:00
Robert Osfield
3f042d2f1b
Updated NEWS/AUTHORS + html docs for release.
2003-09-08 10:51:14 +00:00
Robert Osfield
507c9c4cf2
Fixes from Marco.
2003-09-06 11:07:05 +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
9a5ab0ac47
Fixes for IRIX build.
2003-09-03 08:14:00 +00:00
Robert Osfield
4761442005
Merged changed to osgParticle from Marco Jez, the changes are (quoted from
...
email from Marco)
"Most relevant news:
1) particle systems now have the "freezeOnCull" property set to false by
default. Since it is an optimization, and using it may cause some unwanted
behaviors if not handled properly, it makes more sense to turn it off by
default.
2) new "LINE" shape mode which uses GL_LINES to draw line segments that
point to the direction of motion.
3) particles can now have a rotation angle and angular velocity.
4) new AngularAccelOperator applies angular acceleration to particles.
5) particle processors such as emitters and programs can have a "start",
"end" and "reset" time coordinate. For example, an emitter may be instructed
to start emitting particles only after a certain time, stop after another
amount of time and then start again.
Update (2) is from Gideon May.
Updates (3) to (5) are from Douglas A. Pouk."
2003-09-02 20:39:41 +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
da6f7ebeef
Fixes for IRIX build + to_unix on txp plugin files.
2003-09-02 10:27:57 +00:00
Robert Osfield
7575f45800
Support for BumpMapping added by Marco Jez.
2003-09-01 21:53:53 +00:00
Robert Osfield
73094265c3
Fixes for Win32.
2003-09-01 15:46:10 +00:00
Robert Osfield
144ac14b07
From Neil Salter, added osgSim::SphereSegment and osgSim::ScalarBar, and
...
osgspheresegment and osgscalarbar, and osgsimulation examples.
2003-09-01 09:36:03 +00:00
Robert Osfield
5c3a2bc683
Added s/getCullVistorLeft/Right(), s/getRenderStageLeft/Right(),
...
s/getRenderGraphLeft/Right() methods.
2003-08-29 23:04:42 +00:00
Robert Osfield
77c862d305
From Marco Jez, tangent space generator.
2003-08-27 14:13:12 +00:00
Robert Osfield
2910ec140d
Added KeyboardMouseCallback::shutdown() support.
2003-08-27 10:22:12 +00:00
Robert Osfield
f7d7a746f3
Added missing osgFX files.
2003-08-26 22:09:15 +00:00
Robert Osfield
e07c1ea10d
Added set/getDatabasePager() method.
2003-08-26 08:02:43 +00:00
Robert Osfield
4924cd9ceb
Added osgProducer:: in front of KeyboardMouseCallback.
2003-08-25 14:03:49 +00:00
Robert Osfield
0ed56936ce
Removed suplerfluous inline from setInitialViewMatrix().
2003-08-25 13:31:31 +00:00
Robert Osfield
bd798a6c4e
Added getInitialInverseViewMatrix() to osg::State.
2003-08-25 13:06:15 +00:00
Robert Osfield
db9b6d10c6
Add osg_ref<Producer::KeyboardMouse> to osgProducer::Viewer to ensuer that
...
the keyboard mousr desctructor is being called correctly.
2003-08-23 20:48:36 +00:00
Robert Osfield
12133c6db5
Made getLibrary public.
2003-08-21 19:23:24 +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
e2a72f7e72
Fixed typo of getNumMatrixManipulators().
2003-08-19 14:05:53 +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
c334279935
Changed private to protected to allow Timer to be subclassed more easily.
2003-08-18 15:14:09 +00:00
Robert Osfield
ee0cce1679
Added getSecondsPerClick() method to Timer.
2003-08-18 15:12:04 +00:00
Robert Osfield
8c65920c1f
Fixes for Java build.
2003-08-18 09:24:17 +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
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
ca3f824410
Added convience constructor.
2003-08-08 00:19:06 +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
27c4dc0920
From Sean, fix for Sun windows extension checking.
2003-07-23 20:50:56 +00:00
Robert Osfield
e95768417c
From Gideon May, added support for osgSim into .osg file format.
2003-07-23 14:06:32 +00:00
Robert Osfield
2ce08d8088
Warning fixes from Gideon May.
2003-07-23 11:45:37 +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
2bce4dda75
Made BlinkSequence subclass from osg::Object.
2003-07-22 12:48:31 +00:00
Robert Osfield
31115ffd2d
Changed the Sector classes so they are derive from osg::Object to allow them
...
to be shared objects with the .osg support.
2003-07-22 10:33:56 +00:00
Robert Osfield
aa8b552ca6
From Marco, updates to osgDB and .osg plugin to better handle reading of
...
objects of specified types.
2003-07-21 18:36:47 +00:00
Robert Osfield
325dc0f6b7
Moved DatabasePager into from osgProducer into osgDB. This means that osgDB
...
is now dependant on OpenThreads.
2003-07-21 08:19:36 +00:00
Don BURNS
56a13abc05
Updated OSG to use OpenThreads. Moved any references to OpenThread to
...
OpenThreads and removed any dependency on Producer threads, Mutexes, etc.
2003-07-19 00:18:07 +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
2a142c096a
Added setProjectionMatrix*(), setViewMatrix*() and get*() methods to osgUtil::SceneView.
2003-07-16 22:15:28 +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
0fd11b4abd
Added extern + export's to global functions.
2003-07-15 18:52:40 +00:00
Robert Osfield
47965884e9
Moved PROGRAMOBJECT definition into StateAttribute.
2003-07-15 16:22:29 +00:00
Robert Osfield
1998bdef86
Moved osg::Statistics to osgUtil::Statistics and merged addition to it
...
fro Pavel Moloshtan.
2003-07-15 13:46:19 +00:00
Robert Osfield
deb26621c9
Changed the SceneView::setModelViewMatrix() methods across to being setViewMatrix().
...
The old RefMatrix methods for setModelViewMatrix() and setProjectMatrix() have
been removed to keep the API as minimal as possible.
2003-07-15 11:49:56 +00:00
Robert Osfield
77c0366cb2
From Mike Weiblen's osgGL2 node kit which support the latest OpenGL 2.0 extensions.
2003-07-15 10:45:46 +00:00
Robert Osfield
b2e5e09c28
From Bart Gallet, updates to VisualStudo .dsp's to keep things compiling under Windows.
2003-07-15 09:39:45 +00:00
Robert Osfield
953ac782ac
From Gideon May, added
...
typedef T element_type;
To ref_ptr<> to make it compatible with the boost ref_ptr<> implemenations.
2003-07-15 08:17:54 +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
Don BURNS
c60b5b6522
included <sys/types.h> for SGI compilation of Timer header file
2003-07-11 18:46:56 +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
5b75d7f525
From Michael Gronger, addition of ReaderWriter* Registry::getReaderWriterForExtension(const std::string& ext).
...
Also removed copy constructor and = operator from Ouput as it was produce
spurious warnings under gcc 3.3.
2003-07-10 13:35:19 +00:00
Robert Osfield
9c5f84e99e
From Eric Sokolosky, insertChild().
2003-07-10 13:11:25 +00:00
Robert Osfield
c5c7a1b2ba
Updates to the DatabasePager code to include support for compiling texture
...
objects and display lists before merging loaded subgraphs with the main
scene graph.
2003-07-10 11:10:39 +00:00
Robert Osfield
809168d5f8
Further updates to the DatabasePager.
2003-07-09 19:48:04 +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
b5442ac835
Added support for the ARB_vertex_buffer_object into osg::Geometry.
2003-06-29 21:41:57 +00:00
Robert Osfield
8d4ab4668e
From Tree, updates to osgText and freetype plugin to support are kerning paramter.
2003-06-26 16:21:49 +00:00
Robert Osfield
8839cfe8cd
Updated NEWS.
...
Added AttrData.h to flt.dsp
Removed redundent (and duplicate definition of RenderBinPrototypeList and its
associated static) from the RenderBin header.
2003-06-25 10:30:46 +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
9ab1c960b6
Moved the GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB into its own #ifndef block
...
to help with OSX support.
2003-05-26 09:29:59 +00:00
Robert Osfield
7b657aed3a
Adding support using istream and ostream with the reader writers.
2003-05-26 09:27:16 +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
4e9724245a
Added setProjectMatrix(const Matrix&) and setModelViewMatrix(const Matrix&) methods.
2003-05-20 11:01:16 +00:00
Robert Osfield
ab1b199da8
Removed the now redundent osg::Camera.
2003-05-20 08:09:36 +00:00
Robert Osfield
00e94b86d8
Removed all KeySwitchCameraManipulator class, replacing it
...
with the KeySwitchMatrixManipulator
2003-05-19 20:18:37 +00:00
Robert Osfield
940ce67133
Removed remaining dependancies on osg::Camera.
2003-05-19 15:15:17 +00:00
Robert Osfield
6b64cd88b8
Removed superfluous const
2003-05-17 08:36:25 +00:00
Robert Osfield
57af40ee95
Updates to the handling of vertex attributes.
2003-05-09 13:07:06 +00:00
Robert Osfield
173a09fb32
Added UserData to NodeVisitor.
2003-05-07 15:26:08 +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
ba8bf1e94c
From Eric Sokolowsky, support for mouse scroll wheel in osgGA/osgProducer.
2003-05-07 11:13:49 +00:00
Robert Osfield
fa0333b6fe
Aded extra constructors to BlendFunc and Depth to help set them up convieniently.
...
Added a background quad to osghud.
2003-05-06 18:04:27 +00:00
Robert Osfield
06054d9520
Added support for multibuffering of tex coordinates.
2003-05-06 13:13:31 +00:00
Robert Osfield
895a722842
Addd support for maximum screen text size into osgText when auto scale to
...
screen is active.
Added osgautotransform demo.
2003-05-01 21:06:18 +00:00
Robert Osfield
d2d9b97953
Added set/getNearFarRatio() to CullVisitor.
2003-05-01 19:56:02 +00:00
Robert Osfield
9468ab4979
Cleanup of the API.
2003-04-30 15:38:11 +00:00
Robert Osfield
0ab467483f
Added support for automatic scaling of text to screen coords. Optimized
...
the text implementation to provide better speed, especially by using the
alignement to screen option.
Deprecated the Text::setFontSize(,) method, which is now being replaced
by setFontResolution(,)
Fixed typos in Texture*.cpp.
Removed old deprecated methods from osg headers.
2003-04-30 11:40:17 +00:00
Robert Osfield
c1b1a091fa
From Tree, addition of ; after MACRO_'s to help with Java port.
...
From Tree + Robert, Addition of LEFT_BASE_LINE,RIGHT_BASE_LINE,CENTER_BASE_LINE
Alignment options in Text.
2003-04-27 10:58:39 +00:00
Robert Osfield
9329717aa0
Moved #include <osg/Timer> from Viewer to OsgCameraGroup.
2003-04-17 15:27:17 +00:00
Robert Osfield
fd262554ac
Moved the managing of frame stamp from osgProducer::Viewer into
...
osgProducer::OsgCamaraGroup.
Added setting of trackball in osgcameragroup so its starts in the
correct place for different models.
2003-04-17 11:14:25 +00:00
Robert Osfield
f759f7e69e
Added OSGUTIL_EXPORT to front of DelaunayTriangulator class.
2003-04-17 06:52:56 +00:00
Robert Osfield
0b0c6c4e60
Added support for set/getColor to ShapeDrawable.
2003-04-16 20:02:15 +00:00
Robert Osfield
cad160fbe6
From Marco Jez, added DelaunayTriangulator class.
2003-04-16 19:21:27 +00:00
Robert Osfield
2e659c9ebf
Renamed computeNearFar to computeNearFarPoints.
2003-04-16 14:22:36 +00:00
Robert Osfield
904aceec22
Added convinence methods to osgProducer::Viewer:
...
/** compute, from normalized mouse coords, for sepecified Camera, the pixel coords relative to that Camera's RenderSurface.*/
bool computePixelCoords(float x,float y,unsigned int cameraNum,float& pixel_x,float& pixel_y);
/** compute, from normalized mouse coords, for sepecified Camera, the near and far points in worlds coords.*/
bool computeNearFar(float x,float y,unsigned int cameraNum,osg::Vec3& near, osg::Vec3& far);
/** compute, from normalized mouse coords, for sepecified Camera, intersections with the scene.*/
bool computeIntersections(float x,float y,unsigned int cameraNum,osgUtil::IntersectVisitor::HitList& hits);
/** compute, from normalized mouse coords, for all Cameras, intersections with the scene.*/
bool computeIntersections(float x,float y,osgUtil::IntersectVisitor::HitList& hits);
2003-04-16 14:17:49 +00:00
Robert Osfield
f9eb43083a
Changed OsgSceneHandler so it re-uses osgUtil::SceneView project and modelview
...
matrices.
Changed the osgpick demo so that it uses the OsgSceneHandler's projection and
modelview matrices where possible.
2003-04-16 09:22:33 +00:00
Robert Osfield
fc4a2ab191
Added support for multiple cameras into osgpick.
2003-04-15 20:54:10 +00:00
Robert Osfield
63628ce099
From Romano, extra methods/variables for controlling tesselation.
2003-04-15 09:33:11 +00:00
Robert Osfield
5df7118d6d
Updates to the osgpick code.
...
Updates to osgGA::CameraManipulors.
2003-04-14 15:44:30 +00:00
Robert Osfield
f543d69881
Improved the handling of Producer's no dimensional mouse coords.
2003-04-14 13:23:12 +00:00
Robert Osfield
3df0401007
Addd new computeLocalToWorld(NodePath) etc methods.
2003-04-14 13:22:21 +00:00
Robert Osfield
026dc2cbb7
Added Geoff Michel's osgpick and osgUtil::PickVisitor code.
2003-04-13 13:26:41 +00:00
Robert Osfield
5ecc25540c
From Michael Gronager, changed apply(Sequence) to cast to an Group rather than
...
a Switch which was a bug.
2003-04-13 12:02:29 +00:00
Robert Osfield
50d1fcfea2
From Romano, added support in osg::VertexProgram for deleting the flushed
...
vertex programs.
2003-04-11 09:54:27 +00:00
Robert Osfield
aaa761e333
Added tests for presense of extensions to osgcubemap, osgvertexproram and
...
osgmultitexture examples.
Added osg::VertexProgram::Extensions class to better handle multiple graphics
context vertex program extensions.
2003-04-10 19:32:32 +00:00
Robert Osfield
52d2d8eaff
Moved the osgcameragroup example across to being just based on
...
osgProducer::OsgCameraGroup with no usage of osgGA manipulators.
Removed redundent files from osgProducer.
2003-04-10 15:23:49 +00:00
Robert Osfield
8b03d59be3
Added support for modifying the osg::Texture*:Extensions stuctures.
...
Added an example modifying osg::Texture::Extensions to osgtext. Optionally
compiled out by default.
2003-04-10 13:41:45 +00:00
Robert Osfield
bc4fd5b051
Added usage of Producer::CameraGroup::isValidForRendering() to the Viewer::done()
...
implemention so apps automatically close if one of the windows is killed.
2003-04-10 12:55:48 +00:00
Robert Osfield
22546b8085
Added support for multiple graphics context to osg::VertexProgram and osg::Impostor
2003-04-10 12:11:40 +00:00
Robert Osfield
e1e54570cb
Fixed Viewer and OsgCameraGroup classes so that work properly with the
...
Prodicer::setViewByMatrix calls.
2003-04-10 10:02:24 +00:00
Robert Osfield
2166f9b701
Fixes to the Impostor implementation.
2003-04-09 21:53:09 +00:00
Robert Osfield
b02917e7a2
Fixed type of osg::ApplicationUsage::set/getApplictionName(), updated
...
demos accordingly.
Made OsgCameraGroup set the _applicationUsage to the
osg::ApplicationUsage::instance() when no ArgumentParser is supplied.
Added export to osgProducer::ViewerEventAdapter.
2003-04-09 08:20:08 +00:00
Robert Osfield
c3fd384eb1
From Romano José Magacho da Silva, added 'p' toggle to animation path
...
manipulator to allow animations to be paused and resumed.
Added frame rate stats which are output on each repetition of the path.
2003-04-08 20:06:37 +00:00
Robert Osfield
8a3d731739
Added support for Viewer::setViewer::setView so that the internal old
...
style osg::Camera and camera manipulators are updated correctly.
2003-04-08 15:47:45 +00:00
Robert Osfield
e928bca4c9
Changed the Viewer::realize() calls across to not using the threading paramter
...
leaving it up to the Viewer to specify the mode (which by default is MultiThreaded).
Added a check for the presence of osgParticle systems so that threading is
disabled in this case.
2003-04-08 15:18:45 +00:00
Robert Osfield
5f8411ac5c
Changed the KeySwichCameraManipulator::setNode() so it set all camera's
...
attached to it.
2003-04-08 13:10:47 +00:00
Robert Osfield
559f5f93e5
Added an osg::absolute template function into osg/Math.
2003-04-08 09:42:03 +00:00
Robert Osfield
18ab95a294
Added support for snaping screen images from osgProducer::Viewer apps.
2003-04-07 19:19:01 +00:00
Robert Osfield
7af174fadb
From Ulrich Hertlien, new osg::TextureRectangle class.
2003-04-07 13:20:53 +00:00
Robert Osfield
9f0fa75484
Added support for unref image data after apply in the osg::Texture*
...
classes. Only unref's after all graphics context have been applied.
2003-04-07 12:51:00 +00:00
Robert Osfield
7e58786b11
Moved the modified tag's from osg::Texture into the osg::Texture1D,2D,3D and
...
CubeMap classes.
2003-04-07 09:46:06 +00:00
Robert Osfield
49a28660dc
Added the usage report to the examples for when no arguments are passed
...
to the examples.
2003-04-06 21:32:44 +00:00
Robert Osfield
c7a7bd03cb
Added support for recording animation paths in the osgProducer::Viewer.
2003-04-05 22:24:48 +00:00
Robert Osfield
cac6642de5
Improvements to the handling of warp pointer call on start up.
2003-04-05 07:19:40 +00:00
Robert Osfield
169bf25f77
Implemented support for float x and y mouse positions, and normalization of
...
mouse coords in osgGA::GUIEventAdapter, and ported osgGA camera manaipulators
to use the new normalized values.
Moved osgProducer across to tracking the window dimensions and ensure that the
internals values in osgProducer::EventAdapter are kept consistent. Moved
the warp pointer in Viewer across to using KeyboardMouse::positionPointer().
2003-04-04 19:10:37 +00:00
Robert Osfield
e9e0b4304d
Improved support for toggle between full screen and non fullscreen in
...
the osgProducer::Viewer.
2003-04-04 11:06:09 +00:00
Robert Osfield
e1e22ab430
Added GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB etc to the Texture header to
...
allow compilation across platforms.
2003-04-02 20:43:19 +00:00
Robert Osfield
0f3eaeba46
From Rune Schmidt Jensen - new dds loader.
2003-04-02 18:26:34 +00:00
Robert Osfield
7aab621405
Added support for min pixel size, max pixel size and max visable distance to
...
osgSim::LightPointNode, the max pixel size from was originally in osg::LightPoint.
Added additional get/set methods to osg::LightPointNode.
Increased the compute pixel size by a ratio 1.41 (sqrtf(2)) to correlate the
computed size with the actual size seen on screen.
2003-04-02 10:50:15 +00:00
Robert Osfield
5b36049f33
Added convinience constructor.
2003-04-01 18:42:38 +00:00
Robert Osfield
3975fc9b01
Improved handling of subloading.
...
Removed the rescalling of images in osg::Image during texture apply, moving
the rescale so it is locally calculated. This solves an outstanding threading
problem which occured by multiple draw threads all tried to rescale the same
image at one time.
Made osg::Image ptr in osg::Texture2D non mutable as it is no longer modified
during apply.
2003-04-01 11:49:09 +00:00
Robert Osfield
b728b1dd99
Implemented load and subload methods in osg::Texture/Texture2D.
2003-03-31 21:41:17 +00:00
Robert Osfield
3fe1313ad9
Adding reseting of the array pointers to the dirty methods.
2003-03-31 11:25:04 +00:00
Robert Osfield
11053aaa5c
Change the className() functions from non const to const to be consistent with the
...
osg::Object definition.
2003-03-29 22:07:03 +00:00
Robert Osfield
60e16ea044
Added Escape to the help list.
...
Changed the help key from '?' to 'h'
2003-03-28 10:04:58 +00:00
Robert Osfield
d8c82e17af
Changed private to protected.
2003-03-27 17:20:21 +00:00
Robert Osfield
82139fae78
Fixed typo.
2003-03-27 17:18:59 +00:00
Robert Osfield
fc4fe9c625
Updates to utilise the new Producer keyboard bindings.
2003-03-27 10:54:01 +00:00
Robert Osfield
e93c812021
Improved the stats reporting.
2003-03-26 16:48:29 +00:00
Robert Osfield
8779fe20a7
Added help support for display help on screen to osgProducer::Viewer.
2003-03-26 12:50:30 +00:00
Robert Osfield
0c60d14c00
Added a ViewerEventHandler which manages full screen, file write, and help
...
output to osgProducer. Removed FullSreenEventHandler as it is now superseeded
by ViewerEventHandler.
2003-03-25 15:13:20 +00:00
Robert Osfield
5e56e0eba8
Added osgkeyboard to the ./runexamples.bat.
...
Made osgstereoimage exit when non files have been loaded.
Added non const getText() method.
2003-03-25 13:57:16 +00:00
Robert Osfield
a03675495a
Added new osgkeyboad example.
2003-03-24 21:17:51 +00:00
Robert Osfield
c2167be67b
Fixed typo.
2003-03-24 15:21:52 +00:00
Robert Osfield
09acadb560
Added support for remapping of Win32 key symbols to
...
osgGA::GUIEventAdpater::KeySymbols.
2003-03-24 15:13:00 +00:00
Robert Osfield
19e2368991
Added osgGA::GUIEventAdapter::KeySymbol enumate list, which is a remapping
...
of the X settings.
Added a pass through of X11 sybmbols from Producer to osgGA::GUIEventAdapter::KeySymbol
in the osgProducer::EventAdapter.
2003-03-24 13:43:22 +00:00
Robert Osfield
6dbc770347
Made the osgGA::GUIEventHandler sublassed from osg::Object as a virtual
...
inheritence to allow handler to also be used as node callbacks.
Fix to UpdateVisitor to make the visitation of Drawable more consistent
with the way that nodes are traversed.
2003-03-24 08:42:35 +00:00
Robert Osfield
48868982f1
Added a traverseGeode method to the UpdateVisitor which contains the
...
traversal code for both the nodes traversal and the drawables the geode
contains.
2003-03-22 09:48:43 +00:00
Robert Osfield
f0eae16828
Added overide of the SceneHandler::clear() making it a no-op. Will revisit
...
this implemention later.
2003-03-20 17:24:25 +00:00
Robert Osfield
a3bb1da618
Added Endian test header to the core osg, and add use of the new
...
getCpuByteOrder test in LightPointDrawable.
2003-03-19 21:46:44 +00:00
Robert Osfield
21a74223e6
Added getCameraManipulator(unsigned int) method.
2003-03-19 21:14:50 +00:00
Robert Osfield
ca0ff266e2
First pass fix at implementing requestWarpPointer.
2003-03-19 15:49:21 +00:00
Robert Osfield
426e301c48
Addd a full screen toggle event handler to osgProducer & its viewer base
...
class.
2003-03-19 14:27:05 +00:00
Robert Osfield
74f8f18ad6
Added a realize callback to the OsgCameraGroup.
...
Move osgtexture3D across to using the new realize callback for creating its textures.
2003-03-19 12:06:29 +00:00
Robert Osfield
8ed643ca24
Chaned the OsgCameraGroup so that its scene handler list used ref_ptr<> for
...
robustly managing memory.
2003-03-18 20:27:09 +00:00
Don BURNS
e978c405e1
Set VERSION_RELEASE back to 3, replaced guards in include/osg/Verson to
...
OSG_VERSION_ with trailing underscore
2003-03-18 20:02:02 +00:00
Robert Osfield
bf184ef7a3
From Tree, added SG_EXPORT to the inner classes for Java binding work.
2003-03-18 19:42:34 +00:00
Robert Osfield
33ad8d8cb0
From Tree, ushort renamed GLushort
2003-03-18 09:29:06 +00:00
Robert Osfield
96b72af169
Implemented a object cache in osgDB::Registry.
2003-03-17 22:53:46 +00:00
Robert Osfield
e87a08f1c3
Fixes to osgcluster demo as new Producer based example.
...
Added extra pragrma remove a warning about float to int cast under VS.NET.
2003-03-16 21:58:27 +00:00
Robert Osfield
f811b2580e
Removed osgGLUT and Demos/*.
...
Integrated Marco's updated examples/*/*.dsp's.
2003-03-15 20:20:46 +00:00
Robert Osfield
2ca505b3d8
Ported all glut based demos across to using the new osg::ArgumentParser.
2003-03-14 10:49:06 +00:00
Robert Osfield
2915550887
Reverted Don's changed of sqrtf to sqrt. Don't understand why the change was
...
required, suggest a problem elsewhere which should be fixed, *not* by modification
of Vec2.
2003-03-13 14:29:16 +00:00
Don BURNS
ec3e1dc611
Fixes for Mac OS X
2003-03-13 06:22:31 +00:00
Robert Osfield
b0dce04063
Added setBound() method to Drawable.
2003-03-11 21:53:28 +00:00
Robert Osfield
5ae998dbc2
Added missing osg:: to StateAttribute.
2003-03-11 21:42:55 +00:00
Robert Osfield
e51c7f1587
Added support for AbortRendering flag pointer in osg::State which is used
...
by osgUtil::RenderLeaf to test if any abort state has been set, if so it
doesn't do any further drawing.
The osgProducer::Viewer has been set up to set the osg::State's it manages
with their AbortRendering flag pointers set to the osgProducer::Viewer::_done
memeber varaible. Now when escape is pressed the rendering is aborted early.
2003-03-11 15:25:49 +00:00
Robert Osfield
78de76f17f
Bug fixes to osgText to handle the osgUtil::Optimizer being used on a scene
...
graph containing text.
Fixed warning in MD2 plugin.
2003-03-11 13:30:03 +00:00
Robert Osfield
06fb808ad3
Improvements to the Text .osg support.
2003-03-10 16:40:26 +00:00
Robert Osfield
ebbd03c114
Marged new getLibaryMethod added by Daniel.
2003-03-10 11:57:17 +00:00
Robert Osfield
efea365412
Moved the remain inline osg::Font methods into Font.cpp to avoid problems with the
...
impossibly stupid visual studio compilers.
2003-03-10 09:15:59 +00:00
Robert Osfield
a78600af67
Removed the OSGTEXT_EXPORT symbol from FontImplementation to avoid problems under
...
VisualStudio.
2003-03-08 09:51:41 +00:00
Robert Osfield
47087585c0
Added maximum width and maximum height limits to the osgText::Text which
...
automatically wraps text which goes beyond these limits.
2003-03-06 21:35:33 +00:00
Robert Osfield
152e60c61b
Reverted the changes to ref_ptr<> for implicit cast to pointer.
2003-03-06 19:41:59 +00:00
Robert Osfield
fab6f24f4e
Changed the osgText::Font implementation so it used a facade us abstract away
...
the actual implemention. This has been done so that when a freetype font is
created the implementation can unloaded when the freetype plugin is unloaded
without breaking the main font.
Also add image margin around founds to prevent any image boundaries appearing.
2003-03-06 17:11:24 +00:00
Robert Osfield
0d9aaa5ca6
Reverted the ref_ptr<> implementation to prior implicit cast operator via
...
commenting out// #define AUTOMATIC_CAST_TO_POINTER.
2003-03-06 13:45:20 +00:00
Robert Osfield
b70c80ba39
Add #ifndef's around the comparison operator's against const T* now that the
...
implicit cast operator has been added.
2003-03-06 10:38:31 +00:00
Robert Osfield
63df52d408
Added osgText::String implementation to better handle decoding of encoded text.
2003-03-05 21:05:37 +00:00
Robert Osfield
f9d8f3fa9d
Added implicit cast to T* to ref_ptr<>.
2003-03-05 21:04:11 +00:00
Robert Osfield
5e396d40e1
Made the State::setInterleavedArrays method use a const GLvoid*.
2003-03-05 21:02:37 +00:00
Robert Osfield
7b6eaa72f2
Updates to Text for Sun Forte compilers.
2003-03-05 09:08:11 +00:00
Robert Osfield
ba9fbd371f
Updates to the new osgtext example and fix to the friend usage.
2003-03-04 17:14:42 +00:00
Robert Osfield
55c25a551b
Added support for using the generate mip map extension within osgText.
2003-03-04 15:47:28 +00:00
Robert Osfield
1c34c0981e
Further improvements to osgText and the freetype plugin, handling different
...
font sizes better and plugin removal safely.
2003-03-04 12:34:42 +00:00
Robert Osfield
e433b42bc0
Updates osghud demo.
...
Compile fixes for VisualStudio6.0 because its a hideous pile of junk and can't
compile its way out of a paper bag.
2003-03-03 22:18:33 +00:00
Robert Osfield
99e7c50d7a
Typo fix.
2003-03-03 20:24:49 +00:00
Robert Osfield
5d84c10c8f
Changed the ownership of Glyph's so that GlyphTexture's own a reference to
...
Glyph's as well as Font's so keeping the Font valid even after the Font
itself has been desctructed.
2003-03-03 16:12:00 +00:00
Robert Osfield
371d84683f
Fixes to osgText for default parameter.
2003-03-03 15:36:52 +00:00
Robert Osfield
e2b95c50a4
Added support for computing bounds of text.
2003-03-03 09:37:02 +00:00
Robert Osfield
fbe674b321
First cut of new osgText implementation.
2003-03-02 21:05:05 +00:00
Robert Osfield
2f74b2cf7c
Renamed osgProducer::CameraGroup and SceneHandler to OsgCameraGroup and
...
OsgSceneHandler to avoid the namespace bug under VS6.
Removed the osgproducer demo (its now been replaced by examples/osgviewer.)
2003-02-25 12:28:16 +00:00
Robert Osfield
b32c8c65f3
Added osg::Image::AllocationMode enum and associated set/get methods.
...
osg::Image::setImage has also been modified to require the AllocationMode
mode to be passed to it so that it knows how to delete the data once the
image goes out of scope.
Port the image plugins across to specify the new AllocationMode, and converted
them across to using new/delete in place of malloc/free.
2003-02-25 11:56:18 +00:00
Robert Osfield
7877c55770
Implemented an osg::minimum and osg::maximum template functions to replace
...
the std::min/max functions previously used in parts of the osg, since the
std::min/max methods do not seem implemented under IRIX.
2003-02-24 12:02:00 +00:00
Robert Osfield
372ca1d227
Ported osgstereoimage to use osgProducer, added it to the examples directory.
...
Added a osgProducer::CameraGroup::getSceneHanderList() methods.
2003-02-23 17:01:05 +00:00
Robert Osfield
5471ada6da
Fixes to try and keep OSX and Win32 compiling with the new usage of std::max.
2003-02-23 15:50:57 +00:00
Robert Osfield
3b429134cb
Added examples directory, a place for all new OSG demo code.
...
Added osgcameragroup, osgviewer, osgtext, osgconv to the new examples directory.
2003-02-21 14:05:39 +00:00
Robert Osfield
0d3f78350a
Added keyboard mouse binding usage to the osg::ApplicationUsage and
...
osgGA::GUIEventHandler and its subclasses.
2003-02-19 10:43:02 +00:00
Robert Osfield
73f741d16f
Completed first pass at providing commandline option usage via the new
...
osg::ArgumentPareser and osg::ApplicationUsage classes. The osgproducer
demo has been implemented using these new mechansims.
2003-02-18 21:58:40 +00:00
Robert Osfield
c10d5f2d6f
Added new osg::ApplicationUsage and osg::ArgumentParser to help streamline
...
application/example developement.
2003-02-18 16:36:42 +00:00
Robert Osfield
6184ecba3f
Removed non implemented method convertWideString(const char* text) from header
2003-02-18 14:00:31 +00:00
Robert Osfield
44f88715ae
MOre work on uint -> unsigned int.
2003-02-14 19:47:59 +00:00
Robert Osfield
77fee92d71
Renamed futher uint/ushort instances.
2003-02-14 16:52:47 +00:00
Robert Osfield
bd506b53da
Removed last of the uint references.
2003-02-14 11:41:52 +00:00
Robert Osfield
8f1ba9d21b
Removed include/osg/Types header defining osg::ubyte, osg::ushort etc. Changed
...
any reference to these in the distribution across to using unsigned char,
unsigned short etc. This has been done to keep the OSG code more opaque
to what types are.
2003-02-12 19:20:47 +00:00
Robert Osfield
1b08b02df2
From Tree, added support for using wchar_t strings with osg::Text/EncodedText.
2003-02-10 15:01:27 +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
4c4735a586
Added FrameStats support into osgProducer lib, and removed them from the
...
osgproducer demo.
Removed the producer config files osgproducer demo.
Added a search the osgDB::DataFilePath for the producer config file.
2003-01-30 23:02:32 +00:00
Robert Osfield
03eee3b700
Fixed warning in osgText
...
Added getBound() to begining of osgProducer::CameraGroup::frame() to ensure
that the parallel cull traversals don't all do a getBound().
Added osgProducer::CameraGroup::getTopMostSceneData() convinience method.
2003-01-30 16:11:39 +00:00
Robert Osfield
6c4f2f5207
Fixes for multipipe support.
...
Addition of FrameStatsHandler to osgproducer demo to add frame stats.
2003-01-29 17:16:26 +00:00
Robert Osfield
0d4e969746
Added support for osg::Transform::asMatrixTransform, asPositionAttitudeTransform
...
and as DOFTransform.
2003-01-24 09:37:56 +00:00
Robert Osfield
1ce53fcfba
Changed the setUpViewer so it takes unisigned int to make it easier to
...
do OR'ing of the various enumerates when passing in paramters (avoids a
warning).
2003-01-24 09:37:11 +00:00
Robert Osfield
20ba1a4033
Fix for impostors bug where image insert were visible, this was down to a double
...
call to RenderStage::drawPreRenderStage(). The call to it in RenderStage inside
the draw() method has been removed, leaving on the call in SceneView.
2003-01-24 09:11:05 +00:00
Robert Osfield
ea35796526
From Daniel Sjölie, support for controlling which viewports are focusable i.e.
...
recive mouse/keyboard events.
2003-01-22 15:44:22 +00:00
Robert Osfield
6fd27a4b59
Clean up to the osgProducer lib and demo.
2003-01-22 15:30:17 +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
128be070ba
Added new osgProducer::Viewer class for putting together simple producer
...
based viewers very quickly.
2003-01-21 13:14:29 +00:00
Robert Osfield
0f69a4c3ae
Made the drawable::compile(State&) method const and the DisplayListVisitor to
...
compile even when dislay list is off. This has been done to allow subclasses
of Drawable handle their own compile implementation, such as used by text.
2003-01-20 20:40:06 +00:00
Robert Osfield
dc83e399a9
Improvements to osgProducer lib, in particular adding a mutex lock to the init() call in
...
SceneView to prevent init running multi-threaded.
2003-01-20 20:33:50 +00:00
Robert Osfield
4de63e72c6
Improvements to the handling of multiple graphics contexts. Still needs alot
...
of work, but at least it isn't crashes in trivial cases right now.
2003-01-20 20:28:28 +00:00
Robert Osfield
e56872aa1f
Added the new standard copyright notice.
2003-01-20 12:41:15 +00:00
Robert Osfield
08456ecf70
Added osg::State::dirtyAllModes() and dirtyAllAttributes() methods.
2003-01-19 15:28:08 +00:00
Robert Osfield
762db56a40
Improvements to the osgProducer lib to better handle Producer's normalized
...
coord system.
Addition of ReadCameraConfigFile and WriteCameraConfigFile as a tempory
measure for implementing local a C++ read/write of the Producer::CameraConfig, this
will be removed once these implementations or similar have been moved to Producer.
2003-01-18 22:07:59 +00:00
Robert Osfield
13aa469628
Updated the KeyboardMouseCallback so this it takes into account the the new
...
passiveMouseMotion support in Producer.
2003-01-18 10:17:28 +00:00
Robert Osfield
619862f8d6
Added osgProducer library to the distribution.
...
Cleaned up the osgproducer demo, and made it work with the new osgProducer lib.
2003-01-17 18:34:35 +00:00
Robert Osfield
a86d519a89
Fixed a bug on the handling of empty EncodedText.
2003-01-17 15:01:27 +00:00
Robert Osfield
c2c38955c6
Added new getCurrentCamaeraManipulator(), and removed and debugging message.
2003-01-17 14:12:25 +00:00
Robert Osfield
c406d2476f
Removed the osg::Referenced::createCount() and deleteCount() methods and
...
associated variables which were only compiled in on debug build. These optional
methods/static vars were causingproblems when mixing debug and release builds.
2003-01-17 14:11:34 +00:00
Robert Osfield
1c602035ef
Added DOUBLECLICK EventType to GUIEventAdapter.
2003-01-16 19:27:30 +00:00
Robert Osfield
4dd273de70
Added support for ReferenceFrame into osg::LightSource, modified the .osg
...
plugin and cull visitor to account for this change.
2003-01-16 16:37:24 +00:00
Robert Osfield
e0074d7c44
Made the osgDB::ParamterOutput class so that it is purely defined in terms
...
of the header, and therefore not requiring to be exported.
Updated the MUSE_READ_ME.txt to include mention of syntax highlighting.
2003-01-15 20:50:12 +00:00
Robert Osfield
d542a2165d
Removed the template versions of the PrimitiveSet constructors as this was
...
causing problem under VisualStudio6.0.
2003-01-15 11:29:30 +00:00
Robert Osfield
af6a6ff9f0
Fixes for Win32 build.
2003-01-14 16:39:41 +00:00
Robert Osfield
59969be08d
From Daniel Sjölie, updates to the GUIEventAdapter and GLUTEventAdapter to handle
...
key and key down, modifiers and funcion keys.
2003-01-14 14:25:56 +00:00
Robert Osfield
c882283b5d
Typo fix if USE_HOME_POSITION.
2003-01-13 20:14:23 +00:00
Robert Osfield
c3a7ce7352
Fixes to osgText to handle std::string correctly.
2003-01-13 14:05:08 +00:00
Robert Osfield
ef7d7fce2e
Moved some in inline methods in ParamterOutput into the new ParamterOutput.cpp
...
file to clean up the interface.
2003-01-11 12:50:39 +00:00
Robert Osfield
f36bc69c58
Made the more of the OSG's referenced object desctructors protected to ensure
...
that they arn't created on the stack inappropriately.
Split the implemention of Matrix up so that it is a simple no referenced counted
class and can be safefly created on the stack. To support referenced counting a
seperate subclass now exists, this is RefMatrix which inherits from both Matrix and
Object.
2003-01-10 09:25:42 +00:00
Robert Osfield
c5d3c860d8
From Tree, support for encoded text added into osgText.
2003-01-08 15:22:17 +00:00
Robert Osfield
ba34880464
Added support for reading and writing Sphere, Box, Cone, Cylinder and Grid shapes.
2003-01-08 14:32:13 +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
0161dacc15
Removed the osg::LightPoint::OPAQUE option, and implemented the ADDTIVE blending option.
2003-01-06 16:42:02 +00:00
Robert Osfield
5c37fd7fb4
Fixed headers guard typo in LightPoint.
...
Updated the NEW files.
2003-01-06 13:45:55 +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
141f065b17
Removed the dual inheritance from the AnimationPathCallback, moving the
...
NodeVisitor implemention into the .cpp.
Small tweak to the lighpoint drawable implmenentation to improve the additive
blending and state resotoration.
2003-01-03 21:42:02 +00:00
Robert Osfield
fe64942c54
Added a AnimationPathCallback which can update both a MatrixTransform and a
...
PositionAttitudeTransform, removed the equivialnt callbacks once found in these
transform classes.
Changed the NodeCallback class so its derived from osg::Object instead of
osg::Referenced to allow it to be saved out in the .osg format.
Added support for Update and Cull callbacks into the .osg file format.
Added support for AnimationPathCallback into the .osg file format.
2003-01-02 20:10:04 +00:00
Don BURNS
f501aa913b
Update for ia64
2002-12-19 19:50:45 +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
c82927293e
Moved the include/osgTXP back into src/osgPlugins/txp as a seperate include directory is no longer required.
...
Removed the osgtxp demo as it is no longer required.
2002-12-17 16:07:59 +00:00
Robert Osfield
ee3348afc9
Added txp::TerrapageNode to the txp plugin, and implemented the node so that it
...
automatically assign handles the updates of eye points and database merges.
2002-12-17 15:41:05 +00:00
Robert Osfield
64341828b8
Added a few more comments on the DeleteHandler.
...
Changed the friend struct DeleteHandler to friend class DeleteHandler.
2002-12-16 21:39:26 +00:00
Don BURNS
bbab5af6eb
Fixed a scope issue for 3.2 compiler for friend declarattion, l ine 39 in
...
include/osg/Referenced
2002-12-16 19:39:08 +00:00
Robert Osfield
8f81cf2ac6
Moved TriangleFunctor from Drawable into its own header file.
2002-12-16 17:00:05 +00:00
Robert Osfield
7bcef50e3b
Removed reference to osg/MemoryManager.
2002-12-16 14:12:48 +00:00
Robert Osfield
89269463ef
Removed the memory manager.
2002-12-16 13:44:35 +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
Robert Osfield
884b2730e8
Added a DeleteHandler into osg::Referenced so that it can delete objects
...
via a seperate delete handler. Useful for making unref()/ref() thread safe if
the users needs to address this issue.
2002-12-16 10:25:31 +00:00
Robert Osfield
c6b6e200a4
Added supported for setting animation path on MatrixTransform's.
2002-12-16 09:55:30 +00:00
Robert Osfield
db7cc1c559
Disabled the MemoryManager in all builds since it isn't yet thread safe.
2002-12-14 07:55:29 +00:00
Don BURNS
63c0a33926
Moved TrpageViewer.h to Demos/src/osgtxp
2002-12-13 20:29:26 +00:00
Robert Osfield
97a4775b7e
Updates to the light points support to improve the control of the blending of
...
light points with their background.
2002-12-10 19:56:14 +00:00
Robert Osfield
8d0718e8da
Added setting of the current texture unit into the applyTextureAttribute() method.
2002-12-09 21:03:02 +00:00
Robert Osfield
109f6f22fe
Updated the Switch, Sequence and Group classes so that they all used a
...
similar style removeChild() mechansim.
Made the old style osg::Switch::setValue() method deprecated.
2002-12-07 21:18:12 +00:00
Don BURNS
b63827c5d9
Cleanin' up after Robert's spelling ...er ... challenges.
2002-12-07 06:59:08 +00:00
Robert Osfield
baa7c11eb9
From Tree, added support for accept(PrimitiveFunctor) into osg::Text. Currently
...
implemention is overly simple, but will do until rewrite.
2002-12-06 19:03:34 +00:00
Robert Osfield
1be82ec697
From Tree, mods to help support the creation of Java bindings.
2002-12-06 09:44:11 +00:00
Robert Osfield
b0c4256e90
Norman Vine's changes for gcc 3.2 under Cygwin, moving of SG_EXPORT to after
...
the extern declaration.
2002-12-05 12:43:08 +00:00
Robert Osfield
d7692f83d7
Added support for setting the axis which the text should be aligned along.
2002-12-05 12:01:38 +00:00
Robert Osfield
a4404a388d
Fixes for Cywin gcc3.x build in GL and Math headers.
...
Fix for VS build in osgshadowtexture.
2002-12-04 17:34:52 +00:00
Robert Osfield
f6934e25ab
Made the callback class uses virtual inheritance of osg::Referenced to ensure
...
that a single class can be used for two different types of callbacks whithout
incurring issues of multiple ref counts and ref()/unref() methods existing.
2002-12-03 17:20:31 +00:00
Don BURNS
bf0cbf6b10
Modified Files:
...
include/osgTXP/trPagePageManager.h src/Demos/osgtxp/osgtxp.cpp
Added Files:
VisualStudio/Demos/osgtxp/osgtxp.dsp
2002-11-29 22:10:12 +00:00
Robert Osfield
26ba223880
Added isImageTransulacent() method.
2002-11-25 16:38:33 +00:00
Don BURNS
12e922bc3c
Added Paging TerraPage loader and osgTXP library.
2002-11-24 21:36:05 +00:00
Robert Osfield
bcf9d08c2b
Adjusted tabbing.
2002-11-22 08:23:54 +00:00
Robert Osfield
a545f3b48c
Moved the shadow creation code into a seperate CreateShadowedScene header and source,
...
and exposed just the basic createShadowedScene function in the header.
2002-11-21 15:35:51 +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
2b957675d5
Added visual workspace files for osgSim nodekit and osglightpoint demo.
2002-11-19 12:23:45 +00:00
Robert Osfield
e02ae73edc
Added osgSim library which encapulsulates light points.
...
Added osglightpoint demo.
2002-11-19 10:57:40 +00:00
Robert Osfield
5fca8ea229
Moved Drawable across to using osg::buffered_value.
...
Added new osg::State::setInterleavedArray() method.
Added new osg::Group::setNode(uint,Node*) method.
Cleaned up and fixed the osg::Texture's handling of dirtyTextureParamters().
2002-11-19 10:56:59 +00:00
Robert Osfield
42fb3c5987
Added setDrawable(uint,Drawable*) method.
2002-11-18 16:14:00 +00:00
Robert Osfield
bd7762a73e
Added State::computeSecondaryColorSupported() & computeFogCoordSupported().
...
Updated NEWS.
2002-11-13 11:09:55 +00:00
Robert Osfield
8e84722f90
Added LEFT_EYE and RIGHT_EYE stereo to osg::DisplaySettings/osgUtil::SceneView
...
Renamed LODBias to LODScale.
2002-11-12 10:22:38 +00:00
Robert Osfield
35b9317baf
Fixes to typo of *Dirty()
2002-11-11 16:11:48 +00:00
Robert Osfield
6f3e2b681c
Fixed bug in osg::Node::isCullingActive().
...
Rnabled the automatic selection of the animation path if one is specified
on the commandline in sgv.
2002-11-11 08:52:24 +00:00
Robert Osfield
661240d1ca
Fixes to const paramter types.
2002-11-11 08:04:40 +00:00
Robert Osfield
feeadcdec0
Removed deprecated API
2002-11-08 14:03:44 +00:00
Robert Osfield
aca6c3c4f9
Added #define DARWIN_OSX_PRE_10_2 and related #ifdef checks to cope with backwards compatiblity
...
with versions of OSX before 10.2.
2002-11-08 12:26:41 +00:00
Robert Osfield
9816a51bc7
Added GL_LIBS to the osgText/Makefile for OSX build.
...
Fixed typo in IntersectVisitor.
Fixed warnings in osgimpsotor demo.
2002-11-08 11:00:16 +00:00
Robert Osfield
5db3229b5f
Updates to Math for OSX build.
...
Added 3dmodelworld.com to the data source directory.
Fixed compile problem under VC6.0 in osgimpostor.
2002-11-08 10:25:08 +00:00
Robert Osfield
b6988affe6
Commented out the USE_DEPRECATED_API define.
2002-11-07 14:29:33 +00:00
Robert Osfield
6d09a50c6d
Added shape drawable into dot osg plugin.
2002-11-07 08:49:12 +00:00
Don BURNS
7669b96c28
Changed a couple of const/non-const discrpancies between header and source
...
for TexGen. Removed external library dependencies in plugin makefiles
2002-11-06 18:39:32 +00:00
Robert Osfield
f6cbfc20bd
Fix for backwards compatibility.
2002-11-06 16:04:51 +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
26875c965d
Renamed ProceduralGeometry to ShapeDrawable to better reflect its current
...
purpose.
2002-11-06 10:46:34 +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
a6eafa79e2
From Ulrich Hertlien, added ReaderWriter::Options to the osgconv and pfb plugin
...
so that all the pfi files can be converted to rgb be the plugin.
2002-11-04 09:08:50 +00:00
Robert Osfield
bba03297a7
Added support for primitive functor into the new osg::ProceduralGeometry class
2002-11-01 15:12:51 +00:00
Robert Osfield
d9af228892
Added export to the height field class.
2002-11-01 10:39:35 +00:00
Robert Osfield
94105025a0
Updates to Shape support.
2002-11-01 10:25:27 +00:00
Robert Osfield
21ee9e4cb7
Added osg::Grid shape class, and added an example of its use into the
...
hang glide demo.
2002-10-31 10:36:11 +00:00
Robert Osfield
da84f9b4aa
Added first cut of new primtive shapes support.
2002-10-30 13:27:15 +00:00
Robert Osfield
2e99fdacfc
Removal of more redundent const base types.
2002-10-30 12:58:26 +00:00
Robert Osfield
32c6a7809a
Updated the handling of string in the .osg reading and writing so that it
...
handles the use of " quotes inside the string.
2002-10-28 12:55:19 +00:00
Robert Osfield
55b2a5ff30
From Gideon May, fixes to remain const base type instances in headers.
2002-10-25 12:29:03 +00:00
Robert Osfield
f5f20e4ac1
Fix from Don Tidrow for bug when moving between RenderGraph when popping back
...
up to common parents.
2002-10-23 07:46:11 +00:00
Robert Osfield
054fd3877c
Fixed spelling mistake in comment.
2002-10-21 13:03:02 +00:00
Robert Osfield
ac0de068d9
Changed the private: to protected: to allow easier extension.
2002-10-21 13:02:30 +00:00
Robert Osfield
e1b084749e
Renamed the RenderBin::sort_local to sortImplementation(),
...
draw_local to drawImplementation() and added a new RenderBin::DrawCallback().
Added osgcubemap to the Make/ test scripts.
2002-10-17 13:48:46 +00:00
Robert Osfield
f284f158f3
Fixed error in #ifdef GL_SECONDARY_COLOR...
...
CV: ----------------------------------------------------------------------
2002-10-17 10:04:11 +00:00
Robert Osfield
bfd614f907
Fixed the names of the ControlPoint parameters so they weren't capitals, to avoid
...
the clash with the parameter type itself.
Addd a PER_PRIMTIIVE_SET handling to the existing PER_PRIMTIIVE code, this code
is still flacky though and needs a rewrite as it doens't handle all attributes or
the full consequences of per primitive and per primitive set bindings.
2002-10-10 14:58:44 +00:00
Robert Osfield
6ba195efea
Added a little more info into the State contextID docs.
2002-10-10 13:06:24 +00:00
Robert Osfield
50652f389b
Added Macro's new cube map generation classes and osgcubemap demo.
2002-10-10 12:44:38 +00:00
Robert Osfield
16291da3b0
Fixes to smoothing visitor and tesselator to handle indexed Geometry.
2002-10-09 15:43:56 +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
Don BURNS
588bc1da3c
Solaris didn't like filebuf. Using old FILE
2002-10-08 08:36:48 +00:00
Don BURNS
16e3a3c182
Added AnimationPathManipulator to osgGA and modified sgv to use it.
2002-10-08 07:39:38 +00:00
Don BURNS
ab580f1e3b
Fixed some inconsistencies between header files and function definitions
...
where the header file declared a parameter non-const, but the function
definition expected a const. The Solaris linker was coming up with
undefined symbols.
2002-10-08 05:41:19 +00:00
Robert Osfield
04a9a09a8b
Added extra convinience methods to LOD - addChild(child,min,max).
...
Added osganimate to test scripts.
2002-10-07 21:23:37 +00:00
Robert Osfield
41768f6824
Fixes to Switch so that it defaults to adding children switched on, and adds
...
a flag to control whether children and added as true or false.
2002-10-07 20:17:57 +00:00
Robert Osfield
525fc2f746
Set the default values for scale to 1,1,1. This fixes the bug obsevered when
...
using AnimationPath with MatrixTransform without setting the scale value of
the osg::AnimationPath::ControlPoint's.
2002-10-07 20:01:28 +00:00
Robert Osfield
b7372fb4cb
Added new osganimate demo which demonstrate the osg::AnimationPath in action.
...
Added extra parameters to the AnimationPath callbacks to allow finer control.
2002-10-07 19:51:11 +00:00
Robert Osfield
478f736f63
Added missing osg::TextureCubeMap::getAssociatedMode().
2002-10-07 11:06:37 +00:00
Robert Osfield
65934ef824
From Daneil Sjölie - modifications to the support of custom GUIEventHandlers in osgGLUT
2002-10-07 09:41:30 +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
4a3cc5c182
Implemented OpenFlight style switches so that each child of a switch can now
...
be individually turned on or off. Moved the OpenFlight code across to use the
new scheme, removing the old hack of using node masks to achieve the same end
result.
2002-10-04 14:50:33 +00:00
Robert Osfield
14e9be42c2
Changed the include of MatrixTransform to Transform.
2002-10-04 13:53:41 +00:00
Robert Osfield
06022febff
Added back in the old osg::Geometry::addPrimitive(..) methods for backwards
...
compatibility and have placed them within a #ifdef USE_DEPREACATED_API block.
2002-10-02 13:16:39 +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
29e998c1f8
Removed inappropriate inline keyword from getOrCreateStateSet().
2002-09-30 18:12:54 +00:00
Robert Osfield
5fd86440b3
Added support for per primitive bindings in osg::IndexedGeometry. Added a
...
convertToIndexedGeometry() method to GeoSet to allow datasets with per primitive
bindings to be be mapped to across to osg::IndexedGeometry for testing purposes.
2002-09-30 13:30:46 +00:00
Robert Osfield
b57b0b16b9
Fixes for Win32 build.
2002-09-28 07:43:04 +00:00
Robert Osfield
df027e1bab
Fixes to IndexGeometry for Win32 build.
2002-09-27 19:01:59 +00:00
Robert Osfield
f8edf16c40
Improvements to IndexedGeometry.
2002-09-27 17:47:47 +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
fb629ae87d
From Gideon, support for tracking the number of objects constructed and deleted,
...
only compiled in when unit tests are compiled in.
2002-09-20 15:55:50 +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
fd3bef5158
From Daniel, changed setEventHandler to addEventHandler.
2002-09-20 14:48:41 +00:00
Robert Osfield
ce51fb1841
Added PolygonStipple class from Mike, with mods from Robert to make data
...
management local.
2002-09-19 10:30:15 +00:00
Robert Osfield
68384e984b
Made the calls to the drawing of the pre rendering stages exclit, using
...
a seperate method in RenderStage and associated calls in sceneView.cpp.
This fixes problems when doing stereo and prerender at the same time.
2002-09-19 09:52:50 +00:00
Robert Osfield
f11410928f
Simplified the depth calculation code in CullVisitor so that it always computes
...
the depth of all drawables, so that it is always safe for RenderBin sort routines can use
these values directly.
Add an example of a RenderBin::SortCallback to sgv.cpp.
2002-09-18 14:57:01 +00:00
Robert Osfield
ed43d97ed3
Improved the sort callback support in osgUtil::RenderBin, and removed the
...
now rendundent DepthSortedBin class.
2002-09-17 15:47:23 +00:00
Robert Osfield
91df37b5c8
Further work on multiple context extensions.
2002-09-16 20:58:05 +00:00
Robert Osfield
ce36cda0cc
Updates the osg::Texture3D::Extensions interface to support the standardisation
...
of extensions supported across multiple graphics contexts.
2002-09-14 10:38:28 +00:00
Robert Osfield
6d21fbd6cf
Added dirty methods for vertex arrays to better support external OpenGL
...
code which modifies the OpenGL state and needs to tell the osg::State
about it to ensure that the OSG doesn't make any errors during lazy
state updating.
2002-09-13 13:50:58 +00:00
Robert Osfield
ee93b70033
From Pavel Moloshtan, fixes for Mingw32 build.
2002-09-12 20:30:41 +00:00
Robert Osfield
f867dd81be
Added asGroup() and asTransform() methods to osg::Node to downcast nodes
...
to these types without requiring an expensive dynamic_cast<>.
Also added asGeometry() to osg::Drawable for the same reasons.
2002-09-12 15:34:31 +00:00
Don BURNS
b5870857c4
Fixed setFusionDistance
2002-09-12 14:29:59 +00:00
Robert Osfield
5733cc1470
From Brede Johansen - Fixes to osg::Plane::valid and added a new set method.
...
From Stephan Huber - Compilation fix to Texture.cpp for OSX.
From Don Tidrow - added dirtyBound() to osgText::Text::setPosition
2002-09-12 13:23:15 +00:00
Robert Osfield
e2603ff6c4
Improvements to osg::Texture3D::Extensions code.
2002-09-05 15:45:10 +00:00
Robert Osfield
bb0022175b
Added new buffered_value template class which encapsulates a std::vector but
...
initializes the array to the number of graphics contexts, and automatically
expands the array when indices outside the current size are required.
Added new osg::Texture::Extensions nested class to handle extensions on a per
context basis.
2002-09-05 11:42:55 +00:00
Robert Osfield
f574d0dd68
Added support for setting the fusion distance directly in SceneView, defaults
...
to the original behavior of using the values from the Camera if attached.
2002-09-04 10:49:17 +00:00
Robert Osfield
6ff24b338f
Added support for multiple graphics contexts to osg::Texture and its
...
subclasses.
2002-09-04 08:14:04 +00:00
Robert Osfield
1ad924d0ca
Fixes to the LWO to better handle 3 and 4 vertex polygons.
...
Added an extra pass into the Optimizer's merging of geometry primitives so
it convertex 3 and 4 vertex polygons into triangles and quads respectively.
2002-09-03 20:12:29 +00:00
Robert Osfield
12226e4371
Converted the instances of const built in types being returned from methods
...
and passed as paramters into straight forward non const built in types,
i.e. const bool foogbar(const int) becomes bool foobar(int).
2002-09-02 12:31:35 +00:00
Robert Osfield
c6965357e6
Renamed osg::Statistics::addOpaque to addDrawable to better reflect its current
...
function.
2002-08-30 19:45:56 +00:00
Robert Osfield
cf9e9e2b5b
Fixes to Math for MacOSX build.
...
Converted TextureCubeMap to unix file endings.
2002-08-30 15:32:59 +00:00
Robert Osfield
b1f69a9b11
Fixed the flatten static transform visitor.
2002-08-30 15:07:10 +00:00
Robert Osfield
8a061e80e1
Added std:: infront of ends references.
2002-08-30 13:38:22 +00:00
Robert Osfield
fc5f07acaa
Fixed the numerical accuracy problems in the Drive and Flight Manipulators.
2002-08-29 20:41:19 +00:00
Robert Osfield
44beefa9a5
Fixed numerical accuracy problem in Trackball manipulator.
2002-08-29 16:38:51 +00:00
Robert Osfield
6c08183b45
Updated docs.
2002-08-29 14:29:49 +00:00
Robert Osfield
79aaac4e0c
Renamed the ConvexPlaner* classes to ConvexPlanar* and changed all the various
...
classes that reference it.
Added MUST_READ_ME.txt to the VisualStudio directory.
2002-08-29 11:02:01 +00:00
Robert Osfield
4e45c82067
Added SG_EXPORT.
2002-08-29 08:39:04 +00:00
Don BURNS
2b10b4c3df
Fixed 69 occurance of 'Seperate' misspelling (should be 'Separate')
2002-08-29 03:22:27 +00:00
Robert Osfield
b546c63139
Changed instances of new across to use osgNew to help debugging, and fixed
...
an unitialized variable in Sequence.
2002-08-28 21:40:38 +00:00
Robert Osfield
fe93b91f73
Fixes to Win32 build.
2002-08-28 18:38:33 +00:00
Robert Osfield
ebb8a635d2
Fixes for Win32 build.
2002-08-28 16:59:22 +00:00
Robert Osfield
e50552d6d2
Added fixes to UnitTestFramework to get it compiling under Windows.
2002-08-28 16:17:54 +00:00
Robert Osfield
8353fc0ed6
Removed deprecated code from the distribution.
...
Added .osg support for Texture1D and Texture3D.
2002-08-28 15:28:11 +00:00
Robert Osfield
03ee77a315
Updates, from Neil Salter, to comments etc to osgGA which add better
...
explanations of how each of the classes operates.
2002-08-28 14:27:18 +00:00
Robert Osfield
7d6197441e
Added Neil Salter's osgUtx library into the distribution, have put all the
...
orignal seperate headers and source into include/osg/UnitTestFrameWork
and src/osg/UnitTestFramework.cpp respectively. I have done this to
keep the include and source directories focused on the scene graph rather
than the test framework.
Have added a very simple unit test to Vec3.cpp, which are optionally
compiled in with the OSG_COMPILE_UNIT_TESTS define, which is only
currently defined in debug builds under unix. It should be fine to
add it in under Windows project files as well.
Finally, a new demo app osgunittests runs the tests and reports success
or failure of the tests.
2002-08-28 14:26:09 +00:00
Robert Osfield
bff4728eac
Commented out the #define TEXTURE_USE_DEPRECATED_API from includ/osg/Texture
...
which forces the use of a typedef Texture2D Texture; in place of the orignal
texure implementation.
2002-08-27 21:01:22 +00:00
Robert Osfield
55d4affded
Added support for DOFTransforms into .osg format, and add pivot point support
...
to the PositionAttitudeTransform .osg support.
Removed a double light reference in the osglight demo.
2002-08-27 20:18:43 +00:00
Robert Osfield
103727f412
From Marco, fix to include/GL to clean up warnigns in Windows builds.
2002-08-27 14:00:04 +00:00
Robert Osfield
83af5e7a95
Added osgtexture3D demo, renamed osgtexture demo to osgtexture2D, and have
...
added osgtexture1D demo which currently is simply copy of osgtexture2D. I
will be modifying it to do 1D texturing next.
Fixed a bug in osg::Texture3D relating to checking of existance of
texturing.
Merged some fixes to the pfb loader from Ulrich Hertlein.
2002-08-27 10:06:57 +00:00
Robert Osfield
501f28449c
Fixed typo of _texParametersDirty.
2002-08-26 20:11:24 +00:00
Robert Osfield
5a3f8fc8a6
Moved the #define GL_DOT3_RGB_ARB's into their own #ifndef GL_ARB_texture_env_dot3 block.
2002-08-26 15:02:31 +00:00
Robert Osfield
59a5e800fe
Moved #define's for OpenGL1.2 image formats into the include/osg/Image header
...
to allow compilation of the rgb plugin under Windows with its 1.1 OGL headers.
Added float.h to Math's compile path for VS7 compilation.
2002-08-26 13:04:43 +00:00
Robert Osfield
0b5c20af8d
Made the sort callback's sort method pure virtual.
2002-08-26 12:34:42 +00:00
Robert Osfield
43d3beb59e
Removed redundent parameter in sort() callback which was never being used.
2002-08-26 12:28:10 +00:00
Robert Osfield
2b7dbecc0c
Added #include <stdlib.h> to include/osg/glut for Windows build.
2002-08-26 10:30:40 +00:00
Robert Osfield
db70c95d24
Updated Texture3D to use extension checking to get the relevant 3d texturing
...
extensions.
2002-08-26 10:24:01 +00:00
Robert Osfield
8e75f531e3
Converted code dependant on osg::Texture across to its replacement osg::Texture2D.
2002-08-25 15:31:44 +00:00
Robert Osfield
9e3a282429
Added guard to prevent VS7 builds using the #defines for cosf etc.
2002-08-24 21:12:51 +00:00
Robert Osfield
d87dee5a75
Added support for the texture_env_dot3 extension.
2002-08-24 21:11:07 +00:00
Robert Osfield
239068f223
Added new osg::TextureBase, osg::Texture1D, osg::Texture2D, and osg::Texture3D
...
classes, and changed osg::Texture and osg::TextureCubeMap so that they now derive
from osg::TextureBase.
2002-08-24 19:39:39 +00:00
Robert Osfield
0c383901a7
Clean up of include/osg/GL and include/osg/GLExtensions for better support of
...
Windows build.
2002-08-24 19:35:00 +00:00
Don BURNS
9979e80bed
Modifed osgGLUT viewer and messages in SGV to allow for start up in full
...
screen mode.
2002-08-23 00:43:10 +00:00
Robert Osfield
c45c3d3255
Added calling of the LightSource and ClipNode as Group by the NodeVisitor and
...
fixed the CullVisitor and Optimizer to take account of this.
2002-08-22 09:19:41 +00:00
Robert Osfield
ed3d083368
Fixed the osg::Transform::coompute*() methods so the were using the _referenceFrame
...
correctly, as previously they were doing the exact opposite from what they
should have been doing.
2002-08-22 08:14:38 +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
814dcc9677
Added IO Support for TexEnvCombine state attribute.
2002-08-20 18:00:22 +00:00
Robert Osfield
88f387810d
Added support for the tex_env_add and tex_env_crossbar extensions.
2002-08-20 14:15:49 +00:00
Robert Osfield
36ad072e14
Added the definition of GL_FOG_COORDINATE_SOURCE to Fog.cpp.
...
Added #include<string> to the GLExtensions header.
2002-08-20 12:29:35 +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
93303cf1cd
A FogCoordinateSource set/get methods to osg::Fog which correspond to the
...
FogCoord support added to osg::Geometry. Added suppot for these new parameters
to the .osg plugin.
2002-08-20 10:08:04 +00:00
Robert Osfield
7a0f041a15
Added default values to the TexEnvCombine constructor.
2002-08-19 19:53:34 +00:00
Robert Osfield
41db2e08d0
Added missing include/osg/ClearNode
2002-08-19 15:14:10 +00:00
Robert Osfield
1e2f198c5b
Added new osg::TexEnvCombine state attribute.
2002-08-19 15:11:09 +00:00
Robert Osfield
b23a48a763
Renamed the osg::EarthSky to osg::ClearNode to make it more obvious what
...
role it has play and make it more relevant to non vis-sim applications.
2002-08-19 11:42:37 +00:00
Robert Osfield
22d54f05e4
Added DOFTransform, MatrixTransform and PositionAttitudeTransform to NodeVisitor.
...
Added osg::Matrix/Quat::makeRotate(angle1,axis1,angle2,axis2,angle3,axis3) and
osg::Matrix::rotate(angle1,axis1,angle2,axis2,angle3,axis3) method.
Made osg::Matrix/Quat::makeRotate(heading,pitch,roll) and
osg::Matrix::rotate(heading,pitch,roll) all deprecated API.
Fixed the Quat*Quat & Quat*=Quat multiplication methods so that they multiplied
in the correct order - they were reversed originally due to the Quat code being
based on code example which used the v' = M v ordering, rather than the OSG's
v' = v M ordering.
2002-08-18 14:42:43 +00:00
Robert Osfield
2c174237c7
Fixed typo in #define of UBYTE4
2002-08-17 07:34:11 +00:00
Robert Osfield
2ab0f689eb
Added Texuture::SubloadCallback example into the osgprerender demo to illustrate
...
how to use it.
Changed the ImpostorSprite to use LINEAR,LINEAR for min and mag filters for the
impostor texture.
2002-08-16 15:14:43 +00:00
Robert Osfield
7dfefaf67f
Added new osg::Texture::SubloadCallback, and getNumMipmapLevels() to osg::Texture
...
and osg::Image. This additions are design to make texture subloading more
flexible.
2002-08-16 13:33:32 +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
7d00b3b729
Added SG_EXPORT to PositionAttitudeTransform and MatrixTransform.
2002-08-14 20:56:04 +00:00
Robert Osfield
60b73bcb7b
Commented out the #define USE_DEPRECATED_API.
2002-08-14 09:30:02 +00:00
Robert Osfield
f9cc8783b3
Futher improvements and fixes to osg::AnimationPath, and the osglight
...
demo to show it action.
2002-08-13 15:31:10 +00:00
Robert Osfield
743b174da9
Added new s/getPivotPoint() support to osg::PositionAttitudeTransform.
...
Modified the osglight demo to use an AppCallback and a PositionAttitudeTransform
to animate the loaded model.
2002-08-12 17:40:36 +00:00
Robert Osfield
29490a8c1c
Updates to DOFTransform so that its overrides the traverse() and compute*() methods
...
rather than depending upon callbacks for animating and compute matrices. Merged the
put/inverseput code between Sasa's and Ferndinand's DOF code.
From Bora Utka, Added support to osg::Sequence/OpenFlight AnimNode to the flt plugin.
2002-08-12 13:42:43 +00:00
Robert Osfield
7010c1c4f8
Removed dependency of the new osg::DOFTransform and osg::Sequence Node's
...
on osgUtil by implementing a NodeVisitor::VisitorType enum, and associated
g/setVisitorType. This allows callbacks to querry the visitor/traversal
type without doing down cast's to specific visitor subclasses such as
osgUtil::AppVisitor/CullVisitor.
2002-08-11 21:26:58 +00:00
Robert Osfield
392150521a
Fixed the X and Y axis rotation billboards so that now rotate correctly.
...
Rewrote the osgbillboard demo so that it creates a point rotatated billbaord
and X,Y and Z axis billboards to both test and demonstrate this types of
billboards in action.
2002-08-09 16:27:39 +00:00
Robert Osfield
0c6991ea27
Fixes for IRIX 32bit timmer on O2. From Tom Jolley.
2002-08-08 21:36:22 +00:00
Robert Osfield
824e77e518
Removed inline definition from front of setMaxAnisotropy method.
2002-08-08 15:09:18 +00:00
Robert Osfield
ed30834757
Fixed typos, sent in by Warren Macchi.
2002-08-08 13:45:16 +00:00
Robert Osfield
d9b7b13bd3
Changed the Geometry::setVertexArray and GeoSet::setCoords so that they
...
call dirtyBound() instead of reseting the local bound flag, this ensures
the updates are propagated upwards through into the parents.
2002-08-08 11:27:11 +00:00
Robert Osfield
b9b013e15b
Changed the support for anisotropic filtering in osg::Texture so that it
...
is now controlled via the setMaxAnisotropy(float) method, and is set up
independently for the mag filter mode, which it previously was done.
2002-08-07 15:52:24 +00:00
Robert Osfield
e01f9eb891
Added shells for DOFTransform and PositionAttitudeTransform to the .osg
...
loader, still need to fill in the saving and loading of paramters.
Went through the distribution remove old API usage.
2002-08-06 17:07:05 +00:00
Robert Osfield
5822c2c1ff
Fixed typo in comment.
2002-08-06 10:07:17 +00:00
Robert Osfield
8a5d7f9bfb
Adde getViewFrustum() to camera.
2002-08-06 10:04:06 +00:00
Robert Osfield
25740b5c7f
Added new osg::DOFTransform node from Sasa Bistrovic, designed to mirror
...
the OpenFlight DOF transform nodes.
2002-08-05 15:07:18 +00:00
Robert Osfield
fd788daa69
Added support to StateAttribute/State to support PROTECTED flag for modes and attributes
...
so that they cannot be overriden from above via the OVERRIDE flag. This is
useful for things like manipulators that have handles display in the scene, you
might want to prevent their state being affected by other overriding of
light, wireframe modes etc.
2002-08-05 12:40:24 +00:00
Robert Osfield
cab49a9307
From Ruben Lopez, updates to VRML/IV loader.
...
From Ben Discoe, corrections to comments in osg::Transform
From Alberto Barbati, Lazy evaluation of inverse matrix in osg::MatrixTransfrom
2002-08-04 20:34:48 +00:00
Robert Osfield
cdf63113f1
Changed the copy constructor of for _light mem var to use a dynamic_cast<StateAttribute*>.
2002-08-03 19:37:32 +00:00
Robert Osfield
6a04fc3dee
Integrated Ulrich Hertlien's osg::Sequence node, and osgsequence demo, and
...
support for osg::Sequence in the pfb loader.
2002-08-03 18:11:21 +00:00
Robert Osfield
c253d3558b
Changed the range max and min members variables to maximum and minimum to
...
prevent collision with windows min and max macros.
2002-08-03 18:03:40 +00:00
Robert Osfield
1ba901cf64
Added support for a sort callback in RenderBin.
2002-08-03 16:49:42 +00:00
Robert Osfield
067c10b49c
Fixed comments.
2002-08-03 16:48:36 +00:00
Robert Osfield
6b59f66d80
Checked in new methods for setting up texture subloading, these allow the
...
user to control which parts on an image are subloaded from, and how big
the initial texture is.
2002-07-28 23:28:27 +00:00
Robert Osfield
05472135b0
Added set/getUnrefImageOnApply() methods and associated flag and
...
code in Texture::apply() to set the _image to 0 on apply. Note,
this will only work when you have a single graphics context, as
with multiple graphics contexts one can't delete the image after
the first apply, as there will be more than one texture object to
update.
2002-07-28 21:25:32 +00:00
Robert Osfield
0977e68727
Fixes to NodeCallback and RenderBin from Alberto Barbati.
2002-07-28 12:49:01 +00:00
Robert Osfield
4962065fb7
From Macro, removal of use of display lists during double pass rendering of
...
particles.
2002-07-27 10:34:14 +00:00
Robert Osfield
73b007fccb
Added return value to addViewport.
2002-07-27 10:09:39 +00:00
Robert Osfield
8901c42434
Change Geometry paramter name to lower case geometry.
2002-07-26 12:49:19 +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
6d690740a6
Mods for HP-UX port.
2002-07-23 15:01:51 +00:00
Robert Osfield
80afddc08d
Checked in Tino Schwarze's port to HP-UX.
2002-07-23 10:48:22 +00:00
Robert Osfield
609a9ebf21
Updates to osgParticle form Macro.
2002-07-22 16:01:00 +00:00
Robert Osfield
389dd8adbb
Futher changes to remove unitialized variables/reordering of initialization to
...
prevent unitialized warnings.
2002-07-21 01:29:11 +00:00
Robert Osfield
48b3be40e9
Various fixes to constructors to ensure that all variables are initialized.
2002-07-20 23:54:55 +00:00
Robert Osfield
a1c54dc663
Removed the rendundent variables in the ConvexPlanerPolygon as these were
...
unused and unitialized.
2002-07-20 22:36:55 +00:00
Robert Osfield
4594907832
Small bug fix to osg::BoundingBox::expandBy(x,y,z).
...
Updated ChangeLog and NEWS for the release.
2002-07-19 15:49:43 +00:00
Robert Osfield
7682e32521
Updates to the Geometry to add more access methods, and updates to Optimizer
...
to add the new merge primtives option.
2002-07-19 14:19:49 +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
34be82c1ee
Moved get/setUserData from osg::Node into its superclass osg::Object to
...
allow other subclasses to add their own custom data.
2002-07-18 19:41:52 +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
Robert Osfield
7a8eeb3c92
Converted the osg::Material::set/getShininess option to use the standard
...
OpenGL range of 0.0 to 128.0 instead of the previous normalised shiniess
range. This brings it inline with the way the rest of the OSG uses a
1 to 1 mapping to OpenGL.
Converted the various loaders to use the new range, which is almost all
cases was simply removing the /128.0f which was required before!
2002-07-18 09:55:30 +00:00
Robert Osfield
1a139efbbc
Added const to LessGeometry functor to fix Win32 build.
2002-07-18 09:17:50 +00:00
Robert Osfield
09bdb10af5
Various fixes to the flt loader, and knock on changes to the osgUtil::Optimizer
...
to better support removal of seperate osg::Geometry instances where they
share the same state and bindings.
2002-07-18 00:53:03 +00:00
Robert Osfield
8c0d510571
Several items of work related to adding a manual creation of occluders
...
option to the osgoccluder demo.
First the osgGA classes have been generalised a little to better support
new GUIEventHandler subclasses.
Second osgGLUT has a new option for registering a user defined event handler,
the allows the application to add externally extra options to the osgGLUT viewer.
Third, the osgoccluder demo now works in two modes. The original create
four occluder sides to wrap an loaded model, the second an interactive
mode which allows the users to add occluders to the model by pointing
to points and pressing 'a' to add a point, the 'e' to end the occluder
polygon, polygons must be convex, planer and be defined in an anitclockwise
order. To start the osgoccluder in this mode one simple runs it with the
'-c' option. Run osgoccluder with no parameter to get a list of options.
2002-07-17 10:00:50 +00:00
Robert Osfield
3a964a6b93
Updated docs and added osgGA
2002-07-16 20:07:32 +00:00
Robert Osfield
6c8c02792a
Fixed the new TemplateArray desctructor.
2002-07-16 10:20:26 +00:00
Robert Osfield
7cf7d8fadb
Added protected destrcutor to TemplateArray.
2002-07-16 10:16:34 +00:00
Robert Osfield
8a14aa29cd
Added support to osgUtil::Tesselator to insert extra vertices and other
...
attributes into an osg::Geometry node. Uses the new osg::ArrayVisitor.
Converted the osg plugin Geometry support to use the new UByte4 class.
2002-07-15 22:23:57 +00:00
Robert Osfield
e280b50d31
Added osg::UByte4 class, which can be used to represent packed colors.
...
Changed osg::UByte4Array across to use the new osg::UByte4 class rather
than a GLuint as do previously.
Cleaned up some of the paramters in osg::Vec4.
2002-07-15 22:18:47 +00:00
Robert Osfield
db892e6bfe
Added State::disableTexCoordPointersAboveAndIncluding( unit ) method so that
...
all unsed texture units can be turned off simply within Drawables such
as Geometry and GeoSet. This can be used to prevent bleed of arrays from
one object to the next - which can cause crashes.
2002-07-15 10:03:59 +00:00
Robert Osfield
db888b191c
Conveted GeoSet to use the new state::set*Pointer/disable*Pointer methods
...
to keep the current state valid.
2002-07-13 20:31:30 +00:00
Don BURNS
b92ee3c95d
put a typedef in public area of class for sun compilers
2002-07-13 02:46:06 +00:00
Robert Osfield
d87d27b749
Added MatrixTransform header and source.
2002-07-12 21:08:19 +00:00
Robert Osfield
6f392cdbfa
Ported distribution across to use the new osg::MatrixTransform and osg::BlendFunc
...
class instead of osg::Transform and osg::Transparancy respectively.
2002-07-12 18:12:01 +00:00
Robert Osfield
8128265e09
Have added a #define USE_DEPRECATED_API to include/osg/Export, and
...
various
osg header and source files to optional compile in deprecated parts of
the
OSG API.
Have renamed osg::Transparency osg::BlendFunc to bring it in line with
the
rest of the OSG's StateAttribute classes which are named after their
OpenGL counterparts. include/osg/Transparency still exists and is
simply
a typedef to BlendFunc and is enclosed in a #ifdef USE_DEPRECTATED_API
block.
The matrix methods in the osg::Transform class have been
moved/replicated in
a osg::MatrixTransform sublcass from osg::Transform. The old matrix
functionality is still present in the osg::Transform class but is guard
by #ifdef USG_DEPRECATED_API blocks. One should now think of
osg::Transform
as being a Transform Node base class. MatrixTransform has all the
functionality of the original Transform class, so should be used
instead.
2002-07-12 14:25:10 +00:00
Robert Osfield
3edb8a3d18
Added blend color to osg::TexEnv
2002-07-12 10:30:27 +00:00
Robert Osfield
0ea6a7af4a
Fixes for Win32 build
2002-07-11 21:08:02 +00:00
Robert Osfield
1d136eab9f
Added #define for GL_TEXTURE0_ARB
2002-07-11 18:32:41 +00:00
Robert Osfield
8219a0a63a
Added support for multitexturing to osg::State and added osgmultitexture
...
demo which adds as spherical environment map using texture 1 to any model.
2002-07-11 16:12:24 +00:00
Robert Osfield
c4c97a0f64
Moved the code referencing osg::BoundingBox::isValid() and
...
osg::BoundingSphere::isValid() across to use the valid() methods, the later
being more consitent with other classes such as osg::ref_ptr<>.
2002-07-11 14:32:21 +00:00
Robert Osfield
cd3c2c0b77
Fixes for Win32 build
2002-07-11 11:36:25 +00:00
Robert Osfield
eca5797ae4
Fixed bug in disabledTexCoordPointer where a '>' was being used where it
...
should have been a '>='.
2002-07-11 11:33:06 +00:00
Robert Osfield
4372c9a334
changed unsigned int/short/char* references to GLuint,GLushort,GLubyte respectively.
2002-07-11 08:28:09 +00:00
Robert Osfield
5d18f0ee11
Tidied up the types in osg::GeoSet so that the index pointers use GLushort
...
and GLuint to get round compile issues under MacOSX.
2002-07-10 22:33:08 +00:00
Robert Osfield
8b1e9345df
Updates to osg::Drawable::AppCallback and osgprerender demo.
2002-07-10 20:30:57 +00:00
Robert Osfield
27338f57b1
Added app callback to Drawable.
2002-07-10 15:35:47 +00:00
Robert Osfield
c1fc3dcdb9
Ported all the demos and loaders across to use the new multitexturing API.
2002-07-10 11:22:24 +00:00
Robert Osfield
44d0bb05e7
Updates from Macro to support the new multitexture API, and improve
...
bounding box computation.
2002-07-10 09:14:46 +00:00
Robert Osfield
f4a167c64c
Added setCurrentRenderBin() method.
2002-07-10 09:04:28 +00:00
Robert Osfield
b3904ef729
Warnings fixes for IRIX - there was a missing "const" in the sameKindAs(.) method.
2002-07-09 10:33:15 +00:00
Robert Osfield
0c943945f7
Implemented most of the changes required for supporting multitexturing in
...
the osg::State/osg::StateSet/osg::StateAttribute and related classes.
2002-07-09 09:35:42 +00:00
Robert Osfield
211a823642
Added comment to reflect Clay Fowlers findings on getting VS to compile
...
without the Vector wrapper classes.
2002-07-07 22:12:51 +00:00
Robert Osfield
8f4a77ce4c
Fixes for Windows build.
2002-07-07 17:42:34 +00:00
Robert Osfield
0801b363f5
Work on supporting multitexturing in State/StateSet/StateAttribute/Geoemtry.
2002-07-07 14:40:41 +00:00
Robert Osfield
5014a4f809
Used typedef's for std::vector<>'s used inside DrawElements implementations.
...
Added deperecated comment to osg::GeoSet header.
2002-07-04 14:49:37 +00:00
Robert Osfield
5957c21082
Fixed the TriangleFunctor QUAD_STRIP code so that it produces consistent
...
results.
2002-07-04 09:49:12 +00:00
Robert Osfield
3700e7e2cd
Reimplemted the osgUtil::SceneView::setCalcNearFar() functionality to bring
...
it inline with the CullStack/CullVisitor implementation. Also added the
setSmallFeatureCullingPixelSize() method and wired them up inside
SceneView.cpp so they set the corresponding CullVisitor paramters.
Intergrated pfImage copying change in the Performer plugin, submission sent in by Ulrich Hertlein
2002-07-02 19:53:18 +00:00
Don BURNS
d2aa4270ce
Added support for CullVisitor to contain a osg::State. This used when
...
cull Callbacks require the contextID for doing operations on texture
objects, for example. Modified CullVisitor SceneView and Drawable
2002-07-02 06:22:28 +00:00
Robert Osfield
48e7679e78
Rewrote the osgUtil::Tesselator so that it is easier to use, and can also
...
easily retesselate osg::Primitive::POLYGONS found in Geometry objects.
Added calls to the tesselate to the lwo and flt loaders.
2002-06-28 22:42:02 +00:00
Robert Osfield
975e2fe709
Removed commas from the end of enum lists.
2002-06-28 08:47:23 +00:00
Robert Osfield
7eaba69bb6
Added SG_EXPORT which was missing.
2002-06-27 15:18:10 +00:00
Robert Osfield
fb3e705709
Converted the template DrawElements primitive class into three seperate
...
non templated classes - UByteDrawElements, UShortDrawElements, UIntDrawElements.
2002-06-27 13:15:34 +00:00
Robert Osfield
532a32416f
Moved the AttributeArray and Primitive classes into their own header and
...
source files.
2002-06-27 10:50:19 +00:00
Robert Osfield
90f4aa0515
Added comment to explain #ifdefs for member templates.
2002-06-26 21:11:59 +00:00
Robert Osfield
7bc2a513e7
Added #idef to Export to add check for support for member templates.
2002-06-26 21:10:45 +00:00
Robert Osfield
8094c777b7
Added templated constructor to TemplateArray & DrawElements template to
...
handle VisualStudio7.0 build.
Ported 3DS across to use osg::Geometry instead of osg::GeoSet.
2002-06-26 17:48:13 +00:00
Robert Osfield
40fefcf335
Ported various demos and support classes over to use the new osg::Geometry class
...
thus removing dependancy on osg::Geoset from most of the OSG, only loaders
left to port now.
2002-06-26 10:28:17 +00:00
Robert Osfield
cbeeeefdab
Added osg::Drawable::PrimitiveFunctor and TriangleFunctor subclass for
...
querrying the primitive data inside Drawables. Moved various support
classes over from being osg::GeoSet based to osg::Geometry based.
2002-06-25 20:27:51 +00:00
Robert Osfield
336c47e5fe
Fixed osgText::Text::DrawModeType::ALIGNEMENT spelling mistake, now
...
is ALIGNMENT.
2002-06-24 21:44:27 +00:00
Robert Osfield
cbb95d0445
Checked in .osg support for the new osg::Geometry class.
2002-06-24 21:37:34 +00:00
Robert Osfield
f2e215bf44
Added conversion to osg::GeoSet::converToGeometry() utility to help the
...
migration to and testing of the new osg::Geometry class.
2002-06-23 21:43:46 +00:00
Robert Osfield
49ab8f4706
Added new osggeometry demo to test the work on the new osg::Geometry Drawable.
2002-06-21 16:45:45 +00:00
Robert Osfield
ac93c6cdfc
Fixed constructor for TemplateArray(const TemplateArray& t,const CopyOp& copyop).
2002-06-21 07:48:05 +00:00
Robert Osfield
476f931eaa
Addd new experimental osg::Geometry Drawable which will eventually replace
...
GeoSet. Currently doesn't draw anything, and is very much in the
early design stages.
2002-06-20 19:54:08 +00:00
Robert Osfield
d763a47d2e
Mods to MemoryManager to make the optimized build produce dummy
...
implementations for all the public functions found in the header,
this should prevent problems when not compiling in the MemoryManager
under IRIX 64 build.
2002-06-20 18:17:36 +00:00
Robert Osfield
77e1fb7f80
Added support for reading and writing OccluderNode's to the .osg file format.
2002-06-19 16:06:03 +00:00
Robert Osfield
21beb236d2
Added support for occlusion of holes in occluders, and cleaned up the
...
interface to ShadowVolumeOccluders.
2002-06-19 10:19:10 +00:00
Robert Osfield
b3c26d5634
Changed the osg::LightSource so its Light attribute is now generalised to
...
be a StateAttribute. This allows alternative implementations of Lights
other than the standard osg::Light.
2002-06-19 08:34:19 +00:00
Robert Osfield
5e85cd59ab
Added support for occluders occluding other occluders, which helps reduce
...
the number of occluder that will be used in cull traversal to only the
ones that will be effective. Note. Holes in occluders arn't handled in
this occluder occlusion test, will implement this later.
2002-06-18 22:35:48 +00:00
Robert Osfield
aa58ecae2f
Clean ups for the Windows build.
2002-06-18 10:18:12 +00:00
Robert Osfield
6767dd49d0
Rewrote the FileUtils support for data and library file paths, moving the
...
storage of the path lists into osgDB::Registry, and changed the data
structor from a char* to a std::deque. Changed a names of couple of the
convinience functions in osgDB/FileUtils to better reflect the two
public FilePathList's - DataFilePathList and the LibraryFilePathList.
Added support into the osgDB::Registry::readNode/Image/Object methods
for pushing and popping the path of the current file being loaded.
2002-06-17 21:50:37 +00:00
Robert Osfield
27412c27c9
Fixes to the occluder culling code to properly disable occluders to prevent
...
self occlusion.
2002-06-17 09:10:26 +00:00
Robert Osfield
156a9fbaea
Fixes for Visual .NET and Mingw builds, and fix MacOSX notify() crash.
2002-06-15 20:57:50 +00:00
Robert Osfield
52c36dde70
Added computation of occluders volume scaled relative to the frustum volume,
...
all volumes computed in eye coords.
2002-06-15 12:14:42 +00:00
Robert Osfield
73ec80843f
Refined the CollectOccluderVisitor so that it checks the subgraph below
...
a node contains occluders before traversing.
2002-06-14 13:49:59 +00:00
Robert Osfield
61df1ed6b7
Further work on occlusion culling.
2002-06-13 23:46:02 +00:00
Robert Osfield
6888d73554
Added #include <osg/ref_ptr> so that it will compile properly regardless
...
of include order.
2002-06-13 19:34:27 +00:00
Robert Osfield
4e5a3696e3
Merge Randall's changes.
2002-06-13 18:27:14 +00:00
Robert Osfield
0ebe473eb5
Further work on Occlusion Culling. Most of work is complete, just debugging
...
required now.
2002-06-13 16:21:00 +00:00
Robert Osfield
8dcb26967c
Removed inappropriate inline keyword which was breaking the IRIX build.
2002-06-12 16:23:59 +00:00
Robert Osfield
e467027946
Fix for renaming of ShadowOccluderVolume to ShadowVolumeOccluder.
2002-06-12 13:54:14 +00:00
Robert Osfield
c7e99ff77a
Further work on occludision code.
2002-06-12 09:22:30 +00:00
Robert Osfield
fa13d948b5
A little more work on Occlusion culling.
2002-06-11 19:52:55 +00:00
Robert Osfield
247cb3ff7e
Checked in Macro Jez's additions to osgText to support .osg IO make it
...
a fully functioning NodeKit.
Also reimplement notify() to try an prevent a crash which has been caused by
to objects in notify.cpp being initiliazed twice, the second time the auto_ptr
holding the dev/null ofstream was being initilized to 0.
2002-06-11 18:41:57 +00:00
Robert Osfield
e1ba8a6292
Added osg::CollectOccludersVisitor which is a helper class for finding active
...
occluder in the view frustum, to be used as pre cull traversal.
2002-06-10 13:50:25 +00:00
Robert Osfield
348419219d
Created new helper class osg::CullStack to handle the accumulation of projection,
...
modelview and culling sets, to be used during travesal of the scene graph, such
as the cull traversal.
2002-06-10 11:21:21 +00:00
Robert Osfield
d91b848a63
Checked in migration from osgUtil based GUIAdapter code to Neil Salter's
...
osgGA (Gui Abstraction). This may break users code, but all it should
require to fix the builds should be a change from
osgUtil::CameraManipulator (etc) to osgGA::CameraManipulator and
include <osgUtil/CameraManipulator (etc) to osgGA/CameraManipulator and
the extra dependency of the link line.
2002-06-09 13:10:09 +00:00
Robert Osfield
0a8d0a255f
More more occlusion culling.
2002-06-08 19:58:05 +00:00
Don BURNS
9181deb323
#ifdefed out cstdlib for irix
2002-06-07 14:54:33 +00:00
Robert Osfield
f8502a076c
Added support for NodeKits to the osgDB::Registry. Object names in .osg
...
files which have the library::class syntax will automatically invoke
the dynamic loading of either a nodekit or database plugin.
2002-06-07 10:03:49 +00:00
Robert Osfield
99580f2212
Addd libraryName() method to osg::Object in preperation for the osgDB support
...
for node kits plugins.
2002-06-06 13:25:36 +00:00
Robert Osfield
21a8149aa5
Removed out of date comment on calling dirtyTransform() which no longer exist
...
in osg::Camera.
2002-06-05 16:11:57 +00:00
Robert Osfield
dc00711337
Fixed compile problems under VisualStudio6.0
2002-06-05 14:14:32 +00:00
Robert Osfield
9ba7505d1e
Checked in osgParticle, writtten by Marco Jez.
2002-06-05 12:44:55 +00:00
Robert Osfield
5feba17410
Added new osg::OccluderNode which subclasses from osg::Group, and will
...
provide hooks for adding ConvexPlanerOccluders to the scene.
2002-06-05 09:39:04 +00:00
Robert Osfield
f67be7c07f
Further work on moving culling functionality from CullVisitor into CullingSet,
...
in preperation for occlusion culling.
2002-06-04 15:21:24 +00:00
Robert Osfield
ff7a7931fe
Warning fix for Windows
2002-06-03 17:54:04 +00:00
Robert Osfield
db78726acf
Updates to shadow occlusion culling code.
2002-06-03 17:49:28 +00:00
Robert Osfield
3f84849210
Additions for the support for ConvexPlaneOccluder. Work still underway.
2002-06-03 15:39:41 +00:00
Robert Osfield
f16a539492
Fixes for warnings under VisualStudio
2002-05-29 19:34:01 +00:00
Robert Osfield
ae5e4f848f
Added new osgcallback demo, and updated small API changes to improve the
...
flexiblity of callbacks.
Added beginings of convex planer occlusions culling.
2002-05-28 23:43:22 +00:00
Robert Osfield
a5a267d305
Added pragma to disable warning under VisualStudio.NET.
2002-05-28 16:11:49 +00:00
Robert Osfield
6ab93ff61d
Adde osgText::Text::setColor/getColor so that osg::Material's need not be
...
attached to set the text color.
2002-05-28 14:33:13 +00:00
Robert Osfield
e73d4ca5b3
Changes for Cygwin build, sent in by Norman Vine.
2002-05-28 11:40:37 +00:00
Robert Osfield
02fc6ad5f8
Various updates to operations related to cull traversal.
2002-05-28 10:24:43 +00:00
Robert Osfield
78b7c375d8
Removed , from end of enum.
2002-05-27 06:37:51 +00:00
Robert Osfield
09121a1583
Fixed a bug in the Optimizer::RemoveDuplicateNodesVisitor which was prevent
...
removal of node which could have been removed.
Added so extra convinience methods to ClippingVolume and utilized them in the
CullVisitor to push and pop only culling planes that are active.
2002-05-23 15:35:12 +00:00
Don BURNS
5ce4a54c0d
Fixed spelling error Calander -> Calendar
2002-05-22 19:58:43 +00:00
Robert Osfield
553db68bc4
Added osgUtil::CullVisitor::getCurentRenderGraph() and getRootRenderGraph()
...
methods which replace getRenderGraph(). Small changing of order of push/pop
of StateSet's in SceneView to clean things up.
2002-05-22 12:01:12 +00:00
Robert Osfield
11b8bd1fd9
Changed the public osg::State::applyMode() and applyAttribute methods so that
...
they dirty the associated state, this helps keep the OpenGL state valid once
out of local drawing routines.
2002-05-22 10:04:28 +00:00
Robert Osfield
2338b7116a
Updates for Doxygen and osgGA headers from Neil.
2002-05-22 08:50:05 +00:00
Robert Osfield
bf872fa7ac
Renamed osg::State::getCurrentMode/Attribute(..) to
...
getLastAppliedMode/Attribute() to make it more consistent with the internal
workings of osg::State.
2002-05-21 09:16:31 +00:00
Robert Osfield
b8d8a8be27
Added osg::State::getCurrentMode and osg::State::getCurrentAttribute().
...
Aded osg::clampAbove(..) and osg::clampBelow() template functions to
include/osg/Math.
2002-05-21 08:59:26 +00:00
Robert Osfield
00f91631c2
Various API updates to suppor light points developments better, but should also
...
benifit other extensions to rendering.
2002-05-18 08:39:42 +00:00
Robert Osfield
806efcd0d4
Exposed the CullVisitor::setComputeNearFarMode
2002-05-15 11:27:47 +00:00
Robert Osfield
10c3b4e7bf
Fixes to new flipVertical/flipHorizontal.
2002-05-14 10:20:55 +00:00
Robert Osfield
7301d1505a
Added osg::Image::flipHorziontal and flipVertical, submitted by Brede Johansen.
2002-05-14 09:34:11 +00:00
Robert Osfield
567989839a
Added new template versions of a commonly used maths functions.
2002-05-13 21:19:42 +00:00
Robert Osfield
d140decb44
Added pixelSize method to CullVisitor, and converted small feature
...
culling to use the pixelSize method instead of a ratio of radius to
distance from eye point. setSmallFeatureCullingPixelSize() method
has also been added to provide the user with finer control of small
featyre culling.
2002-05-09 18:59:19 +00:00
Robert Osfield
cf4a3500ec
Added new osgGA - GUI Adapter library submitted by Neil Salter. This will
...
replace the current GUI adapter code inside osgUtil.
2002-05-09 10:31:03 +00:00
Robert Osfield
c47e082fa8
Added default values in the constructors of Vec2,Vec3,Vec4 and Quat
...
default constructors.
2002-05-07 11:08:12 +00:00
Robert Osfield
e296df4632
Added osg::Node::getValidStateSet().
2002-05-03 22:47:57 +00:00
Robert Osfield
08a4fd5bfc
Added support for the managing the StateSet above a LightSource node,
...
and made it an osg::Group so that it can be used a decorator above a
scene.
Added osgclip demo to the test suite.
2002-05-03 16:47:16 +00:00
Robert Osfield
0977f0de57
Made osg::Viewport::getViewport(..) const.
2002-05-02 22:02:14 +00:00
Robert Osfield
ae8076f83b
dded osg::ClipNode class for managing OpenGL clipping planes, and osgclip demo.
2002-05-02 00:14:40 +00:00
Robert Osfield
26d34ed6d6
Qarning fixes, and updated the date in NEWS to reflect todays release of 0.8.45
2002-04-26 08:16:14 +00:00
Robert Osfield
2bd20f5c6f
Fixes for IRIX build.
...
Fix for a warning under VisualStudio.NET.
2002-04-25 22:09:28 +00:00
Robert Osfield
f0e7e8e48b
Removed CullViewState from the distribution, moved CullViewState::CullingMode
...
into CullVisitor, and then removed all references to CullViewState from other
parts of the scene graph.
2002-04-24 20:24:10 +00:00
Robert Osfield
b2e6279178
Removed the use of __FUNCTION__ from MemoryManager to remove problems with
...
VisualStudio .NET compile.
Added support for OSG_NOTIFY_LEVEL and OSG_FILE_PATH into the relevant getenv
routines. This compliments the exisiting OSGNOTIFYLEVEL & OSGFILEPATH which
are deprecated but still supported. The OSG_ version are more consistent
with the rest of the env variables used in the OSG.
2002-04-24 14:52:53 +00:00
Robert Osfield
20b5e59dfd
Fix for the Cygwin build related to the new FileUtils_Unix not using the
...
Windows PATH environmental variable for searching for libraries. Sent in
by Norman Vine.
Reoder of the makedefs/makedirdefs to fix Mac OSX compilation. Sent in by
Bob Kuehne.
2002-04-24 08:50:03 +00:00
Robert Osfield
2f392b635c
Fixed compile problems under VisualStudio w.r.t the new additions for
...
precompiled mipmaps. Changed std::size_t to unsigned int.
2002-04-23 10:34:20 +00:00
Robert Osfield
43abbe311e
A couple of API additions to osg::ClippingVolume, osg::Matrix and osg::Plane
...
sent in by Mike Connell.
2002-04-22 21:18:15 +00:00
Robert Osfield
dcfef4a023
Integrated submission from Boris Bralo:
...
Supported added for precompiled mip maps stored in osg::Image, and read
by osg::Texture.
Updates to TerraPage loader for support of compressed texture images and
precompiled mip maps.
2002-04-22 21:13:33 +00:00
Robert Osfield
8b30a10375
Added code in hangglide to move the earth sky around with the eye point,
...
use osg::Transform::ComputeTransformCallback.
2002-04-22 19:41:33 +00:00
Robert Osfield
56dc083330
Added support for compute the near and far planes and then applying to
...
the current projection matrix into CullVisitor itself. Similar code to
support this has been moved out of SceneView completely.
Added Matrix:: infront of the definition of the static
osg::Matrix::inverse(Matrix) method which was missing.
2002-04-22 14:54:39 +00:00
Robert Osfield
9574ce97d2
Updated TODO list.
...
Converted AnimationPath so it is now subclassed from osg::Transform::ComputeTransfromCallback()
so that it can be directly attached to the scene to move objects about.
Changed the osg::SateSet::setGlobalDefaults() so that is sets GL_DEPTH_TEST
to ON.
Added guards and creation of default helper classes in osgGLUT::Viewer and
osgUtil::SceneView so that sensible defaults are used when no settings
are used of osg::State/StateSet,osgUtil::RenderStage/RenderGraph/CullVisitor.
2002-04-21 22:05:26 +00:00
Robert Osfield
e3958790a2
Changed the implementation of osg::Quat::makeRotate(heading,pitch,roll) so that
...
it conforms to the OpenFlight convention of euler angles. Added documentation
into Matrix and Quat to reflect this.
Added so test code to osgcube for stress testing memory allocation and deallocation.
Commented out the registering of app and cull callbacks in osghud.
2002-04-19 19:55:48 +00:00
Robert Osfield
1131be56dc
Fixes for Max OSX build from Bob Kuehne.
2002-04-19 16:22:25 +00:00
Robert Osfield
791150ab69
Warning fixes for VisualStudio
2002-04-17 20:04:41 +00:00
Robert Osfield
5830c60cef
Fixes for warnings under VisualStudio
2002-04-17 11:36:38 +00:00
Robert Osfield
e17261c45f
Changed the osg::Billboard comution so that it get passed in the current
...
modelview matrix rathan than an identity matrix, this matrix is then modified
locally.
Changed the osg::Matrix set methods so they are inline.
Added a few useful comments to MemoryManager.cpp to help people understand
the assert's better.
2002-04-17 09:48:19 +00:00
Robert Osfield
5deafbda24
Added clearing of seperation band between horizontal/vertical split stereo
...
areas.
2002-04-16 15:31:46 +00:00
Robert Osfield
7836540bb3
Added osg::Image::setPixelFormat(..) and setInternalTextureFormat(), and
...
renamed osg::Image::pixelFormat(), internalTextureFormat(),dataType() to
osg::Image::getPixelFormat() etc. These changes are to bring it more
into line with the style of the rest of the OSG.
Updated the rest of the distribution to take account for these names changes.
2002-04-16 14:57:39 +00:00
Robert Osfield
f8340f9ef5
Removed the cached matrices from osg::Camera, so that
...
osg::Camrea::getModelViewMatrix() and osg::Camera::getProjectionMatrix() are
calculated on the fly. Removed various redudent methods, including the
project and unproject methods which are better supported within osgUtil::SceneView.
Added a computeWindowMatrix() method to Viewport, to make it easier to construct
a MV*P*W matrix for converting local coords into screen coords and visa versa.
Converted SceneView and CullVisitor to use this new method.
2002-04-16 11:41:32 +00:00
Robert Osfield
9fd7c528f4
Compile fixes for IRIX, submitted by Randall Hopper.
2002-04-15 21:48:43 +00:00
Robert Osfield
5a0f8118b7
Added support for OSG_USE_MEMORY_MANAGER into Windows build.
2002-04-15 21:03:32 +00:00
Robert Osfield
bbef7164db
Added CullCallbacks to osg::Node, and osgUtil::CullVisitor.
2002-04-15 13:15:48 +00:00
Robert Osfield
c43607c14d
Added support for specificing the eye mapping and seperation between the
...
horizontal and veritical split stereo modes.
Renamed osg::Image::ensureDimensionArePowerOfTwo() to osg::Image::ensureValidSizeForTexturing().
2002-04-14 22:21:59 +00:00
Robert Osfield
09d41789da
Fixes to osg::Image::createImage(..), and addition of code to Viewer.cpp to support
...
output of screen snapshot via 'O'.
2002-04-14 13:41:13 +00:00
Robert Osfield
8a5c6d5102
Clean up for VisualStudio build
2002-04-13 22:19:29 +00:00
Robert Osfield
9b2fe06896
Fixed compile problem related to missing includes (a result of removing include of Camera..)
2002-04-13 11:08:04 +00:00
Robert Osfield
3f67300c82
Saved workspace from VisualStudio to follow up on missing demo dependancies
2002-04-13 10:18:58 +00:00
Robert Osfield
341ffb2361
Further work on cleaning up SceneView and Camera, in particular moving strereo
...
support out of Camera and into SceneView. Also enabled the option to set the
projection and modelview matrices directly on SceneView thereby removing the
dependance on osg::Camrea to control the view of the scene.
2002-04-12 18:06:13 +00:00
Robert Osfield
a44efe01bb
Fixes for Win32 build
2002-04-12 09:53:39 +00:00
Robert Osfield
6ed233d0d2
Added DataVariance enum and set/get fields to osg::Object to help identify
...
which objects have values that vary over the lifetime of the object (DYNAMIC)
and ones that do not vary (STATIC). Removed the equivalent code in
osg::Transform, StateSet and StateAttribute, as these are now encompassed
by the new DataVariance field.
Removed MatrixMode enum from Matrix, and associated fields/parameters from
osg::Transfrom and osg::NodeVisitor, since MatrixMode was not providing
any useful functionality, but made the interface more complex (MatrixMode
was an experimental API)
Added ReferenceFrame field to osg::Transform which allows users to specify
transforms that are relative to their parents (the default, and previous behavior)
or absolute reference frame, which can be used for HUD's, camera relative
light sources etc etc. Note, the view frustum culling for absolute Transform
are disabled, and all their parents up to the root are also automatically
have view frustum culling disabled. However, once passed an absolute Transform
node culling will return to its default state of on, so you can still cull
underneath an absolute transform, its only the culling above which is disabled.
2002-04-11 23:20:23 +00:00
Robert Osfield
e85e5a6ce6
Added several new methods to osg::Image to help keep track of memory and added
...
osg::Image::readPixels to encapsulate glReadPixels.
Reordering of includes in include/osg/Fog and include/osg/Light to remove silly warnings under Visual Studio.
2002-04-11 17:15:07 +00:00
Robert Osfield
e037c79917
Fixed refrences to NewCullVisitor which has now been mapped onto CullVisitor.
2002-04-11 08:24:55 +00:00
Robert Osfield
f2ffbdd469
Copied NewCullVisitor over top of CullVisitor and then removed NewCullVisitor.
...
Added some defines to Image in prep for writing code to determine how big a
pixel is.
2002-04-10 22:10:07 +00:00
Robert Osfield
360247225e
Added new osg::DrawPixels class with encapsulates glDrawPixels as and
...
osg::Drawable. Added osg::Image::readPixels to osg::Image.
Made osg::LightSource to default to cullActive set to false to that LightSource
nodes don't get culled by default.
2002-04-10 21:51:34 +00:00
Robert Osfield
1369987cdd
Added setProjectionMatrix and setModelViewMatrix() methods to osg::SceneView,
...
and associated member variables. I have not linked them up to the
cull traversal yet, but this will be the next task.
2002-04-09 21:46:34 +00:00
Robert Osfield
6f65e86057
Further work on removing Camera references from NewCullVisitor and releted
...
classes, this work paves the way for making osg::Camera an optional
extra rather than a requirement for rendering.
2002-04-09 16:09:19 +00:00
Robert Osfield
3351306d80
Added new osg::Projection node, and osgUtil::NewCullVisitor which are work
...
in progress for the new support for controlling the projection matrix from
within the scene graph.
Also Added osg::State::getClippingVolume(), getProjectionMatrix() and
getModelViewMatrix() with allows drawables to access the current projection,
and model view matrices and the view frustum in local coords to the drawable.
2002-03-31 16:40:44 +00:00
Robert Osfield
56cee8c711
Move the applying of Projection and ModelView matrices into osg::State so that
...
it now maintains references to the last applied matrices, automatically doing
lazy state updating. This simplifies the various places in the OSG which
were previously doing the applying, add paves the way for managing the
projection matrix within the scene graph.
Remove MemoryAdapter and mem_ptr as they arn't being used, and can potentially
confuse users by their existance.
2002-03-29 17:26:40 +00:00
Robert Osfield
07f9421f39
Converted from dos file endings to unix.
2002-03-29 12:23:54 +00:00
Robert Osfield
d421e35c8d
A compile fix to the new Texture subload changes.
2002-03-27 23:04:52 +00:00
Robert Osfield
33c89c3be0
Added support for setting the texture subload width and height within
...
osg::Texture. The values default to 0, and in this state they are
sizes of the glTexSubImage2D are taken from the source image size. This
allows the previous setup with no settings for subload size to work as
before.
2002-03-27 22:51:58 +00:00
Robert Osfield
7e2c82f141
Futher updates to MemoryManager, fixed memory leak in osgconv.
2002-03-27 16:31:25 +00:00
Robert Osfield
84d2d01163
Added support for osg::MemoryManager which is based upon Paul Nettle's
...
memory manager published at flipcode.com. This can be turned on
with the OSG_USE_MEMORY_MANGER option which then uses custom global
new and delete operators as well as provide osgNew and osgDelete macro's
which add ability to log line and file from which calls are made.
Updated osg,osgUtil,osgDB,osgText and osgPlugins/osg to use osgNew/osgDelete,
and fixed memory leaks highlighted by the new memory manager.
2002-03-26 23:52:52 +00:00
Robert Osfield
651a22453a
Added osg::MemoryManger which is currently based on Paul Nettle's memory manager
...
published at flipcode. I havn't adopted Paul's macro's for new/delete etc, but use
osg prefixed versions instead to allow greater flexiblity in handling include
ordering.
Have fixed a couple of new/delete[] problems which existed as a result.
To use the MemoryManager to track memory usage simply add
-DOSG_USE_MEMEORY_TRACKING to the compile line.
Have yet to move the osg from using new to osgNew, will do this next.
2002-03-25 23:18:02 +00:00
Robert Osfield
06fcd12598
Fixes for MacOSX build.
2002-03-25 19:04:30 +00:00
Robert Osfield
f50c5f7a5e
Moved the exit on escape into Window, and added a virtual free method on both
...
Window an Viewer to clean up the windows, this is now called before exit is
finally called, ensure that more more memroy is clean up prior to exit.
2002-03-23 21:28:25 +00:00
Robert Osfield
33b0ceac0d
Added GL_TEXTURE_3D definition for those with gl.h headers which don't
...
contain it.
2002-03-23 10:55:29 +00:00
Robert Osfield
03cda7d3f8
Renamed have_applied_mode, have_applied_attribute, apply_mode, apply_attribute
...
to haveAppliedMode, haveAppliedAttribute, applyMode, applyAttribute to make
it more consistent with the general OSG name convetion.
2002-03-21 12:36:05 +00:00
Robert Osfield
a364875afb
Added osg:State:have_applied_mode(mode) and have_applied_attribute(type) to make it
...
easier to specify which modes and attributes have been modified without
the user requiring to know to what value, or to have an equivilant attribute
to pass to the have_applied_attribute method. The original have_applied(mode)
and have_applied(attribute) methods have been renamed have_applied_mode(),
have_applied_attribute() as this was required to prevent the mode and type
values colliding during compile (it was causing a compile error when the method
names were the same.)
2002-03-21 12:00:10 +00:00
Robert Osfield
9836af1055
Added osg::TextureCubeMap which encapsulates OpenGL's cube texture mapping.
2002-03-20 22:39:51 +00:00
Robert Osfield
8656adb463
Added a Referenced::unref_nodelete() method which unreferences but does
...
not delete the object even if its count goes to 0 or below. This should
only be called in special circumstances, the ReaderWriter::ReadResult
being one of them. This new method has allowed the problem of objects
being multiple referenced on return from readNodeFile() & readImageFile().
2002-03-20 14:03:30 +00:00
Robert Osfield
0b27e5c381
Updates to Texture and TextureCubeMap to clean up the code so they share
...
much more of the core texture setup code. This largely invloved paramterizing
the applyImmediateMode, which has also been rename applyTexImage to reflect
its functionality better.
2002-03-20 11:24:47 +00:00
Robert Osfield
8f02db61e5
Added osg::TextureCubeMap. submission from Brede Johansen.
2002-03-18 23:10:33 +00:00
Don BURNS
eb0587b5fb
Changes required for SUN Solaris port...
2002-03-18 21:56:00 +00:00
Robert Osfield
c49c62ee15
Integrated various changes worked on at the Glasgow Science Center. Changes
...
include change the CameraManipulators so they work with double for time
instead of float. Also added support for DataType to osg::StateAttribute
and StateSet so that they can be set to either STATIC or DYNAMIC, this
allows the optimizer to know whether that an attribute can be optimized
or not.
2002-03-14 17:34:08 +00:00
Robert Osfield
e80496d5db
Changed Texture so that is use lazy updating on texture paramters (Filter/Wrap)
...
mode by using a _texParamtersDirty flag in combination with an
applyTexParamters(State&) method which does the paramters setting in one
tidy bundle. This new implementations replaces the CompileFlags submitted
yesterday.
Simplified NodeCallback by remove osg::NodeCallback::Requirements as they
are no longer needed.
Fixed comments in Drawable.
Put guards around cosf definations so that they are only used under Win32/Mac.
Fixed warning in CullVisitor.
2002-03-14 16:01:21 +00:00
Don BURNS
fea861e013
Fixed compile flags in Texture
2002-03-14 00:07:29 +00:00
Don BURNS
d0ee300405
Fixed DrawCallback in Drawable and added CullCallback to Drawable
...
Cull Visitor now checks for a Drawable's CullCallback and calls it
if it exists. It then prunes based on the return value (bool) of the
cull callback.
2002-03-13 22:44:22 +00:00
Robert Osfield
a6aa57a255
Added support for seperate traversal masks for standard, left and right
...
cull traversals. This allows one to create seperate rendering for left
and right eyes when doing stereo.
2002-03-03 22:31:46 +00:00
Robert Osfield
0439b72da7
Updates to the clamp to border support in osg::Texture.
2002-03-01 09:27:10 +00:00
Robert Osfield
2973ca0a25
Added support for setting the maximum number of graphics contexts that the
...
OSG has to maintian.
2002-02-28 00:11:31 +00:00
Robert Osfield
3444c95261
Integrated support for GL_CLAMP_TO_BORDER_ARB extension to osg::Texture,
...
submitted by Sasa Bistrovic.
2002-02-27 22:00:47 +00:00
Robert Osfield
1bdebcf174
Added new osg::AnimationPath which is contaner for a set of key frames for
...
defining an animation path. To be used with osg::Transform etc.
2002-02-27 00:58:54 +00:00
Robert Osfield
7c0eb0f380
Added makeRotate(heading,pitch,roll) to Quat in prep for new classes for
...
animation paths.
2002-02-26 20:01:04 +00:00
Robert Osfield
e21af2adce
Added support for glLightModel functionality via osg::LightModel.
2002-02-25 22:46:38 +00:00
Robert Osfield
f600f6fe4a
Added support for glLineStipple via osg::LineStipple state attribute.
2002-02-24 20:55:45 +00:00
Robert Osfield
20781cc621
updates for Win32 Codewarrior build
2002-02-22 23:40:25 +00:00
Robert Osfield
64b706fd0b
Fix for win32 Codewarrior build
2002-02-22 23:39:42 +00:00
Robert Osfield
00e91eec1d
Add support for Metrowerks Codewarrior build under Windows.
2002-02-22 17:12:10 +00:00
Robert Osfield
aefaafdbf9
Fixed stereo implementation.
2002-02-18 23:01:09 +00:00
Robert Osfield
4abfdb1ebd
Added OpenDX writer from Randall Hopper.
2002-02-18 20:46:47 +00:00
Robert Osfield
685d0b08cb
Beginings of reimplementation of stereo support in scene view. Work
...
not complete yet.
2002-02-14 13:26:37 +00:00
Robert Osfield
0c1264f547
Fixed the fabsf define which was eroneous mapped to sqrtf, due to the copy and
...
paste antipattern no doubt.
2002-02-13 22:52:07 +00:00
Robert Osfield
b2e2a971fd
Updates to Transform and CullVistor to support new getLocalToWorldMatrix methods.
2002-02-12 08:23:07 +00:00
Robert Osfield
386b87d4a0
Cleand up the root Makefile.
...
Moved CullVisitor/RenderStage/RenderStageLighting across to managing lights
entirely within RenderStageLighting, and changed the management of modelview
matrices so that RenderLeaf now stores the absolute modelview matrix, rather
than a model matrix as done previously. The later allows RenderLeaf's to do
a glLoadMatrix rather than a glPushMatrix/glMultMatrix/glPopMatrix.
2002-02-11 19:51:24 +00:00
Robert Osfield
0aab3a38b0
Updated Stats code, sent in by Geof Michel.
2002-02-11 00:40:37 +00:00
Robert Osfield
7d03f8a548
Implemented NodeVisitor's getLocalToWorldMatrix and getWorldToLocalMatrix
...
to allow users to querry the current accumulated matrix state within the
scene graph.
2002-02-10 22:35:22 +00:00
Robert Osfield
e6638d9974
Disbalbed a dumb warning in Windows build via a #pragma.
2002-02-10 20:05:38 +00:00
Robert Osfield
c999dfb154
Updates to docs and fixes to a few warnings.
2002-02-09 14:29:58 +00:00
Robert Osfield
ed45cccc25
Fixes for cygwin and mingw builds.
2002-02-09 10:24:39 +00:00
Robert Osfield
2fb698f4ca
Removed osgWX and wxsgv from the repositry as it is intend to keep the core
...
distribution clean from GUI examples, these instead should live in the bazaar.
This can better accomodate the many different types of viewer that users are
developming.
2002-02-08 23:04:59 +00:00
Robert Osfield
2075eb0100
Added support for parents to Drawables.
...
Bumped up version numbers in prep for 0.8.44.
2002-02-08 22:55:21 +00:00
Robert Osfield
4c5fcd3f61
Fixes for IRIX and Boris Bralo's TerraPage loader.
2002-02-08 09:30:02 +00:00
Robert Osfield
62d8b1e8de
Fixed teh setDrawCallback so that it now calls dirtyDisplayList() instead of
...
dirtyBound.
2002-02-07 08:07:33 +00:00
Robert Osfield
d12a726d5b
Various investigations into culling errors w.r.t matrix inversion resulted in
...
the conclusion that the osg::Matrix::inverse was broken, have lifted a new
implementation from sgl and it seems to work fine. Will need further testing
but looks good.
2002-02-07 01:15:15 +00:00
Robert Osfield
ff571d2690
Added a check to the destructor of Referenced so that it detects referenced
...
objects that are deleted whilest still having a positive _refCount, such
as when a object has been deleted on the stack, yet other references still
exist for it. Have put the desctructor implementation in Object.cpp to
avoid adding yet another file with only a couple of lines of code in.
2002-02-07 01:11:20 +00:00
Robert Osfield
b00d103f4e
Added callbacks to allow users to modify the underlying functionality of
...
LOD, Billboard and Drawabel objects.
2002-02-07 01:07:11 +00:00
Robert Osfield
a703130aa0
Have taken a few more steps towards support for view dependant transformations
...
by adding a ComputeTransformCallback to osg::Transform, and have now removed
the recently added AutoTransform since it is nolonger required. Have also
updated CullVisitor to account for the new ways for tracking transformation
matrices in the scene.
2002-02-05 21:54:46 +00:00
Robert Osfield
7293af59ed
Have removed the old lazy initialization of Matrix since it was causing bugs
...
and adding checks to many mothods which in the end slow it down more than
not intilizing the code! The code is now simpler, more robust and faster:-)
2002-02-05 21:51:06 +00:00
Robert Osfield
57fb5a0182
Added beginings of new AutoTransform class.
2002-02-03 20:57:31 +00:00
Robert Osfield
6630cfb455
Fixes for GCC 3.0.3 build.
2002-02-03 19:18:14 +00:00
Robert Osfield
c1283c23e8
Removed the trailing ; after namespace {...} declariations in headers
...
which was being picked as a warning under Codewarrior.
2002-02-03 12:33:41 +00:00
Robert Osfield
af968b00bd
Added first cut at new AutoTransform node which will be used for generating
...
Transform's during the cull traversal such as for earth/sky etc.
2002-02-03 11:38:20 +00:00
Robert Osfield
cc39c462de
Updates for Borland compilation.
2002-02-03 11:35:24 +00:00
Robert Osfield
0c63a4b65d
Added defined( __BCPLUSPLUS__) to windows export code segments.
2002-02-02 20:07:59 +00:00
Robert Osfield
97df94db7e
Typo fixed in the header guard.
2002-02-02 10:52:30 +00:00
Robert Osfield
5b978813c3
Fixed clone(CopyOp&) and cloneType() methods which were out of sync with the
...
new style clone operations.
2002-01-30 19:59:36 +00:00
Robert Osfield
1aaa46dbe7
Fixes for Windows build.
2002-01-30 16:24:24 +00:00
Robert Osfield
4d43f83295
Removed the M_PI defines from include/osg/Math and have use a const double osg::PI etc
...
in its place.
2002-01-30 15:27:45 +00:00
Robert Osfield
9471714ba4
Changes for Borland C++ compiler changes.
2002-01-30 15:02:56 +00:00
Robert Osfield
7b370fcb57
Made the LineSegment destructor protected to force users to create segments
...
on the stack thus ensure that they arn't created locally and have their
memory deleted incorrectly.
Also updated the IntersectVisitor so that it no used osg::ref_ptr<> internally
for storing all data. Have also move the IntersectState helper class to inside the
IntersectVisitor which simplifies the external interface to the class.
2002-01-30 12:09:18 +00:00
Robert Osfield
c72efc1059
Fixes for windows build.
2002-01-29 20:25:45 +00:00
Robert Osfield
f061999b22
Removed the now rendundent DeepCopy and ShallowCopy files.
2002-01-29 14:20:29 +00:00
Robert Osfield
02ef10fcfa
Moved all references to osg::Cloner to osg::CopyOp.
2002-01-29 14:04:06 +00:00
Robert Osfield
9a6a96a7e7
Fixed the header guard, which was using the name define as FileUtils.
...
Problem spotted by Terry Welsh.
2002-01-29 12:55:23 +00:00
Robert Osfield
2487861fbc
Have add new osg::CopyOp which replaces last nights osg::Cloner, the new
...
class now combines Cloner and DeepCopy into one class. Cloner and DeepCopy
will be removed in next commit.
Also have added osgcopy app to Demos which shows how the CopyOp have be
subclassed to create users own specific handling of copying.
Have fixed copy constructor problems in GeoSet which fix the deep copy
problem experienced yesterday.
2002-01-29 12:52:04 +00:00
Robert Osfield
f0174e34a3
A couple of fixes to DeepCopy Cloner.
2002-01-28 21:49:31 +00:00
Robert Osfield
f612924a45
Added support for shallow and deep copy of nodes, drawables and state, via a
...
copy constructor which takes an optional Cloner object, and the old
osg::Object::clone() has changed so that it now requires a Cloner as paramter.
This is passed on to the copy constructor to help control the shallow vs
deep copying. The old functionality of clone() which was clone of type has
been renamed to cloneType().
Updated all of the OSG to work with these new conventions, implemention all
the required copy constructors etc. A couple of areas will do shallow
copies by design, a couple of other still need to be updated to do either
shallow or deep.
Neither of the shallow or deep copy operations have been tested yet, only
the old functionality of the OSG has been checked so far, such running the
viewer on various demo datasets.
Also fixed a problem in osg::Optimize::RemoveRendundentNodesVisitor which
was not checking that Group didn't have have any attached StateSet's, Callbacks
or UserData. These checks have now been added, which fixes a bug which was
revealled by the new osgscribe demo, this related to removal of group acting
as state decorator.
method
2002-01-28 21:17:01 +00:00
Robert Osfield
06bd9fda5b
Have made osg::Transform more extensible via additions of new getLocalToWorldMatrix()
...
and getWorldToLocalMatrix(), computeLocalToWorld() and computeWorldToLocal()
methods.
Have updated the CullVisitor, IntersectVisitor and Optimizer to use the
new osg::Transform::getLocalToWorldMatrix() which has the same functionality
as the old getMatrix() but is now supports subclasses of osg::Transform
transparently.
Have added osg::PositionAttitudeTransform as subclass of osg::Transform
which manages the transform as position and attitude via a Vec3 and Quat
respectively.
2002-01-23 22:15:39 +00:00
Robert Osfield
9c8c73c77f
Updates to osg::Transform to allow it subclassed more easily.
2002-01-23 15:42:36 +00:00
Robert Osfield
f16776da22
Fixed FlattenStaticTransformVisitor bug which related to incorrect handling
...
of objects which were transformed by multiple matrices at one time - this
cannot be handled in the flattening process (since we only have one piece
of geometry to transform). This visitor now handles this case by disabling
flattening of any objects and transforms associated in this way.
2002-01-22 19:30:51 +00:00
Robert Osfield
604110b245
Updates to help compilation under gcc 3.03.
2002-01-20 16:24:54 +00:00
Robert Osfield
cf66502fe5
Converted osgUtil::GUIEventAdapter::MouseButtonMask from LEFT_BUTTON etc to
...
LEFT_MOUSE_BUTTON etc, to prevent classes with #define of LEFT_BUTTON.. when
including certain MS Windows headers. Arhsh Snarfff..
2002-01-19 22:11:05 +00:00
Robert Osfield
acf256c466
UPdates to CullVisitor so that it keeps in sync with the new method paramter
...
change in osg::Billboard.
Removed in instance of an object being passed () brackets, have removed the
brackets to avoid an amiguity with the compiler intepreting it as a function.
2002-01-18 22:36:56 +00:00
Robert Osfield
58f72ee2d7
Changes to fix compilation problems on the Sparc.
...
GeoSet.cpp simply remove rendundent code that had already been commented out.
2002-01-18 22:34:07 +00:00
Robert Osfield
4fbf4db42e
Added support for multiple graphics contexts, submission from Max Rhiener.
...
Alas changed the indenting to use 4 spaces instead of tabs, this irons out
differences when working under Windows and Unix, keeping the identing
consistent.
2002-01-18 22:25:51 +00:00
Robert Osfield
58ead9aead
First steps to updating the calcTransform function in Billboard to fix
...
z axis contraint on rotation axis.
2002-01-18 22:15:59 +00:00
Robert Osfield
d20c2795d1
Removed the global scope operators for the isnan(..) etc calls to fix compilation
...
under some compiler combinations.
2002-01-18 14:12:36 +00:00
Robert Osfield
25bb70a86b
Made the osg::Timer::tick() method a const method.
2002-01-18 14:11:46 +00:00
Robert Osfield
5cff1c7a6f
Fixed typo in comment, reference to BoundingSphere has been changed to
...
BoundingBox. Typo spotted by Gial Paolo Lorenzetto.
2002-01-18 10:26:06 +00:00
Robert Osfield
d1b2fcd0df
Fixed ENALBE_ALL_CULLING spelling mistake, have changed it to ENABLE_ALL_CULLING.
2002-01-17 22:41:34 +00:00
Robert Osfield
06e0310314
Added support for glutSpecialFunc, glutSpaceballMotion, glutSpaceballRotate and
...
glutSpaceballRotate into osgGLUT::Window base class.
2002-01-17 22:40:16 +00:00
Robert Osfield
7c29110e40
Changed the enum Types { ... } so that in no longer explicitly sets the values,
...
leaving C++ to ensire that values are unque and insequence.
2002-01-16 21:22:06 +00:00
Robert Osfield
1fb8f9cb86
First batch of changes required for MacOS X build. Orignal submission from
...
Phil Atkin, merged by Robert Osfield.
2002-01-16 10:36:20 +00:00
Robert Osfield
87763acc03
New ajustAspectRatio (ADJUST_NODE) mode added to osg::Camera to fix issue
...
with integration with vrjuggler, submitted by Allen Bierbaum.
2002-01-15 11:05:00 +00:00
Robert Osfield
4ea7de39c6
Added osg::ShadeModel state attribute which encapsulates glShadeModel.
2002-01-04 17:35:54 +00:00
Robert Osfield
e3ad8a87ee
Updates for Cygwin port, from Norman Vine.
2002-01-03 21:34:57 +00:00
Robert Osfield
03b161942b
Fixed the orientation of for_each_triangle cases for QUAD and QUAD_STRIP.
2002-01-02 10:49:26 +00:00
Robert Osfield
c518d69013
Removed the variables which were duplicated in osgGLUT::Viewer and
...
osgGLUT::Window, standardising on the Window ones, and therefore removing
an unitialized variable that had been introduced. This caused a crash
under WindowsXP due to send invalid values to glutReshapeWindow.
2001-12-31 23:21:16 +00:00
Robert Osfield
bd0f334329
Added a more detailed explanation of how LOD's work.
2001-12-31 23:16:20 +00:00
Robert Osfield
97e7f5b829
Added osg::GeoSet::FLAT_TRIANGLE_FAN to the list if primitive handled by the
...
for_each_triangle template function.
2001-12-30 20:03:42 +00:00
Robert Osfield
625e8e730a
Added comment to osg::Transform w.r.t use of GL_NORMALIZE when using
...
scaling Transforms.
2001-12-29 14:27:46 +00:00
Robert Osfield
c236e38b90
Made inline documentation on the Values enum clearer w.r.t the function of
...
OVERRIDE_ON and OVERRIDE_OFF.
2001-12-27 20:06:07 +00:00
Robert Osfield
98c8447ae9
Fixed the osg::Light so that it requires the user to explicitly define which
...
OpenGL light is being operated on, and also now relies upong the standard
osg::State handling of OpenGL modes to switch on the appropriate lights.
The previous static counter mechansim for the light number was causing a
redundent light to be created when the osg plugin created the first osg::Light
to use a prototype for other osg::Light's to be cloned from in the
.osg plugin execution.
The static count mechanism also prevent the lights modes being controlled
independantly from the setting of the light paramters themselves. This
meant that a light once created was global, and couldn't be turned off
locally via the OSG's support for OpenGL mode enabling/disabling. This
has been overcome with the new implementation, the user has complete
flexiblity of when and where to use the different lights at their
disposal.
2001-12-24 21:34:40 +00:00
Robert Osfield
a6d329b812
Updated the osgGLUT::Viewer to subclass from osgGLUT::Window as has been
...
intended since the development of osgGLUT::Window.
2001-12-24 19:06:49 +00:00
Robert Osfield
19c99dc94c
Further work on improving stereo support in the OSG.
...
Renamed the osg::VisualsSettings to osg::DisplaySettings, and
osgUtil::VisualsRequirementsVisitor to osgUtil::DisplayRequirementsVisitor.
Added support for OSG_SCREEN_HEIGHT into osg::DisplaySettings, and added
a DisplaySettings* to the constructors of osg::SceneView and osg::Camera.
2001-12-21 22:48:19 +00:00
Robert Osfield
734be18471
Updates to the support for stereo in osg::Camera, osgUtil::SceneView and
...
the CameraManipulators.
2001-12-21 13:07:35 +00:00
Robert Osfield
9365f0e3b1
Added support for glLineWidth via an osg::LineWidth StateAttribute.
2001-12-20 20:48:46 +00:00
Robert Osfield
8aa72d85cf
Updates to the camera code related to stereo, adding fusion distance.
2001-12-20 16:35:38 +00:00
Robert Osfield
296865e250
Adding support for controlling visual settings via environmental variables
...
and command line paramters. Including support for stereo and stencil buffer.
2001-12-19 00:38:23 +00:00
Robert Osfield
bc49a83c51
Updated the Optimzer::FatternStaticTransform visit so by default it ignores
...
all dynamic transforms, previously it flattened dynamic transforms as well.
2001-12-17 15:05:06 +00:00
Robert Osfield
f5873a82c5
Integrated detailed near clipping plane calculation into osgUtil::CullVisitor,
...
submitted by Sasa Bistroviae.
2001-12-16 22:20:26 +00:00
Robert Osfield
cb8025d913
Renamed osg::Matric::makeIdent() to osg::Matrix::makeIdentity() to make
...
it consistent with the rest of the osg::Matrix naming. Updated OSG
distribution to account for new name.
Added support for the STATIC/DYNAMIC osg::Transform::Type to the .osg
ASCII reader/writer plugin and the flt reader plugin.
Removed the non cost version of osg::Transform::getMatrix() as this could
by pass the dirty mechinism.
2001-12-15 16:56:39 +00:00
Robert Osfield
478274ae7d
Fixes to Windows build in liu of the move to using just std::streams.
2001-12-14 23:18:28 +00:00
Robert Osfield
b1f478e5d2
Updated OSG so that the old OSG_USE_IO_DOT_H has be removed from all headers
...
that used it, all references to the Standard C++ stream classes use the
std::ostream etc convention, all references to "using namespace std" and
"using namespace std::ostream etc" have been removed.
2001-12-14 21:49:04 +00:00
Robert Osfield
6070a9e1b1
Updatedwidley used includes to remove most of the float/double warnings
...
generated when compiling under Windows with STLport.
2001-12-14 18:06:34 +00:00
Robert Osfield
84605a5f4e
Fixes for Win32 build related to changes in using namespace std.
2001-12-14 10:47:20 +00:00
Robert Osfield
a4e4d4fa7c
Removed all references to using namespace std to help solve compilation problems
...
under Windows and IRIX.
Also integrated small change to lib3ds from Drew for IRIX compilation.
2001-12-14 10:02:27 +00:00
Robert Osfield
f848c54ba3
Made the following name changes to Matrix and Quat to clean them up and make
...
the functionality clear given the name. This will break user code unfortunately
so please be away of the following mapping.
osg::Matrix::makeTrans(..)?\026 -> osg::Matrix::makeTranslate(..)
osg::Matrix::makeRot(..)?\026 -> osg::Matrix::makeRotate(..)
osg::Matrix::trans(..)?\026 -> osg::Matrix::translate(..)
osg::Quat::makeRot(..)?\026 -> osg::Quat::makeRotate(..)
Also updated the rest of the OSG distribution to use the new names, and
have removed the old deprecated Matrix methods too.
2001-12-12 20:29:10 +00:00
Robert Osfield
05e4a0b4ce
Fixed problem with loading interleaved arrays in the .osg loader, and corrected
...
a spelling mistake in osg::GeoSet.
2001-12-12 12:55:01 +00:00
Robert Osfield
b3cfed2cb2
Fixed compilation problems under Windows due to changes in using std::ostream etc.
2001-12-11 16:00:32 +00:00
Robert Osfield
6c38b61185
Removed the 'using namespace std' and replaced with more specific 'using std::ostream'
...
this should help prevent polution of the global namespace with std when including
these osg include files.
2001-12-11 11:22:44 +00:00
Robert Osfield
a23627467b
Added support for automatic deletion of osg::GeoSet's attributes, via a
...
default AttributeDeleteFunctor which uses delete []. Users can create
their own handlers for the attribute memory to override this default
behavior.
Fixed a typo in ReaderWriterOBJ.cpp.
2001-12-04 22:57:40 +00:00
Robert Osfield
20e3785bf8
Various files which should have been checked in earlier but were missed...
...
VisualStudio files for flt loader, and header files or Image and Texture
for new osg::Texture::CLAMP_TO_EDGE and osg::Image::dirty.
2001-12-04 20:38:27 +00:00
Robert Osfield
34a4c18a26
Beginings of support for quad bufferd, red/green, and slit screen stereo.
2001-12-02 22:20:46 +00:00
Don BURNS
bca8b68a18
Corrected a small booboo in preprocessor guard for header file in GLU and
...
added Matrix::identity() to Matrix
2001-12-02 08:59:39 +00:00
Don BURNS
4ef08067b7
Small fix for preprocessor _MP symbol clash with MFC.
2001-11-21 15:53:29 +00:00
Robert Osfield
bc44b9342b
Added DLL export to the internal classes in osgUtil::Optimize so that the internal
...
classes can be used directly by client applications.
2001-11-19 11:52:58 +00:00
Robert Osfield
969f757679
Added osg::Image::dirtyImage() and setModifiedTag() to allow external
...
updating of the image modified flag to be used in conjunction with
texture subloading.
2001-11-18 21:31:16 +00:00
Robert Osfield
2c3b927d6c
Fixed compilation problem under Wndows
2001-11-14 15:32:15 +00:00
Robert Osfield
6cf543cf8c
Added osgUtil::TransformCallback to help with rigid body animation.
2001-11-14 14:10:12 +00:00
Robert Osfield
a434abafd7
Fixes for IRIX build.
...
Updates to the osg::Transform, adding preMult and postMult methods and
deprecating the old preRotate,preTranslate,preScale.
Updated the rest of the OSG so that it nolonger uses the deprecated
osg::Transform nodes.
Renamed osgUtil::SceneView::setGlobalState() to
osgUtil::SceneView::setGlobalStateSet() so that the name reflects its
functionality better. Updated osgGLUT::Viewer etc to cope with new
name change.
2001-11-14 14:09:07 +00:00
Robert Osfield
34555f61d6
Added new files to cvs.
2001-11-12 10:04:57 +00:00
Robert Osfield
5ceefdcc12
Fixed compilation error in src/osgDB/FileUtils.cpp.
...
Added support for nested NodeCallbacks, allowing them to be chained together
so that multiple operations can be applied.
2001-11-11 22:32:59 +00:00
Robert Osfield
7290f793f1
Added osgText::Paragraph which is a subclass from Geode which composes a
...
list of text drawables as a paragraph block, handles breaking of text into
individual lines automatically.
Changed the osg::Node::setUserData so that the data type has to be an
osg::Referenced, and removes the dependancy on osg::MemoryAdapter. I have
done this since it simplifies the OSG side of the interface and makes it
less like that the user might abuse the memory managment of the data. It
does however mean that user data will have by subclassed from Referenced,
and therefor may require users to have their own adapter to do this.
However, this little nuasance is worth the extra cleaness and robustness
afforded by going the osg::Referenced route.
2001-11-09 15:06:01 +00:00
Robert Osfield
b3160c882e
Fixed inlcude/BoundingBox to compile under Windows.
2001-11-06 11:36:11 +00:00
Robert Osfield
138a5300b0
Fixed inlcude/Math to compile under Windows.
2001-11-06 11:07:43 +00:00
Robert Osfield
5e6153b428
Added methods to support isNaN,isInfinte and valid to osg::Vec* and osg::Math,
...
and added a guard to IntersectVisitor which uses these new methods to prevent
invalid segments being added.
2001-11-06 10:34:51 +00:00
Robert Osfield
b45aa55555
Integrated updates to stats sent in my Geoff Michel.
2001-11-04 19:29:20 +00:00
Robert Osfield
06abf2266b
Updates to Makefiles to include osgText.
...
Also a couple of undefined methods in osgText::Text have been added.
2001-11-02 20:11:37 +00:00
Robert Osfield
42faf78b47
Updated index.html with dependacy info about the new osgText library.
...
Modified osg/Drawable::draw(..) so that it uses display list COMPILE
rather than COMPILE_AND_EXECUTE to solve performance problems under
NVidia drivers. The old behavior is still available by comments out
a #define.
Fixed the default compilation list src/osgPlugins/Makefile so that it
compiles by defalt png and gif.
2001-11-02 12:26:33 +00:00
Robert Osfield
4d4ff39ff9
Added a bool paramter to osg::StateSet::compare(const StateSet& rhs,bool compareAttributeContents=false) const;
...
to allow it to use different comparison schemes, now it can use checking for pointer equality (the default)
or attribute contexts. This has been added to assist optimization of databases within the flt loader, but
also could be useful for other operations too.
2001-10-31 20:04:32 +00:00
Robert Osfield
94ce36f9a3
Update to osgText to get things compiling under Windows.
2001-10-31 12:27:48 +00:00
Robert Osfield
8f4e62ced0
Further updates to the ReaderWriter support in osgDB, and a fix to a small warning
...
in Matrix.cpp.
2001-10-30 19:23:24 +00:00
Robert Osfield
f0372817b5
Added support for ReadResult and WriteResult to the osgDB::ReaderWriter
...
to allo plugins to pass back more information about the success or failure
of a file load. All plugins have been updated to the new convention.
2001-10-30 14:20:37 +00:00
Robert Osfield
97e4488d80
Changed a #define ... (GLenum) 0x84fe to 0x84FE to fix problems under MacOS9
...
build.
2001-10-29 19:29:49 +00:00
Robert Osfield
939b12a908
Updates of osgDB/FileUtils to fix compilation problems under Win32
2001-10-24 19:48:58 +00:00
Robert Osfield
573f68c35b
Updates to osgText.
2001-10-24 13:46:58 +00:00
Robert Osfield
6ddb40ba70
Updated the osgText implemention, now works under Linux.
2001-10-24 09:08:02 +00:00
Robert Osfield
36d206f40f
Updates to the new osgText library to get it to compile under Linux.
2001-10-23 22:08:02 +00:00
Robert Osfield
8e1b1bcfc1
First past integrat of Max Rhiener work on wrapping FTGL to create osgText
...
library and demo.
2001-10-23 19:51:39 +00:00
Robert Osfield
63bb05e6fd
Added new osgGLUT::Window base class which is very basic right now, all it does
...
is bring up a GLUT window and provide virtual functions from which users should
subclass to add functionality.
2001-10-23 15:55:01 +00:00
Robert Osfield
25c8b05914
Integrated Geoff Michel's updates to Stats code, whilest move all text rendering
...
back in the viewer from the Statistics header.
Added a osg::State::captureCurrentState(StateSet&) method and a copy constructor
to osg::StateSet.
2001-10-22 22:02:47 +00:00
Robert Osfield
7082abb8ad
Added support for an osgUtil::SceneView::init() traversal which is called once
...
per scene view. The user can attach a NodeVisitor to do init for them, or
leave it to the default which is to use the osgUtil::DisplayListVisitor
which compiles all display lists and texture objects. The init traversal
is called automatically by the first call to either app() or cull(), so
should not be called by user code during initialization. This ensures
that a valid graphics context has been established before OpenGL is initialized.
osgUtil::DisplayListVisitor has also been updated to use a bit mask for options, and the addition of
compilation of texture objects (via StateAttribute::compile) has also been
added.
2001-10-20 20:26:36 +00:00
Robert Osfield
ccc3d3fd8a
Added osgUtil::Optimizer which contains four visitor each designed for doing
...
different types of optimization on the scene graph - state optimization,
flattening static transforms, combining LOD's and removing redundent groups.
The new Optimizer replaces the once seperate OptimizerStateVisitor.
2001-10-19 14:22:02 +00:00
Robert Osfield
54d490e24b
Added support for specifying whether view frustum and small feature culling
...
should be applied to a node or its child with the new osg::Node::setCullingActive()
flag. A mechanism has been implemented so that if child has its culling disabled
then their parents, all the way up to the root are also have their culling
implicitly disabled.
The osg::CullVisitor has updated to take account of
both the explicit control via setCullingActive and the implicit culling
disabling through children being disabled.
This feature is useful for nodes which don't have a bounding volume to cull
against, earth sky implementations and light sources.
The default osg::Node::_cullingActive is true, i.e. culling is enabled by
default.
2001-10-19 12:56:37 +00:00
Robert Osfield
60d33f91f8
Reverted Bryan's changes to FrameStamp w.r.t std::tm structure which doesn't
...
compile under Win32 and IRIX. Will need to find another solution.
2001-10-16 21:47:47 +00:00
Bryan THRALL
a203a1b127
*** empty log message ***
2001-10-16 20:56:46 +00:00
Robert Osfield
ada36c3462
Fixes for Win32 compilation.
2001-10-16 16:48:19 +00:00
Don BURNS
747019d0b9
added float *() operator to Vec{2,3,4} so we can pass Vec3's directly to
...
OpenGL glVertex?fv().
2001-10-16 03:59:37 +00:00
Robert Osfield
de924ca759
Fixes for compilation under IRIX, submitted by Randal Hopper, with mods
...
from Robert.
2001-10-15 15:50:55 +00:00
Robert Osfield
5de4e8e6d8
Made the new global state attribute instances in osg::State use osg:ref_ptr
...
to automatically handle the memory deletion.
2001-10-15 14:29:40 +00:00
Robert Osfield
59077fed15
Added support for automatic creation of global StateAttributes to osg::State,
...
these global attributes are created by cloning any attributes which are
applied during rendering, the clone in a shallow copy, which will set up
default valus for that attribute. This should prevent attribute bleed
from one stateset to the next when the global StateSet doesn't contain
an attribute used within the scene graph.
2001-10-15 14:07:54 +00:00
Robert Osfield
06dafa487e
Added osgDB::ReaderWriter::Options class to the ReaderWriter base class, support
...
for settings options in osgDB::Registry, and added the paramter to all of the
reaader/writer plugins. The Options structure by default has an string attached
for packing basic options, however, it also can be subclassed to encapsulate
any users defined option data. In the later case both the client code *and*
the plugin need to be aware of subclass, the plugin will need to use
dynamic_cast<> to assertain its type.
2001-10-14 17:54:25 +00:00
Robert Osfield
39ea16aad7
Added osg::StateSet::merge(const StateSet& rhs) merges merges the modes and
...
attributes of rhs into 'this' stateset.
2001-10-14 09:58:49 +00:00
Don BURNS
3ecaf3cd6c
Fixed a small boo-boo in definition of bit masks in include/osg/Drawable
...
Fixed incorrect normal conversions for osgconv.
2001-10-14 06:01:31 +00:00
Robert Osfield
1e4a0cadf5
Changed the naming and calling convention of the new Drawable::AttributeFunctor
...
and have updated GeoSet to use mutable values for the _numverts etc, allowing
osg::GeoSet::computeNumVerts() to be a const operation. osg::GeoSet::getNumVerts
is now a const once more, so avoiding compilation problems. Also chaned the new
osgconv orientation code to use a Drawable::AttributeFunctor so it can work on
other Drawables other than just GeoSets.
2001-10-13 11:16:10 +00:00
Don BURNS
79a992ac72
Updated osgconv to be able to handle orientation swapping.
2001-10-13 07:24:25 +00:00
Don BURNS
5b3a52547a
Removed personal note in Matrix header file
2001-10-13 01:28:33 +00:00
Robert Osfield
9db63dfd5d
Added != method to Vec2,Vec3,Vec4 and did further work on the
...
AttributeUpdateFunctors.
2001-10-12 20:05:55 +00:00
Robert Osfield
96085619ee
Added support for DYNAMIC/STATIC osg::Transform types and added new osg::Drawable::getStats
...
and supportsAttributeUpdate(..) and applyAttributeUpdate(...) methods which will
be to enable hooks into Drawable subclasses.
2001-10-10 20:20:14 +00:00
Robert Osfield
3c5b9c813d
Fixed spelling of osg::GeoSet::getNumInterleavedIndices, was missing a 'n'!
2001-10-10 14:38:12 +00:00
Robert Osfield
22aef83a8f
Updated MSVC Workspace files to fix build problems.
2001-10-09 20:03:51 +00:00
Robert Osfield
3da57d6d22
Added a osg::DegreesToRadians() and osg::RadiansToDegrees() method to osg/Math,
...
updated the ReaderWriterBMP.cpp (mods sent in my Geoff Michel) and
moved the osgUtil::Statistics to osg::Statistics in preperation to adding it
to the the Drawable base class.
2001-10-06 20:29:42 +00:00
Robert Osfield
1fc623ad15
Added the Copyright message to the top of osgWX, with Ben Disoe's name as
...
he wrote all the code.
2001-10-04 16:49:13 +00:00
Robert Osfield
9917b6500d
Added a copyright notice to all core headers, which all begin with
...
//C++ header to help scripts and editors pick up the fact that the
file is a header file.
2001-10-04 15:12:57 +00:00
Robert Osfield
d5ed4e2305
Added an implemention of basic state sorting to the RenderBin, but have commented
...
out the sort operation as Peformance benifit is currently negligable, will need
to improve on the sort functor to see real benifits.
2001-10-04 14:35:42 +00:00
Robert Osfield
4be1324b8c
Changed the numeric ordering of StateAttributes Types, as part of an
...
investigation into state sorting.
2001-10-04 14:10:20 +00:00
Robert Osfield
2c6e85442b
Integrated changes for MacOSX, submitted by Phil Atkin, with small mods by
...
Robert Osfield to maintain compatability under Linux.
2001-10-03 21:44:07 +00:00
Robert Osfield
7a7a26c2ea
Added include/osg/EarthSky and src/osg/EarthSky to cvs.
...
Also move osg across to using radians for angular paramters by default.
By defining USE_DEGREES_INTERNALLY you can get the OSG to revert to
the old style degrees. This later feature is deprecated and only meant
for helping comptability in the interim.
2001-10-02 15:59:49 +00:00
Robert Osfield
430c8606e9
Added osg::EarthSky node to the core osg library, and added support for it into
...
osgUtil::SceneView, osg::CullVisitor, osgPlugin/osg and updated the hangglide
demo to use the new earth sky node.
2001-10-02 11:36:14 +00:00
Robert Osfield
fc1fa57275
Added support for osg::StateSet comparison operators and using this new feature
...
added support in osgUtil::OptimizeStateVisitor for removing duplicate
StateSet's from the scene graph, previously only duplicated StateAttributes
we're removed.
2001-10-01 23:02:14 +00:00
Robert Osfield
7359d33d53
Made spelling corrections, the spelling mistakes picked up by a script
...
written by Neil Salter.
script
2001-10-01 11:15:55 +00:00
Robert Osfield
ef3217cfde
Interegrated changes to Timer from Neil Salter to fix compilation problems which had been introduced by doing #include's within the osg namespace.
2001-09-30 20:41:20 +00:00
Robert Osfield
8e2f1bdb72
Modified the Matrix multiple method added by Don so it is safer and added comments explaining why it shouldn't be needed as other more efficient methods should be doing the work for us.
...
Also added Matrix::ensureRealized() to support the lazy initialization of Matrix, whilest keeping the implementation robust so that external calls to Matrix which get values do so on an initialized matrix.
2001-09-29 09:37:43 +00:00
Don BURNS
4ba58ca29b
Added operator * (Matrix &) to Matrix (header) and
...
operator [] to reference matrix elements.
2001-09-29 02:48:31 +00:00
Robert Osfield
ef2e9236bd
Made spelling corrections to osg include files, spelling mistakes detected by a script written by Neil Salter which analyses comments for mistakes.
2001-09-28 20:10:41 +00:00
Robert Osfield
12f77f141e
*** empty log message ***
2001-09-28 16:56:19 +00:00
Robert Osfield
57fd2b4bcb
*** empty log message ***
2001-09-28 12:36:40 +00:00
Robert Osfield
2a9848ea95
*** empty log message ***
2001-09-27 16:34:41 +00:00
Robert Osfield
ba47264c5e
*** empty log message ***
2001-09-27 09:44:55 +00:00
Robert Osfield
9fd1706e3c
*** empty log message ***
2001-09-25 17:56:56 +00:00
Don BURNS
7ae58df42a
Synch with 20010921
2001-09-22 02:42:08 +00:00
Don BURNS
ac2bdbda30
1) new implementation of the osg::Matrix class. Note details below.
...
2) cleaned up osg::Timer, still in progress. My intent has been to
pave the way for support for other OS's.
3) new osg::FrameStamp class which has a frame number, reference
time for each frame to be app, culled and drawn. The FrameStamp
also can be passed to other machines (i.e. cluster) and the
FrameStamp can be used with the slaves own app,cull and draw.
I've also added the beginings of a calander time data to the
FrameStamp to allow time or day and year to be used in setting
up position of sun/moon etc. etc.
4) The osg::State now has contains a pointer to the last applied
osg::Camera and the current osg::FrameStamp, so that drawables
can use both pieces of information for creating effects such
CLOD, earth/sky etc. The osg::NodeVisitor also now allows you
to attach a FrameStamp to support syncronization of actions on
the scene graph.
2001-09-19 23:52:12 +00:00
Don BURNS
736e0f73c3
o Added osgUtil::StateOptimizeVisitor which traversing the scene
...
graph and builds up a map of all StateAttributes and StateSets
and then removes the duplicates. This promotes state sharing
throughout the scene graph which inturn can significantly improve
performance thanks to reduced state changing. Particularily
effective on datasets where a great deal of duplicated state
exists.
o Added pure virtual compare(const osg::StateAttribute&)
method to osg::StateAttribute, and implemented it in all the
subclasses from StateAttribute. Added <,== & != operator
on StateAttribute and Matrix to support new StateOptimizeVisitor.
o Added META_Object, META_Node and META_StateAttribute macros to
Object, Node and StateAttribute respectively which define the
standard pure virtual methods such as clone, className
& isSameKindAs. Changed all the appropriate header files to
use these macro's rather define them in each header, these cleans
up the headers considerably.
o Corrected the implementation of osg::Light::getType so it correctly
uses a unique type for each of the OpenGL lights (GL_LIGHT0..
GL_LIGHT7 relates to osg::StateAttriburte::LIGHT_0..LIGHT_7.
o Changed the definition of osg::StateStateAttribute::Type to
is now a unsigned int rather than an enum, and have changed the
name of the previous Type enum list to be Types. This makes it
more consistent with the difination of values found in
StateAttribute
and also easier to extend with having to cast to an enum.
o From Pail Fredrikson, updated Maitrx.new implemention which uses
the same matrix orientation as the original Matrix implemention.
2001-09-19 23:46:48 +00:00
Don BURNS
81f553aaee
o Updated Metrowerks files for MacOS. They aren't 100% there yet,
...
but getting there.
o First cut of osgcluster demo. Very simple beginings. Alas
I only one PC here so I can't test it in its current guise.
o New support for NodeCallbacks, via AppCallback attached to
osg::Node's, and a default osgUtil::AppVisitor which calls them on
each frame.
o Support for traversal masks in osg::NodeVisitor, osg::Node
which allows nodes to be switched on or off via a bit mask.
o Suppport for traversal number (frame number) and reference time
into osg::NodeVisitor to handle syncronization of app and cull
traversals. This also assist clustering as traversal number
master to slaves.
2001-09-19 23:41:39 +00:00
Don BURNS
77494207fb
Removed files.... synching witn 0.8.42
2001-09-19 21:51:06 +00:00
Don BURNS
7e81f6cfa6
More clean up for synch with 0.8.42
2001-09-19 21:19:47 +00:00
Don BURNS
e8f256a59d
Added a bunch of files synched with 0.8.42
2001-09-19 21:08:56 +00:00
Don BURNS
70208ebc06
Initial revision
2001-01-10 16:32:10 +00:00