Commit Graph

1038 Commits

Author SHA1 Message Date
Robert Osfield
df027e1bab Fixes to IndexGeometry for Win32 build. 2002-09-27 19:01:59 +00:00
Robert Osfield
f8edf16c40 Improvements to IndexedGeometry. 2002-09-27 17:47:47 +00:00
Robert Osfield
2a28a4297f Futher work on the IndexedGeometry class. Indexed coordinates should now
work.
2002-09-26 15:26:22 +00:00
Robert Osfield
f7c7740327 Changed the linux linking of -lgif to -lungif.
Fixed a typo in the Images name.
2002-09-24 20:14:08 +00:00
Robert Osfield
9546c73e39 Changed the image file so that use the Images/ prefix to help locate the files
within the OpenSceneGraph-Data directory.
2002-09-24 20:04:20 +00:00
Robert Osfield
fb629ae87d From Gideon, support for tracking the number of objects constructed and deleted,
only compiled in when unit tests are compiled in.
2002-09-20 15:55:50 +00:00
Robert Osfield
444a6eaf97 From Ulrich Hertlien, supported add to textures in the .lwo format. 2002-09-20 15:54:17 +00:00
Robert Osfield
55215651d7 Renamed osg::Primitive to osg::PrimitiveSet which better reflect what it
encapsulates.

Added new osg::IndexGeometry implemention, *not* complete yet.

Changed the rest of the OSG to handle the renaming og Primitive to PrimitiveSet.
2002-09-20 14:51:59 +00:00
Robert Osfield
fd3bef5158 From Daniel, changed setEventHandler to addEventHandler. 2002-09-20 14:48:41 +00:00
Robert Osfield
ce51fb1841 Added PolygonStipple class from Mike, with mods from Robert to make data
management local.
2002-09-19 10:30:15 +00:00
Robert Osfield
68384e984b Made the calls to the drawing of the pre rendering stages exclit, using
a seperate method in RenderStage and associated calls in sceneView.cpp.
This fixes problems when doing stereo and prerender at the same time.
2002-09-19 09:52:50 +00:00
Robert Osfield
f6cb09c601 Fixed copy constructor so that the _stage member variable was set to this
correctly.
2002-09-19 09:05:50 +00:00
Robert Osfield
02d920c930 Fix the sceondary color code. 2002-09-18 16:10:42 +00:00
Robert Osfield
9a9e88b78a Added missing isCompressedInternalFormat() method. 2002-09-18 16:05:26 +00:00
Robert Osfield
f11410928f Simplified the depth calculation code in CullVisitor so that it always computes
the depth of all drawables, so that it is always safe for RenderBin sort routines can use
these values directly.

Add an example of a RenderBin::SortCallback to sgv.cpp.
2002-09-18 14:57:01 +00:00
Robert Osfield
4a54b7bdb1 From Daniel Sjölie - added support for multitexured flt files. 2002-09-18 11:11:10 +00:00
Robert Osfield
ed43d97ed3 Improved the sort callback support in osgUtil::RenderBin, and removed the
now rendundent DepthSortedBin class.
2002-09-17 15:47:23 +00:00
Robert Osfield
91df37b5c8 Further work on multiple context extensions. 2002-09-16 20:58:05 +00:00
Robert Osfield
f006d081e5 Commented out the call to combine LOD's in the optimizer as it was causing
problems in some flt datasets.
2002-09-16 10:55:09 +00:00
Robert Osfield
ce36cda0cc Updates the osg::Texture3D::Extensions interface to support the standardisation
of extensions supported across multiple graphics contexts.
2002-09-14 10:38:28 +00:00
Robert Osfield
6d21fbd6cf Added dirty methods for vertex arrays to better support external OpenGL
code which modifies the OpenGL state and needs to tell the osg::State
about it to ensure that the OSG doesn't make any errors during lazy
state updating.
2002-09-13 13:50:58 +00:00
Robert Osfield
f867dd81be Added asGroup() and asTransform() methods to osg::Node to downcast nodes
to these types without requiring an expensive dynamic_cast<>.

Also added asGeometry() to osg::Drawable for the same reasons.
2002-09-12 15:34:31 +00:00
Robert Osfield
5733cc1470 From Brede Johansen - Fixes to osg::Plane::valid and added a new set method.
From Stephan Huber - Compilation fix to Texture.cpp for OSX.

From Don Tidrow - added dirtyBound() to osgText::Text::setPosition
2002-09-12 13:23:15 +00:00
Don BURNS
866af14f86 Added ability to accept '.tif' files (as well as '.tiff') and printed
notify() on error
2002-09-09 04:40:50 +00:00
Robert Osfield
e2603ff6c4 Improvements to osg::Texture3D::Extensions code. 2002-09-05 15:45:10 +00:00
Robert Osfield
bb0022175b Added new buffered_value template class which encapsulates a std::vector but
initializes the array to the number of graphics contexts, and automatically
expands the array when indices outside the current size are required.

Added new osg::Texture::Extensions nested class to handle extensions on a per
context basis.
2002-09-05 11:42:55 +00:00
Robert Osfield
9bab7a181f From Ulrich Hertlein, check for max 3d texture size into the osgtexture demo. 2002-09-04 10:51:33 +00:00
Robert Osfield
f574d0dd68 Added support for setting the fusion distance directly in SceneView, defaults
to the original behavior of using the values from the Camera if attached.
2002-09-04 10:49:17 +00:00
Robert Osfield
6ff24b338f Added support for multiple graphics contexts to osg::Texture and its
subclasses.
2002-09-04 08:14:04 +00:00
Don BURNS
d5f87e919d Added setting colormask to SceneView on every frame to allow toggling
between stereo on and off in Anaglyphic mode.
2002-09-04 01:15:07 +00:00
Robert Osfield
1ad924d0ca Fixes to the LWO to better handle 3 and 4 vertex polygons.
Added an extra pass into the Optimizer's merging of geometry primitives so
it convertex 3 and 4 vertex polygons into triangles and quads respectively.
2002-09-03 20:12:29 +00:00
Robert Osfield
2842346b5a Removed const from the evaluateLODChild(,,) callback method. 2002-09-03 19:25:00 +00:00
Robert Osfield
5c1787535c Removed the temporary commenting out of the Optimizer, which was done for
debugging purposes.
2002-09-03 14:42:19 +00:00
Robert Osfield
0cb75d42e0 Fixed LWO2 ReaderWriter problem which was down to an the compiler reodering
the evaluation of a Vec3 paramter.
2002-09-03 13:04:53 +00:00
Robert Osfield
46585242a1 Fixed and unmatched malloc/free pair, which was previously doing a mallco/delete. 2002-09-03 09:50:51 +00:00
Robert Osfield
12226e4371 Converted the instances of const built in types being returned from methods
and passed as paramters into straight forward non const built in types,
i.e. const bool foogbar(const int) becomes bool foobar(int).
2002-09-02 12:31:35 +00:00
Robert Osfield
52518673d1 From Yfei He, added in missing RoadConstruction handler. 2002-08-31 09:59:18 +00:00
Robert Osfield
11bc1b2a77 Bug fix from Tom Jolly, which adds a check aginst a delete of gl textures
in FTGLTextureFont destructor to prevent a NULL be passed to glDeleteTextures.
This solves the crash on exit of osghud/osgtext.
2002-08-31 09:51:52 +00:00
Robert Osfield
c6965357e6 Renamed osg::Statistics::addOpaque to addDrawable to better reflect its current
function.
2002-08-30 19:45:56 +00:00
Robert Osfield
a68d95d2f6 Updates to windows build docs.
Merge fixes for OSX from bob.

Added checking for impostor sprites into stats.
2002-08-30 16:17:41 +00:00
Robert Osfield
b1f69a9b11 Fixed the flatten static transform visitor. 2002-08-30 15:07:10 +00:00
Robert Osfield
fc5f07acaa Fixed the numerical accuracy problems in the Drive and Flight Manipulators. 2002-08-29 20:41:19 +00:00
Robert Osfield
44beefa9a5 Fixed numerical accuracy problem in Trackball manipulator. 2002-08-29 16:38:51 +00:00
Robert Osfield
6c08183b45 Updated docs. 2002-08-29 14:29:49 +00:00
Robert Osfield
79aaac4e0c Renamed the ConvexPlaner* classes to ConvexPlanar* and changed all the various
classes that reference it.

Added MUST_READ_ME.txt to the VisualStudio directory.
2002-08-29 11:02:01 +00:00
Don BURNS
76959d5648 Blast it, Don... You should rebuild before you check things in! 2002-08-29 03:49:23 +00:00
Don BURNS
2b10b4c3df Fixed 69 occurance of 'Seperate' misspelling (should be 'Separate') 2002-08-29 03:22:27 +00:00
Robert Osfield
b546c63139 Changed instances of new across to use osgNew to help debugging, and fixed
an unitialized variable in Sequence.
2002-08-28 21:40:38 +00:00
Robert Osfield
df5c8f789a Updated the version numbers to reflect the upcomming release 0.9.1. 2002-08-28 18:49:27 +00:00
Robert Osfield
fe93b91f73 Fixes to Win32 build. 2002-08-28 18:38:33 +00:00
Robert Osfield
4c762829f2 Added std:: infront of cout and endl. 2002-08-28 17:37:12 +00:00
Robert Osfield
ebb8a635d2 Fixes for Win32 build. 2002-08-28 16:59:22 +00:00
Robert Osfield
bd87e19068 Fixed unitialized variable in the MyTextureSubloadCallback. 2002-08-28 16:25:06 +00:00
Robert Osfield
e50552d6d2 Added fixes to UnitTestFramework to get it compiling under Windows. 2002-08-28 16:17:54 +00:00
Robert Osfield
3b53adc7e8 Warning fixes for Windwos 2002-08-28 15:44:03 +00:00
Robert Osfield
8353fc0ed6 Removed deprecated code from the distribution.
Added .osg support for Texture1D and Texture3D.
2002-08-28 15:28:11 +00:00
Robert Osfield
951b6e9f3f Added -I{THISDIR} into the iv Makefile. 2002-08-28 14:28:21 +00:00
Robert Osfield
7d6197441e Added Neil Salter's osgUtx library into the distribution, have put all the
orignal seperate headers and source into include/osg/UnitTestFrameWork
and src/osg/UnitTestFramework.cpp respectively.  I have done this to
keep the include and source directories focused on the scene graph rather
than the test framework.

Have added a very simple unit test to Vec3.cpp, which are optionally
compiled in with the OSG_COMPILE_UNIT_TESTS define, which is only
currently defined in debug builds under unix.  It should be fine to
add it in under Windows project files as well.

Finally, a new demo app osgunittests runs the tests and reports success
or failure of the tests.
2002-08-28 14:26:09 +00:00
Robert Osfield
bff4728eac Commented out the #define TEXTURE_USE_DEPRECATED_API from includ/osg/Texture
which forces the use of a typedef Texture2D Texture; in place of the orignal
texure implementation.
2002-08-27 21:01:22 +00:00
Robert Osfield
5ad4cc4f2f Added code to write byte/int/float arrays out with 8 values per line by default, rather than
1 per line as before.
2002-08-27 20:54:58 +00:00
Robert Osfield
55d4affded Added support for DOFTransforms into .osg format, and add pivot point support
to the PositionAttitudeTransform .osg support.

Removed a double light reference in the osglight demo.
2002-08-27 20:18:43 +00:00
Robert Osfield
1f7b133eff Added support for reading and writing osg::PositionAttitudeTransform. 2002-08-27 15:46:47 +00:00
Robert Osfield
4a4334c2ab Fixed bug in the Light reading code. 2002-08-27 15:46:29 +00:00
Robert Osfield
4265702c7c Added proper osgtexture1D demo - this demo uses a 1D texture to dynamically
contour the scene.
2002-08-27 14:02:19 +00:00
Robert Osfield
83af5e7a95 Added osgtexture3D demo, renamed osgtexture demo to osgtexture2D, and have
added osgtexture1D demo which currently is simply copy of osgtexture2D. I
will be modifying it to do 1D texturing next.

Fixed a bug in osg::Texture3D relating to checking of existance of
texturing.

Merged some fixes to the pfb loader from Ulrich Hertlein.
2002-08-27 10:06:57 +00:00
Robert Osfield
501f28449c Fixed typo of _texParametersDirty. 2002-08-26 20:11:24 +00:00
Robert Osfield
4ddfd8668e Removed #ifdef hacks to remove optimization with VS6.0's STL. VS6.0 STL is
now no longer supported!
2002-08-26 19:35:43 +00:00
Robert Osfield
59a5e800fe Moved #define's for OpenGL1.2 image formats into the include/osg/Image header
to allow compilation of the rgb plugin under Windows with its 1.1 OGL headers.

Added float.h to Math's compile path for VS7 compilation.
2002-08-26 13:04:43 +00:00
Robert Osfield
db70c95d24 Updated Texture3D to use extension checking to get the relevant 3d texturing
extensions.
2002-08-26 10:24:01 +00:00
Don BURNS
0f0b32f43b Added writer to RGB plugin 2002-08-26 03:15:45 +00:00
Robert Osfield
8e75f531e3 Converted code dependant on osg::Texture across to its replacement osg::Texture2D. 2002-08-25 15:31:44 +00:00
Robert Osfield
61ff1c7b0a Fixes for Win32 build 2002-08-25 11:00:30 +00:00
Robert Osfield
d87dee5a75 Added support for the texture_env_dot3 extension. 2002-08-24 21:11:07 +00:00
Robert Osfield
239068f223 Added new osg::TextureBase, osg::Texture1D, osg::Texture2D, and osg::Texture3D
classes, and changed osg::Texture and osg::TextureCubeMap so that they now derive
from osg::TextureBase.
2002-08-24 19:39:39 +00:00
Don BURNS
9979e80bed Modifed osgGLUT viewer and messages in SGV to allow for start up in full
screen mode.
2002-08-23 00:43:10 +00:00
Robert Osfield
c45c3d3255 Added calling of the LightSource and ClipNode as Group by the NodeVisitor and
fixed the CullVisitor and Optimizer to take account of this.
2002-08-22 09:19:41 +00:00
Robert Osfield
942e23caf3 From Stephan Huber, "I found a small bug in QTtexture.c: the code fails, when the image-files
don't reside on the boot-partition. I replaced the offending function by a
cleaner one.".
2002-08-21 20:42:19 +00:00
Robert Osfield
c2c6bb5ca6 Moved the include<osg/GLExtensions> from the State header into State.cpp, and
added it into other files which now required it.
2002-08-20 22:43:42 +00:00
Robert Osfield
814dcc9677 Added IO Support for TexEnvCombine state attribute. 2002-08-20 18:00:22 +00:00
Robert Osfield
88f387810d Added support for the tex_env_add and tex_env_crossbar extensions. 2002-08-20 14:15:49 +00:00
Robert Osfield
36ad072e14 Added the definition of GL_FOG_COORDINATE_SOURCE to Fog.cpp.
Added #include<string> to the GLExtensions header.
2002-08-20 12:29:35 +00:00
Robert Osfield
df9a899d9e Moved the IO support for the osgText and osgParticle libraries into seperate
plugin libraries.
2002-08-20 11:27:08 +00:00
Robert Osfield
05573d553d Added a error message for when OSG_NOTIFY_LEVEL is not set correctly. 2002-08-20 10:26:36 +00:00
Robert Osfield
058ef0dc98 Merged fixes to the osg::GLExtensions function pointer code from Stefan Huber,
and a fix to osg::State's secondary color code from Bob Kuehne.

Moved the body of the getGLExtensionFuncPtr() into the header to help out
support for Windows mapping of different OpenGL extensions function ptr per
dll.
2002-08-20 10:14:12 +00:00
Robert Osfield
93303cf1cd A FogCoordinateSource set/get methods to osg::Fog which correspond to the
FogCoord support added to osg::Geometry. Added suppot for these new parameters
to the .osg plugin.
2002-08-20 10:08:04 +00:00
Robert Osfield
e347a3c7aa Reordered the string comparions so that DEBUG_INFO comes before INFO, since
the find op will find INFO in a DEBUG_INFO string, and hence report the wrong
notify level.
2002-08-20 08:14:02 +00:00
Robert Osfield
7a0f041a15 Added default values to the TexEnvCombine constructor. 2002-08-19 19:53:34 +00:00
Robert Osfield
1e2f198c5b Added new osg::TexEnvCombine state attribute. 2002-08-19 15:11:09 +00:00
Robert Osfield
b23a48a763 Renamed the osg::EarthSky to osg::ClearNode to make it more obvious what
role it has play and make it more relevant to non vis-sim applications.
2002-08-19 11:42:37 +00:00
Robert Osfield
c72953d94b Moved "unsigned int i" from for(.. to just before it, and removed subsequent
ones to get the VisualStudio compiler working once more.
2002-08-19 08:35:35 +00:00
Robert Osfield
22d54f05e4 Added DOFTransform, MatrixTransform and PositionAttitudeTransform to NodeVisitor.
Added osg::Matrix/Quat::makeRotate(angle1,axis1,angle2,axis2,angle3,axis3) and
osg::Matrix::rotate(angle1,axis1,angle2,axis2,angle3,axis3) method.

Made osg::Matrix/Quat::makeRotate(heading,pitch,roll) and
osg::Matrix::rotate(heading,pitch,roll) all deprecated API.

Fixed the Quat*Quat & Quat*=Quat multiplication methods so that they multiplied
in the correct order - they were reversed originally due to the Quat code being
based on code example which used the v' = M v ordering, rather than the OSG's
v' = v M ordering.
2002-08-18 14:42:43 +00:00
Robert Osfield
a9732aa046 Added check to disable color binding when the secondary colour extension doesn't
exist.
2002-08-18 11:16:31 +00:00
Robert Osfield
2ab0f689eb Added Texuture::SubloadCallback example into the osgprerender demo to illustrate
how to use it.

Changed the ImpostorSprite to use LINEAR,LINEAR for min and mag filters for the
impostor texture.
2002-08-16 15:14:43 +00:00
Robert Osfield
7dfefaf67f Added new osg::Texture::SubloadCallback, and getNumMipmapLevels() to osg::Texture
and osg::Image.  This additions are design to make texture subloading more
flexible.
2002-08-16 13:33:32 +00:00
Robert Osfield
bff72e1077 Fixes from Ulrich Hertlein to get the pfb plugin compiling with using
any deprecated API.
2002-08-16 10:56:20 +00:00
Robert Osfield
8551e1c555 Supported added for secondary color & fog coords to osg::Geometry and osg::State. 2002-08-15 20:27:33 +00:00
Robert Osfield
848ce4ae74 From Perry, support for color added to the MeshPrimtive/LocalVertexPool code. 2002-08-15 20:25:46 +00:00
Robert Osfield
5f6dbfecf3 Removed the getData() from MeshRecord and the dummy SMesh record, this
allow the FaceRecord base class to directly provide the datatype.
2002-08-15 15:04:23 +00:00
Robert Osfield
ccbc1df85b Added a using namespace std; and removed std:: from from std::hex and std::dec. 2002-08-15 14:09:36 +00:00
Robert Osfield
4cbab17096 Added a virtual keyword into the getData() overrided methods. 2002-08-15 13:04:13 +00:00
Robert Osfield
61e3b34bc7 Submission from Perry Miller for support of OpenFlight15.7's local vertex pool
and mesh primitives.  Converted Perry's code to work with the osg::Geometry
instead of osg::GeoSet.
2002-08-15 11:25:23 +00:00
Robert Osfield
f9cc8783b3 Futher improvements and fixes to osg::AnimationPath, and the osglight
demo to show it action.
2002-08-13 15:31:10 +00:00
Robert Osfield
7c049360ff Made improvements to osg::AnimationPath, added
osg::PositionAttitudeTransform::AnimationPathCallback which us an app callback
which uses an AnimationPath to specify the new positions of the transform.

Added AnimationPath code to osglight to animate the positional light.

Added CullVisitor::setCullingMode() code into SceneView so that SceneView's
CullingMode is now properly passed onto CullVisitor.  Note, this work
had been done before, but must has been lost in a merge. Umm...
2002-08-13 13:22:46 +00:00
Robert Osfield
983da4fb9c Fixed uninitialized _sortMode. 2002-08-13 09:35:06 +00:00
Robert Osfield
743b174da9 Added new s/getPivotPoint() support to osg::PositionAttitudeTransform.
Modified the osglight demo to use an AppCallback and a PositionAttitudeTransform
to animate the loaded model.
2002-08-12 17:40:36 +00:00
Robert Osfield
29490a8c1c Updates to DOFTransform so that its overrides the traverse() and compute*() methods
rather than depending upon callbacks for animating and compute matrices.  Merged the
put/inverseput code between Sasa's and Ferndinand's DOF code.

From Bora Utka, Added support to osg::Sequence/OpenFlight AnimNode to the flt plugin.
2002-08-12 13:42:43 +00:00
Robert Osfield
d43b00ac4e attempt to fix read only status of Sequence.cpp. 2002-08-12 13:37:35 +00:00
Robert Osfield
7010c1c4f8 Removed dependency of the new osg::DOFTransform and osg::Sequence Node's
on osgUtil by implementing a NodeVisitor::VisitorType enum, and associated
g/setVisitorType.  This allows callbacks to querry the visitor/traversal
type without doing down cast's to specific visitor subclasses such as
osgUtil::AppVisitor/CullVisitor.
2002-08-11 21:26:58 +00:00
Robert Osfield
19eaf17632 Temporarily commented out the flat staic transforms visitor since it
was causing problems with the new DOFTransform class.
2002-08-11 10:32:20 +00:00
Robert Osfield
5d61488476 Submission for Gideon May, fixes for spacing in various osgText files. 2002-08-09 19:51:12 +00:00
Robert Osfield
392150521a Fixed the X and Y axis rotation billboards so that now rotate correctly.
Rewrote the osgbillboard demo so that it creates a point rotatated billbaord
and X,Y and Z axis billboards to both test and demonstrate this types of
billboards in action.
2002-08-09 16:27:39 +00:00
Robert Osfield
0c6991ea27 Fixes for IRIX 32bit timmer on O2. From Tom Jolley. 2002-08-08 21:36:22 +00:00
Robert Osfield
f0f40cbf88 Fixed warning related to where _increasingFlags is an unsigned short and 0xffffff is being
truncated, spotted by Tom Jolly.
2002-08-08 15:10:58 +00:00
Robert Osfield
d351bad121 Fixed bug related to switching on/off culling modes. Patch from Nikolaus Hanekamp. 2002-08-08 13:41:18 +00:00
Robert Osfield
d9b7b13bd3 Changed the Geometry::setVertexArray and GeoSet::setCoords so that they
call dirtyBound() instead of reseting the local bound flag, this ensures
the updates are propagated upwards through into the parents.
2002-08-08 11:27:11 +00:00
Robert Osfield
f5c7fcf51d Fixed the shininess factor in 3ds plugin. 2002-08-08 11:01:07 +00:00
Robert Osfield
b9b013e15b Changed the support for anisotropic filtering in osg::Texture so that it
is now controlled via the setMaxAnisotropy(float) method, and is set up
independently for the mag filter mode, which it previously was done.
2002-08-07 15:52:24 +00:00
Robert Osfield
e01f9eb891 Added shells for DOFTransform and PositionAttitudeTransform to the .osg
loader, still need to fill in the saving and loading of paramters.

Went through the distribution remove old API usage.
2002-08-06 17:07:05 +00:00
Robert Osfield
ffb2d3826b Changed the default value of _animationOn to true. 2002-08-06 10:37:22 +00:00
Robert Osfield
25740b5c7f Added new osg::DOFTransform node from Sasa Bistrovic, designed to mirror
the OpenFlight DOF transform nodes.
2002-08-05 15:07:18 +00:00
Robert Osfield
6c998bf97d Added support for PROTECTED modes into the .osg reading and writing. 2002-08-05 13:29:51 +00:00
Robert Osfield
25307305a0 Added an example of the use of the PROTECTED modes and attributes into
the osgreflect demo so that toggling texturing on or off won't affect
the mirror planes texturing.
2002-08-05 13:12:09 +00:00
Robert Osfield
70724c353f Fixed compile errors under IRIX. 2002-08-05 12:52:18 +00:00
Robert Osfield
6b52e17c48 Fix to iv/vrml loader so that it correctly passes back the right ReadResult
and checks the validity of the file extension being passed to the plugin.
Removed main.cpp * .h moving all its functionality into readerwriter.cpp.
2002-08-04 21:11:00 +00:00
Robert Osfield
93403a54db Changed the error reporting so that it directs it all via osg::notify, and
only uses the INFO level for reporting that the file to load is not
recognised.  Also add check for LWO2 loading so that it returns FILE_NOT_HANDLED
message correctly.
2002-08-04 20:51:03 +00:00
Robert Osfield
cab49a9307 From Ruben Lopez, updates to VRML/IV loader.
From Ben Discoe, corrections to comments in osg::Transform

From Alberto Barbati, Lazy evaluation of inverse matrix in osg::MatrixTransfrom
2002-08-04 20:34:48 +00:00
Robert Osfield
fb0d87b29c Added Sequence.cpp to osg plugin workspace file. 2002-08-03 19:42:39 +00:00
Robert Osfield
6a04fc3dee Integrated Ulrich Hertlien's osg::Sequence node, and osgsequence demo, and
support for osg::Sequence in the pfb loader.
2002-08-03 18:11:21 +00:00
Robert Osfield
c253d3558b Changed the range max and min members variables to maximum and minimum to
prevent collision with windows min and max macros.
2002-08-03 18:03:40 +00:00
Robert Osfield
1ba901cf64 Added support for a sort callback in RenderBin. 2002-08-03 16:49:42 +00:00
Robert Osfield
b89f3fa9b1 Added cout's of the view frustum to the aid debugging, these cout's are
now commented out, and are just left in so that they may be used to
double check things in future.
2002-08-03 16:37:13 +00:00
Robert Osfield
ddd78eb95e Fix for Win32 build 2002-08-02 19:11:06 +00:00
Robert Osfield
e1a6a18036 Added missing _nodePath.clear() and _segHitList.clear() to InteresectVisitor::reset(). 2002-08-02 15:14:59 +00:00
Robert Osfield
1adc4992ff Updates to iv/vrml loader from Ruben. 2002-07-31 15:16:14 +00:00
Robert Osfield
3840972440 Updates to the iv loader from Ruben - conversion from GeoSet to Geoemetry. 2002-07-30 10:08:50 +00:00
Robert Osfield
fae159df08 Forced the use of non mip mapped texture during subloading in the osgprerender
demo.
2002-07-29 21:29:41 +00:00
Robert Osfield
0fa1b4a2ff Removed default value from constructor. 2002-07-29 11:02:14 +00:00
Robert Osfield
067dc6cddf Fixes to the new texture subloading methods. 2002-07-29 00:04:07 +00:00
Robert Osfield
6b59f66d80 Checked in new methods for setting up texture subloading, these allow the
user to control which parts on an image are subloaded from, and how big
the initial texture is.
2002-07-28 23:28:27 +00:00
Robert Osfield
02bb66a572 Checked in Pavel's updates for non texured surfaces. 2002-07-28 23:27:21 +00:00
Robert Osfield
05472135b0 Added set/getUnrefImageOnApply() methods and associated flag and
code in Texture::apply() to set the _image to 0 on apply.  Note,
this will only work when you have a single graphics context, as
with multiple graphics contexts one can't delete the image after
the first apply, as there will be more than one texture object to
update.
2002-07-28 21:25:32 +00:00
Robert Osfield
63e3364cc3 Checked in Marco's commented out #defines/rejigged struct names to get things
compiling under Windows, will need to check this in future as it may change with regeneration of parser files
with lex/yacc.
2002-07-28 21:15:25 +00:00
Robert Osfield
556fa81fda Chagned the initiliazation of iterators, sent in by Alberto Barbati. 2002-07-28 12:52:15 +00:00
Robert Osfield
0977e68727 Fixes to NodeCallback and RenderBin from Alberto Barbati. 2002-07-28 12:49:01 +00:00
Robert Osfield
74f5cbe16a Fixes to the inventor/vrml loader. 2002-07-27 21:35:21 +00:00
Robert Osfield
4962065fb7 From Macro, removal of use of display lists during double pass rendering of
particles.
2002-07-27 10:34:14 +00:00
Robert Osfield
2c1b07e752 Fix for Windows 2002-07-27 10:25:51 +00:00
Robert Osfield
933ecce3d9 Fixes for Win32 build. 2002-07-27 10:22:58 +00:00
Robert Osfield
73b007fccb Added return value to addViewport. 2002-07-27 10:09:39 +00:00
Robert Osfield
83a276a16a Added missing osg:: from various references to osg::Objectf 2002-07-26 18:46:18 +00:00
Robert Osfield
5622b8c48b Added support for LWO2, send in by Pavel Moloshtan. 2002-07-26 16:33:25 +00:00
Robert Osfield
078cdbed49 Added Ruben Lopez's Inventor/VRML 1.0 loader. 2002-07-26 15:37:23 +00:00
Robert Osfield
fe8d097cc0 From Ferdinand Cornelissen - Futher updates to the DOF code. 2002-07-25 22:08:51 +00:00
Robert Osfield
150b055053 Added missing return statement to if() block in Matrix::mult code. Bug spotted
by Ray Conner.
2002-07-25 21:58:53 +00:00
Robert Osfield
95bdcfc3f6 Fixes to Doxygen files from Neil.
Removed unused set/getReportMode() methods and member variables from IntersectVisitor.

Added deep copy construction of Geometry objects.
2002-07-25 21:50:08 +00:00
Robert Osfield
7a4c43c06e Changed > operator to < and swapped sides of expression, to enable compilation
across compilers.
2002-07-25 21:45:46 +00:00
Robert Osfield
cb1e1183c7 Fix to geometry combiner which wasn't check the overall color array values
in the lessGeometry functor.
2002-07-25 16:15:01 +00:00
Robert Osfield
ec6c2cd229 Fix to DOF Record from Sasa Bistroviae. 2002-07-25 15:25:42 +00:00
Robert Osfield
a6eb0a8209 Fix for colors in old flt models from Brede. 2002-07-25 15:21:18 +00:00
Robert Osfield
55b7ed10a1 Implemented the DOF handling more cleanly, as per OpenFlight15.7 docs. 2002-07-24 16:29:00 +00:00
Robert Osfield
42358b61ae Added missing std:: to endl; 2002-07-23 18:44:03 +00:00
Robert Osfield
b2fa79293c Added the missing _primtives from the copy constructor list. 2002-07-23 15:48:12 +00:00
Robert Osfield
9033b8a336 Added fog toggling to Viewer.cpp, 'y' reduces fog density, 'Y' increases
fog density.
2002-07-23 15:45:55 +00:00
Robert Osfield
2268246fa9 Added mode checking into StateSet to try and catch non texture OpenGL modes
which have been applied to the texture modes and visa-versa.
2002-07-23 14:35:38 +00:00
Robert Osfield
a41930ed17 Support added for Gnu C++ under Solaris. 2002-07-23 13:30:47 +00:00
Robert Osfield
80afddc08d Checked in Tino Schwarze's port to HP-UX. 2002-07-23 10:48:22 +00:00
Robert Osfield
f007e7c3be Merged changed to osgParticle from Macro, these add the ability to
orientate the particles to predefined axis.
2002-07-22 13:05:31 +00:00
Robert Osfield
3dd07ea354 Fixed more uninitialized variables and two potential memory leaks. 2002-07-22 12:41:55 +00:00
Robert Osfield
bfefb55a9f Fixed various uninitiliazed variables. 2002-07-21 20:34:38 +00:00
Robert Osfield
3cda894ca5 Added default construction values for various member variables to fix report
uninitialized variables.
2002-07-21 10:44:25 +00:00
Robert Osfield
b23aea5173 Futher work on ensuring that all datatypes are initilizaed in OSG objects. 2002-07-21 10:04:33 +00:00
Robert Osfield
389dd8adbb Futher changes to remove unitialized variables/reordering of initialization to
prevent unitialized warnings.
2002-07-21 01:29:11 +00:00
Robert Osfield
48b3be40e9 Various fixes to constructors to ensure that all variables are initialized. 2002-07-20 23:54:55 +00:00
Robert Osfield
0ff08a2978 Added missing default values to State constructor. 2002-07-20 22:44:21 +00:00
Robert Osfield
15315b7b4b Added default values for FrameStamp.cpp constructor. 2002-07-20 22:40:24 +00:00
Robert Osfield
a1c54dc663 Removed the rendundent variables in the ConvexPlanerPolygon as these were
unused and unitialized.
2002-07-20 22:36:55 +00:00
Robert Osfield
c86a907ddd Added new debugging switch checkOnAllocations which is now on by default
when compiling with debug build (under UNIX) and can be turned on or off
with the OSG_MM_CHECK_ON_ALLOCATIONS environmental variable.
2002-07-20 22:36:09 +00:00
Robert Osfield
2b7331b73b Added some extra checks for memory initialization into the osg::MemoryManager,
this is turned off by default, even in debug build. However you can turn it
on by setting the OSG_MM_CHECK_FOR_UNINITIALIZED
2002-07-20 21:37:10 +00:00
Robert Osfield
298e3d5ae3 Umm... these should have already been commited, not sure why cvs has just
popped these ones up...
2002-07-20 18:27:40 +00:00
Robert Osfield
2f48bef57e Fixed the char[] array length to fully encompass the strings bring written
to them.
2002-07-20 15:01:49 +00:00
Robert Osfield
745478e193 Fixed the glTessCallback type to GLU_TESS_ERROR_DATA. 2002-07-20 15:00:47 +00:00
Robert Osfield
1264bd5869 Removed debugging cout's. 2002-07-19 15:03:23 +00:00
Robert Osfield
7682e32521 Updates to the Geometry to add more access methods, and updates to Optimizer
to add the new merge primtives option.
2002-07-19 14:19:49 +00:00
Robert Osfield
d8d0ac60a7 Added primitve merging into the osg::Geometry optimizer. 2002-07-19 13:49:54 +00:00
Robert Osfield
b498e74078 Changed the "reflect.rgb" path to "Images/reflect.rgb" to the help find the
file required.
2002-07-19 09:10:41 +00:00
Robert Osfield
3cba9a52ef Updates NEWS file for 0.9.0 release.
Added default computeBound() implementation to osg::Drawable which uses
a PrimtiveFunctor to compute the bounding box in a generic way, that
will work for all Drawable subclasses that implement the accept(PrimitiveFunctor&).
2002-07-18 22:35:54 +00:00
Robert Osfield
325b119218 Moved the 't' operation on texture modes across to use the new
StateSet::setTextureMode methods, this enables 't' to work once more!
2002-07-18 19:54:22 +00:00
Robert Osfield
34be82c1ee Moved get/setUserData from osg::Node into its superclass osg::Object to
allow other subclasses to add their own custom data.
2002-07-18 19:41:52 +00:00
Robert Osfield
ff8b4c001d Rewrote the osg::Drawable::AttributeFunctor and PrimtiveFunctor to make
them more consistent with each other. This does mean an API change, so
dependanct code in the OSG has been updated accordingly.
2002-07-18 15:36:14 +00:00
Robert Osfield
1d9dd54d11 From Randall Hopper, warning fixes for IRIX. 2002-07-18 15:28:26 +00:00
Robert Osfield
979fc70a94 From Brede Johansen, fix the TexturePaletteRecord::endian() to handle
old flt versions (11, 12 & 13).
2002-07-18 15:25:02 +00:00
Robert Osfield
b513517502 From Brede Johansen
"I have found one bug in the ConvertFromFLT::visitFace() function.  In the
early days of the Flight format, before the LightPoint record existed
they used face records with a light (-point) attribute."
2002-07-18 14:29:32 +00:00
Robert Osfield
8036901ea1 Rewrote osg:Statistics so that it is PrimitiveFunctor as is now completely
decoupled from osg::Drawable.  The Drawable::getStats() virtual method
no longer exists.

Updated the Viewer to use the osg::Statistics incarnation and reformated stats
to clean it up.
2002-07-18 14:20:01 +00:00
Robert Osfield
f2b6f8c873 Added code into osg::LightSource so it correctly computes its bounding
sphere, taking into account any subgraph below, and the light itself
if it is not a infinite light.
2002-07-18 10:55:04 +00:00
Robert Osfield
8378d6802b Removed repeated return transform in the visitDOF method. 2002-07-18 10:41:39 +00:00
Robert Osfield
8ad68f98e9 Added support for .sgi alias extension to the .rgb plugin. 2002-07-18 10:38:16 +00:00
Robert Osfield
a7c365c396 Fixed warnings. 2002-07-18 10:06:21 +00:00
Robert Osfield
7a8eeb3c92 Converted the osg::Material::set/getShininess option to use the standard
OpenGL range of 0.0 to 128.0 instead of the previous normalised shiniess
range. This brings it inline with the way the rest of the OSG uses a
1 to 1 mapping to OpenGL.

Converted the various loaders to use the new range, which is almost all
cases was simply removing the /128.0f which was required before!
2002-07-18 09:55:30 +00:00
Robert Osfield
1a139efbbc Added const to LessGeometry functor to fix Win32 build. 2002-07-18 09:17:50 +00:00
Robert Osfield
3ec32aab82 Fixed spelling mistake. 2002-07-18 00:55:01 +00:00
Robert Osfield
09bdb10af5 Various fixes to the flt loader, and knock on changes to the osgUtil::Optimizer
to better support removal of seperate osg::Geometry instances where they
share the same state and bindings.
2002-07-18 00:53:03 +00:00
Robert Osfield
735b9d2318 Changed from a -> to *() when using the object pointed to by a reverse iterator,
to fix problems with build under VS6/STLport.
2002-07-17 16:24:55 +00:00
Robert Osfield
6524548eb2 Fix for Win32 build. 2002-07-17 12:21:53 +00:00
Robert Osfield
8c0d510571 Several items of work related to adding a manual creation of occluders
option to the osgoccluder demo.

First the osgGA classes have been generalised a little to better support
new GUIEventHandler subclasses.

Second osgGLUT has a new option for registering a user defined event handler,
the allows the application to add externally extra options to the osgGLUT viewer.

Third, the osgoccluder demo now works in two modes. The original create
four occluder sides to wrap an loaded model, the second an interactive
mode which allows the users to add occluders to the model by pointing
to points and pressing 'a' to add a point, the 'e' to end the occluder
polygon, polygons must be convex, planer and be defined in an anitclockwise
order.  To start the osgoccluder in this mode one simple runs it with the
'-c' option.  Run osgoccluder with no parameter to get a list of options.
2002-07-17 10:00:50 +00:00
Robert Osfield
f55233b20d Updates from Bob Kuehne and Kristopher Bixler to remove the fink
dependency from the MacOSX build.
2002-07-16 19:21:31 +00:00
Robert Osfield
dadbd03443 Fix to DOF Record from Sasa Bistrovic 2002-07-16 19:19:31 +00:00
Robert Osfield
e0c95723f2 Added SpotExponent to the spot light. 2002-07-16 19:17:30 +00:00
Robert Osfield
7fe394ac42 Removed repeat line from Makefile. 2002-07-16 18:56:12 +00:00
Robert Osfield
76d1775487 Bumped up the version numbers to 0.9.0 to reflect the upcomming release. 2002-07-16 15:43:20 +00:00
Robert Osfield
f3d74525fa Rewrote the apply_imp template method so that it takes an initialization
paramater.
2002-07-16 15:28:25 +00:00
Robert Osfield
a389dfef8b Fixes for MacOSX build from Bob Kuehne. 2002-07-16 15:13:57 +00:00
Robert Osfield
442b266f2e Added the beginings of an osglight demo. 2002-07-16 15:12:36 +00:00
Robert Osfield
b9281a6f58 Added TextureCubeMap.cpp to the .osg plugin Makefile. 2002-07-16 11:33:36 +00:00
Robert Osfield
8a14aa29cd Added support to osgUtil::Tesselator to insert extra vertices and other
attributes into an osg::Geometry node.  Uses the new osg::ArrayVisitor.

Converted the osg plugin Geometry support to use the new UByte4 class.
2002-07-15 22:23:57 +00:00
Robert Osfield
5530406c9a Removed the second texture from the prerender demo so as not over complicate
the final image.
2002-07-15 13:39:11 +00:00
Robert Osfield
9c56a57de3 Fixed the orientation of the osgreflect demo so that the reflection plane
is orientated towards the viewer.

Changed the lightmodel ambient level to 0.1,0.1,0.1 instead of 0.0, so that
a small amount of ambient lighting is available to render back surfaces.
The osgreflect and osgprerender suffered unexpected behaviors because of
no lighting on the backfaces.
2002-07-15 13:20:41 +00:00
Robert Osfield
e9f30add38 Added a MatrixTransform to tilt the osgreflect demo so that the reflection
plane is seen clearly.
2002-07-15 13:14:28 +00:00
Robert Osfield
0a6fdb6ae0 Fixed the optimization of the orientation conversion. 2002-07-15 13:13:46 +00:00
Robert Osfield
e6f48efe78 Fixed memory leak in FieldReaderIterator.cpp.
Updated the Make/osgtests.bat and Make/debugtests.bat scripts.
2002-07-15 11:44:21 +00:00
Robert Osfield
08f5b7cbdd Removed the old hangglide directory. 2002-07-15 10:51:45 +00:00
Robert Osfield
6e40d676a2 Renamed osghangglide demo. 2002-07-15 10:45:13 +00:00
Robert Osfield
db892e6bfe Added State::disableTexCoordPointersAboveAndIncluding( unit ) method so that
all unsed texture units can be turned off simply within Drawables such
as Geometry and GeoSet. This can be used to prevent bleed of arrays from
one object to the next - which can cause crashes.
2002-07-15 10:03:59 +00:00
Don BURNS
6a2aa35c26 Changes for Sunos 2002-07-15 04:42:44 +00:00
Don BURNS
523b64ef3f Added Logos loader 2002-07-14 21:49:51 +00:00
Robert Osfield
8883f1d571 Fixed unused variable `osg::StateSet *osgStateSet' warning 2002-07-14 20:51:31 +00:00
Robert Osfield
e7657f6b51 Added Drawable::AppCallback example and fixed a warning. 2002-07-14 20:48:30 +00:00
Robert Osfield
9792aa09dc Tweaked the color and aspect ratio settings of the pre rendering bin. 2002-07-14 20:32:05 +00:00
Robert Osfield
f32245ba5b Fixed computeNearFar bug in CullVisitor::apply(Billboard&). 2002-07-14 16:26:03 +00:00
Robert Osfield
733be1b309 Fixes to read/write of MatrixTransform/Transform. 2002-07-14 10:46:46 +00:00
Robert Osfield
32a4625e59 Copy and Paste bug where an for() loop was repeated within itself, which
was introduced when moving across to use osg::Geometry.
2002-07-14 08:35:35 +00:00
Robert Osfield
4895b22da1 Fixed various warnings which were appearing under MacOSX. 2002-07-13 21:17:40 +00:00
Robert Osfield
db888b191c Conveted GeoSet to use the new state::set*Pointer/disable*Pointer methods
to keep the current state valid.
2002-07-13 20:31:30 +00:00
Robert Osfield
12be8e5493 Support added for multitextured TXP files, sent in by Boris Bralo. 2002-07-13 14:16:41 +00:00
Robert Osfield
bbc6779f95 Added missing MatrixTransform.cpp file 2002-07-12 21:45:54 +00:00
Robert Osfield
717dab9389 added glutInit to osgparticle demo to fix crash under MacOSX. 2002-07-12 21:45:08 +00:00
Robert Osfield
5504f51774 Added second texture to osgprerender demo to test out multitexture in
osg::Geometry, it works!!
2002-07-12 21:42:27 +00:00
Robert Osfield
d87d27b749 Added MatrixTransform header and source. 2002-07-12 21:08:19 +00:00
Robert Osfield
1f9e4547e7 Changed the osgmultitexture demo so that it uses a TexEnv::BLEND mode
with a colour.  This lightens the resultant models.
2002-07-12 19:50:52 +00:00
Robert Osfield
995f6f9e21 Added using namespace osgUtil to get round IRIX/Windows compiler differences. 2002-07-12 18:14:45 +00:00
Robert Osfield
6f392cdbfa Ported distribution across to use the new osg::MatrixTransform and osg::BlendFunc
class instead of osg::Transform and osg::Transparancy respectively.
2002-07-12 18:12:01 +00:00
Robert Osfield
8128265e09 Have added a #define USE_DEPRECATED_API to include/osg/Export, and
various
osg header and source files to optional compile in deprecated parts of
the
OSG API.

Have renamed osg::Transparency osg::BlendFunc to bring it in line with
the
rest of the OSG's StateAttribute classes which are named after their
OpenGL counterparts.  include/osg/Transparency still exists and is
simply
a typedef to BlendFunc and is enclosed in a #ifdef USE_DEPRECTATED_API
block.

The matrix methods in the osg::Transform class have been
moved/replicated in
a osg::MatrixTransform sublcass from osg::Transform.  The old matrix
functionality is still present in the osg::Transform class but is guard
by #ifdef USG_DEPRECATED_API blocks.  One should now think of
osg::Transform
as being a Transform Node base class.  MatrixTransform has all the
functionality of the original Transform class, so should be used
instead.
2002-07-12 14:25:10 +00:00
Robert Osfield
00470acb61 Fix, sent in by Macro Jez, to the set of the camera with the computed near and far plane, so that
it is only updated when  _computeNearFar != CullVisitor::DO_NOT_COMPUTE_NEAR_FAR.
2002-07-12 13:00:09 +00:00
Robert Osfield
3edb8a3d18 Added blend color to osg::TexEnv 2002-07-12 10:30:27 +00:00
Robert Osfield
0d84d3ed15 Fixed indenting. 2002-07-12 09:16:49 +00:00
Robert Osfield
5b97336e37 Addition of RoadRecords from Yefei He. 2002-07-12 08:48:27 +00:00
Robert Osfield
0ea6a7af4a Fixes for Win32 build 2002-07-11 21:08:02 +00:00
Robert Osfield
840df13438 Added Makefile for osgmultitexture demos. 2002-07-11 18:33:30 +00:00
Robert Osfield
8219a0a63a Added support for multitexturing to osg::State and added osgmultitexture
demo which adds as spherical environment map using texture 1 to any model.
2002-07-11 16:12:24 +00:00
Robert Osfield
c4c97a0f64 Moved the code referencing osg::BoundingBox::isValid() and
osg::BoundingSphere::isValid() across to use the valid() methods, the later
being more consitent with other classes such as osg::ref_ptr<>.
2002-07-11 14:32:21 +00:00
Robert Osfield
b015d80d68 Fixes for win32 build 2002-07-11 12:57:53 +00:00