Robert Osfield
958c3efa3a
Added CMake support for local OpenThreads build
2007-05-02 18:07:41 +00:00
Robert Osfield
859bcf3c4b
Further perfomrmance optimizations and clean up on new VBO/EBO/PBO API.
2007-05-01 18:03:32 +00:00
Robert Osfield
fe85a439fb
Cleaned up the optional code paths in new VBO code
2007-05-01 09:29:30 +00:00
Robert Osfield
40db1a8934
Moved VBO switching code into inline methods into osg::State to speed performance
2007-05-01 06:28:20 +00:00
Robert Osfield
d625a5e114
Implementated new dirty buffer mechansim for BufferObjects to make it more efficient
2007-04-30 12:18:27 +00:00
Robert Osfield
9e07a72119
Added temporary code (but comment out) for testing VBO performance
2007-04-29 20:13:53 +00:00
Robert Osfield
921eb0fdd0
Further work on new VertexBufferObject/ElementsBufferObject support
2007-04-29 08:12:29 +00:00
Robert Osfield
4968eb7136
Further work on the new VBO support
2007-04-27 14:52:30 +00:00
Robert Osfield
a3e6d8283d
Further work VertexBufferObject and ElementsBufferObject classes
2007-04-26 16:50:06 +00:00
Robert Osfield
4b71e3948b
Added VertexBufferObject and ElementBufferObject class interfaces, and wired
...
up osg::Array and osg::DrawElements* to these respectively.
Updated wrappers
2007-04-25 18:50:11 +00:00
Robert Osfield
f242570269
Unified the setup of version numbers so that they all are based on the version
...
number setup in the include/osg/Version header file.
2007-04-22 20:19:43 +00:00
Robert Osfield
9db23e0b22
Fixed bug associated with complex RenderBin setup.
2007-04-16 12:18:56 +00:00
Robert Osfield
68a6882d04
Bumbped the version number up to 1.9, in preperation for using odd release numbers
...
for development releases, odd versions for stable releases.
2007-04-16 06:03:22 +00:00
Robert Osfield
2e6ee4bb39
Removed old gmake and VisualStudio build files
2007-04-10 13:10:25 +00:00
Robert Osfield
11d74fd54e
From Eric Wing, pedantic warning fixes
2007-04-06 15:13:02 +00:00
Robert Osfield
6c12c71337
Added constructor argument to ShadeModel
2007-04-05 16:12:10 +00:00
Robert Osfield
561dc02da5
Commented out superfluous debug messages
2007-04-05 15:04:05 +00:00
Robert Osfield
43c24da12d
Added setValue method and osg::Image setup to osg::TransferFunction1D, and setup
...
of TransferFunction1D into osgterrain example.
2007-04-02 13:06:59 +00:00
Robert Osfield
a2ecb93c2b
Converted osg::HeightField across to using a osg::FloatArray internally to enable
...
it to be assigned as a vertex attribute array to an osg::Geometry.
Removed the osgTerrain::ArrayLayer as its no longer required thanks to the above change
which makes the osgTerrain::HeightFieldLayer more flexible.
Updated wrappers
2007-03-29 19:42:07 +00:00
Robert Osfield
0a43ff6571
From Eric Wing, added handling of CMAKE_THREAD_LIBS_INIT
2007-03-29 10:56:07 +00:00
Robert Osfield
b7967b7007
From Mike Wittman, "Here is a change to the .cpp file to fix it by disambiguating the cull invocation."
2007-03-28 15:05:49 +00:00
Robert Osfield
7fc714ada1
Removed deprecated drawImplementation(State&) method from Drawable and Drawable::DrawCallback
2007-03-28 11:30:38 +00:00
Robert Osfield
b419fa93ef
From Luigi Calori, "when we link against something that comes out from a Find... we ususally have a variable <LINK_VAR_NAME>available like OPENTHREADS_LIBRARY,
...
so I' ve set up a macro that uses the variable name expanded for linking, and test if a variable ${LINK_VAR_NAME}_DEBUG
like OPENTHREADS_LIBRARY_DEBUG exists and in case uses it for linking in debug mode.
I' ve also set up FindOpenThreads to set up these variables.
I had to edit the core libraries CMakeLists to add the calls to the macros used.
I' ve tested under MSVC"
2007-03-26 13:02:38 +00:00
Robert Osfield
92865923f3
Added missing StencilTwoSided header
2007-03-23 10:11:09 +00:00
Robert Osfield
6eee949142
From Eric Wing, added ${MATH_LIB} to osg CMakeLists.txt and definition of this to m under unix
2007-03-22 13:38:23 +00:00
Robert Osfield
fb1c25616b
Correct TransferFunction entry.
2007-03-10 11:56:34 +00:00
Robert Osfield
bff1b51361
Added preliminary work on osg::TransferFunction
2007-03-10 11:53:31 +00:00
Robert Osfield
6c1b2d29d9
Commenting out Matrix_implementation.cpp entry to avoid it being installed.
2007-03-09 14:54:01 +00:00
Robert Osfield
db6f07f1d6
Ran dos2unx of CMakeLists.txt files
2007-03-08 15:31:36 +00:00
Robert Osfield
5423add9e2
Added support for 4,7,12,16 bit luminance and intensity formats
2007-03-06 11:20:39 +00:00
Robert Osfield
ac1106372b
Added missing files
2007-03-05 12:09:42 +00:00
Robert Osfield
f50ed9667a
From Eric Wing and others, first cut of CMake build support
2007-03-04 13:05:33 +00:00
Robert Osfield
b55f5c2bd8
Fixed auto rotate to screen so that it handles scales in to the parental path
2007-02-26 14:36:43 +00:00
Robert Osfield
f43cd7332c
Further work on add serialization support for osgViewer configurations
2007-02-25 20:05:23 +00:00
Robert Osfield
ad3cac84e9
Moved Block, ReentrantMutex and ReadWriteMutex into OpenThreads.
2007-02-23 16:31:34 +00:00
Robert Osfield
96f567eff3
Added bool View::Slave::_useMastersSceneData to help manage HUD's and RTT
...
cameras that are embedded in the Viewer's View
2007-02-23 11:53:45 +00:00
Robert Osfield
ee9440d155
Added Camera::s/getAllowsEventFocus() method to allow osgViewer to have non interfactive cameras such as RTT ones
2007-02-21 19:06:43 +00:00
Robert Osfield
37e3114534
Wojciech Lewandowski: "TexGenNode::TexGenNode( TexGen * texGen ) constructor does not initialize ReferenceFrame. I am not sure maybe this was the intent but first constructor does it so I don't see a reson why third one shouldn't."
2007-02-21 15:15:55 +00:00
Robert Osfield
228fd04a19
Removed the exclusion of CullSettings from the genwrapper.conf, and then changed the CullStack RefMatrix& methods to RefMatrix*
...
as the RefMatrix& versions caused the wrappers to fail.
2007-02-21 13:48:01 +00:00
Robert Osfield
ffda14c669
Fixed inheritance check for copying clear colour to slave cameras
2007-02-20 20:56:03 +00:00
Robert Osfield
d8e6436dc1
From Andre Garneau:
...
* Fix for the aspect ratio not being properly set when screens have
different aspect ratios.
* Minor fix for makeCurrentImplementation being called directly instead of
makeCurrent() causing the owning thread pointer not being tracked
* Fix for osglauncher so that it sets its update text regions to DYNAMIC to
prevent multi-threading issues.
2007-02-18 14:21:16 +00:00
Robert Osfield
a3594bc653
Added new osg::ComputeBoundsVisitor
2007-02-16 17:34:34 +00:00
Robert Osfield
810e7291fc
Added use of Mutex into osg::Stats to better handle multi-threaded usage
2007-02-14 16:24:49 +00:00
Robert Osfield
07411f3246
Introduced new osg::Object::DataVariance type of UNSPECIFIED, and changed the deafult
...
values of DataVariance to UNSPECIFIED to all types.
2007-02-14 13:18:58 +00:00
Robert Osfield
89c99a88fa
Added computeDataVariance method into osg::Object and implementations in Drawable and StateSet,
...
and calling of osgUtil::StaticObjectDetectionVisitor in osgViewer::Viewer
2007-02-14 11:24:42 +00:00
Robert Osfield
fe177e42d5
Added osgViewer::HelpHandler
2007-02-12 13:39:18 +00:00
Robert Osfield
f1a82f35b2
From Vivek Rajan, MatrixDecomposition implementaion, adapted by Robert Osfield
...
to be part of osg::Matrixf and osg::Matrixd classes.
2007-02-10 18:01:37 +00:00
Robert Osfield
c52207b637
Added new Transform::ReferenceType enum ABSOLUTE_RF_INHERIT_VIEWPOINT to support
...
internal RTT cameras that wish to use the main cameras view/eye point for LOD and other
distance based tests.
2007-02-07 16:32:14 +00:00
Robert Osfield
945faf0133
Fixed bug in AutoTransform::accept() that was related to the accept() method
...
checking the nodemask as it should.
2007-02-07 14:53:58 +00:00
Robert Osfield
cfe737c552
Tweak API and updated wrappers to get wrappers to build
2007-02-05 14:56:41 +00:00
Robert Osfield
ebd68ba063
Added Camera's s/getCameraThread() and updated wrappers
2007-02-05 13:44:16 +00:00
Robert Osfield
69da91620f
Convert GraphicsThread/GraphicsOperation to more generic OperationsThread/Operation.
...
This paves the way to running cull traversals in seperate threads.
Updated wrappers
2007-02-02 22:30:36 +00:00
Robert Osfield
6d9641a78b
Added a concrete osg::DeleteHandler implementation which provides support for
...
retain objects for several frames before deleting them. Also added RenderStageCache
into CullVistor.cpp that is used for handling RTT osg::Camera's that are being
used in double buffered SceneView usage.
2007-02-02 12:41:13 +00:00
Robert Osfield
f8213d1c53
Updated wrappers
2007-01-30 14:47:13 +00:00
Robert Osfield
b8d98a2cfe
Added support for compute average stats attributes in inverse space to improve
...
the quality of frame rate reporting.
2007-01-30 13:48:04 +00:00
Robert Osfield
ecedc8d86a
Added Stats::collectStats(string,bool) controls, getAveragedAttribute methods into osg::Stats class, and
...
related support into osgViewer::Viewer and osgViewer::StatsHandler.
Added lazy updating of text in StatsHandler HUD to minimize the impact of
slow text updating on observed frame rates.
2007-01-30 11:40:23 +00:00
Robert Osfield
fd0ea388c2
Began work on providing support for threading camera cull traversals in parallel with
...
the previous frames draw traversal. Changes range from osg::State, through osgUtil::RenderBin, through to osgViewer
2007-01-29 22:44:29 +00:00
Robert Osfield
7232a831da
Added osg::FrameStamp::set/getSimulationTime().
...
Added setting of osg_SimulationTime and osg_DeltaSimulationTime to the uniforms set by SceneView
Added frame(double simulationTime) and advance(double simulationTime) parameters to
osgViewer::SimpleViewer, Vewer and CompositeViewer.
Updated various examples and Nodes to use SimulationTime where appropriate.
2007-01-25 12:02:51 +00:00
Robert Osfield
13dd5acb63
From Gordon Tomlinson, fixes to BoundingSphere::expandBy(BoundingSphere&)
2007-01-25 10:02:20 +00:00
Robert Osfield
d6ecce6f5f
Improvements to stats
2007-01-22 11:22:37 +00:00
Robert Osfield
b47ef11d74
Initial on screen stats support
2007-01-21 18:24:54 +00:00
Robert Osfield
f0e2404541
Added new osg::Stats class for collecting frame stats of different sorts.
...
Added s/getStats() to osg::View and osg::Camera.
Added population of View::getStats() with frame stats in osgViewer/Viewer.
Added Basic StatsHandler to osgviewer example.
2007-01-19 19:53:23 +00:00
Robert Osfield
a90206bcbb
Added EXT_timer_query support
2007-01-19 14:41:29 +00:00
Robert Osfield
ccc8a922a6
Added osg::StencilTwoSided state attribute to wrap up the stencil_two_sided extension.
...
Added path in osgShadow work for using StencilTwoSided to accelerate shadow volume rendering.
2007-01-18 22:32:18 +00:00
Robert Osfield
d63b351137
From André Garneau, threading bug fixes - moving scoped statics out of scope to be global statics
2007-01-17 14:40:03 +00:00
Robert Osfield
09cef410ec
Added releaseContext to end of GraphicsThread::run()
2007-01-14 20:23:47 +00:00
Robert Osfield
5c78d06dad
Added a default StateSet to osg::View's master Camera. Wired up osgViewer::Viewer so
...
that the master Camera's StateSet is passed to osgUtil::SceneView to use as its global StateSet.
2007-01-12 12:10:06 +00:00
Robert Osfield
5ee30edbea
Added support for setThreadSafeRefUnref into TexGenNode
2007-01-11 10:35:03 +00:00
Robert Osfield
16d1c00a3d
Changed the return types of makeCurrent to bool, and added a bool GraphicsContext::releaseContext method
...
along with implementations in osgViewer.
2007-01-08 19:29:59 +00:00
Robert Osfield
4a5eda6522
Added GraphicsContext::ResizedCallback and GraphicsContext::resizedImplementation.
...
Added message on non implementation of GraphicsContext::valid().
Added prelimary GraphicsContext clean up support.
2007-01-08 16:20:10 +00:00
Robert Osfield
773fbd1b16
Added setThreadSafeRefUnref to LightSource
2007-01-07 10:00:50 +00:00
Robert Osfield
9fcace0e73
Added GraphicsContext support for clearing the graphis context. The clearing
...
is off by default (ClearMask is 0), but can be switched on when ClearMask is
non zero. GraphicsContext::clear() is called after each swap buffers
2007-01-05 15:24:06 +00:00
Robert Osfield
73fffe1800
Made Refernced::setThreadSafeReferenceCounting(bool) a virtual then overrode
...
this in various scene graph classes to ensure that the scene graph gets
updated as well as the objects that the initialial call is made from.
2007-01-04 16:49:58 +00:00
Robert Osfield
ff195bddf5
Added Object::resizeGLObjectBuffers(uint) method to help improve the ability
...
to change the number of active graphics contexts on the fly during an applications
life.
2007-01-04 14:11:51 +00:00
Robert Osfield
1de65ddedc
Added setting of default backgroud colour of View's master colour to be
...
consistent with the previous default colour used by SceneView
2007-01-03 17:26:24 +00:00
Robert Osfield
3eaa9ff05b
Changed the View's master camera projection matrix setting so that it is
...
consistent with osgProducer::Viewer default setting.
2007-01-03 16:32:44 +00:00
Robert Osfield
4f87afdbf5
Improved the robustness of thread start and cancellation
2007-01-03 16:06:12 +00:00
Robert Osfield
740363133f
Fixed the COPY_OP( Array, DEEP_COPY_ARRAYS); entry.
2007-01-02 20:26:49 +00:00
Robert Osfield
7155f7d1b0
Various work on osgViewer library, including warp point and graphics window resize support
2007-01-01 18:20:10 +00:00
Robert Osfield
93dbfa04b7
Aded new convinience methods to osg::Timer - s/getStartTick and time_s(), time_m() etc
...
to help get time reletive the new start tick.
2006-12-26 17:37:06 +00:00
Robert Osfield
39c0c2df76
Unified the osg::GraphicsThread::Operation and osg::GraphicsContext::Operation classes
...
as osg::GraphicsOperation. Unpdated parts of OSG depending upon these.
Added a virtaul bool valid() method to osg::GraphicsContext to allow apps to
test whether a valid graphis context has been created or not.
2006-12-24 16:40:19 +00:00
Robert Osfield
76461b3ab2
Added support for sample and sampleBuffers to osg::GraphicsContext::Traits and
...
cleaned up the Traits naming
2006-12-22 21:53:44 +00:00
Robert Osfield
bd6b7d581e
Implemented perliminary multi-threading support in osgViewer::Viewer
2006-12-22 17:46:21 +00:00
Robert Osfield
4fc9af7ea0
Moved rendering support into GraphisContext, osgViewer::Viewer/View, and
...
added frame stamp updating and update traversal to osgViewer::Scene/Viewer.
Updated osgcamera example to use new Viewer API calls instead of using local
rendering calls.
2006-12-21 16:56:20 +00:00
Robert Osfield
c9c2950759
Moved UnitTestFramework from core osg lib into osgunittests example
2006-12-19 17:06:59 +00:00
Robert Osfield
dcebe4daa0
Added initial GraphicsWindowX11 implementation, and fleshed out more of the
...
osgViewer and osg::GraphicsContext/osg::View infrastructure.
2006-12-19 16:00:51 +00:00
Robert Osfield
afc77f9b39
Added support WindowingSystemInterface for querring the number of screens, the screen size and creating GraphicsContexts.
2006-12-17 20:49:01 +00:00
Robert Osfield
982a4db9e2
Added ViewPoint support into NodeVistor/CullStack/CullVisitor/LOD/PagedLOD etc to facilate
...
management of LOD settings for RTT cameras.
2006-12-15 17:27:18 +00:00
Robert Osfield
693302574d
From Rein Kadijk, "While displaying a certain scene, OsgEdit crashed in ProxyNode::traverse() in file OSG_OP_OT-1.2\OpenSceneGraph\src\osg\proxynode.cpp.
...
It turned out that nv.getDatabaseRequestHandler() returned NULL; using this pointer to call one of DatabaseRequestHandler's methods is of course illegal.
I patched it by adding: if (nv.getDatabaseRequestHandler())"
From Robert Osfield, reordered the addition of the nv.getDatabaseRequestHandler() check to allow the
default traverse() to be called when no database handling is attached to the visitor.
2006-12-05 16:45:27 +00:00
Robert Osfield
a9d18d01db
Basic shadow volume alogirthm implemented in example.
2006-11-30 16:30:24 +00:00
Robert Osfield
345810ef22
Added support for float or double osg::Plane, and the default osg::Plane to double.
...
Performance tests on big models did not indicate any performance penalty in using doubles over floats,
so the move to doubles should mainly impact precision improvements for whole earth databases.
Also made improvements to osgUtil::PlaneIntersector and osgSim::ElevationSlice classes
2006-11-28 16:00:52 +00:00
Robert Osfield
fd2ffeb310
Renamed osg::CameraNode to osg::Camera, cleaned up osg::View.
...
Added beginnings of new osgViewer::Scene,View,Viewer,CompositeViewer and GraphicsWindowProxy files.
2006-11-27 14:52:07 +00:00
Robert Osfield
d0df2df7ad
Replaced the setTextureUnit(0) call in State::reset() with code that just
...
sets the member variables without requiring a graphics context.
2006-11-21 16:59:04 +00:00
Robert Osfield
2151573ccd
From Michael Platings, Fixed Geometry cloning of the texture
...
coordinates and vertex attributes.
2006-11-16 16:25:29 +00:00
Robert Osfield
d0cc014f1b
Further migration to using RenderInfo
2006-11-14 12:51:31 +00:00
Robert Osfield
7cb1bcbd7d
From Farshid Lashkari, "This patch adds a CoordOriginMode to the osg::PointSprite attribute.
...
The mode needs to be changed to LOWER_LEFT when rendering point
sprites to pbuffers or FBOs, otherwise the points will be transformed
on the CPU."
2006-11-14 12:29:54 +00:00
Robert Osfield
c3f3093ecc
From John Kelso, add support for default frame time for children of a Sequence node
2006-11-10 15:25:04 +00:00
Robert Osfield
c5c4c5da1d
From Edgar Ellis, "
...
method may not take the node into consideration when computing its bound.
In this case of:
switch->insertChild(0, child, false);
switch->insertChild(1, child, true);
child will not be used in computeBound, but will be drawn.
Solution:
Changed compute bound to loop over children using an index instead of an
iterator. This behaviour matches that of the traverse method."
-----------------------------------------------
2006-10-30 12:14:00 +00:00
Robert Osfield
f257285efc
From Chuck Seberion, added support reading ARB float format textures.
2006-10-14 21:50:29 +00:00
Robert Osfield
660cda57c8
From Terry Welsh, mplemented POINT_ROT_EYE.
2006-10-14 21:47:13 +00:00