Commit Graph

787 Commits

Author SHA1 Message Date
Robert Osfield
a16568254c Moved reset to 0 of _createReuseMatrixIndex from CullVistor.cpp to CullStack.cpp so that
CullStack::reset works correctly for all subclasses - fixing a memory consumption issue with occluders
2006-08-12 18:19:43 +00:00
Robert Osfield
132f9ead45 Updated version number for 1.1.1 release 2006-08-12 08:29:16 +00:00
Robert Osfield
d1fe85caf6 Fixed pbuffer usage cross multiple graphics contexts 2006-08-11 11:05:09 +00:00
Robert Osfield
174e3b3dc3 Fixed RenderToTexture bug which occured when the viewport dimensions where
different than the texture being written to.
2006-08-03 15:57:39 +00:00
Robert Osfield
0af758716a For cases where the RenderBin has its own StateSet do a popAllStateSets()
to ensure that the state is completely ready for the RenderBin's StateSet to be at the bottom.
2006-07-19 20:56:24 +00:00
Robert Osfield
4591c68d95 Fixed error in enum, completely perplexed how the error got in... 2006-07-19 19:45:32 +00:00
Robert Osfield
dfbc9d0441 Moved the moveToRootStateGraph(,) from RenderStage::drawImplemenation() to RenderBin::drawImplementation(); 2006-07-18 20:17:31 +00:00
Robert Osfield
f1c2694c17 Updated copyright years. 2006-07-18 15:21:48 +00:00
Robert Osfield
9790d15f30 Reduced the verbosity of debug info. 2006-07-18 13:04:57 +00:00
Robert Osfield
f2d50d943b Updated wrappers 2006-07-18 11:42:27 +00:00
Robert Osfield
a74801a0ee Added Optimizer::FlattenBillboardsVisitor. 2006-07-18 11:03:46 +00:00
Robert Osfield
524417f981 Removed debug info 2006-07-14 11:29:41 +00:00
Robert Osfield
e835ea5328 Speeded up merge geometry 2006-07-14 11:04:24 +00:00
Robert Osfield
47c7c43c64 Optimized the MERGE_GEODES pass 2006-07-13 20:42:10 +00:00
Robert Osfield
dd32e6425e Added StatsVisitor to include/osg/Statistics, and usage of it in osgUtil::Optimizer.
Added --optimize <string> option to osgconv
2006-07-13 15:25:22 +00:00
Robert Osfield
dd6a33da49 Removed StateSet::ENCLOSE_RENDERBIN_DETAILS since it is rendendent, and
implemented the OVERRIDE_RENDERBIN_DETAILS.
2006-07-11 21:53:57 +00:00
Robert Osfield
88609a5eee Updated version numbers for 1.1 release 2006-07-06 10:28:12 +00:00
Robert Osfield
30265ac0b3 Added support for RenderBin's have a local top level StateSet. This is now
used by default in the depth sorted bin.
2006-06-29 15:57:24 +00:00
Robert Osfield
240fc9ebee Replaced ref_ptr<>:take with ref_ptr<>:release, and added handling of removeal
of ref_ptr<> operator >.
2006-06-26 20:45:51 +00:00
Robert Osfield
a9f2e345c9 From David Fries, Reset only the RenderLeaf objects used in the last
frame as given by the _currentReuseRenderLeafIndex instead of
resetting all leaves which can be very time consuming.
2006-06-26 09:18:49 +00:00
Robert Osfield
4c5452733b With direction from Paul Melis, fixed bug in CopySharedSubgraphsVisitor which prevented
it being applied.  Also fix inappropriate comment.
2006-06-08 11:39:10 +00:00
Robert Osfield
bf0828138c Cleaned up the OpenGL error reporting. 2006-05-22 19:30:07 +00:00
Robert Osfield
8af7b04c5b From Farshid Lashkari, "The drawInner() method of osgUtil::RenderStage ignores the
checkForGLErrors flag of the osg::State object. The attatched file
fixes this."
2006-05-09 09:47:26 +00:00
Robert Osfield
a8c52a90f0 Added selective support for thread safe ref/unref such that the rendering
backend now doesn't use thread safe ref counting where multi-buffering exists.
This reduces the overhead of multi-threading.
2006-05-02 15:52:46 +00:00
Robert Osfield
43f0efd6d2 Reorganised the Group::removeChild and Geode::removeDrawable methods so
that removeChild(Node*), removeChild(uint) and equivilant Geode methods are
now inline methods, not designed to be overriden, and seperated out the
multiple remove method to be called removeChildren(uint, uint) which is
now the only virtual method.  There removeChildren is now the method to
override in subclasses.

This reorganisation requires some call code to be rename removeChild usage
to removeChildren.
2006-05-02 09:45:31 +00:00
Robert Osfield
fb35d02c33 Added setting of the FrameStamp on the RenderStage's local GraphicsContext to
keep it in sync with the calling graphics context.
2006-04-17 13:25:33 +00:00
Robert Osfield
4c0cfd18da From Ben Discoe, added missing drawable->dirtyDisplayList(). 2006-04-14 08:28:35 +00:00
Robert Osfield
761a3b43ac From Brede Johansen, added MergeGeode visitor to osgUtil::Optimizer. 2006-04-06 14:06:22 +00:00
Don BURNS
de930be1c1 Fixed a bug in the DelaunayTriangulator uniquify points method. Was always
skipping the first point.
2006-04-04 23:22:34 +00:00
Robert Osfield
def7a78842 Fixed typo of Validity. 2006-02-22 19:14:01 +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
7d5c81bf5e From Ulrich Hertlein, spelling corrections and a few Doxgen comments. 2006-02-20 21:05:23 +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
e89852e25f From Marco Jez, " I've modified in order to make FBO mipmapping work. In
FrameBufferObject.cpp there is also another fix: when initializing a FBO
attachment from a CameraNode attachment, the renderbuffer's format must be
set to the attachment's internal format, not to the image's pixel format.

Another problem is that attaching a renderbuffer to the FBO through
CameraNode is not simple (if not impossible) if you don't intend to specify
an Image object. Probably CameraNode could be enriched with an
"attach(buffer, width, height, format)" method. For example if you attach a
color buffer as a texture whose size is different than that of the
CameraNode's viewport you also need to attach a depth buffer of the same
size, because the depth buffer that is automatically attached by RenderStage
has the viewport's size. FBOs require that all attachment have the same
dimensions, so said setup will fail if you can't specify a custom depth
renderbuffer"
2006-02-04 21:20:25 +00:00
Robert Osfield
df1d2ee93b cleaned up clampNearNar code. 2006-01-24 12:02:40 +00:00
Robert Osfield
a0f43443a4 From Marco Jez, addition of glw extension checking under Windows, and tweaks to
BlendEquation and RenderStage to correct the extensions being tested.
2006-01-18 11:45:58 +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
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
58d82d0f66 Added setting of the parent path on the new PickVisitor. 2005-12-23 10:59:12 +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
aef81ae00d Added check against the validity of the _inverse matrix pointer. 2005-12-19 15:05:26 +00:00
Robert Osfield
7b31c2e6ac Added debugging info for future reference (currently commented out.) 2005-12-19 13:57:04 +00:00
Robert Osfield
acf198b28b Added transform of the eye point into local coordinates to properly account
for transforms within the scene graph.
2005-12-19 13:40:32 +00:00
Robert Osfield
df005827de Improved handling of clamping of projection matrix for scenes with close to zero depth range. 2005-12-18 16:06:17 +00:00
Robert Osfield
c738af1e91 Fixed null matrix op. 2005-12-16 17:01:30 +00:00
Robert Osfield
13e45c98fb Fixed handling of absolute transforms in IntersectVisitor. 2005-12-16 16:27:17 +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
da2adaec06 From Eric Sokolosky, add setting of _cameraRequiresSetUp in constructor to
avoid uninitialized variable.
2005-12-09 09:38:46 +00:00
Robert Osfield
60f7607618 Added support for pre and post relative transforms on cameranode. 2005-12-08 11:01:38 +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
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
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
066760738b From Ali Botorabi, fixed the setDefault() fallback to properly handle the case
when no scene view light is requested.
2005-12-01 14:37:15 +00:00
Robert Osfield
65f63428e5 From Geoff Michel, fixed the handling of zfar values of 0.0. 2005-12-01 13:19:16 +00:00
Robert Osfield
2ce7718a66 From Eric Wing, fixes for "warning: converting of negative value '-0x00000000000000001' to 'unsigned int'" 2005-11-29 11:39:07 +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
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
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
0e16b64665 Coverted tabs to space in core libraries. 2005-11-17 13:35:53 +00:00
Robert Osfield
76f7f77883 Added catch of erase of the last element of heap. 2005-11-15 14:25:03 +00:00
Robert Osfield
0ec0327b96 Added scene stats support to osgProducer::ViewerEventHandler. 2005-11-11 17:00:36 +00:00
Robert Osfield
e9c25115fb Added checks against the values returned from dynamic_cast<>'s. 2005-11-10 10:29:56 +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
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
d3b1ee6b57 Changed the occluder traversal so that checks the children of the SceneView's Cameara
rather than starting at the camera itself.
2005-11-08 09:36:42 +00:00
Robert Osfield
9bfc6ead94 Added extra debugging checks on FBO's 2005-11-04 19:00:49 +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
2584d43393 Removed the double call to the camera post draw callback. 2005-11-01 19:31:30 +00:00
Robert Osfield
e23176c3b6 Set the draw and read buffer to GL_NONE when using FBO's, thereby avoid
invalid enumrates being generated.
2005-11-01 15:39:26 +00:00
Robert Osfield
4509232792 Improved handling of osg::Image copying. 2005-11-01 15:23:03 +00:00
Robert Osfield
a742cb682e Added RenderTargetFallback option into osg::CameraNode. 2005-11-01 10:42:54 +00:00
Robert Osfield
ab1bd48511 Moved SceneView across to use an osg::CameraNode to store the projection and view matrices,
the viewport, the clear colour and the subgraph needing rendered.  This is done
transparently so all existing functionality will behave as before.  What it does
add is the ability to set a SceneView directly by a single osg::CameraNode when required.
2005-10-28 13:11:56 +00:00
Robert Osfield
96a88f968a Added error message to report when too many line segments are added to an IntersectVisitor. 2005-10-27 11:11:02 +00:00
Robert Osfield
be07f48884 From Geoff Michel, compile fixes for VS6.0 2005-10-26 09:22:13 +00:00
Robert Osfield
f46044084a From Farshid Lashkari & Robert Osfield: Added support for VERTICAL_INTERLACE and HORIZONTAL_INTERLACE
stereo modes use the stencil buffer.
2005-10-25 15:43:04 +00:00
Robert Osfield
598dda59f5 From Geoff Michel, added support for constrain delaunay triangultion, and osgdelaunay example. 2005-10-25 13:28:48 +00:00
Robert Osfield
285418d6f8 From Brede Johansen, changed osg_InverseViewMatrix to osg_ViewMatrixInverse to bring
into line with OpenGL shader languague conventions.

From Robert Osfield, changed the SceneView::ActiveUnforms enum to from INVERSE_VIEW_MATRIX_UNIFORM
VIEW_MATRIX_INVERSE_UNIFORM to be convistent with the above change.
2005-10-25 09:23:21 +00:00
Robert Osfield
5374ddaccb From Mike Weiblen, "some fixes for OSG_OPTIMIZER envar parsing and help display" 2005-10-24 11:46:51 +00:00
Robert Osfield
fb524952b6 Renamed osgUtil::RenderGraph to osgUtil::StateGraph 2005-10-13 12:51:00 +00:00
Robert Osfield
449333b5d3 Changed the fallback code to use the result form the realize() call, removed
the code path from running a PBuffer as a seperate graphics context (this
was found to be slower than running single threaded so its not worth the
extra complexity).
2005-10-06 15:41:47 +00:00
Robert Osfield
a380a49509 Improved the fallback mechanism from FBO, down to PBuffer_RTT down to PBuffer down to frame buffer. 2005-10-06 11:26:07 +00:00
Robert Osfield
5cb66efc86 Moved the testing and setting up of FBO/Pbuffer extension from CullVisitor to
support into RenderStage to allow better fallback implementations.
2005-10-05 16:21:51 +00:00
Robert Osfield
cf2974329f Added code paths for PBuffer RTT support. 2005-10-04 18:50:00 +00:00
Robert Osfield
d82d598115 Fixed typo of CameraNode::setRenderTargetImplementation(..) 2005-09-29 09:36:51 +00:00
Robert Osfield
b38f491c12 From Volker Walkiewicz (with tweaks from Robert Osfield):
Fix to the update of the error metrics on the edges in the simplification mesh that are affected by an edge collapse.

Addition of 'n' and 'p' keyboard control in osgsimplifier example to allow users to control the sample ratio manually.
2005-09-28 16:05:35 +00:00
Robert Osfield
52dea86a3e From A. Botorabi, "slightly modified osgUtil's TangentSpaceGenerator class to allow the
option for using or not using geom's indices for tangent space vectors
generation. now, Ruben's code is also used (it was disabled before). in
order to keep backward compatibility, the compute method behaves as before
in default case."
2005-09-28 13:53:54 +00:00
Robert Osfield
765db1998c Added support for cullable state, that uses a polytope to define the extents
of objects that will be influenced by it.
2005-09-07 16:18:43 +00:00
Robert Osfield
21cabaf5f6 Renamed osgUtil::RenderStageLighting osgUtil::PositionalStateContainer 2005-09-02 10:35:38 +00:00
Robert Osfield
994192657a Compile fix. 2005-08-30 19:20:19 +00:00
Robert Osfield
aba3b4fa67 Clean up and fixes to GraphicThread class, and osgcamera example. 2005-08-30 14:41:08 +00:00
Robert Osfield
b316dc30e8 Disabled the pbuffer graphics thread. 2005-08-28 19:07:09 +00:00
Robert Osfield
3ac94784fc From Geoff Michel, added normal definition for tesselation 2005-08-22 15:13:04 +00:00
Robert Osfield
c0d6126313 From Domenico Mangieri, addded some missing const qualifiers in osgUtil::SceneView. 2005-08-22 13:58:23 +00:00
Robert Osfield
ac07e07705 Further work on GraphicsContext/GraphicsThread 2005-08-20 08:59:03 +00:00
Robert Osfield
51faa7e43a Various updates to support the new GraphicsThread class. 2005-08-18 20:17:51 +00:00
Robert Osfield
84618ffcb3 Merged RenderToTextureStage functionality into RenderStage 2005-08-17 10:12:49 +00:00
Robert Osfield
e8fc5248fa Added realize() and isRealized() methods to osg::GraphicsContext.
Added osgcamera example that uses osg::GraphicsContext to create the required
window for rendering too, will eventually use osg::CameraNode to replace usage
of osgUtil::SceneView.
2005-08-16 13:29:07 +00:00
Robert Osfield
64fbb477fe Set the double buffer off when setting up pbuffers. 2005-08-06 19:16:53 +00:00
Robert Osfield
098fafc198 From Pavel Moloshtan, setting of the cull traversal mask which visiting camera
subgraphs.  (with small tweak from Robert Osfield to remove compile warnings.)
2005-07-27 13:38:15 +00:00
Robert Osfield
4e69d46289 Further work on trying to get glGenerateMipMapEXT working in conjunction with
frame buffer objects.  Still don't work under Linux yet through :-|
2005-07-27 11:27:44 +00:00
Robert Osfield
bddaefd569 Perliminary support for glGenerateMinMapEXT. 2005-07-25 16:12:24 +00:00
Robert Osfield
384830d37e Added handling of automatic setting up of the contextID. 2005-07-25 14:28:22 +00:00
Robert Osfield
3c23a42f17 Added support for TextureCubeMap into osgUtil::RenderToTextureStage. 2005-07-25 13:05:57 +00:00
Robert Osfield
ee8f7bb756 Added post draw callback to osg::CameraNode/osgUtil::RenderToTextureStage.
Added support for Texture1D, 2D, 3D and TextureRectangle into osgUtil::RenderToTextureStage.
2005-07-24 20:31:21 +00:00
Robert Osfield
302c58fc93 Implemented the beginings of the osgProducer::GraphicsContexImplementation.
Added options into osgprerender for controlling how to do the pre rendering i.e.
--fbo, --pbuffer, --fb --window, and also added the option for controlling the
window size with --width and --height.
2005-07-21 19:27:19 +00:00
Robert Osfield
7b23cf930e Added support for multiple colour buffers into osg::CameraNode/osgUtil::CullVisitor 2005-07-19 20:01:00 +00:00
Robert Osfield
8dd013171c Ported all the render to texture examples across to using the new osg::CameraNode.
Added support for texture cube maps in FBO + CameraNode.
2005-07-19 16:30:55 +00:00
Robert Osfield
d35ea68f3e Renamed Byte2,3,4 and Short2,3,4 and UByte4 to use the Vec*b, Vec*s and Vec4ub form 2005-07-15 14:41:19 +00:00
Robert Osfield
cfac4c74bc Added reference frame to TexGenNode 2005-07-15 08:32:36 +00:00
Robert Osfield
0956674292 Added back in the call to drawPreRenderStages() as this shouldn't interfere
with the stereo code in SceneView as RenderStage should automatically only
allow themselves to be draw on per frame.
2005-07-14 13:21:11 +00:00
Robert Osfield
99279fbf61 From Marco Jez, added missing method implementations to CameraNode and
added check to ensure FBO extension is support to RenderToTextureStage.
2005-07-08 14:46:13 +00:00
Robert Osfield
facb0e2638 From Pavel Moloshtan, Byte2,3,4 and Short2,3,4 classes and their Array counterparts.
With a few build tweaks and bug fixes by Robert Osfield.
2005-07-05 15:57:53 +00:00
Robert Osfield
042ca70866 From David Spilling, fixed the incircle test so it handles colinear points. 2005-06-24 20:19:12 +00:00
Robert Osfield
c5cad6982e Further FBO support work. 2005-06-16 14:01:38 +00:00
Robert Osfield
dfaed083ea Added osgmultiplecameras example and support for pre/post multiplaction. 2005-06-15 10:59:10 +00:00
Robert Osfield
71122ff38f Work on the RenderToTexture usage of the new osg::CameraNode. Both osghud
and osgprerender now ported across to osg::CameraNode.
2005-06-14 20:51:35 +00:00
Robert Osfield
e229a8cb67 Updates to clean up wrapper generation, and to update wrappers 2005-05-24 15:34:23 +00:00
Robert Osfield
276dfbd0ad Added support for setting the default render bin sort mode via the
env OSG_DEFAULT_BIN_SORT_MODE variable or via or RenderBin::setDefaultRenderBinSortMode()
method.
2005-05-19 15:17:53 +00:00
Robert Osfield
955cc1ec2a Added s/getClearMask() support to osg::ClearNode, osgUtil::SceneView and the
.osg plugin.
2005-05-18 19:55:14 +00:00
Robert Osfield
5947b97cde Improved the handling of data attached to proxy nodes 2005-05-17 14:25:11 +00:00
Robert Osfield
1dd553ed0e Bumped version numbers to 0.9.9 in rediness for 0.9.9 release. 2005-05-16 17:17:53 +00:00
Robert Osfield
3b4636311b Moved BaseOptimizerVisitor out of Optimizer into osgUtil namespace to try and
get round MipsPro compile problems.
2005-05-13 13:29:45 +00:00
Robert Osfield
fb34b22e34 Cleaned up API of BindAttributeLocation, added deletion of shader objects. 2005-05-11 11:41:44 +00:00
Robert Osfield
44c363dd3f Added code to prevent ProxyNode's from been "flattened" by
osgUtil::Optimizer::FlattenStaticTransforms.
2005-05-09 15:29:18 +00:00
Robert Osfield
a6e8378a72 Removed debug info 2005-05-08 19:21:43 +00:00
Robert Osfield
d1a1b1d95c Added more comprehensive releaseGLObjects(State*=0) throughout Nodes,
Drawables,StateSet, and osgDB::Registry.

Added cleanup_frame() from to osgProducer::OsgCamerGroup to help with proper
clean of OpenGL objects before exit, and modified osgviewer, osghangglider,
osgwindows examples to do the extra frame call to cleanup_frame() before exit.
2005-05-07 20:47:09 +00:00
Robert Osfield
cdab058b32 Added osg_DeltaFrameTime uniform to default set. 2005-05-06 10:32:31 +00:00
Robert Osfield
2798d58a41 Added support for osg_FrameNumber, osg_FrameTime, osg_ViewMatrix, osg_InverseViewMatrix
into SceneView, controlled via a setActiveUniforms(.) method.
2005-05-05 12:30:54 +00:00
Robert Osfield
f8c855a576 Fix for Tiger build 2005-05-04 11:38:34 +00:00
Robert Osfield
a1f23bbccd Fixed bug where the Optimizer::StateVisitor was trying to optimize
non existant StateSet's.
2005-05-04 09:11:32 +00:00
Robert Osfield
b85d4d4e7e Added support for optimization of Uniforms 2005-05-02 10:18:37 +00:00
Robert Osfield
03232ec667 Moved osg::Impostor to osgSim::Impostor, as Impostor isn't a core feature. 2005-05-01 19:48:49 +00:00
Robert Osfield
adba6fa559 Added RemoveLoadedProxyNodes pass to Optimizer, set on by default at present. 2005-04-30 15:16:05 +00:00
Robert Osfield
81f60233a9 From Geoff Michel :
ac3d loader - better sharing of states between objects and Roger James' bug fix for missing normals.

  Tesselator.cpp - faster processing of polygon tesselation for single triangles (which dont need to be tesselated)

  osgtesselate.cpp - added wrap for texture so that appearance is as originally. Default texture behaviour has changed to clamp."
2005-04-30 13:54:21 +00:00
Robert Osfield
67baa30218 Combine LOD fixed properly this time :) 2005-04-30 07:25:15 +00:00
Robert Osfield
bf03f094c2 fixed combined LOD bug 2005-04-30 07:22:56 +00:00
Robert Osfield
7117ff4bd3 Added support for controlling the frequency of checking for OpenGL errors
via:

        enum CheckForGLErrors
        {
            /** NEVER_CHECK_GL_ERRORS hints that OpenGL need not be checked for, this
                is the fastest option since checking for errors does incurr a small overhead.*/
            NEVER_CHECK_GL_ERRORS,
            /** ONCE_PER_FRAME means that OpenGl errors will be checked for once per
                frame, the overhead is still small, but at least OpenGL errors that are occurring
                will be caught, the reporting isn't fine grained enough for debugging purposes.*/
            ONCE_PER_FRAME,
            /** ONCE_PER_ATTRIBUTE means that OpenGL errors will be checked for after
                every attribute is applied, allow errors to be directly associated with
                particular operations which makes debugging much easier.*/
            ONCE_PER_ATTRIBUTE
        };

        /** Set whether and how often OpenGL errors should be checked for.*/
        void setCheckForGLErrors(CheckForGLErrors check) { _checkGLErrors = check; }

        /** Get whether and how often OpenGL errors should be checked for.*/
        CheckForGLErrors getCheckForGLErrors() const { return _checkGLErrors; }
2005-04-29 20:56:20 +00:00
Robert Osfield
30d20fcf55 From Farshid Lashkari, removed redundent fusion distance calculations from computeRightEyeProjectionImplementation and
computeLeftEyeProjectionImplementation methods.
2005-04-28 05:21:27 +00:00
Robert Osfield
0d9887462a Added MergeGeometryVisitor::setTargetMaximumNumberOfVertices(uint); 2005-04-23 16:09:20 +00:00
Robert Osfield
06dc3ebb34 From Reinhard Sainitzer, bug fix, added missing break; 2005-04-19 07:37:59 +00:00
Robert Osfield
08f593a54b From Joran Jessurun, Added setting of original node mask to flatten transforms 2005-04-15 20:11:50 +00:00
Robert Osfield
678b22ce83 Updated Copyright notices to 1998-2005. 2005-04-14 21:41:28 +00:00
Robert Osfield
d52e02aaeb From James French, a tweak with fix a compile problem related to STLport. 2005-04-08 14:44:44 +00:00
Robert Osfield
7d24d9fdd5 Added #include <algorithm> 2005-04-08 12:22:03 +00:00
Robert Osfield
a2974de978 Moved the istream and ostream support from Vec* and Matrix* into a seperate io_utils file. 2005-04-08 09:01:23 +00:00
Robert Osfield
22e446dbc9 Improved ParticleEffects 2005-04-04 07:54:52 +00:00
Robert Osfield
d52f4ea23a Added support for a new IsOperationPermissibleForObjectCallback in osgUtil::Optimizer. 2005-03-18 02:44:08 +00:00
Robert Osfield
6904696573 Added check against node.getName() into isNodeEmpty(Node&) method so that nodes
with names arn't assumed to be empty.
2005-03-17 10:24:22 +00:00
Robert Osfield
99f80a78f1 From Ruben, added handling of vertex indices.
Note from Robert.  New codes produces errors when running
osgfxbrowser cow.osg so I have elected to keep the original
implementation of compute_basis_vectors around and as the default
compile to keep the CVS version working.  Ruben's new version
of compute_basis_vectors has to be explicitly compiled in by
toggling an #if 1 block to #if 0.
2005-03-07 17:25:30 +00:00
Robert Osfield
4fa830315d Added event callback to Optizimer isNodeEmpty function 2005-02-25 23:01:07 +00:00
Robert Osfield
a9c61ad992 Remerged Tugkan's fix to flatten static transforms. 2005-02-12 19:47:38 +00:00
Robert Osfield
8ff060b840 Put spaitalize groups to end. 2005-02-12 16:49:28 +00:00
Robert Osfield
336612359b From Tugkan Calapoglu, bug fix to FLATTEN_STATIC_TRANSFORMS.
Small tweak of the code to make the comparison against Identity matrix clearer.
2005-02-12 16:24:28 +00:00
Robert Osfield
d5409942ee Fixed spatial groups. 2005-02-11 17:22:55 +00:00
Robert Osfield
7282adef2b Removed redundent _nodePath entry. 2005-02-10 21:30:03 +00:00
Robert Osfield
7fb8dfe5ed From Chris Xennon, add support for billboard intersections + fix to addLineSegments.
Small addition from Robert Osfield of setLODSelectionMode(..) to control
the LOD selection behavior.
2005-02-10 21:18:04 +00:00
Robert Osfield
8cc0cdb25c Fixed tabbing. 2005-01-27 11:16:03 +00:00
Robert Osfield
c99903497a From Yuzhong Shen, removed repeated statements in Hit operator =. 2005-01-21 21:00:33 +00:00
Robert Osfield
728b8c9301 Added setImageReadFormat and setImageReadDataType methods to RenderToTextureStage to
allow customization of what format/data type to read such as reading from the depth buffer etc.
2005-01-09 19:30:56 +00:00
Robert Osfield
814300f896 Fixed crash in osgUtl::Simplifier which was due to an dereference of an empty array. 2005-01-07 14:31:33 +00:00
Robert Osfield
a0ba625cb0 Property API clean to smooth the task of generating wrappers. 2004-12-17 01:06:33 +00:00
Robert Osfield
6690da4272 Changed RELATIVE_RF to ABSOLUTE_RF to fix bug introduced when naming was changed
from RELATIVE_TO_ABSOLUTE to new convention
2004-12-12 22:27:20 +00:00
Don BURNS
1771cdbcc7 Update version numbers in files 2004-12-04 23:38:24 +00:00
Robert Osfield
595dda6fe4 From Vivek Rajan, fixes to Solaris build. 2004-11-18 10:08:29 +00:00
Robert Osfield
6f22082c0b Removed the _initVisitor traversal for update() to prevent OpenGL being called at the wrong time. 2004-10-26 18:11:26 +00:00
Robert Osfield
b70ff91eaf Changed ABSOLUTE and RELATIVE to ABSOLUTE_RF and RELATIVE_RF to avoid stooppid Win32 #define 2004-10-24 20:04:00 +00:00
Robert Osfield
6821a80e14 Changed the ReferenceFrame enums to be RELEATIVE and ABSOLUTE, and
deprecated the RELATIVE_TO_ABSOLUTE and RELATIVE_TO_PARENTS.
2004-10-22 19:26:45 +00:00
Robert Osfield
48a1fff041 From Alan Purvis, with enum name tweaks from Robert Osfield. Addition of
support for turing on/off the usage of vertex buffer objects.
2004-10-19 09:29:13 +00:00
Robert Osfield
4192ef796b Added CullingSettngs::s/getInheritanceMask() and inheritCullSettings(,) method. 2004-10-12 09:54:03 +00:00
Robert Osfield
e4167d9baa Added missing _texAttrListMap.clear(); into reset() 2004-10-03 08:36:27 +00:00
Robert Osfield
3363d35ee6 Removed debugging messages 2004-09-30 14:54:42 +00:00
Robert Osfield
7e5c87de6a Changed the version strings to use OpenSceneGaph rather than "Open Scene Graph" 2004-09-27 12:07:34 +00:00
Robert Osfield
37c8b3a6fb From Geoff Michel, typos and spelling fixes. 2004-09-26 18:39:34 +00:00
Robert Osfield
b9e4235d85 Added releaseAllGLObjects() convinience method. 2004-09-23 20:01:40 +00:00
Robert Osfield
54b45ce3bc Updated to DatabasePager support 2004-09-21 21:33:52 +00:00
Robert Osfield
daf8887bb0 Changed usage of assert() to throw. 2004-09-07 14:34:04 +00:00
Robert Osfield
94f1f6025c Added a size check on heap_array<T, CmpT>::Adjust(size_t i) to
prevent access errors.
2004-09-07 10:45:22 +00:00
Robert Osfield
b50f0db0a9 Added handling of DrawArrayLengths PrimitiveSet. 2004-08-27 08:01:17 +00:00
Robert Osfield
14d9013699 Removed redundent include/ReadFile call 2004-08-13 13:27:29 +00:00
Robert Osfield
821b0991d9 From Ben Discoe, build fix for float version of Matrix. 2004-08-11 08:25:14 +00:00
Robert Osfield
857d8e2435 Added the ability to set the global stateset, as use this RenderStageLighting 2004-08-07 09:42:19 +00:00
Robert Osfield
4d2c08b39a From Marco Jez, commented out info debugging messages 2004-08-05 15:02:51 +00:00
Robert Osfield
66397b3962 Changed the popProjectionMatrix so that it didn't allow modification on the near
and far values when clamping the projection matrix.
2004-08-05 12:47:55 +00:00
Robert Osfield
ddb7423e46 Set version numbers for 0.9.7 release 2004-08-05 08:02:48 +00:00
Robert Osfield
7eb3f2646e From Norman Vine (with small tweaks by Robert Osfield), build fixes for Cygwin 2004-08-04 08:27:43 +00:00
Robert Osfield
79bc32ad7c Removed warings 2004-08-02 14:42:20 +00:00
Robert Osfield
9b33dee6ac Made the member variables in RenderStage and RenderBin protected 2004-08-02 12:19:50 +00:00
Robert Osfield
364d40061d Added glReadBuffer after each instance of glDrawBuffer to ensure that
the any reads are done to the appropriate buffer.
2004-08-02 09:30:13 +00:00
Robert Osfield
f206abcd43 From Geoff Michel, new osgtesselate example, and new features in osgUtil::Tesselator. 2004-08-01 10:36:02 +00:00
Robert Osfield
4d9bd4d825 Build fixes for gcc 3.4.1 support 2004-08-01 08:26:44 +00:00
Robert Osfield
9b9cb9cdb0 Added detection and disabling of flattening of static transforms which a
LightPointNode exists in the scene graph.
2004-07-29 10:13:02 +00:00
Robert Osfield
90ee9fa7cd Commented out debugging messages 2004-07-28 10:26:44 +00:00
Robert Osfield
1ec5b48148 Fixed the flatten static transform visitor so that it checks to see
if a drawable can be flattened or not.
2004-07-28 10:26:14 +00:00
Robert Osfield
8837d667f0 Made the handling of types more consistent 2004-07-26 19:40:02 +00:00
Robert Osfield
6f605d031f Added support for OSG_OPTIMIZER="OFF" 2004-07-22 18:34:38 +00:00