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
Robert Osfield
cd3c2c0b77
Fixes for Win32 build
2002-07-11 11:36:25 +00:00
Robert Osfield
54c27e36bf
Updates for new use of GLushort instead of osg::ushort in GeoSet index pointer.
2002-07-10 22:38:02 +00:00
Robert Osfield
5d18f0ee11
Tidied up the types in osg::GeoSet so that the index pointers use GLushort
...
and GLuint to get round compile issues under MacOSX.
2002-07-10 22:33:08 +00:00
Robert Osfield
8b1e9345df
Updates to osg::Drawable::AppCallback and osgprerender demo.
2002-07-10 20:30:57 +00:00
Robert Osfield
27338f57b1
Added app callback to Drawable.
2002-07-10 15:35:47 +00:00
Robert Osfield
b3ac26f3dc
Updates to osgprerender to support use of rendering to an image, rather then
...
just a texture.
2002-07-10 13:33:25 +00:00
Robert Osfield
c1fc3dcdb9
Ported all the demos and loaders across to use the new multitexturing API.
2002-07-10 11:22:24 +00:00
Robert Osfield
46af97727a
Added Yefei He's RoadRecords to the flt loader, these records will be
...
ignored by the loader, but will allow the loader to skip over them and
continue reading the rest of the file correctly.
2002-07-10 09:32:44 +00:00
Robert Osfield
44d0bb05e7
Updates from Macro to support the new multitexture API, and improve
...
bounding box computation.
2002-07-10 09:14:46 +00:00
Robert Osfield
842eb59e1f
Implemented more code for the new osgprerender demo.
2002-07-09 19:23:53 +00:00
Robert Osfield
68540f5fb1
Updates to the osgprerender code. Still doesn't do anything interesting yet..
2002-07-09 13:31:50 +00:00
Robert Osfield
3ab727713d
Added new demo osgprerender to demonstrate how to prerender a scene and use
...
the result in the main rendering for special effects.
2002-07-09 13:17:42 +00:00
Robert Osfield
aca7f7b216
Fixes for IRIX build.
2002-07-09 10:23:48 +00:00
Robert Osfield
0c943945f7
Implemented most of the changes required for supporting multitexturing in
...
the osg::State/osg::StateSet/osg::StateAttribute and related classes.
2002-07-09 09:35:42 +00:00
Robert Osfield
8f4a77ce4c
Fixes for Windows build.
2002-07-07 17:42:34 +00:00
Robert Osfield
e23b40e316
Added include<unistd.h> to __DARWIN_OSX__ build.
2002-07-07 17:40:34 +00:00
Robert Osfield
0801b363f5
Work on supporting multitexturing in State/StateSet/StateAttribute/Geoemtry.
2002-07-07 14:40:41 +00:00
Robert Osfield
0dcd5cb017
Added support for Win32 broadcast and recience over lan. Changes sent in
...
by Michael Gronager.
2002-07-04 18:41:13 +00:00
Robert Osfield
5957c21082
Fixed the TriangleFunctor QUAD_STRIP code so that it produces consistent
...
results.
2002-07-04 09:49:12 +00:00
Robert Osfield
04a841bf93
Spotted by Neil Salter - missing transform. in the Transform copy operator.
2002-07-03 20:33:21 +00:00
Robert Osfield
3700e7e2cd
Reimplemted the osgUtil::SceneView::setCalcNearFar() functionality to bring
...
it inline with the CullStack/CullVisitor implementation. Also added the
setSmallFeatureCullingPixelSize() method and wired them up inside
SceneView.cpp so they set the corresponding CullVisitor paramters.
Intergrated pfImage copying change in the Performer plugin, submission sent in by Ulrich Hertlein
2002-07-02 19:53:18 +00:00
Don BURNS
304e56db51
osgcallback required fixes for new osg::Drawable::CullCallback
2002-07-02 06:28:41 +00:00
Don BURNS
d2aa4270ce
Added support for CullVisitor to contain a osg::State. This used when
...
cull Callbacks require the contextID for doing operations on texture
objects, for example. Modified CullVisitor SceneView and Drawable
2002-07-02 06:22:28 +00:00
Robert Osfield
48e7679e78
Rewrote the osgUtil::Tesselator so that it is easier to use, and can also
...
easily retesselate osg::Primitive::POLYGONS found in Geometry objects.
Added calls to the tesselate to the lwo and flt loaders.
2002-06-28 22:42:02 +00:00
Robert Osfield
4e81711ef7
A couple fixes to remove Performer runtime warnings.
2002-06-28 20:54:09 +00:00
Robert Osfield
ebbd72556e
Fixes from Ulrich Hertlein to build of pfb plugin. Small mods to these
...
by Robert.
2002-06-28 16:25:46 +00:00
Robert Osfield
ee6444c643
Added to the osggeometry demo.
2002-06-28 14:42:34 +00:00
Robert Osfield
f809ef8a7b
Rewriting the osggeomtry demo to illustrate more primitive types.
2002-06-28 11:11:20 +00:00
Robert Osfield
26497c7581
Change =0 to osg::Vec2Array::iterator() in .obj loader to get round warnings
...
under gcc3.0.x
2002-06-28 08:36:02 +00:00
Robert Osfield
01992a7790
Ported the flt plugin across to use osg::Geometry, it still uses a GeoSet
...
internally, and I will remove this after some futher work.
2002-06-27 20:29:32 +00:00
Robert Osfield
fb3e705709
Converted the template DrawElements primitive class into three seperate
...
non templated classes - UByteDrawElements, UShortDrawElements, UIntDrawElements.
2002-06-27 13:15:34 +00:00
Robert Osfield
532a32416f
Moved the AttributeArray and Primitive classes into their own header and
...
source files.
2002-06-27 10:50:19 +00:00
Robert Osfield
726d680184
Removed the test aginst a iterator as a bool.
2002-06-27 09:56:30 +00:00
Robert Osfield
7c95922300
Ported LWO loader across to use osg::Geometry. Work not quite complete,
...
as we need to retesselate any concave polygons that can exists in these
datasets.
2002-06-26 21:08:17 +00:00
Robert Osfield
8094c777b7
Added templated constructor to TemplateArray & DrawElements template to
...
handle VisualStudio7.0 build.
Ported 3DS across to use osg::Geometry instead of osg::GeoSet.
2002-06-26 17:48:13 +00:00
Robert Osfield
bdafc27d9c
Ported pfb, txp and obj loaders across to use osg::Geometry.
2002-06-26 14:34:04 +00:00
Robert Osfield
40fefcf335
Ported various demos and support classes over to use the new osg::Geometry class
...
thus removing dependancy on osg::Geoset from most of the OSG, only loaders
left to port now.
2002-06-26 10:28:17 +00:00
Robert Osfield
1ceb0b60a8
Fixes for Cygwin build from Norman Vine.
2002-06-25 20:47:42 +00:00
Robert Osfield
3765631cd7
Fix to Quat::slerp so that it interpolates along the shortest path.
2002-06-25 20:36:17 +00:00
Robert Osfield
cbeeeefdab
Added osg::Drawable::PrimitiveFunctor and TriangleFunctor subclass for
...
querrying the primitive data inside Drawables. Moved various support
classes over from being osg::GeoSet based to osg::Geometry based.
2002-06-25 20:27:51 +00:00
Robert Osfield
336c47e5fe
Fixed osgText::Text::DrawModeType::ALIGNEMENT spelling mistake, now
...
is ALIGNMENT.
2002-06-24 21:44:27 +00:00
Robert Osfield
cbb95d0445
Checked in .osg support for the new osg::Geometry class.
2002-06-24 21:37:34 +00:00
Robert Osfield
d174f60f8c
Added required std:: to front of endl to fix Win32 build.
2002-06-24 12:53:27 +00:00
Robert Osfield
f2e215bf44
Added conversion to osg::GeoSet::converToGeometry() utility to help the
...
migration to and testing of the new osg::Geometry class.
2002-06-23 21:43:46 +00:00
Robert Osfield
bbc129e5c6
Compile Fixes for Win32.
2002-06-22 15:46:43 +00:00
Robert Osfield
7dd82beaa9
Temporarily removed the references to multi-texturing calls.
2002-06-21 19:24:43 +00:00
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
53b6d0c92e
Bug fix to the size calculation of bmp images, changed both the reading and
...
writing of images.
2002-06-21 15:14:29 +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
d763a47d2e
Mods to MemoryManager to make the optimized build produce dummy
...
implementations for all the public functions found in the header,
this should prevent problems when not compiling in the MemoryManager
under IRIX 64 build.
2002-06-20 18:17:36 +00:00
Robert Osfield
4f4f68e961
Added support for reading the new OSG_MAX_TEXTURE_SIZE environmental variable
...
inside the osg::Image::ensureValidSizeForTexturing() method. The
smallest of GL_MAX_TEXTURE_SIZE and OSG_MAX_TEXTURE_SIZE is used for the
final max texture size.
This new env. var. allows users to deliberate cap the size of their textures
so they can test whether their models are limited by texture memory. If
reducing the max texture size increases performance then you are limited
by texture memory!
2002-06-19 18:45:05 +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
b12e36cede
Added computation of the bounding volume of osg::OccluderNodes.
...
Added support for osg::BoundingSphere::expandBy*(osg::BoundingBox) and have
added osg::BoundingSphere/Box::valid() which deprecates isValid(), this
is to be more consistent with other classes in the OSG.
2002-06-19 15:18:47 +00:00
Robert Osfield
21beb236d2
Added support for occlusion of holes in occluders, and cleaned up the
...
interface to ShadowVolumeOccluders.
2002-06-19 10:19:10 +00:00
Robert Osfield
b3c26d5634
Changed the osg::LightSource so its Light attribute is now generalised to
...
be a StateAttribute. This allows alternative implementations of Lights
other than the standard osg::Light.
2002-06-19 08:34:19 +00:00
Robert Osfield
5e85cd59ab
Added support for occluders occluding other occluders, which helps reduce
...
the number of occluder that will be used in cull traversal to only the
ones that will be effective. Note. Holes in occluders arn't handled in
this occluder occlusion test, will implement this later.
2002-06-18 22:35:48 +00:00
Robert Osfield
aa58ecae2f
Clean ups for the Windows build.
2002-06-18 10:18:12 +00:00
Robert Osfield
d3b4a36447
Added the length argument to a std::string argument, under Linux it
...
compiled with the default value npos, under Windows it broke the build,
add the npost excpilicity should get round this difference in implementation.
2002-06-18 09:09:37 +00:00
Robert Osfield
6767dd49d0
Rewrote the FileUtils support for data and library file paths, moving the
...
storage of the path lists into osgDB::Registry, and changed the data
structor from a char* to a std::deque. Changed a names of couple of the
convinience functions in osgDB/FileUtils to better reflect the two
public FilePathList's - DataFilePathList and the LibraryFilePathList.
Added support into the osgDB::Registry::readNode/Image/Object methods
for pushing and popping the path of the current file being loaded.
2002-06-17 21:50:37 +00:00
Robert Osfield
27412c27c9
Fixes to the occluder culling code to properly disable occluders to prevent
...
self occlusion.
2002-06-17 09:10:26 +00:00
Robert Osfield
156a9fbaea
Fixes for Visual .NET and Mingw builds, and fix MacOSX notify() crash.
2002-06-15 20:57:50 +00:00
Robert Osfield
52c36dde70
Added computation of occluders volume scaled relative to the frustum volume,
...
all volumes computed in eye coords.
2002-06-15 12:14:42 +00:00
Robert Osfield
25b420ac0e
Added computation of the occluders volume, scale it to a ratio of the
...
frustum.
2002-06-14 16:28:47 +00:00
Robert Osfield
7adb75c572
Added occluder hole test code into the osgoccluder demo. The code works,
...
but I've commented it out right now as the Geode physically representing
the occluder doesn't yet have a hole in it - just a cosmetic thing.
2002-06-14 14:50:31 +00:00
Robert Osfield
73ec80843f
Refined the CollectOccluderVisitor so that it checks the subgraph below
...
a node contains occluders before traversing.
2002-06-14 13:49:59 +00:00
Robert Osfield
c71bf35152
Improvements to the plane clipping code.
2002-06-14 11:27:34 +00:00
Robert Osfield
d7760fbbd4
Further updates to the occlusion culling code, also adding missing OccludeNode
...
file the .osg plugin.
2002-06-14 08:45:28 +00:00
Robert Osfield
61df1ed6b7
Further work on occlusion culling.
2002-06-13 23:46:02 +00:00
Don BURNS
8c5722577e
removed the use of gettimeofday for 32 bit architectures...
2002-06-13 19:39:28 +00:00
Robert Osfield
f2cbab46d4
Added -osgGA to the Makefile list.
2002-06-13 19:10:29 +00:00
Robert Osfield
4e5a3696e3
Merge Randall's changes.
2002-06-13 18:27:14 +00:00
Robert Osfield
0ebe473eb5
Further work on Occlusion Culling. Most of work is complete, just debugging
...
required now.
2002-06-13 16:21:00 +00:00
Robert Osfield
171312e720
IRIX build fix.
2002-06-12 15:43:47 +00:00
Robert Osfield
65a9a8043e
Changes for MacOSX build, send in by Bob Kuehne.
2002-06-12 14:57:35 +00:00
Robert Osfield
47bbe8f3cc
Fixed the osgDB::getFilePath, osgDB::getSimpleFileName() and osgDB::getStrippedName()
...
so that they check for both unix style '/' and windows style '\' slashes in
file names.
2002-06-12 14:46:44 +00:00
Robert Osfield
e467027946
Fix for renaming of ShadowOccluderVolume to ShadowVolumeOccluder.
2002-06-12 13:54:14 +00:00
Robert Osfield
c7e99ff77a
Further work on occludision code.
2002-06-12 09:22:30 +00:00
Robert Osfield
fa13d948b5
A little more work on Occlusion culling.
2002-06-11 19:52:55 +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
bf6bf60e21
Added osgoccluder demo, it creates a single quad occluder, but the culling
...
code is not complete yet, so it won't actually do any occlusion culling,
the demo is here so I can test the evolving occlusion culling code.
2002-06-07 20:03:08 +00:00
Robert Osfield
96a6b3c5c6
Added default IntersectVisitor::_hitReportingMode to be ONLY_NEAREST_HIT.
2002-06-07 13:57:20 +00:00
Robert Osfield
8140035ea8
Fixed a couple of problems with the NodeKit support.
2002-06-07 11:32:18 +00:00
Robert Osfield
f8502a076c
Added support for NodeKits to the osgDB::Registry. Object names in .osg
...
files which have the library::class syntax will automatically invoke
the dynamic loading of either a nodekit or database plugin.
2002-06-07 10:03:49 +00:00
Robert Osfield
9e982e6b32
Fixed crash in loading osg files which have object types which arn't recognized.
2002-06-06 14:00:15 +00:00
Robert Osfield
99580f2212
Addd libraryName() method to osg::Object in preperation for the osgDB support
...
for node kits plugins.
2002-06-06 13:25:36 +00:00
Robert Osfield
dc00711337
Fixed compile problems under VisualStudio6.0
2002-06-05 14:14:32 +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
4d2dbdafac
Futher refinement of the new CullingSet support.
2002-06-04 15:56:41 +00:00
Robert Osfield
f67be7c07f
Further work on moving culling functionality from CullVisitor into CullingSet,
...
in preperation for occlusion culling.
2002-06-04 15:21:24 +00:00
Robert Osfield
0732701e9d
Fix to CullVisitor::popCullingSet().
2002-06-03 18:38:40 +00:00
Robert Osfield
db78726acf
Updates to shadow occlusion culling code.
2002-06-03 17:49:28 +00:00
Robert Osfield
3f84849210
Additions for the support for ConvexPlaneOccluder. Work still underway.
2002-06-03 15:39:41 +00:00
Robert Osfield
94cd4f6ac7
Changed the ReadResult handling in readNode so that it better handled the case
...
when a plugin hasn't been found to load a plugin.
2002-06-03 10:44:18 +00:00
Robert Osfield
0ec80bb5ee
Fix for IRIX build.
2002-05-29 16:15:10 +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
dc883b0577
Fixed bug in the Use mechansim in Registry.cpp, sumbitted by Macro Jez.
2002-05-28 15:17:45 +00:00
Robert Osfield
6ab93ff61d
Adde osgText::Text::setColor/getColor so that osg::Material's need not be
...
attached to set the text color.
2002-05-28 14:33:13 +00:00
Robert Osfield
e73d4ca5b3
Changes for Cygwin build, sent in by Norman Vine.
2002-05-28 11:40:37 +00:00
Robert Osfield
165cc1bf42
Changed the method of expanding of the near and far planes in
...
CullVisitor::popProjectionMatrix so that it better handled models of zero
thickness orthogonal to the viewing direction.
2002-05-28 11:39:51 +00:00
Robert Osfield
02fc6ad5f8
Various updates to operations related to cull traversal.
2002-05-28 10:24:43 +00:00
Robert Osfield
f424c86465
Fixed crash associated with searching in an empty filepath.
2002-05-25 09:30:38 +00:00
Robert Osfield
09121a1583
Fixed a bug in the Optimizer::RemoveDuplicateNodesVisitor which was prevent
...
removal of node which could have been removed.
Added so extra convinience methods to ClippingVolume and utilized them in the
CullVisitor to push and pop only culling planes that are active.
2002-05-23 15:35:12 +00:00
Don BURNS
5ce4a54c0d
Fixed spelling error Calander -> Calendar
2002-05-22 19:58:43 +00:00
Robert Osfield
553db68bc4
Added osgUtil::CullVisitor::getCurentRenderGraph() and getRootRenderGraph()
...
methods which replace getRenderGraph(). Small changing of order of push/pop
of StateSet's in SceneView to clean things up.
2002-05-22 12:01:12 +00:00
Robert Osfield
bf872fa7ac
Renamed osg::State::getCurrentMode/Attribute(..) to
...
getLastAppliedMode/Attribute() to make it more consistent with the internal
workings of osg::State.
2002-05-21 09:16:31 +00:00
Robert Osfield
b8d8a8be27
Added osg::State::getCurrentMode and osg::State::getCurrentAttribute().
...
Aded osg::clampAbove(..) and osg::clampBelow() template functions to
include/osg/Math.
2002-05-21 08:59:26 +00:00
Robert Osfield
00f91631c2
Various API updates to suppor light points developments better, but should also
...
benifit other extensions to rendering.
2002-05-18 08:39:42 +00:00
Robert Osfield
116e0cd8c9
Made trilinear filtering the default mode for osg::Texture's.
2002-05-18 08:37:08 +00:00
Robert Osfield
d17714939e
Modified the setting of min and mag texture filter modes to produce higher
...
quality mip maps.
2002-05-18 08:35:09 +00:00
Robert Osfield
e66372a137
Fixed problem with orhographic projections due to a bug in CullVisitor
...
where it automatically resets the near and far to the values calculated
during cull traversal. The maths for converting the computed far and near
into clip coordinates was wrong, fixed this and the problem goes away.
2002-05-15 19:58:04 +00:00
Robert Osfield
806efcd0d4
Exposed the CullVisitor::setComputeNearFarMode
2002-05-15 11:27:47 +00:00
Robert Osfield
10c3b4e7bf
Fixes to new flipVertical/flipHorizontal.
2002-05-14 10:20:55 +00:00
Robert Osfield
7301d1505a
Added osg::Image::flipHorziontal and flipVertical, submitted by Brede Johansen.
2002-05-14 09:34:11 +00:00
Robert Osfield
a9ef1ecb1d
Reverted change to use decal flag.
2002-05-13 07:30:21 +00:00
Robert Osfield
dd3603c9db
Fix for finding windows fonts.
2002-05-10 15:42:27 +00:00
Don BURNS
0304b926d7
Small std::cout fix
2002-05-09 22:48:15 +00:00
Robert Osfield
d6ff23d32f
Fix compile problems with osgGA under Windows.
2002-05-09 19:02:35 +00:00
Robert Osfield
d140decb44
Added pixelSize method to CullVisitor, and converted small feature
...
culling to use the pixelSize method instead of a ratio of radius to
distance from eye point. setSmallFeatureCullingPixelSize() method
has also been added to provide the user with finer control of small
featyre culling.
2002-05-09 18:59:19 +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
60fe01dafa
Fixed osg::Camera::getModelViewMatrix() so that it handles the EYE_TO_MODEL
...
transform correctly.
Fixed warning in ClipNode.cpp.
2002-05-07 11:44:24 +00:00
Robert Osfield
8d48cc8dd7
Support added for OpenFlight switch nodes, submission from Brede Johansen.
2002-05-07 11:12:01 +00:00
Robert Osfield
e296df4632
Added osg::Node::getValidStateSet().
2002-05-03 22:47:57 +00:00
Robert Osfield
08a4fd5bfc
Added support for the managing the StateSet above a LightSource node,
...
and made it an osg::Group so that it can be used a decorator above a
scene.
Added osgclip demo to the test suite.
2002-05-03 16:47:16 +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
Robert Osfield
1f1d3b57fe
Updated docs.
...
Fix to pfb Makefile for missing $.
2002-04-26 13:45:01 +00:00
Robert Osfield
06dc1a38df
Fix for CisualStudio6.0 build.
2002-04-26 12:06:19 +00:00
Robert Osfield
07ba07dc62
Fixed remaining MAX_PATH usuage, replacing it with the new DX_MAX_PATH, this
...
should solve compile problems under VisualStudio .NET.
2002-04-26 08:25:51 +00:00
Robert Osfield
26d34ed6d6
Qarning fixes, and updated the date in NEWS to reflect todays release of 0.8.45
2002-04-26 08:16:14 +00:00
Robert Osfield
2bd20f5c6f
Fixes for IRIX build.
...
Fix for a warning under VisualStudio.NET.
2002-04-25 22:09:28 +00:00
Robert Osfield
a1a1876875
Cygwin build fixes.
2002-04-25 22:07:48 +00:00
Robert Osfield
62dc8f7cda
Fix for window build.
2002-04-25 21:31:16 +00:00
Robert Osfield
6dbfa3b88d
Fixes to .obj plugin from gideon.
2002-04-25 11:30:21 +00:00
Robert Osfield
117e3c2304
A more verbose version of the test script, using each and more memleaks.log
...
to print out progress and report any memory leaks which have been logged.
The later will only occur with a debug build. The use of echo and more
makes this version osgtest.bat not portable to windows unfortuntately.
2002-04-25 10:46:11 +00:00
Robert Osfield
88c6a476ca
Fixed compile problem under VisualStudio.
2002-04-25 08:54:48 +00:00
Robert Osfield
61b0865309
Merged Bob's changes for MacOSX build. This change is simply the addition of
...
GLUT_LIB to the link line. This change should be removed once we fixed the
OSG_LIBS so that it doens't include osgGLUT, however, I'll leave this for another
day...
2002-04-24 20:57:00 +00:00
Robert Osfield
84dd24ce3f
Fix for MacOSX build, making sure that the compresed tex image is defined
...
on all builds by removing the #ifdef's but then changing the name used
in the typedef so it doesn't collide with local implementations.
2002-04-24 20:36:47 +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
8f3debaf9b
Changes for Mac OSX build, sent in by Bob Kuehne
2002-04-24 20:04:34 +00:00
Robert Osfield
b2e6279178
Removed the use of __FUNCTION__ from MemoryManager to remove problems with
...
VisualStudio .NET compile.
Added support for OSG_NOTIFY_LEVEL and OSG_FILE_PATH into the relevant getenv
routines. This compliments the exisiting OSGNOTIFYLEVEL & OSGFILEPATH which
are deprecated but still supported. The OSG_ version are more consistent
with the rest of the env variables used in the OSG.
2002-04-24 14:52:53 +00:00
Robert Osfield
20b5e59dfd
Fix for the Cygwin build related to the new FileUtils_Unix not using the
...
Windows PATH environmental variable for searching for libraries. Sent in
by Norman Vine.
Reoder of the makedefs/makedirdefs to fix Mac OSX compilation. Sent in by
Bob Kuehne.
2002-04-24 08:50:03 +00:00
Robert Osfield
3e92c8d2fe
Fixed compilation problem associated wirh moving FileUtils source out into
...
seperate files.
2002-04-23 15:01:55 +00:00
Robert Osfield
96c790b266
Fixed ordering of paramters in osg::Image constructor to remove warning.
2002-04-23 14:58:33 +00:00
Robert Osfield
3668c050da
Seperated out the platform specific implementions of the file search/access
...
routines - we now have FileUtils_Windows.cpp, FileUtils_Mac.cpp and
FileUtils_Unix.cpp. The FileUtils_Mac.cpp is based on code submitted
by Josh Portway and add uses the carbon API for searching for files.
2002-04-23 13:59:01 +00:00
Robert Osfield
90112df269
Changed the Windows gauard around so that it only works for VisualStudio
...
and not Cygwin/Mingw.
2002-04-23 11:03:09 +00:00
Robert Osfield
f4f4423fe7
Added a pragma to get round a VisualStudio warning that I couldn't fix
...
in any easy way.
2002-04-23 11:02:09 +00:00
Robert Osfield
2d0df88ee4
Added an imageList.clear() to osgbillboard so that its memory would be
...
cleared before entering the viewer main loop, this removes memorymanager
a reported memory leak due to the viewer using exit() which bypasses
the clean up on main itself.
Added an osgNew to the ReaderWriterRGB.cpp to aid detected of tracking of
memory leaks.
2002-04-23 10:55:45 +00:00
Robert Osfield
a9bf24cf71
Replaced texture compression extension define so that its #ifndef guard used
...
GL_ARB_texture_compression as natured intended.
2002-04-23 09:06:03 +00:00
Robert Osfield
ac7af8eee5
Fixed warning in swapBytes, simple addded unsigned to the int loop count,
...
since sizeof() is always an unsigned int.
2002-04-23 08:29:39 +00:00
Don BURNS
ecd2c73c55
Impleneted byte swap for use between machines with different endians.
2002-04-22 23:54:13 +00:00
Don BURNS
043016ce1d
Fixed couple of small errors caught by Solaris compiler
2002-04-22 21:45:33 +00:00
Robert Osfield
dcfef4a023
Integrated submission from Boris Bralo:
...
Supported added for precompiled mip maps stored in osg::Image, and read
by osg::Texture.
Updates to TerraPage loader for support of compressed texture images and
precompiled mip maps.
2002-04-22 21:13:33 +00:00
Robert Osfield
8b30a10375
Added code in hangglide to move the earth sky around with the eye point,
...
use osg::Transform::ComputeTransformCallback.
2002-04-22 19:41:33 +00:00
Robert Osfield
56dc083330
Added support for compute the near and far planes and then applying to
...
the current projection matrix into CullVisitor itself. Similar code to
support this has been moved out of SceneView completely.
Added Matrix:: infront of the definition of the static
osg::Matrix::inverse(Matrix) method which was missing.
2002-04-22 14:54:39 +00:00
Robert Osfield
f515d67f4f
Cleaned up the handling of the Viewport with osg::SceneView/RenderStage
...
and CullVisitor so that the Viewport is now managed as part as the global
stateset so that it can be pushed and popped like the rest of state without
problems. This makes it easier to have multiple viewports within one
scene graph.
2002-04-22 09:37:17 +00:00
Robert Osfield
4b9473eda9
Fixes the .mlt loading from Ben Discoe.
2002-04-22 09:31:54 +00:00
Robert Osfield
9574ce97d2
Updated TODO list.
...
Converted AnimationPath so it is now subclassed from osg::Transform::ComputeTransfromCallback()
so that it can be directly attached to the scene to move objects about.
Changed the osg::SateSet::setGlobalDefaults() so that is sets GL_DEPTH_TEST
to ON.
Added guards and creation of default helper classes in osgGLUT::Viewer and
osgUtil::SceneView so that sensible defaults are used when no settings
are used of osg::State/StateSet,osgUtil::RenderStage/RenderGraph/CullVisitor.
2002-04-21 22:05:26 +00:00
Robert Osfield
3d3534dda9
Updated Versions, and NEWS file to reflect impending release of 0.8.45.
2002-04-21 10:11:03 +00:00
Robert Osfield
e3958790a2
Changed the implementation of osg::Quat::makeRotate(heading,pitch,roll) so that
...
it conforms to the OpenFlight convention of euler angles. Added documentation
into Matrix and Quat to reflect this.
Added so test code to osgcube for stress testing memory allocation and deallocation.
Commented out the registering of app and cull callbacks in osghud.
2002-04-19 19:55:48 +00:00
Robert Osfield
1131be56dc
Fixes for Max OSX build from Bob Kuehne.
2002-04-19 16:22:25 +00:00
Don BURNS
c5f26d78f6
Fixed an assignment that should have been a test
2002-04-19 16:00:15 +00:00
Don BURNS
4624514924
Updated some files sent by Boris Bralo for the txp loader.
2002-04-19 15:34:40 +00:00
Don BURNS
33b4a4cb5f
Fixed small typo in src/osgUtil/RenderStage.cpp
2002-04-19 15:02:34 +00:00
Don BURNS
0a2e5565ac
Added Bob K's fix
2002-04-19 15:00:57 +00:00
Don BURNS
c6254d5f87
Fixed small typo in SceneView::setDefaults().
2002-04-18 23:30:06 +00:00
Robert Osfield
4b5e4904ac
Fixed VisualStudio .NET warnings in TXP plugin.
2002-04-18 10:38:58 +00:00
Robert Osfield
ab64566b61
Fixed memory leak in FTGL associated with the function of gluTesselate.
...
Fixed a warnings in the DW plugin.
2002-04-18 09:57:42 +00:00
Robert Osfield
5830c60cef
Fixes for warnings under VisualStudio
2002-04-17 11:36:38 +00:00
Robert Osfield
7504312839
Added a gset->computeNumVertices() which was missing, this was causing models
...
to disappear after application of tri stripping.
2002-04-17 11:29:49 +00:00
Robert Osfield
e17261c45f
Changed the osg::Billboard comution so that it get passed in the current
...
modelview matrix rathan than an identity matrix, this matrix is then modified
locally.
Changed the osg::Matrix set methods so they are inline.
Added a few useful comments to MemoryManager.cpp to help people understand
the assert's better.
2002-04-17 09:48:19 +00:00
Robert Osfield
b02cc80533
Fixed the seveal hunderd warnings in TerraPage loader!
2002-04-16 21:08:46 +00:00
Robert Osfield
3f249fcb57
Fix to TXP plugin to handle to new osg::Image method naming.
2002-04-16 15:44:31 +00:00
Robert Osfield
5deafbda24
Added clearing of seperation band between horizontal/vertical split stereo
...
areas.
2002-04-16 15:31:46 +00:00
Don BURNS
6428715304
Added makedirdefs via a request from Bob Kheune. This allows us to edit
...
the DIRS cruft in a single file in the Make directory instead of having
to edit multiple files. Also edited Makefiles that needed to include
this file.
Also cleaned up txp loader to compile with SunOS. This needs to be retested
on other platforms.
2002-04-16 15:21:24 +00:00
Robert Osfield
7836540bb3
Added osg::Image::setPixelFormat(..) and setInternalTextureFormat(), and
...
renamed osg::Image::pixelFormat(), internalTextureFormat(),dataType() to
osg::Image::getPixelFormat() etc. These changes are to bring it more
into line with the style of the rest of the OSG.
Updated the rest of the distribution to take account for these names changes.
2002-04-16 14:57:39 +00:00
Robert Osfield
2b4008bbbc
Purge on warnings under Linux.
2002-04-16 14:09:46 +00:00
Robert Osfield
f8340f9ef5
Removed the cached matrices from osg::Camera, so that
...
osg::Camrea::getModelViewMatrix() and osg::Camera::getProjectionMatrix() are
calculated on the fly. Removed various redudent methods, including the
project and unproject methods which are better supported within osgUtil::SceneView.
Added a computeWindowMatrix() method to Viewport, to make it easier to construct
a MV*P*W matrix for converting local coords into screen coords and visa versa.
Converted SceneView and CullVisitor to use this new method.
2002-04-16 11:41:32 +00:00
Robert Osfield
43fa577566
Updates to the flt plugin from Brede Johansen.
2002-04-16 11:36:23 +00:00