Commit Graph

5867 Commits

Author SHA1 Message Date
Robert Osfield
158921574c Improved the toggling on/off of thrading modes 2007-02-01 11:07:53 +00:00
Robert Osfield
a7c448a585 Moved the init traversal from cull() to the draw() to prevent graphics context
calls being made during the cull traversal - something that breaks the
ThreadPerCamera model in osgViewer
2007-02-01 11:07:26 +00:00
Robert Osfield
8dfc5155f4 Further work on new threading model. 2007-01-31 22:24:20 +00:00
Robert Osfield
019cdd9116 Removed old #if #else #end block 2007-01-31 11:12:58 +00:00
Robert Osfield
493f799a6e Refactored the ViewerRenderingOperation so that the timer querry code is in a separate ViewerQuerySupport class 2007-01-30 17:38:02 +00:00
Robert Osfield
55661041d7 Added display listing of ShadowVolume 2007-01-30 17:12:33 +00:00
Robert Osfield
03dbbd5048 Added automatic aspect ratio adjustmeent to View::setUpViewAcrossAllScreens() and setUpViewOnSingleScreen. 2007-01-30 15:37:30 +00:00
Robert Osfield
f8213d1c53 Updated wrappers 2007-01-30 14:47:13 +00:00
Robert Osfield
77b9a7ae19 From Eric Sokolwsky, "osgText is a useful node kit, but when longer paragraphs are displayed
on the screen, it looks more aesthetically pleasing to have a larger
gap between lines than is given by default. I added a new parameter,
lineSpacing, in the Text class to allow the line spacing to be adjustable
by the application. The default value is 0 meaning there is no extra
spacing given. The value should be given as a percentage of the character
height. A good value for longer paragraphs is 0.25 (25%) or more."
2007-01-30 14:32:12 +00:00
Robert Osfield
35c720420e From Bryan Thrall, "The osgDB::ReaderWriter and osgDB::ReaderWriter::Options classes have
copy constructors that take a const osg::CopyOp rather than a
osg::CopyOp&, forcing an unnecessary copy. The attached header fixes
this, based off OSG 1.2.

Also fixed duplicate "or" openArchive()'s comment."
2007-01-30 14:18:39 +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
6acd0e89a1 Disabled the alternating directions of drawing of state sorted render leaves as it
was interferring with anaglyphic stereo used in the osgstereimage example.
2007-01-30 12:09:30 +00:00
Robert Osfield
116e7f49a4 Updated wrappers 2007-01-30 11:47:44 +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
7b9b13b6c0 Added support for per frame alternating the direction that SORT_BY_STATE bins are
rendered.  The alternation makes it more likely that OpenGL objects will still
be in video ram.
2007-01-30 09:55:34 +00:00
Robert Osfield
b887226775 Made _useMainThreadForRenderingalTraversal(false) 2007-01-29 22:59:04 +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
6835996c21 Added very simple relaxing of traits by dividing required red, green, blue, alpha and depth by 2. 2007-01-28 17:32:41 +00:00
Robert Osfield
44dceef503 Added use of Viewe Realize graphics operation. 2007-01-28 17:12:57 +00:00
Robert Osfield
af6de09ab4 Added set/getRealizeOperation() to Viewer and CompositeViewer 2007-01-28 17:11:21 +00:00
Robert Osfield
25e4fd32ac Updated wrappers 2007-01-28 09:53:02 +00:00
Robert Osfield
60b5c68221 From Vlad Danciu, fixed leaf depth sort functor 2007-01-28 09:30:11 +00:00
Robert Osfield
9168d1130e From Mike Wittman, "This file removes the virtual destructor of osgText::String. It seemed wrong that osgText::String should have a vtable since it is treated like a value type, and any subclasses containing additional data would effectively be subject to slicing during standard usage. This stuck out as an anomaly when classifying the OSG types for C# bindings." 2007-01-28 09:17:10 +00:00
Robert Osfield
689578c13a Added osg::PolygonMode to local StateSet to protect it from being affected by
stateset manipulator.
2007-01-27 17:57:58 +00:00
Robert Osfield
b8994d4707 Updated wrappers 2007-01-27 17:52:11 +00:00
Robert Osfield
27f6f7c790 Added access methods to PositionStateContainer 2007-01-27 14:27:54 +00:00
Robert Osfield
f2c782dda4 Added light source. 2007-01-27 14:27:29 +00:00
Robert Osfield
137d9c1a6a Further work on shadow CullCallback 2007-01-27 12:54:58 +00:00
Robert Osfield
5bf2dfe3b1 Added _sorted flag into RenderBin to prevent a bin being sorted twice in one frame 2007-01-27 12:54:33 +00:00
Robert Osfield
36330f7e40 Changed osgUtil::RenderBin and osg::State to allow nesting of StateSet's associated with RenderBin's. 2007-01-27 11:13:01 +00:00
Robert Osfield
8625598e00 Further work on building the rendering back end from the intial traversal of the
scene graph
2007-01-26 21:22:35 +00:00
Robert Osfield
0c5e9e5a2e Added Program pointer to help with uniform apply. 2007-01-26 16:08:52 +00:00
Robert Osfield
df7ab22414 Added custom callback to capture RenderBins 2007-01-26 09:44:49 +00:00
Robert Osfield
aa339f8e7a #ifdef'd out the artifical simulation time code 2007-01-25 12:16:38 +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
577313ae7d Updated wrappers 2007-01-24 12:59:11 +00:00
Robert Osfield
1c7a164176 From Martin Spott, "To enable osgviewer to link on Solaris added -lmtsk as SunOS/SunStudio implements some threading stuff in
libmtsk."
2007-01-24 12:35:29 +00:00
Robert Osfield
fd6f5c87b8 Added support for GUIEventAdapter::setHandled 2007-01-24 12:28:18 +00:00
Robert Osfield
a01cade782 Added setHandled/getHandled to osgGA::GUIEventAdapter 2007-01-24 12:21:29 +00:00
Robert Osfield
3c96113970 Added ability to generate various cube faces for testing and switch handler to toggle between different models. 2007-01-24 11:18:27 +00:00
Robert Osfield
056ce866b0 From André Garneau, "
* Setup proper pixel format for ATI boards (removal of WGL_SWAP_METHOD_ARB specification from the requested pixel format since unsupported by the ATI driver)

    * Fix to create sample OpenGL window on the proper display device. This is the temporary window used to choose the desired pixel format. In the previous version, this window was always created on the primary display device, even though it had potentially different pixel formats compared to the target display device containing the window to be created.

    * Implementation of WindowingSystemInterface::setScreenResolution() method

    * Implementation of WindowingSystemInterface::setScreenRefreshRate() method

    * Implementation of GraphicsWindow::requestWarpPointer() method

    * Implementation of GraphicsWindow::useCursor() method and associated trait support. This can be used in two ways; first, when the graphics trait requested indicates that no cursor should be present, a new cursor-less window class is used to create the window. When a cursor-enabled window creation is requested, another window class is used. After creation of a window, it is also possible to toggle the cursor state by using the GraphicsWindow::useCursor method.

    * The way the mouse behaves is now compatible with the behaviour seen on X11; i.e. when pressing a mouse button, the window where the pointer is located will capture the mouse input and release it only after the button has been released. This results in all mouse movement events being dispatched to the window where the button was pressed initially until it is released. This improves the interaction with graphics windows.



    * Preparation work has been done to support the ability of moving a window from one screen to another screen and recreating its rendering context when this happens. This has been tested with a mix of NVIDIA and ATI cards and works properly. For the moment being, this feature is commented out due to changes in the core OSG libraries that have been done but need to be submitted later this week for approval by Robert.



Upcoming features



    * Support for moving windows from one screen to another screen seamlessly



    * Ability to set the window (i.e. the application itself creates the rendering window and passes it to the GraphicsWindowWin32 class)



    * Other miscellaneous items"

---------------------------------------------------
2007-01-24 10:02:04 +00:00
Robert Osfield
2fc6dd1942 Added cube test model. 2007-01-23 17:42:43 +00:00
Robert Osfield
4b2e559c63 changed build order so that osgText gets built before osgViewer 2007-01-23 17:29:14 +00:00
Robert Osfield
9e91e6410b Fixed tabbing 2007-01-23 16:32:17 +00:00
Robert Osfield
3c6eec78f9 Updated wrappers 2007-01-23 16:28:59 +00:00
Robert Osfield
bd7af070af Commented out the default saving of models 2007-01-23 16:27:07 +00:00
Robert Osfield
055abec7a3 Added osg::StateSet* parameter to constructor to make it more convinient to set
up the StateSetManipulator and moved the initialization of locally cached states
into the handle method to ensure a representative version of the StateSet is captured
2007-01-23 16:26:15 +00:00
Robert Osfield
45dea96d75 Added #define of GL_QUERY_RESULT and GL_QUERY_RESULT_AVAILABLE 2007-01-23 16:02:37 +00:00
Robert Osfield
6b7652b1cb Added single screen option 2007-01-23 15:51:43 +00:00