Commit Graph

927 Commits

Author SHA1 Message Date
Robert Osfield
19a7ec0f6b Ported osgcopy, osgcubemap, osgdelaunay, osgdepthpartion, osgdistortion, osgfadetext, osgforest and osgfxbrowser to osgViewer 2007-01-06 21:35:57 +00:00
Robert Osfield
983e0c7ecc Add trackball manipulator usage 2007-01-05 21:23:37 +00:00
Robert Osfield
fea694a0bf Ported osgcluster to osgViewer. 2007-01-05 21:19:01 +00:00
Robert Osfield
9dc369eec2 Cleaned up graphics window setup and added clear graphics window to single window,
multiple camera setup.
2007-01-05 16:46:57 +00:00
Robert Osfield
1268d0ce08 Ported osgcegui across to osgViewer 2007-01-05 16:24:05 +00:00
Robert Osfield
f99be366f6 Ported osgcallback to osgViewer 2007-01-05 16:19:25 +00:00
Robert Osfield
3d0b511a00 Ported osgbluemarble to osgViewer 2007-01-05 16:13:43 +00:00
Robert Osfield
0dd473007a Ported osgblendequation across to osgViewer 2007-01-05 16:00:28 +00:00
Robert Osfield
a2599c5fb7 Ported osgbillboard over to osgViewer 2007-01-05 15:54:13 +00:00
Robert Osfield
57e20282de Simplified the osganimate and osgautotransform mains, removing most or all of the argument parser code. 2007-01-05 15:52:33 +00:00
Robert Osfield
01c1e07646 Fixed aspect ratio. 2007-01-05 15:32:21 +00:00
Robert Osfield
d4045a6fef Cleaned up the GraphicsWindow setup 2007-01-05 15:30:49 +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
ed3c7ba116 Replace osgProducer reference by osgViewer 2007-01-05 14:57:20 +00:00
Robert Osfield
411c1fcd25 Moved osgautotransform across to osgViewer 2007-01-05 14:56:37 +00:00
Robert Osfield
44dab36dff Converted osganimate example to osgViewer 2007-01-05 14:48:50 +00:00
Robert Osfield
348fc7bdb3 Made the custom window set up a runtime option 2007-01-05 13:15:59 +00:00
Robert Osfield
a42633a9ee Tweaked comments 2007-01-05 13:06:11 +00:00
Robert Osfield
1ef899069b Changed compile paths into runtime selected paths using command line parameters 2007-01-04 21:58:37 +00:00
Robert Osfield
aebf0de6f2 Removed now redundent calls to set up view 2007-01-04 21:51:10 +00:00
Robert Osfield
abdb1741a4 Removed the setting of thread safe ref/unref and max number of graphics contexts
as this is now done automatically by osgViewer::Viewer
2007-01-04 21:18:44 +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
eb3ef906e7 Removed setting of master camera colour 2007-01-03 17:25:09 +00:00
Robert Osfield
4f87afdbf5 Improved the robustness of thread start and cancellation 2007-01-03 16:06:12 +00:00
Robert Osfield
f14aa7ef66 Added support for different threading models in osgViewer::Viewer 2007-01-02 17:39:31 +00:00
Robert Osfield
b315ed4d58 Shifted the setting of thread safe ref/unref to earlier in the main to
ensure that the Viewer's view is set up thread safe.
2007-01-02 13:02:30 +00:00
Robert Osfield
d068f7025a Added support for getting all windows and hiding the cursor 2007-01-02 12:50:57 +00:00
Robert Osfield
db7df9d6d4 Switched off lighting in osgcatch. 2007-01-02 12:19:26 +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
d7e3ed3fb2 Updated wrappers 2006-12-27 23:19:37 +00:00
Robert Osfield
40139afc49 Ported osghangglider example to usg osgViewer 2006-12-26 20:26:16 +00:00
Robert Osfield
92291f29b7 Ported osgcatch to use osgViewer 2006-12-26 17:35:45 +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
47d1404c2b Removed now redundent OSG_EXPORT to solve build problems under Windows 2006-12-22 16:48:17 +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
a56d273fe3 Moved the implementation of GraphicsWindowX11 from the head into the src/osgViewer directory. 2006-12-21 12:19:14 +00:00
Robert Osfield
2255771b74 Further work osgViewer::Viewer and related classes. 2006-12-20 21:13:29 +00:00
Robert Osfield
c9c2950759 Moved UnitTestFramework from core osg lib into osgunittests example 2006-12-19 17:06:59 +00:00
Robert Osfield
00ee8dffad Added osgViewer::Viewer / osgViewer::GraphicsWindowsX11 usage. 2006-12-19 16:12:29 +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
71bf5371a7 Improvements to handling of multiple z value regions 2006-12-12 21:48:59 +00:00
Robert Osfield
afa96fff0e Added more accurate computation of local height above sea level in the plane intersections routines 2006-12-05 12:58:29 +00:00
Robert Osfield
ba3fe2844f Improved the calculation of distance around the globe within the ElevationSlice routine. 2006-12-04 17:31:20 +00:00
Robert Osfield
0f5aeb5fa3 Added preliminary support for generating distance, height lists for ElevationSlice. 2006-12-04 12:36:13 +00:00
Robert Osfield
6778bfca44 Added support for placing a base in the scene to shadow against 2006-12-01 15:19:21 +00:00
Robert Osfield
8d85636b50 Fixed typo and updated wrappers 2006-11-30 18:42:38 +00:00
Robert Osfield
a9d18d01db Basic shadow volume alogirthm implemented in example. 2006-11-30 16:30:24 +00:00
Robert Osfield
808047ee1b Added dynamic updating of light position and multi-pass addition of ambient and diffuse lighting 2006-11-30 12:05:51 +00:00
Robert Osfield
cdcbf3f9af Added movement of the light source to test performance of update the shadow volumes 2006-11-30 10:29:03 +00:00
Robert Osfield
a2e79f6a38 Moved osgUtil::PolytopeIntersector, osgUtil::PlaneIntersector and osgUtil::LineSegmentIntersector out from include/osgUtil/IntersecionVisitor into their own seperate files. 2006-11-28 16:30:38 +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
ae79bebd82 Added QWidget style constructor parameters 2006-11-27 16:25:12 +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
5044a85c9e Improved handling of bounding polytope 2006-11-24 17:20:01 +00:00
Robert Osfield
006435e679 Added support for positional lights into computeShadowVolumeGeometry code and cleaned up OccluderGeometry interface. 2006-11-24 11:37:57 +00:00
Robert Osfield
ef9595e73a Add compute of tight bounding box to enable better placement of the base plane. 2006-11-23 17:29:43 +00:00
Robert Osfield
e7ef0ca846 First cut at generating the ShadowVolumeGeometry 2006-11-23 16:55:46 +00:00
Robert Osfield
95568b24fa Added nested files 2006-11-20 21:48:40 +00:00
Robert Osfield
b6e261d4d3 Added -losgFX 2006-11-20 12:25:38 +00:00
Robert Osfield
b30fb02b92 From Eric Wing, new ogsimpleviewCocoa example. 2006-11-17 16:22:58 +00:00
Robert Osfield
a73e9250ee Added alpha test setting 2006-11-15 20:29:28 +00:00
Robert Osfield
43c6a1c275 From Eric Wing, add version check for use of automatic resizeing 2006-11-15 11:21:53 +00:00
Robert Osfield
30ad811cac From Eric Wing, add use of the autodetection of windowing size support in SDL-version 1.2.10 and later.
From Robert Osfield, made the above an optional compile as it breaks apps based on previous version of SDL.
2006-11-14 16:59:00 +00:00
Robert Osfield
5f59741b42 Added support for handling osg::ShapeDrawable style drawables in OccluderGeoemtry. 2006-11-14 12:16:39 +00:00
Robert Osfield
8983544a86 Further work on osgShadow::GeometryOccluder 2006-11-10 15:07:13 +00:00
Robert Osfield
a1f20f1a00 From Eric Wing, change osgGA::SimpleViewer to osgViewer::Viewer.
From Robert Osfield, added -losgViewer & -losgGA to makefiles.
2006-11-08 09:50:27 +00:00
Robert Osfield
06cca16a2a Added convinience constructors to help support picking with the new osgUtil::Intersector classes. 2006-11-02 17:05:46 +00:00
Robert Osfield
7d12b85632 Added basic PolytopeIntersector functionality based on checking vertices against
polytopes.
2006-11-02 15:50:04 +00:00
Robert Osfield
e0f395fd07 Moved SimpleViewer and GraphicsWindow into their own osgViewer library, updated simpleviewer examples to reflect this change 2006-11-02 12:27:15 +00:00
Robert Osfield
15f7abe100 Improved handling of projected coords in new intersection classes 2006-11-01 17:18:45 +00:00
Robert Osfield
75169ad16f Added support for osgUtil::Intersectors being in WINDOW, PROJECTION, VIEW or MODEL coordinates 2006-11-01 14:41:32 +00:00
Robert Osfield
a253e17d3e Implemented HeightAboveTerrain and added usage into osgintersection 2006-10-31 12:59:51 +00:00
Robert Osfield
16c238fc60 Added osgSim::LineOfSight and osgSim::HeightAboveTerrain classes 2006-10-30 20:29:06 +00:00
Robert Osfield
358b96e953 Added osgUtil::IntersectorGroup to handle groups of osgUtil::Intersectors 2006-10-27 15:11:17 +00:00
Robert Osfield
ce3929fd5f Added beginings of new osgUtil::IntersectionVisitor and osgintersection class 2006-10-26 16:03:17 +00:00
Robert Osfield
efd543d1b0 Ported FLTK example across to using GraphicsWindow 2006-10-15 11:56:52 +00:00
Robert Osfield
a8f44479db Ported across to using GraphicsWindow. 2006-10-15 11:39:35 +00:00
Robert Osfield
5163c4a762 First cut at class interfaces and stubs for implementations for the new osgShadow NodeKit 2006-10-06 14:16:11 +00:00
Robert Osfield
d40e12a27b Removed deprecated GUIEventHandler method 2006-10-05 14:32:39 +00:00
Robert Osfield
51aade98cc Renamed variable 2006-10-05 10:59:50 +00:00
Robert Osfield
e7e293594c Refactored osgsimpleviewerQT4 to implement a GraphicsWindowQT, and then use
multiple inheritance to build the final SimpleViewerQT.
2006-10-05 10:59:04 +00:00
Robert Osfield
100288b272 Added a path with an experiemental GraphicsContexProducer implementation, and a
test of mulitple inheritance.
2006-10-05 10:07:16 +00:00
Robert Osfield
f9eaa76d37 Added GLUT based osgsimpleviewerGLUT example 2006-10-01 16:14:16 +00:00
Robert Osfield
301eb5750f Added Producer based osgsimplerviewerProducer example 2006-10-01 16:12:21 +00:00
Robert Osfield
6bd7f57770 Added FLTK example app - osgsimpleviewerFLTK. 2006-10-01 16:10:33 +00:00
Robert Osfield
859dc90bd7 Added osgsimpleviewerQT4 example 2006-10-01 13:26:02 +00:00
Robert Osfield
9e8372eeca Refactored the SDL example so that the event conversion in done is a seperate method. 2006-10-01 11:08:40 +00:00
Robert Osfield
a1afd67bc8 Added a based SDL viewer - osgsimpleviewerSDL 2006-09-30 20:06:26 +00:00
Robert Osfield
26849018aa Cleaned up build and indenting 2006-09-30 20:05:36 +00:00
Robert Osfield
e6b08dcda3 Various clean ups to comments 2006-09-30 16:30:31 +00:00
Robert Osfield
75391ceb16 Added osgsimpleviewerQT3 example 2006-09-30 16:26:53 +00:00
Robert Osfield
1da298f919 Moved osgGLUTsimple and osgGLUTkeyboardmouse across to using osgGA::SimpleViewer 2006-09-30 14:12:36 +00:00
Robert Osfield
5c0eb0b013 Added bare bones osgGA::SimpleViewer class to help simplify OSG setup when embedding the OSG
into existing GUI applications, and for one one a single camera, single window is required.
2006-09-25 16:25:53 +00:00
Robert Osfield
d4d3e9054e Updated positions of the text labels to make them move obvious on start up 2006-09-20 15:48:27 +00:00
Robert Osfield
ce65ad05d1 Added use of ClusterCullingCallback 2006-09-20 13:40:58 +00:00
Robert Osfield
efb76cb8e6 Created stress test of fade text labelling 2006-09-20 12:58:34 +00:00
Robert Osfield
cc202c1b6d Updates for fade text to work properly, but only in perspetive views at present. 2006-09-20 10:36:21 +00:00
Robert Osfield
87aff3d92c Further work on osgText::FadeText implementation. 2006-09-19 20:19:29 +00:00
Robert Osfield
def74d3471 Introduced new osg::View, and osg::RenderInfo classes into the core OSG to help
handle scenes with multiple views with elements that need coordinating on a per view basis.

Added beginings of new osgText::FadeText class (not functionality yet).
2006-09-18 20:54:48 +00:00
Robert Osfield
ebd2bb6a19 Added extra comment explaining where state reset() should be called. 2006-09-13 14:55:53 +00:00
Robert Osfield
5212d66cab Cleaned up the texture setup code. 2006-09-04 12:52:09 +00:00
Robert Osfield
f0277df858 Added osg::TexMat::s/getScaleByTextureRectangleSize feature that allows
one to use the osg::TexMat to automatically scale non dimensional tex coordinats to
the size of the last texture rectangle applied.
2006-09-04 12:46:49 +00:00
Robert Osfield
ac41066733 Removed typedef TypeList from osgintrospection 2006-09-04 06:47:05 +00:00
Robert Osfield
a135650086 Added setting of position.w to 1.0 and removed zscale hack. 2006-09-02 14:27:42 +00:00
Robert Osfield
d1b14abb91 Added sizeof(short int) 2006-08-23 13:18:22 +00:00
Robert Osfield
ce8d8c09e1 Tweaks to osglogo to allow you to export alpha blended screenshots 2006-08-23 13:16:12 +00:00
Robert Osfield
956b6ce6f2 Removed osgfbo and osgpbuffer examples 2006-08-11 09:30:42 +00:00
Robert Osfield
a4063335fa From Martijn Kragtwijk, added example text for showing osgText::Text::CharacterSizeMode in action. 2006-08-10 12:13:02 +00:00
Robert Osfield
ebfffd4e58 Removed debugging code. 2006-08-06 16:42:43 +00:00
Robert Osfield
f8490e386a Added code to reproduce Text outline bounding box compute bug. 2006-08-05 16:57:52 +00:00
Robert Osfield
daf9d64357 Added disable vertex arrays. 2006-08-05 11:12:47 +00:00
Robert Osfield
d8e3027b2a Added osgcegui example 2006-08-05 10:16:28 +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
de9ce1e85f Removed debug code 2006-08-03 14:03:06 +00:00
Robert Osfield
7eb7bbdb84 Updated wrappers 2006-08-02 21:09:25 +00:00
Robert Osfield
b81cea3963 Added missing include <osg/TexEnv> 2006-08-02 21:04:29 +00:00
Robert Osfield
41a4aa1548 Added viewer.cleanup_frame() to all examples. 2006-08-02 19:55:03 +00:00
Robert Osfield
9f15e25451 Added cleanup_frame to prevent crashes on exit. 2006-08-02 16:12:46 +00:00
Robert Osfield
7d4eb93847 Changed the viewer.setUpViewer(..) from default to just ESCAPE_SETS_DONE. 2006-08-01 10:27:11 +00:00
Robert Osfield
564ee34f76 Added Matrix*::getRotate()/setRotate(Quat), deprecating Matrix*::get(Quat&), Matrix*::set(Quat&) 2006-07-31 17:31:21 +00:00
Robert Osfield
f977d7c606 Updated osgunittests with a matrix invert unit test, and added a conditional
calling of invert_4x4 or invert_4x3 depending on the the right hand column of the matrix.

Updated wrappers
2006-07-28 13:48:08 +00:00
Robert Osfield
032bba78fa From J.P. Delport, added units tests to pick up on erroneous Matrix::get(Quat&) computation. 2006-07-27 11:13:56 +00:00
Robert Osfield
9b0b98200f Force SingelThreaded usage due to use of osgParticle. 2006-07-25 20:43:57 +00:00
Robert Osfield
b03a772846 Added mutexes to RealizeCallbaks 2006-07-19 13:02:35 +00:00
Robert Osfield
4bb4add9b3 Added scene handler init to custom realize callback 2006-07-19 12:58:45 +00:00
Robert Osfield
f1c2694c17 Updated copyright years. 2006-07-18 15:21:48 +00:00
Robert Osfield
56fce04cb4 Added additional command line docs 2006-07-18 15:11:41 +00:00
Robert Osfield
dcdc2d492d Updated commandline docs 2006-07-18 13:37:42 +00:00
Robert Osfield
419e185895 From Eric Wing, add alternate backdrop implementations.
From Robert Osfield, updated naming  and copy constructor methods.
2006-07-18 12:24:04 +00:00
Robert Osfield
618e63a267 Removed the default loading of bluemarble.ive 2006-07-14 14:04:54 +00:00
Robert Osfield
822ef01531 Added mutex to the test context. 2006-07-05 13:31:38 +00:00
Robert Osfield
b871ae5cf7 Added vertex program hack to get round apparent NVidia bug when handling
vertex texture read.
2006-07-05 13:18:00 +00:00
Robert Osfield
b6b9e4bc7e fixed warning and add a few extra tests 2006-07-04 09:46:41 +00:00
Robert Osfield
c986f6ea41 Added a performace test section to osgunitests, currently just does basic C/C++ tests. 2006-07-03 13:53:39 +00:00
Robert Osfield
2cf8fd8f42 Added a setRadius into the screen space LOD. 2006-06-28 10:00:54 +00:00
Robert Osfield
bc9c949d53 From Eric Wing, added support for outline/shadow and colour gradient effects. 2006-06-27 12:05:40 +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
8d111fd147 Added pick handler. 2006-06-12 14:04:40 +00:00
Robert Osfield
ac20eca87a Revamped osgkeyboardmouse to use the osgGA. 2006-06-12 11:32:11 +00:00
Robert Osfield
2e2684c05a From Paul Martz, added support to textured light points into osgSim and OpenFlight loader, as part of the OpenFlight v16.0 spec. 2006-06-08 14:32:02 +00:00
Robert Osfield
ecd5a96671 From Mike Weiblen, reverted shaders changes due to lack of hardware/driver support 2006-06-08 12:07:11 +00:00
Robert Osfield
efeeabbef9 added SphereSegment test code segment, commented out at pressent. 2006-06-08 11:18:27 +00:00
Robert Osfield
5670ce8c0a Added extra SphereSegment intersection tests. 2006-06-05 16:25:01 +00:00
Robert Osfield
bf065ed3a4 From Mike Weiblen, support GLSL uniform arrays. A couple of tweaks and fixes from Robert Osfield. 2006-05-15 15:46:08 +00:00
Robert Osfield
d7fdaecfa0 From Adrian Egli, added std::ifstream::binary qualifier to ifstream usage. 2006-05-15 11:38:56 +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