Commit Graph

1727 Commits

Author SHA1 Message Date
Robert Osfield
85edf40fcb Added createEvent() convinience method. 2006-03-15 15:49:21 +00:00
Robert Osfield
cbc2668c5c Added comment on the meaning of the matrix paramter in the computeIntersections methods. 2006-03-15 12:26:48 +00:00
Robert Osfield
d43dbaeadd Build fixes 2006-03-14 13:18:21 +00:00
Robert Osfield
2b61cf0a1e From Farshid Lashkari, "The following patch adds a multisample option to the
osg::DisplaySettings class. OsgCameraGroup will now read the setting
from the DisplaySettings instead of hardcoding the value. I added the
following commandline option to be able to set the multisample value:

--samples <num>

One thing to note, OsgCameraGroup would previously check if the
computer is an SGI and set multisample to 4. I retained this check in
DisplaySettings to be backwards compatible."
2006-03-13 21:29:17 +00:00
Robert Osfield
1a16d6d6b0 Added an EventQueue directly into osgProducer::Viewer. 2006-03-13 13:19:37 +00:00
Robert Osfield
3246dde716 From Brede Johansen, new OpenFlight plugin!!!!!
By default the original flt plugin is still used, to select at runtime
the new plugin set the env OSG_OPEN_FLIGHT_PLUGIN=new
2006-03-08 21:38:37 +00:00
Robert Osfield
4fc4e60cc3 From Bob Kuehne, added osg::getGlVersion() and fixed a minor typo in Texture3D. 2006-03-08 16:11:54 +00:00
Robert Osfield
fa5ff9d169 Added EventQueue. 2006-03-08 15:40:02 +00:00
Robert Osfield
dbbabf87c6 Converted osgGA::GUIEventAdapter into a concrete class capable of respresenting
keyboard and mouse events.

Added osgGA::EventQueue class to support a thread safe event queue and adaption
of keyboard and mouse events.

Removed osgProducer::EventAdapter as GUIEventAdapter replaces it.

Adapted osgProducer and examples to work with the new changes to osgGA.
2006-03-08 14:09:47 +00:00
Robert Osfield
c448e4d791 Began work on making EventVisitor capable of adapting events directly. 2006-03-05 20:46:59 +00:00
Robert Osfield
deb6632b04 Fixes to removed dependency on RefNodePath. 2006-02-28 18:54:29 +00:00
Robert Osfield
abed6b7951 Ported NodeTrackCallback and NodeTrackManipulator across to use oberserver_ptr
instead of RefNodePath.

Removed now redundent RefNodePath.
2006-02-27 19:49:47 +00:00
Robert Osfield
1dcf4fe81f Added support in osg::computeWorldToLocal and compteLocalToWorld functions for automatically
stripping any absolute or root CameraNode's from the NodePaths.

Added osg::Node::getWorldMatrices() convinience method.
2006-02-27 19:48:34 +00:00
Robert Osfield
8f2ffb7c2d Added new observer_ptr templated smart pointer to allow one to retain pointers
to objects but have the pointer reset to null if that object is deleted.
2006-02-27 19:44:33 +00:00
Robert Osfield
8489b22439 From Gordon Tomlinson, spelling fixes. 2006-02-23 12:41:05 +00:00
Robert Osfield
7ea1c56b4c Fixed getBound() comment. 2006-02-22 20:51:26 +00:00
Robert Osfield
def7a78842 Fixed typo of Validity. 2006-02-22 19:14:01 +00:00
Robert Osfield
e72a02a083 Fixed documentation. 2006-02-22 14:35:06 +00:00
Robert Osfield
32b929a493 Added support for OpenGL mode black listing to provide better support
for extension checking and invalidation of OpenGL modes associated with
extensions.
2006-02-22 14:31:13 +00:00
Robert Osfield
25abad8307 From Paul Martz, "I've attempted to make AutoTransform override computeBounds() to return
an invalid bounding sphere if it hasn't seen a cull traversal yet. It
depends on _firstTimeToSetEyePoint, which is initially true, then false
after a cull. There might be a better way? If so, let me know.

This change does resolve the issue I had encountered with auto scale to
screen and incorrect culling."
2006-02-21 13:51:10 +00:00
Robert Osfield
7d5c81bf5e From Ulrich Hertlein, spelling corrections and a few Doxgen comments. 2006-02-20 21:05:23 +00:00
Robert Osfield
59ad441be1 Added BlenColour(Vec4) constructor and updated wrappers. 2006-02-09 12:20:42 +00:00
Don BURNS
8f7d349f7e Added a filter to the Delaunay Triangulator to insure that incoming points
are unique in the X and Y components.
2006-02-08 23:41:32 +00:00
Robert Osfield
608a183753 Added s/getDoTriStrip and s/getSmoothing method. 2006-02-06 20:36:09 +00:00
Robert Osfield
6624f3aa62 Improved default settings, re-enambled smoothing and tri stripping of sampled data. 2006-02-06 19:16:04 +00:00
Robert Osfield
3936bcde9e Added support for up sampling by dividing longest edges. 2006-02-06 17:12:35 +00:00
Robert Osfield
4bc13ec71b From David Guthrie, OSX marco reworking to better handling different OSX versions. 2006-02-05 21:53:37 +00:00
Robert Osfield
3baf9f51d2 From Brad Anderegg, add _frameNumber and associated code to ensure that particles
only get updated once per frame.
2006-02-04 21:12:45 +00:00
Robert Osfield
83add79c07 From Chris Hanson, added get methods for size of file request and data to compile lists. 2006-02-04 21:06:48 +00:00
Robert Osfield
eaf6c5ac35 Added new BoxPlacer files. 2006-01-17 15:18:44 +00:00
Robert Osfield
93a2c3d011 Improved handling of clean up of osg::Program/osg::Shader on closing of a graphis context. 2006-01-16 17:05:17 +00:00
Robert Osfield
0c9ab51e09 Fixed indenting. 2006-01-16 17:03:34 +00:00
Robert Osfield
ab71114219 Moved the body of the FBOExtensions::instance() to the .cpp and added bool to
control whether that an FBOExtensions structure can be created if missing.
2006-01-03 10:44:14 +00:00
Robert Osfield
378dc18f1c Seperated out the view and model matrices in IntersectVisitor to allow
handling of world coordinates better when using PickVisitor.
2005-12-22 14:06:33 +00:00
Robert Osfield
7b31c2e6ac Added debugging info for future reference (currently commented out.) 2005-12-19 13:57:04 +00:00
Robert Osfield
323473144a Fixed computeWindowMatrix so that it properly accounts for x,y position of the viewport. 2005-12-19 12:00:40 +00:00
Robert Osfield
a1cfdca94d From Eric Wing, made getLineCount() const. 2005-12-19 11:18:26 +00:00
Robert Osfield
13e45c98fb Fixed handling of absolute transforms in IntersectVisitor. 2005-12-16 16:27:17 +00:00
Robert Osfield
4535cc0c09 Added back in Switch::removeChild(Node*) 2005-12-16 11:04:33 +00:00
Robert Osfield
2815622c35 Improved stats handling, and fixed a couple of stats bugs. 2005-12-15 17:14:40 +00:00
Robert Osfield
72554ca27e From Jason Beverage, added option to control whether simplification of
tiles is done during osgdem builds.
2005-12-15 16:30:31 +00:00
Robert Osfield
6ff781b5b0 Removed Switch::removedChild(Node*) as the Group::removeChild(Node*) implementation
should be sufficient, as it calls the virtual removeChild(uint,uint).
2005-12-15 15:50:17 +00:00
Robert Osfield
9cce605cb2 From Yefei He, fix to QUAD_STRIP stats. 2005-12-15 15:25:02 +00:00
Robert Osfield
0347895c96 Fixed typo in comments and onscreen help. 2005-12-09 20:03:04 +00:00
Robert Osfield
7d4acba022 Changed constructors to use unsigned int to get round VS6.0 + wrapper problems. 2005-12-09 16:00:01 +00:00
Robert Osfield
479af6e825 Build fix for VS6.0 in the template constructors 2005-12-09 14:52:19 +00:00
Robert Osfield
a8d7234a0b From Eric Wing, added missing removeChildren method. 2005-12-09 11:22:09 +00:00
Robert Osfield
53ee0ce3ec Added CameraNode::releaseGLObejcts() to help in clean up, and changed the
ordering in SceneView::flushDeleteGLObjects() so that fbo's are deleted
before any texture objects they use are deleted.
2005-12-08 10:06:57 +00:00
Robert Osfield
b835ec9ee9 Changed s/getGdalDataset() methods to use void* to avoid introspeciton wrapping problems. 2005-12-08 10:03:39 +00:00
Robert Osfield
49301347e8 From Eric Wing, fix to comment. 2005-12-08 08:57:16 +00:00
Robert Osfield
27ad107378 Added new Node::getParentalNodePaths() method.
Added better handling in computeIntersections(..) of nodes that are internal
to the scene graph, correctly accounting for the accumulated transforms.

Changed the EventVisitor so that it only traveses active children rather than
all children.

Updated wrappers.
2005-12-07 15:29:29 +00:00
Robert Osfield
73cc97f0e1 From Antonoine Hue, a small modification to the osgTerrain::DataSet
to be able to pass an already opened GDAL Dataset to the
osgTerrain::DataSet::Source
2005-12-07 15:26:45 +00:00
Robert Osfield
3f3c7b1df8 Added Camera::isRenderToTextureCamera() method, and improved support in PickVisitor
and IntersectVisitor for CameraNode, including the ignoring of render to texture cameras,
such that HUD's etc are still intersected against.
2005-12-07 11:36:56 +00:00
Robert Osfield
99be2cdb7f Moved PickVistor into osgUtil 2005-12-07 10:25:50 +00:00
Robert Osfield
4d658ae1ea Improved the PickVisitor to make it more flexible and robust. 2005-12-06 21:59:43 +00:00
Robert Osfield
65d06b4577 From Farshid Lashkari, removed second redundent dirtyDisplayList() call. 2005-12-06 10:18:33 +00:00
Robert Osfield
22d5390784 From Louis Hamilton, fix to LightPoint's under 64 bit build, changing longs to ints in
colour conversion code.
2005-12-06 10:16:21 +00:00
Robert Osfield
c45ead4c65 Fixed tabbing. 2005-12-04 20:08:41 +00:00
Robert Osfield
851972beab Added OSG_EXPORT to PrimitiveSet. 2005-12-03 15:12:52 +00:00
Robert Osfield
b16f40e5ab Moved the body of the getNumPrimitives() into the .cpp. 2005-12-03 00:03:31 +00:00
Robert Osfield
8d8229cc05 From Marco Jez, hack/fix for VS compile/link problems related to STL containers. 2005-12-02 00:25:40 +00:00
Robert Osfield
eb51a53919 Added CameraBarrierCallback so that multi-thread multi-cameras are synconized
correctly when do stats collection.
2005-11-29 12:09:45 +00:00
Robert Osfield
6a5a10cf47 Fixed docs of setImage. 2005-11-25 13:45:23 +00:00
Robert Osfield
daefa1cae6 Added releaseGLObjects to PrimitiveSet. 2005-11-25 12:31:04 +00:00
Robert Osfield
736a8433ca Added FBO deletion support, and better FBO querry and fallback mechansim in RenderStage. 2005-11-24 15:18:12 +00:00
Robert Osfield
09bfbeec8b Changed the VS template export block to just compile when VS verion >= 1300 (VS.NET onwards.) 2005-11-24 15:17:28 +00:00
Robert Osfield
e1dd759dd8 Changed CameraNode::getDataChangeMutex() to be a pointer rather than a reference to
get around osgIntrospeciton build problem with the OpenThreads::Mutex copy constructor being private.
2005-11-23 16:32:55 +00:00
Robert Osfield
74830f9ce1 Added multi-buffering of the CameraNode::_renderingCache to help cope with multiple graphis context usages. 2005-11-23 13:44:27 +00:00
Robert Osfield
a91b8fa40a Moved getGLExtensionFuncPtr implementation into the .cpp to make it easier to
change it implementation without forcing a complete recompile.
2005-11-23 10:16:25 +00:00
Robert Osfield
f78a37be9c Simplified the TangentSpaceGenerator so that is automatically converts any models
with indices to one without indices and then runs the tangent space generation code on the result.
2005-11-22 21:14:26 +00:00
Robert Osfield
33f4494830 Added missing dirtyDisplayList call into osg::Geometry::set calls. 2005-11-22 13:56:50 +00:00
Robert Osfield
f77b38ae9c Added DatabasePager::s/getDrawablePolicy() to allow the way that the display list/VBO settings
are applied to loaded databases.
2005-11-22 13:14:00 +00:00
Robert Osfield
14f943cc32 From Marco Jez, fix for wchar_t being redefined. 2005-11-22 09:47:18 +00:00
Robert Osfield
8289eecb7e From Roger James, reworked the export of std::vector<> on standard types to prevent
problems with .lib being built for all targets under VS7.x
2005-11-21 13:51:24 +00:00
Robert Osfield
d0c9ef1e14 Added the ability for osgParticle::ParticleEffect to switch off the automatic setup.
Normally the automatic setup is useful, but in the case of the .osg support this automatic
update was forcing premature loading of imagery that wasn't necessarily, and can lead to
reports of looking for files that arn't present.
2005-11-18 17:04:55 +00:00
Robert Osfield
b0869a6f60 Added s/getCenter and s/getRotation methods, and updated wrapper. 2005-11-18 15:00:34 +00:00
Robert Osfield
38a9dc51f8 From Toshiyuki Takeahei, addition of s/getDistance() methods 2005-11-18 14:49:05 +00:00
Robert Osfield
9c93332c03 From Rodger James, changed the Win32 static library compilation support to use
OSG_LIBRARY_STATIC to avoid problems with building libs when not required.
2005-11-18 09:52:24 +00:00
Robert Osfield
35fcaf7bde Convert tabs to spaces. 2005-11-17 17:44:48 +00:00
Robert Osfield
b15b677cc3 From Mikkel Gjøl, addition of paramter set/get methods to osgGA::*Manipulators,
change of ' ' to GUIEventAdapter::KEY_Space, fix to url in Matrix_implementation.cpp.
Syntax fixes by Robert Osfield to above submission fix inconsistencies with normal
OSG coding style.
2005-11-17 11:03:20 +00:00
Robert Osfield
47fcfa4cc5 From Eric Wing, compile fixes. 2005-11-15 21:47:24 +00:00
Robert Osfield
20ce2ada9f From Marco Jez, warning fixes. 2005-11-15 11:43:29 +00:00
Robert Osfield
48b69d5b13 From Toshiyuki Takehei, typo fix of getTrackerMode(). 2005-11-14 11:08:16 +00:00
Robert Osfield
9d8fd69fa9 Change the KeySwitchMatrixManipulator so that it two sets of getMatrixManipulator
methods, two that takes an index,two that takes a key value.  Updated the ViewEventHandler
so the it now uses the getMatrixManipulatorWithIndex() method to avoid previous ambiguity.
2005-11-14 11:00:36 +00:00
Robert Osfield
5de633f71b From Farshid Lashkari : "I reported earlier about a problem with a custom emitter I was using.
I spent some more time debugging and it turns out there was a bug in
the ParticleSystem::update_bounds function. When the bound is being
reset, both the min and max are being set to the same postion without
the radius being subtracted/added to it. When there is only one
particle alive in the system this causes it to be culled by small
feature culling. I've modifed the function so that when the bound is
reset, the radius is subtracted/added to the position. This fixes my
problem."
2005-11-14 09:31:06 +00:00
Robert Osfield
0ec0327b96 Added scene stats support to osgProducer::ViewerEventHandler. 2005-11-11 17:00:36 +00:00
Robert Osfield
e5685bc1ac Added s/getMaxNumOfTextureUnits control to osgGA::StateSetManipulator, and set the default to 4. 2005-11-11 14:22:57 +00:00
Robert Osfield
8558a2b046 From Marco Jez, compile for a syntax error problem. 2005-11-10 20:56:16 +00:00
Robert Osfield
c2f1527fe0 Added better control for cancel GraphicsThreads. 2005-11-10 15:25:06 +00:00
Robert Osfield
afab32079e Fixed typo of CoordinateSystem. 2005-11-10 11:56:18 +00:00
Robert Osfield
e8d6df7583 Addd OsgSceneHandler::s/getCleanUpOnNextFrame() and support for it in the draw() method,
when CleanUpOnNextFrame is enabled the next frame simple deleted OpenGL objects without doing any draw traversal.
2005-11-10 11:39:01 +00:00
Robert Osfield
20d9c3c3c4 Compile fixes for VS7.1 2005-11-10 09:42:34 +00:00
Robert Osfield
26c911acf3 Added a s/getState() to osgTerrain::DataSet to allow better integration with applications. 2005-11-09 20:24:47 +00:00
Robert Osfield
83d492162e Added the support in AnimationPathCallback for taking a pivot, axis and rotation rate
paramters in its constructor to allow it to be used to create rotations around a point.
This provides the same interface and functionality as osgUtil::TransformCallback but
has the advantage and AnimationPathCallback is fully supported by the .osg and .ive file formats.
2005-11-09 15:11:22 +00:00
Robert Osfield
258425d649 Bumped the version numbers up to 1.0 in preparation for 1.0-rc1. 2005-11-09 10:49:56 +00:00
Robert Osfield
53e075f78b From Brad Colbert/Robert Osfield: added s/getSourceFormat and s/getSourceType to osg::Texture
along with support for this Texture1D, 2D, 3D, TextureCubeMap and TextureRectangle.  The
new SourceFormat and SourceType parameters are only used when no osg::Image is assigned to
an osg::Texture, and main use is for render to texture effects.

Added support for --hdr option in osgprerender, which utilises the new Texture::setSourceFormat/Type() methods.
2005-11-08 15:52:21 +00:00
Robert Osfield
857b3e03c3 Added sorting and clearing of pre and post RenderStages stored in RenderStage,
and added some debugging comments which are currently commented out from compilation -
these are left in just in case future debug work requires them.
2005-11-08 11:46:52 +00:00
Robert Osfield
2773d45f2a From Wang Lam,"The changes allow users of OpenSceneGraph to call a new function
readFontStream() to load fonts from a std::istream, rather than from the
local filesystem by name.  Such a call may be used, for example, if the
user has a font fetched over a network, or a font available in memory
without a correspondng filename.

The changes implement the new function by following the corresponding code
for readFontFile().  readFontStream() reads a stream into memory, and
holds that memory for FreeType.

As a basic test, I mangled the osgtext example to use
readFontStream(std::ifstream("font")) in lieu of a readFontFile call, and
the modified example ran completely."
2005-11-07 11:05:16 +00:00
Robert Osfield
4915259878 Improved support for texture subload/render to texture in various Texture classes
and RenderStage.
2005-11-04 12:08:16 +00:00
Robert Osfield
fb2d3ae108 Further work on added IO support from CameraNode. 2005-11-03 15:59:17 +00:00