Robert Osfield
2a28a4297f
Futher work on the IndexedGeometry class. Indexed coordinates should now
...
work.
2002-09-26 15:26:22 +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
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
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
91df37b5c8
Further work on multiple context extensions.
2002-09-16 20:58:05 +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
ee93b70033
From Pavel Moloshtan, fixes for Mingw32 build.
2002-09-12 20:30:41 +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
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
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
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
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
c6965357e6
Renamed osg::Statistics::addOpaque to addDrawable to better reflect its current
...
function.
2002-08-30 19:45:56 +00:00
Robert Osfield
cf9e9e2b5b
Fixes to Math for MacOSX build.
...
Converted TextureCubeMap to unix file endings.
2002-08-30 15:32:59 +00:00
Robert Osfield
8a061e80e1
Added std:: infront of ends references.
2002-08-30 13:38:22 +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
Robert Osfield
4e45c82067
Added SG_EXPORT.
2002-08-29 08:39:04 +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
fe93b91f73
Fixes to Win32 build.
2002-08-28 18:38:33 +00:00
Robert Osfield
ebb8a635d2
Fixes for Win32 build.
2002-08-28 16:59:22 +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
8353fc0ed6
Removed deprecated code from the distribution.
...
Added .osg support for Texture1D and Texture3D.
2002-08-28 15:28:11 +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
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
103727f412
From Marco, fix to include/GL to clean up warnigns in Windows builds.
2002-08-27 14:00:04 +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
5a3f8fc8a6
Moved the #define GL_DOT3_RGB_ARB's into their own #ifndef GL_ARB_texture_env_dot3 block.
2002-08-26 15:02:31 +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
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
9e3a282429
Added guard to prevent VS7 builds using the #defines for cosf etc.
2002-08-24 21:12:51 +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
Robert Osfield
0c383901a7
Clean up of include/osg/GL and include/osg/GLExtensions for better support of
...
Windows build.
2002-08-24 19:35:00 +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
ed3d083368
Fixed the osg::Transform::coompute*() methods so the were using the _referenceFrame
...
correctly, as previously they were doing the exact opposite from what they
should have been doing.
2002-08-22 08:14:38 +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
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
7a0f041a15
Added default values to the TexEnvCombine constructor.
2002-08-19 19:53:34 +00:00
Robert Osfield
41db2e08d0
Added missing include/osg/ClearNode
2002-08-19 15:14:10 +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
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
2c174237c7
Fixed typo in #define of UBYTE4
2002-08-17 07:34:11 +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
8551e1c555
Supported added for secondary color & fog coords to osg::Geometry and osg::State.
2002-08-15 20:27:33 +00:00
Robert Osfield
7d00b3b729
Added SG_EXPORT to PositionAttitudeTransform and MatrixTransform.
2002-08-14 20:56:04 +00:00
Robert Osfield
60b73bcb7b
Commented out the #define USE_DEPRECATED_API.
2002-08-14 09:30:02 +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
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
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
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
824e77e518
Removed inline definition from front of setMaxAnisotropy method.
2002-08-08 15:09:18 +00:00
Robert Osfield
ed30834757
Fixed typos, sent in by Warren Macchi.
2002-08-08 13:45:16 +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
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
5822c2c1ff
Fixed typo in comment.
2002-08-06 10:07:17 +00:00
Robert Osfield
8a5d7f9bfb
Adde getViewFrustum() to camera.
2002-08-06 10:04:06 +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
fd788daa69
Added support to StateAttribute/State to support PROTECTED flag for modes and attributes
...
so that they cannot be overriden from above via the OVERRIDE flag. This is
useful for things like manipulators that have handles display in the scene, you
might want to prevent their state being affected by other overriding of
light, wireframe modes etc.
2002-08-05 12:40:24 +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
cdf63113f1
Changed the copy constructor of for _light mem var to use a dynamic_cast<StateAttribute*>.
2002-08-03 19:37:32 +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
067c10b49c
Fixed comments.
2002-08-03 16:48:36 +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
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
0977e68727
Fixes to NodeCallback and RenderBin from Alberto Barbati.
2002-07-28 12:49:01 +00:00
Robert Osfield
8901c42434
Change Geometry paramter name to lower case geometry.
2002-07-26 12:49:19 +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
6d690740a6
Mods for HP-UX port.
2002-07-23 15:01:51 +00:00
Robert Osfield
80afddc08d
Checked in Tino Schwarze's port to HP-UX.
2002-07-23 10:48:22 +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
a1c54dc663
Removed the rendundent variables in the ConvexPlanerPolygon as these were
...
unused and unitialized.
2002-07-20 22:36:55 +00:00
Robert Osfield
4594907832
Small bug fix to osg::BoundingBox::expandBy(x,y,z).
...
Updated ChangeLog and NEWS for the release.
2002-07-19 15:49:43 +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
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
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
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
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
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
3a964a6b93
Updated docs and added osgGA
2002-07-16 20:07:32 +00:00
Robert Osfield
6c8c02792a
Fixed the new TemplateArray desctructor.
2002-07-16 10:20:26 +00:00
Robert Osfield
7cf7d8fadb
Added protected destrcutor to TemplateArray.
2002-07-16 10:16:34 +00:00
Robert Osfield
e280b50d31
Added osg::UByte4 class, which can be used to represent packed colors.
...
Changed osg::UByte4Array across to use the new osg::UByte4 class rather
than a GLuint as do previously.
Cleaned up some of the paramters in osg::Vec4.
2002-07-15 22:18:47 +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
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
d87d27b749
Added MatrixTransform header and source.
2002-07-12 21:08:19 +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
3edb8a3d18
Added blend color to osg::TexEnv
2002-07-12 10:30:27 +00:00
Robert Osfield
0ea6a7af4a
Fixes for Win32 build
2002-07-11 21:08:02 +00:00
Robert Osfield
1d136eab9f
Added #define for GL_TEXTURE0_ARB
2002-07-11 18:32:41 +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
cd3c2c0b77
Fixes for Win32 build
2002-07-11 11:36:25 +00:00
Robert Osfield
eca5797ae4
Fixed bug in disabledTexCoordPointer where a '>' was being used where it
...
should have been a '>='.
2002-07-11 11:33:06 +00:00
Robert Osfield
4372c9a334
changed unsigned int/short/char* references to GLuint,GLushort,GLubyte respectively.
2002-07-11 08:28:09 +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
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
211a823642
Added comment to reflect Clay Fowlers findings on getting VS to compile
...
without the Vector wrapper classes.
2002-07-07 22:12:51 +00:00
Robert Osfield
8f4a77ce4c
Fixes for Windows build.
2002-07-07 17:42: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
5014a4f809
Used typedef's for std::vector<>'s used inside DrawElements implementations.
...
Added deperecated comment to osg::GeoSet header.
2002-07-04 14:49:37 +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
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
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
975e2fe709
Removed commas from the end of enum lists.
2002-06-28 08:47:23 +00:00
Robert Osfield
7eaba69bb6
Added SG_EXPORT which was missing.
2002-06-27 15:18:10 +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
90f4aa0515
Added comment to explain #ifdefs for member templates.
2002-06-26 21:11:59 +00:00
Robert Osfield
7bc2a513e7
Added #idef to Export to add check for support for member templates.
2002-06-26 21:10:45 +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
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
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
cbb95d0445
Checked in .osg support for the new osg::Geometry class.
2002-06-24 21:37:34 +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
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
ac93c6cdfc
Fixed constructor for TemplateArray(const TemplateArray& t,const CopyOp& copyop).
2002-06-21 07:48:05 +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
77e1fb7f80
Added support for reading and writing OccluderNode's to the .osg file format.
2002-06-19 16:06:03 +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
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
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
61df1ed6b7
Further work on occlusion culling.
2002-06-13 23:46:02 +00:00
Robert Osfield
6888d73554
Added #include <osg/ref_ptr> so that it will compile properly regardless
...
of include order.
2002-06-13 19:34:27 +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
8dcb26967c
Removed inappropriate inline keyword which was breaking the IRIX build.
2002-06-12 16:23:59 +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
0a8d0a255f
More more occlusion culling.
2002-06-08 19:58:05 +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
21a8149aa5
Removed out of date comment on calling dirtyTransform() which no longer exist
...
in osg::Camera.
2002-06-05 16:11:57 +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
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
ff7a7931fe
Warning fix for Windows
2002-06-03 17:54:04 +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
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
a5a267d305
Added pragma to disable warning under VisualStudio.NET.
2002-05-28 16:11:49 +00:00
Robert Osfield
e73d4ca5b3
Changes for Cygwin build, sent in by Norman Vine.
2002-05-28 11:40:37 +00:00
Robert Osfield
02fc6ad5f8
Various updates to operations related to cull traversal.
2002-05-28 10:24:43 +00:00
Robert Osfield
78b7c375d8
Removed , from end of enum.
2002-05-27 06:37:51 +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
11b8bd1fd9
Changed the public osg::State::applyMode() and applyAttribute methods so that
...
they dirty the associated state, this helps keep the OpenGL state valid once
out of local drawing routines.
2002-05-22 10:04:28 +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
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
567989839a
Added new template versions of a commonly used maths functions.
2002-05-13 21:19:42 +00:00
Robert Osfield
c47e082fa8
Added default values in the constructors of Vec2,Vec3,Vec4 and Quat
...
default constructors.
2002-05-07 11:08:12 +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
0977f0de57
Made osg::Viewport::getViewport(..) const.
2002-05-02 22:02:14 +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
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
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
2f392b635c
Fixed compile problems under VisualStudio w.r.t the new additions for
...
precompiled mipmaps. Changed std::size_t to unsigned int.
2002-04-23 10:34:20 +00:00
Robert Osfield
43abbe311e
A couple of API additions to osg::ClippingVolume, osg::Matrix and osg::Plane
...
sent in by Mike Connell.
2002-04-22 21:18:15 +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
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
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
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
Robert Osfield
791150ab69
Warning fixes for VisualStudio
2002-04-17 20:04:41 +00:00