Commit Graph

410 Commits

Author SHA1 Message Date
Robert Osfield
49ab8f4706 Added new osggeometry demo to test the work on the new osg::Geometry Drawable. 2002-06-21 16:45:45 +00:00
Robert Osfield
476f931eaa Addd new experimental osg::Geometry Drawable which will eventually replace
GeoSet.  Currently doesn't draw anything, and is very much in the
early design stages.
2002-06-20 19:54:08 +00:00
Robert Osfield
d31624d54a Fixed incorrect naming of ConvexPlanerOccluder. 2002-06-19 20:38:08 +00:00
Robert Osfield
77e1fb7f80 Added support for reading and writing OccluderNode's to the .osg file format. 2002-06-19 16:06:03 +00:00
Robert Osfield
61df1ed6b7 Further work on occlusion culling. 2002-06-13 23:46:02 +00:00
Robert Osfield
c7e99ff77a Further work on occludision code. 2002-06-12 09:22:30 +00:00
Robert Osfield
247cb3ff7e Checked in Macro Jez's additions to osgText to support .osg IO make it
a fully functioning NodeKit.

Also reimplement notify() to try an prevent a crash which has been caused by
to objects in notify.cpp being initiliazed twice, the second time the auto_ptr
holding the dev/null ofstream was being initilized to 0.
2002-06-11 18:41:57 +00:00
Robert Osfield
e1ba8a6292 Added osg::CollectOccludersVisitor which is a helper class for finding active
occluder in the view frustum, to be used as pre cull traversal.
2002-06-10 13:50:25 +00:00
Robert Osfield
348419219d Created new helper class osg::CullStack to handle the accumulation of projection,
modelview and culling sets, to be used during travesal of the scene graph, such
as the cull traversal.
2002-06-10 11:21:21 +00:00
Robert Osfield
d91b848a63 Checked in migration from osgUtil based GUIAdapter code to Neil Salter's
osgGA (Gui Abstraction).  This may break users code, but all it should
require to fix the builds should be a change from
osgUtil::CameraManipulator (etc) to osgGA::CameraManipulator and
include <osgUtil/CameraManipulator (etc) to osgGA/CameraManipulator and
the extra dependency of the link line.
2002-06-09 13:10:09 +00:00
Robert Osfield
0a8d0a255f More more occlusion culling. 2002-06-08 19:58:05 +00:00
Robert Osfield
77aabc5b36 Renamed the osgparticle demo so that it wouldn't clash with the osgParticle library. 2002-06-05 16:00:23 +00:00
Robert Osfield
c70f5240eb Added OSGPARTICLE_LIBRARY define. 2002-06-05 13:51:14 +00:00
Robert Osfield
cc2f3d1d99 Another try at fixing wayward VisualStudio.dsw file. 2002-06-05 13:11:26 +00:00
Robert Osfield
83c239cee8 Fixed typo. 2002-06-05 13:06:44 +00:00
Robert Osfield
a0f3d90fce Updated VisualStudio files for osgParticle. 2002-06-05 13:00:31 +00:00
Robert Osfield
9ba7505d1e Checked in osgParticle, writtten by Marco Jez. 2002-06-05 12:44:55 +00:00
Robert Osfield
5feba17410 Added new osg::OccluderNode which subclasses from osg::Group, and will
provide hooks for adding ConvexPlanerOccluders to the scene.
2002-06-05 09:39:04 +00:00
Robert Osfield
3f84849210 Additions for the support for ConvexPlaneOccluder. Work still underway. 2002-06-03 15:39:41 +00:00
Robert Osfield
518dd5710a Did a to_dos on all the VisualStudio project files, and changed them to
use the cvs admin -ko and each file to prevent keyword expansion.
2002-06-03 11:16:58 +00:00
Robert Osfield
3fa6401c8f Changed file endings to dos. 2002-06-03 10:40:53 +00:00
Robert Osfield
f16a539492 Fixes for warnings under VisualStudio 2002-05-29 19:34:01 +00:00
Robert Osfield
ae5e4f848f Added new osgcallback demo, and updated small API changes to improve the
flexiblity of callbacks.

Added beginings of convex planer occlusions culling.
2002-05-28 23:43:22 +00:00
Robert Osfield
02fc6ad5f8 Various updates to operations related to cull traversal. 2002-05-28 10:24:43 +00:00
Robert Osfield
748ce4e98b Added the patched verions VisualStudio's langext.dat file, which can be used
to replace VisualStudio standard one, this enabled VS to reconginse OSG
header files as C++ files.
2002-05-23 15:38:03 +00:00
Robert Osfield
29258d6a0b Removed the usage of memory manager from the debug windows build. 2002-05-22 12:19:09 +00:00
Robert Osfield
d6ff23d32f Fix compile problems with osgGA under Windows. 2002-05-09 19:02:35 +00:00
Robert Osfield
cf4a3500ec Added new osgGA - GUI Adapter library submitted by Neil Salter. This will
replace the current GUI adapter code inside osgUtil.
2002-05-09 10:31:03 +00:00
Robert Osfield
e58b79c997 Addded missing ClipNode references to osg.dsp. 2002-05-08 07:32:40 +00:00
Robert Osfield
ae8076f83b dded osg::ClipNode class for managing OpenGL clipping planes, and osgclip demo. 2002-05-02 00:14:40 +00:00
Don BURNS
7d8bbfaf50 Testing .dsp and .dsw as binary files 2002-04-26 15:21:22 +00:00
Robert Osfield
f0e7e8e48b Removed CullViewState from the distribution, moved CullViewState::CullingMode
into CullVisitor, and then removed all references to CullViewState from other
parts of the scene graph.
2002-04-24 20:24:10 +00:00
Robert Osfield
5a6a4ab270 Added OSG_USE_MEMORY_MANAGER to Windows debug build 2002-04-23 15:05:14 +00:00
Robert Osfield
2b4008bbbc Purge on warnings under Linux. 2002-04-16 14:09:46 +00:00
Robert Osfield
55e5a943aa Fixed error in project w.r.t name of source file. 2002-04-15 14:29:13 +00:00
Robert Osfield
78484867ef Renamed Demos/osgtext/osgtext.dsp back to Demos/osgtext/osgtextdemo.dsp 2002-04-15 14:21:10 +00:00
Robert Osfield
0222f10d27 Added osghud, a head up display demo. 2002-04-15 11:03:31 +00:00
Robert Osfield
8a5c6d5102 Clean up for VisualStudio build 2002-04-13 22:19:29 +00:00
Robert Osfield
65e0a5f9d2 Added a space into the project name because it was confusing VisualStudio. 2002-04-13 18:53:20 +00:00
Robert Osfield
fc0601fd8e Further changes to VisualStudio.dsw for dependancies. 2002-04-13 18:45:18 +00:00
Robert Osfield
618b48fc03 Added dependanices into osgPlugins. 2002-04-13 11:36:10 +00:00
Robert Osfield
62192cb236 Added dependancies to Demos. 2002-04-13 10:29:44 +00:00
Robert Osfield
3f67300c82 Saved workspace from VisualStudio to follow up on missing demo dependancies 2002-04-13 10:18:58 +00:00
Robert Osfield
7150ab090b Added Core infront of the names of the project dependancies. 2002-04-13 09:28:53 +00:00
Robert Osfield
91e9d71963 Futher updates to VisualStudio files, adding osgstereoimage and osgversion in particular. 2002-04-12 13:06:48 +00:00
Robert Osfield
d3fa1df64f Added "Core " infront of the osg, osgDB, osgUtil, osgText, and osgGLUT libraries
in the Visual Studio workspace/project files.
2002-04-12 12:51:32 +00:00
Robert Osfield
4d90729c33 Renamed the osgtext demo project to reflect the name. 2002-04-12 12:15:07 +00:00
Robert Osfield
4da5d65eca Added "Demo " and "osgPlugin " infront of all demo and plugin project names to
help differentiate them within VisualStudio.
2002-04-12 11:57:20 +00:00
Robert Osfield
2ea2296f8d Attempt to add osgPlugin infront of the 3ds name to force VisualStudio to
present it as plugin in the browser.
2002-04-12 10:24:45 +00:00
Robert Osfield
795c2ded43 Reorganised the names of libraries and Demos to make it clear what is what. 2002-04-12 10:12:35 +00:00
Robert Osfield
c6cdfc6794 Removed double reference of osgtexture 2002-04-12 09:25:41 +00:00
Robert Osfield
3a18750760 Removed dangling references to NewCullVisitor from osgUtil.dsp. 2002-04-12 08:01:22 +00:00
Robert Osfield
360247225e Added new osg::DrawPixels class with encapsulates glDrawPixels as and
osg::Drawable.  Added osg::Image::readPixels to osg::Image.

Made osg::LightSource to default to cullActive set to false to that LightSource
nodes don't get culled by default.
2002-04-10 21:51:34 +00:00
Robert Osfield
3351306d80 Added new osg::Projection node, and osgUtil::NewCullVisitor which are work
in progress for the new support for controlling the projection matrix from
within the scene graph.

Also Added osg::State::getClippingVolume(), getProjectionMatrix() and
getModelViewMatrix() with allows drawables to access the current projection,
and model view matrices and the view frustum in local coords to the drawable.
2002-03-31 16:40:44 +00:00
Robert Osfield
651a22453a Added osg::MemoryManger which is currently based on Paul Nettle's memory manager
published at flipcode.  I havn't adopted Paul's macro's for new/delete etc, but use
osg prefixed versions instead to allow greater flexiblity in handling include
ordering.

Have fixed a couple of new/delete[] problems which existed as a result.

To use the MemoryManager to track memory usage simply add
-DOSG_USE_MEMEORY_TRACKING to the compile line.

Have yet to move the osg from using new to osgNew, will do this next.
2002-03-25 23:18:02 +00:00
Robert Osfield
51b1b1eb38 Added missing osgstereoimage.dsp 2002-03-25 23:13:30 +00:00
Robert Osfield
9836af1055 Added osg::TextureCubeMap which encapsulates OpenGL's cube texture mapping. 2002-03-20 22:39:51 +00:00
Robert Osfield
8f02db61e5 Added osg::TextureCubeMap. submission from Brede Johansen. 2002-03-18 23:10:33 +00:00
Robert Osfield
45de7a5815 Added new osgstereoimage demo which loads two stero paired images to create
a 3D via of photographed scene.
2002-03-17 18:44:47 +00:00
Robert Osfield
1d00a87b09 TXP plugin updates from Boris Bralo. 2002-03-09 10:52:32 +00:00
Robert Osfield
1bdebcf174 Added new osg::AnimationPath which is contaner for a set of key frames for
defining an animation path.  To be used with osg::Transform etc.
2002-02-27 00:58:54 +00:00
Robert Osfield
e21af2adce Added support for glLightModel functionality via osg::LightModel. 2002-02-25 22:46:38 +00:00
Robert Osfield
f600f6fe4a Added support for glLineStipple via osg::LineStipple state attribute. 2002-02-24 20:55:45 +00:00
Robert Osfield
ddc1212cb4 fixed txp build name problem - was overwriting .osg plugin. 2002-02-19 18:59:39 +00:00
Robert Osfield
4abfdb1ebd Added OpenDX writer from Randall Hopper. 2002-02-18 20:46:47 +00:00
Robert Osfield
c50f3f1dff updated the options for the txp plugin. 2002-02-14 12:55:16 +00:00
Robert Osfield
5a765ee8a8 Removed osgWX workspace files. 2002-02-14 12:51:38 +00:00
Robert Osfield
4c5fcd3f61 Fixes for IRIX and Boris Bralo's TerraPage loader. 2002-02-08 09:30:02 +00:00
Robert Osfield
a703130aa0 Have taken a few more steps towards support for view dependant transformations
by adding a ComputeTransformCallback to osg::Transform, and have now removed
the recently added AutoTransform since it is nolonger required.  Have also
updated CullVisitor to account for the new ways for tracking transformation
matrices in the scene.
2002-02-05 21:54:46 +00:00
Robert Osfield
af968b00bd Added first cut at new AutoTransform node which will be used for generating
Transform's during the cull traversal such as for earth/sky etc.
2002-02-03 11:38:20 +00:00
Robert Osfield
1aaa46dbe7 Fixes for Windows build. 2002-01-30 16:24:24 +00:00
Robert Osfield
9489da427d Added osgbillboard project files to the VisualStudio workspace. 2002-01-30 15:02:07 +00:00
Robert Osfield
2487861fbc Have add new osg::CopyOp which replaces last nights osg::Cloner, the new
class now combines Cloner and DeepCopy into one class. Cloner and DeepCopy
will be removed in next commit.

Also have added osgcopy app to Demos which shows how the CopyOp have be
subclassed to create users own specific handling of copying.

Have fixed copy constructor problems in GeoSet which fix the deep copy
problem experienced yesterday.
2002-01-29 12:52:04 +00:00
Robert Osfield
f612924a45 Added support for shallow and deep copy of nodes, drawables and state, via a
copy constructor which takes an optional Cloner object, and the old
osg::Object::clone() has changed so that it now requires a Cloner as paramter.
This is passed on to the copy constructor to help control the shallow vs
deep copying.  The old functionality of clone() which was clone of type has
been renamed to cloneType().

Updated all of the OSG to work with these new conventions, implemention all
the required copy constructors etc.  A couple of areas will do shallow
copies by design, a couple of other still need to be updated to do either
shallow or deep.

Neither of the shallow or deep copy operations have been tested yet, only
the old functionality of the OSG has been checked so far, such running the
viewer on various demo datasets.

Also fixed a problem in osg::Optimize::RemoveRendundentNodesVisitor which
was not checking that Group didn't have have any attached StateSet's, Callbacks
or UserData.  These checks have now been added, which fixes a bug which was
revealled by the new osgscribe demo, this related to removal of group acting
as state decorator.

method
2002-01-28 21:17:01 +00:00
Robert Osfield
9f34ae338c Added VisualStudio workspace files for new osgscribe demo. 2002-01-26 20:03:07 +00:00
Robert Osfield
06bd9fda5b Have made osg::Transform more extensible via additions of new getLocalToWorldMatrix()
and getWorldToLocalMatrix(), computeLocalToWorld() and computeWorldToLocal()
methods.

Have updated the CullVisitor, IntersectVisitor and Optimizer to use the
new osg::Transform::getLocalToWorldMatrix() which has the same functionality
as the old getMatrix() but is now supports subclasses of osg::Transform
transparently.

Have added osg::PositionAttitudeTransform as subclass of osg::Transform
which manages the transform as position and attitude via a Vec3 and Quat
respectively.
2002-01-23 22:15:39 +00:00
Robert Osfield
4ea7de39c6 Added osg::ShadeModel state attribute which encapsulates glShadeModel. 2002-01-04 17:35:54 +00:00
Robert Osfield
4221132626 updates for windows build 2001-12-24 15:12:59 +00:00
Robert Osfield
19c99dc94c Further work on improving stereo support in the OSG.
Renamed the osg::VisualsSettings to osg::DisplaySettings, and
osgUtil::VisualsRequirementsVisitor to osgUtil::DisplayRequirementsVisitor.

Added support for OSG_SCREEN_HEIGHT into osg::DisplaySettings, and added
a DisplaySettings* to the constructors of osg::SceneView and osg::Camera.
2001-12-21 22:48:19 +00:00
Robert Osfield
9365f0e3b1 Added support for glLineWidth via an osg::LineWidth StateAttribute. 2001-12-20 20:48:46 +00:00
Robert Osfield
296865e250 Adding support for controlling visual settings via environmental variables
and command line paramters.  Including support for stereo and stencil buffer.
2001-12-19 00:38:23 +00:00
Robert Osfield
c6ee3ff041 Don haved accidentally removed the reference to osg.dsp from the .dsw file,
breakin the Windows build.
2001-12-14 16:15:44 +00:00
Don BURNS
a42994f876 Appeased poor MS VisualStudio by adding the ^M's to all .dsw and .dsp files. 2001-12-14 15:16:30 +00:00
Don BURNS
672d4a0a6b Fixed newline/cr problem 2001-12-14 15:10:42 +00:00
Robert Osfield
20e3785bf8 Various files which should have been checked in earlier but were missed...
VisualStudio files for flt loader, and header files or Image and Texture
for new osg::Texture::CLAMP_TO_EDGE and osg::Image::dirty.
2001-12-04 20:38:27 +00:00
Robert Osfield
a434abafd7 Fixes for IRIX build.
Updates to the osg::Transform, adding preMult and postMult methods and
deprecating the old preRotate,preTranslate,preScale.

Updated the rest of the OSG so that it nolonger uses the deprecated
osg::Transform nodes.

Renamed osgUtil::SceneView::setGlobalState() to
osgUtil::SceneView::setGlobalStateSet() so that the name reflects its
functionality better.  Updated osgGLUT::Viewer etc to cope with new
name change.
2001-11-14 14:09:07 +00:00
Robert Osfield
5ceefdcc12 Fixed compilation error in src/osgDB/FileUtils.cpp.
Added support for nested NodeCallbacks, allowing them to be chained together
so that multiple operations can be applied.
2001-11-11 22:32:59 +00:00
Robert Osfield
7290f793f1 Added osgText::Paragraph which is a subclass from Geode which composes a
list of text drawables as a paragraph block, handles breaking of text into
individual lines automatically.

Changed the osg::Node::setUserData so that the data type has to be an
osg::Referenced, and removes the dependancy on osg::MemoryAdapter.  I have
done this since it simplifies the OSG side of the interface and makes it
less like that the user might abuse the memory managment of the data. It
does however mean that user data will have by subclassed from Referenced,
and therefor may require users to have their own adapter to do this.
However, this little nuasance is worth the extra cleaness and robustness
afforded by going the osg::Referenced route.
2001-11-09 15:06:01 +00:00
Robert Osfield
c45cdd14f9 Update osgText.dsp to define FTGL_STATICLIBRARY to prevent it compiling
the as a seperate library and producing linkage warnings.
2001-10-31 11:41:22 +00:00
Robert Osfield
254268030d Updated the FTGL implemention in osgText to FTFL1.1. 2001-10-31 10:20:50 +00:00
Robert Osfield
0551da3613 Completed work on osgText compilation under Win32. We now
have fonts under Wndows and Linux :-)
2001-10-24 23:15:15 +00:00
Robert Osfield
e96a17564f Updates to the visual studio files for osgText. 2001-10-24 22:29:38 +00:00
Robert Osfield
939b12a908 Updates of osgDB/FileUtils to fix compilation problems under Win32 2001-10-24 19:48:58 +00:00
Robert Osfield
573f68c35b Updates to osgText. 2001-10-24 13:46:58 +00:00
Robert Osfield
8e1b1bcfc1 First past integrat of Max Rhiener work on wrapping FTGL to create osgText
library and demo.
2001-10-23 19:51:39 +00:00
Robert Osfield
63bb05e6fd Added new osgGLUT::Window base class which is very basic right now, all it does
is bring up a GLUT window and provide virtual functions from which users should
subclass to add functionality.
2001-10-23 15:55:01 +00:00
Robert Osfield
ccc3d3fd8a Added osgUtil::Optimizer which contains four visitor each designed for doing
different types of optimization on the scene graph - state optimization,
flattening static transforms, combining LOD's and removing redundent groups.
The new Optimizer replaces the once seperate OptimizerStateVisitor.
2001-10-19 14:22:02 +00:00
Robert Osfield
ada36c3462 Fixes for Win32 compilation. 2001-10-16 16:48:19 +00:00
Robert Osfield
e719569b42 Added OrientationConverter.cpp to the VisualStudio project files for osgconv. 2001-10-14 16:56:03 +00:00
Robert Osfield
b096fdcd20 Updated to fix build problems under MSVC. 2001-10-09 20:22:52 +00:00
Robert Osfield
ed14eba53a Updated MSVC Workspace files to fix build problems. 2001-10-09 20:09:27 +00:00
Robert Osfield
22aef83a8f Updated MSVC Workspace files to fix build problems. 2001-10-09 20:03:51 +00:00
Robert Osfield
ec3388900d Merged Ben Discoe's clean up of the MSVC files. 2001-10-09 14:18:47 +00:00
Robert Osfield
c56a1b8c31 Added bmp plugin files, bmp plguin written by Geoff Michel 2001-10-05 19:55:58 +00:00
Robert Osfield
df362da11b Added bmp osgPlugin, written by Geoff Michel. 2001-10-05 10:39:27 +00:00
Robert Osfield
430c8606e9 Added osg::EarthSky node to the core osg library, and added support for it into
osgUtil::SceneView, osg::CullVisitor, osgPlugin/osg and updated the hangglide
demo to use the new earth sky node.
2001-10-02 11:36:14 +00:00
Don BURNS
7ae58df42a Synch with 20010921 2001-09-22 02:42:08 +00:00
Don BURNS
bc739f47a9 And yet more clean up synch with 0.8.42 2001-09-19 21:41:52 +00:00
Don BURNS
e8f256a59d Added a bunch of files synched with 0.8.42 2001-09-19 21:08:56 +00:00
Don BURNS
70208ebc06 Initial revision 2001-01-10 16:32:10 +00:00