Commit Graph

1249 Commits

Author SHA1 Message Date
Robert Osfield
ab7d1ecc42 Further work on PlaneIntersector 2006-11-29 14:21:59 +00:00
Robert Osfield
345810ef22 Added support for float or double osg::Plane, and the default osg::Plane to double.
Performance tests on big models did not indicate any performance penalty in using doubles over floats,
so the move to doubles should mainly impact precision improvements for whole earth databases.

Also made improvements to osgUtil::PlaneIntersector and osgSim::ElevationSlice classes
2006-11-28 16:00:52 +00:00
Robert Osfield
fd2ffeb310 Renamed osg::CameraNode to osg::Camera, cleaned up osg::View.
Added beginnings of new osgViewer::Scene,View,Viewer,CompositeViewer and GraphicsWindowProxy files.
2006-11-27 14:52:07 +00:00
Robert Osfield
4ab9c6f5f4 Removed check from objectDeleted(void*) method as this was not catching cases
where the registered ptr was different from the deleted ptr - something that
can happen with multiple inheritance.
2006-11-26 22:27:09 +00:00
Robert Osfield
2a8c48c13c Added isIdentity() method 2006-11-24 21:10:57 +00:00
Robert Osfield
5044a85c9e Improved handling of bounding polytope 2006-11-24 17:20:01 +00:00
Robert Osfield
1f3a851cfc From Farshid Lashkari, Added missing initialization of the _scaleByTextureRectangleSize
variable in two of its constructors.
2006-11-22 20:39:44 +00:00
Robert Osfield
b67de41991 Rearranged the #ifdef's to prevent compile problems under NVidia 2.1 OGL drivers 2006-11-17 20:45:29 +00:00
Robert Osfield
d0cc014f1b Further migration to using RenderInfo 2006-11-14 12:51:31 +00:00
Robert Osfield
7cb1bcbd7d From Farshid Lashkari, "This patch adds a CoordOriginMode to the osg::PointSprite attribute.
The mode needs to be changed to LOWER_LEFT when rendering point
sprites to pbuffers or FBOs, otherwise the points will be transformed
on the CPU."
2006-11-14 12:29:54 +00:00
Robert Osfield
c3f3093ecc From John Kelso, add support for default frame time for children of a Sequence node 2006-11-10 15:25:04 +00:00
Robert Osfield
8983544a86 Further work on osgShadow::GeometryOccluder 2006-11-10 15:07:13 +00:00
Robert Osfield
1c91b505dd Fixed bug in Polytope::contains(const std::vector<Vec3>& vertices) which resulted
in false positives.
2006-11-02 15:22:38 +00:00
Robert Osfield
f257285efc From Chuck Seberion, added support reading ARB float format textures. 2006-10-14 21:50:29 +00:00
Robert Osfield
660cda57c8 From Terry Welsh, mplemented POINT_ROT_EYE. 2006-10-14 21:47:13 +00:00
Robert Osfield
8e3a092a00 Removed the redundent relaseGLObjects() method declerations 2006-10-03 20:42:57 +00:00
Robert Osfield
e0599f652e Added releaseGLObjects to NodeCallbacks, Drawable::DrawCallbacks and wired up
osgProducer to use it when doing cleanup_frame.
2006-10-02 15:38:31 +00:00
Robert Osfield
f97759405a From Farshid Lashkari, "Here is the patch we discussed previously about adding a flag to
CullSettings which allows CameraNode to inherit the clear color."
2006-10-02 14:11:40 +00:00
Robert Osfield
3bfa8a27a8 From Edgar Ellis, "Changed return type of osg::equivalent methods from float/double to bool.
"
2006-10-02 13:11:32 +00:00
Robert Osfield
35d134f712 From Farshid Lashkari, added function for querring whether a mode is a texture related mode or not. 2006-09-21 10:01:27 +00:00
Robert Osfield
def74d3471 Introduced new osg::View, and osg::RenderInfo classes into the core OSG to help
handle scenes with multiple views with elements that need coordinating on a per view basis.

Added beginings of new osgText::FadeText class (not functionality yet).
2006-09-18 20:54:48 +00:00
Robert Osfield
515225cfb9 Fixed the drawArrays() method checking of _drawArrayPtr 2006-09-12 15:21:41 +00:00
Robert Osfield
5915584b37 Revised the osg::ClampColor API to allow vertex, fragment and read color clamping to
be applied together.
2006-09-12 09:26:42 +00:00
Robert Osfield
daa54a3b09 From Farshid Lashkari,
"I've made some changes to osg which I think make it easier to control
the render order of CameraNode's. Instead of using the built-in orders
(PRE_RENDER, POST_RENDER, NESTED_RENDER), you can specify an integer
order. Values less than zero are pre rendered in order. Values greater
than zero are post rendered in order. And a value of 0 is equivalent
to NESTED_RENDER.

The changes should be fully backward compatible. Also, I changed the
RenderStageList type from a vector to a list because I needed to be
able to insert values anywhere in the list.

The reason I made these changes was because I wanted to be able to set
the render order of a CameraNode at runtime without having to reorder
it in the scenegraph."

and later in the final submission message (relating to what has been finally been merged)    :

"I've rethought my implementation and came up with something a little
better. The setRenderOrder will continue to take an enum, but will
have an optional orderNum parameter which can be both positive and
negative. I think this method is more intuitive and flexible."
2006-09-04 13:15:08 +00:00
Robert Osfield
f0277df858 Added osg::TexMat::s/getScaleByTextureRectangleSize feature that allows
one to use the osg::TexMat to automatically scale non dimensional tex coordinats to
the size of the last texture rectangle applied.
2006-09-04 12:46:49 +00:00
Robert Osfield
5d1de02afa Updated Version number for 1.2 release 2006-08-31 20:55:46 +00:00
Robert Osfield
aaba1c6b23 Made the inheritance of osg::Object in the DrawCallback to be virtual. 2006-08-31 10:10:42 +00:00
Robert Osfield
22e94c9aaf Added TexMat(Matrix) constructor. 2006-08-29 06:58:22 +00:00
Robert Osfield
179f6100a0 Added missing setDataType and setPacking functions 2006-08-25 15:49:29 +00:00
Robert Osfield
ff61a20315 Added const version of getReadPBuffer() 2006-08-25 14:54:54 +00:00
Robert Osfield
f5d9443b78 Fixed const correctness of get shadow functions 2006-08-25 14:53:09 +00:00
Robert Osfield
0900857333 From Farshid Lashkari,
"I was experiencing hard crashes of my application when using PBO's on
machines that don't support PBO's. I think osg incorrectly checks if
PBO's are supported.

I added a new method to the BufferObject::Extensions class which
returns if the "GL_ARB_pixel_buffer_object" string is supported. This
fixes the problem on my end. Machines without PBO support will
continue to work and machines with PBO support will still be able to
use it."
2006-08-25 08:48:16 +00:00
Robert Osfield
62edacece5 From David Guthrie, "I know there are 50,000 changes to osg/Math for OSX a day, but I
think it can be simplified quite a bit.  The old code includes
<cmath> for pre-10.2 and anything using something other than g++ 4
and then uses std::isnan.  For the most current version, it leaves
out cmath and uses isnan().  std::isnan and cmath work for the
current version, so I just made it include cmath if __APPLE__ is
defined and removed the ifdef between versions of OS X for isnan
related things.

This way the code is all the same, and it's not fragile to someone
including <cmath> prior to including osg/Math."
2006-08-24 20:16:25 +00:00
Robert Osfield
49e7607fa0 Simplified swap bytes code to make it more efficient. 2006-08-24 20:15:32 +00:00
Robert Osfield
a33955a56b From Daniel Larimer, fix for OSX 10.4 when gcc != 4 2006-08-23 14:17:06 +00:00
Robert Osfield
be60b32add Fixed texture optimization problem associated with mixing already compiled scene graphs - resulting
in incorrect texture assignment.  Solution was to a compareTextureObjects() test to the Texture*::compare(..) method that
the osgUtil::Optimizer::StateSetVisitor uses to determine uniqueness.
2006-08-14 19:42:22 +00:00
Robert Osfield
14f924c2af From Daniel Larimer, "Apple updated their developer tools again and broke the __isnanf and
__isnand methods... replacing them with a call to isnan(v) seems to
work on both Xcode 2.3 and 2.4"
2006-08-10 08:45:42 +00:00
Robert Osfield
3730d7266d Removed referecens to the deprecate UByte4 2006-08-09 13:02:52 +00:00
Robert Osfield
174e3b3dc3 Fixed RenderToTexture bug which occured when the viewport dimensions where
different than the texture being written to.
2006-08-03 15:57:39 +00:00
Robert Osfield
0336231321 Moved extension function pointer initilization into a method, and the pointers from
being static to be local member variables.  This should avoid issues under Windows
with multiple graphics contexts have seperate entry points.
2006-08-02 16:14:17 +00:00
Robert Osfield
553d017fd9 From Daniel Trstenjak, build fixes for Hpux 11.11, Irix 6.5, Solaris 8 and Aix 2006-08-02 10:43:26 +00:00
Robert Osfield
564ee34f76 Added Matrix*::getRotate()/setRotate(Quat), deprecating Matrix*::get(Quat&), Matrix*::set(Quat&) 2006-07-31 17:31:21 +00:00
Robert Osfield
28cf404a25 Tweaked the invert() method to avoid silly OSX warnings. 2006-07-31 14:49:36 +00:00
Robert Osfield
f977d7c606 Updated osgunittests with a matrix invert unit test, and added a conditional
calling of invert_4x4 or invert_4x3 depending on the the right hand column of the matrix.

Updated wrappers
2006-07-28 13:48:08 +00:00
Robert Osfield
d9b6d87d5a Cleaned up per context buffers support 2006-07-26 15:29:26 +00:00
Robert Osfield
f1c2694c17 Updated copyright years. 2006-07-18 15:21:48 +00:00
Robert Osfield
419e185895 From Eric Wing, add alternate backdrop implementations.
From Robert Osfield, updated naming  and copy constructor methods.
2006-07-18 12:24:04 +00:00
Robert Osfield
2ef59b73e9 Change Unit to Units to keep consistent with OpenGL naming. 2006-07-17 11:43:26 +00:00
Robert Osfield
4bae225d39 Added s/getFactorMultiplier(), s/getUnitMultiplier(), areUnitAndMultipliersSet() and
setFactorAndUnitMultipliersUsingBestGuessForDriver() static methods to
osg::PolygonOffset to help implement workarounds for lack of portablity of
settings between different hardware.
2006-07-14 14:08:33 +00:00
Robert Osfield
dd6a33da49 Removed StateSet::ENCLOSE_RENDERBIN_DETAILS since it is rendendent, and
implemented the OVERRIDE_RENDERBIN_DETAILS.
2006-07-11 21:53:57 +00:00
Robert Osfield
165351196e From Brede Johansen, "Here's a small patch to BlendFunc::setFunction(source,destination) to
make it consistent with the constructor and prevent the
BlendFuncSeparate path being called.  This patch fixed the artifact
with the osgpointsprite demo on ATI cards reported by Mike Weiblen."
2006-07-11 14:24:18 +00:00
Robert Osfield
865ee4429c From Eric Sokolowsky,
"Attached is some fixes for Image::readImageFromCurrentTexture. It was
failing when used with a new Image object (some of the fields were
not set before they were used, and some were set to the wrong values).
A new optional parameter was added to give the desired data type, which
defaults to GL_UNSIGNED_BYTE, so programs should only need a recompile
to work properly."
2006-07-06 14:02:14 +00:00
Robert Osfield
88609a5eee Updated version numbers for 1.1 release 2006-07-06 10:28:12 +00:00
Robert Osfield
ce4b3a7b9e Changed parameter name from osberver_ptr to observer. 2006-07-04 19:58:53 +00:00
Robert Osfield
7a42716036 Removed template methods that were break VS6.0 build. 2006-07-03 15:21:08 +00:00
Robert Osfield
f181228d4a From Michael Platings, added support for glBlendFuncSeperate. 2006-06-30 13:50:02 +00:00
Robert Osfield
6a2387373c From Eric Sokolowsky, made a couple of methods static. 2006-06-30 13:47:12 +00:00
Robert Osfield
3e177ca727 From Tyge Løvset, ref_ptr<> template constructor, operators and associated functions.
From Robert Osfield, tweaks and fixes to the above, also removed the deprecated take() method.
2006-06-26 20:41:33 +00:00
Robert Osfield
f8644d08e5 From Leandro Motta Barros, documentation additions to PrimitiveSet & TriangleFunctor. 2006-06-26 09:56:52 +00:00
Robert Osfield
4ab7be2833 Martin Spindler, new osg::ClampColor state attribute. 2006-06-08 15:27:18 +00:00
Robert Osfield
7d3ddc0e1b From Paul Martz, clean up of comments. 2006-06-08 12:09:51 +00:00
Robert Osfield
78742d6698 From Gustavo Wagner, addition of trim method to TemplateArray class.
From Robert Osfield, made trim method a virtual method of the base Array class
and added a trim implementation to TemplateIndexArray.
2006-06-08 11:58:56 +00:00
Robert Osfield
e1c77dfe2a Minor tweaks of ints to unsigned ints 2006-05-16 21:20:36 +00:00
Robert Osfield
690aeea7e4 From Mike Weiblen, futher work on Uniform array support. 2006-05-16 21:00:45 +00:00
Robert Osfield
bf065ed3a4 From Mike Weiblen, support GLSL uniform arrays. A couple of tweaks and fixes from Robert Osfield. 2006-05-15 15:46:08 +00:00
Robert Osfield
587adca056 From Eric Wing, compile fix for OSX. 2006-05-15 11:53:21 +00:00
Robert Osfield
1dcb923c15 From Daniel Trastenjak, added checking of binding modes to ensure that changes are only applied
when the binding mode changes, thereby avoiding uncessary calls to dirtyDisplayList.

Note, from Robert Osfield, moved bodies of set*Binding() into Geometry.cpp to avoid
clutter in the header.
2006-05-15 11:48:05 +00:00
Robert Osfield
83722dc064 From Tree, build fixes for JavaOSG build. 2006-05-09 09:42:17 +00:00
Robert Osfield
bd895f94d4 From Farshid Lashari, round funciton. 2006-05-09 09:35:12 +00:00
Robert Osfield
1c6e165cb3 From Farshid Lashkari, "The setScale(Vec3) method of osg::AutoTransform does not dirty the
matrix. The fix is attached."
2006-05-09 09:12:43 +00:00
Robert Osfield
20820c7ce2 Added removeChild(unsigned int, unsigned int) back in for backward compatibility. 2006-05-04 19:36:30 +00:00
Robert Osfield
a8c52a90f0 Added selective support for thread safe ref/unref such that the rendering
backend now doesn't use thread safe ref counting where multi-buffering exists.
This reduces the overhead of multi-threading.
2006-05-02 15:52:46 +00:00
Robert Osfield
03c0c856f3 Fixed docs on GL_SCALE_NORMAL 2006-05-02 09:49:37 +00:00
Robert Osfield
43f0efd6d2 Reorganised the Group::removeChild and Geode::removeDrawable methods so
that removeChild(Node*), removeChild(uint) and equivilant Geode methods are
now inline methods, not designed to be overriden, and seperated out the
multiple remove method to be called removeChildren(uint, uint) which is
now the only virtual method.  There removeChildren is now the method to
override in subclasses.

This reorganisation requires some call code to be rename removeChild usage
to removeChildren.
2006-05-02 09:45:31 +00:00
Robert Osfield
93a425cafb From Eric Wing, removed trailing semi colonds from namespace end bracket. 2006-05-01 16:05:16 +00:00
Robert Osfield
e7a4ad287b From Mike Weiblen, changes to internal help class in prep for array uniform support.
Small tweaks for build under Linux from Robert Osfield.
2006-03-28 16:08:32 +00:00
Robert Osfield
2b61cf0a1e From Farshid Lashkari, "The following patch adds a multisample option to the
osg::DisplaySettings class. OsgCameraGroup will now read the setting
from the DisplaySettings instead of hardcoding the value. I added the
following commandline option to be able to set the multisample value:

--samples <num>

One thing to note, OsgCameraGroup would previously check if the
computer is an SGI and set multisample to 4. I retained this check in
DisplaySettings to be backwards compatible."
2006-03-13 21:29:17 +00:00
Robert Osfield
4fc4e60cc3 From Bob Kuehne, added osg::getGlVersion() and fixed a minor typo in Texture3D. 2006-03-08 16:11:54 +00:00
Robert Osfield
abed6b7951 Ported NodeTrackCallback and NodeTrackManipulator across to use oberserver_ptr
instead of RefNodePath.

Removed now redundent RefNodePath.
2006-02-27 19:49:47 +00:00
Robert Osfield
1dcf4fe81f Added support in osg::computeWorldToLocal and compteLocalToWorld functions for automatically
stripping any absolute or root CameraNode's from the NodePaths.

Added osg::Node::getWorldMatrices() convinience method.
2006-02-27 19:48:34 +00:00
Robert Osfield
8f2ffb7c2d Added new observer_ptr templated smart pointer to allow one to retain pointers
to objects but have the pointer reset to null if that object is deleted.
2006-02-27 19:44:33 +00:00
Robert Osfield
8489b22439 From Gordon Tomlinson, spelling fixes. 2006-02-23 12:41:05 +00:00
Robert Osfield
7ea1c56b4c Fixed getBound() comment. 2006-02-22 20:51:26 +00:00
Robert Osfield
def7a78842 Fixed typo of Validity. 2006-02-22 19:14:01 +00:00
Robert Osfield
e72a02a083 Fixed documentation. 2006-02-22 14:35:06 +00:00
Robert Osfield
32b929a493 Added support for OpenGL mode black listing to provide better support
for extension checking and invalidation of OpenGL modes associated with
extensions.
2006-02-22 14:31:13 +00:00
Robert Osfield
25abad8307 From Paul Martz, "I've attempted to make AutoTransform override computeBounds() to return
an invalid bounding sphere if it hasn't seen a cull traversal yet. It
depends on _firstTimeToSetEyePoint, which is initially true, then false
after a cull. There might be a better way? If so, let me know.

This change does resolve the issue I had encountered with auto scale to
screen and incorrect culling."
2006-02-21 13:51:10 +00:00
Robert Osfield
7d5c81bf5e From Ulrich Hertlein, spelling corrections and a few Doxgen comments. 2006-02-20 21:05:23 +00:00
Robert Osfield
59ad441be1 Added BlenColour(Vec4) constructor and updated wrappers. 2006-02-09 12:20:42 +00:00
Robert Osfield
4bc13ec71b From David Guthrie, OSX marco reworking to better handling different OSX versions. 2006-02-05 21:53:37 +00:00
Robert Osfield
93a2c3d011 Improved handling of clean up of osg::Program/osg::Shader on closing of a graphis context. 2006-01-16 17:05:17 +00:00
Robert Osfield
0c9ab51e09 Fixed indenting. 2006-01-16 17:03:34 +00:00
Robert Osfield
ab71114219 Moved the body of the FBOExtensions::instance() to the .cpp and added bool to
control whether that an FBOExtensions structure can be created if missing.
2006-01-03 10:44:14 +00:00
Robert Osfield
323473144a Fixed computeWindowMatrix so that it properly accounts for x,y position of the viewport. 2005-12-19 12:00:40 +00:00
Robert Osfield
4535cc0c09 Added back in Switch::removeChild(Node*) 2005-12-16 11:04:33 +00:00
Robert Osfield
6ff781b5b0 Removed Switch::removedChild(Node*) as the Group::removeChild(Node*) implementation
should be sufficient, as it calls the virtual removeChild(uint,uint).
2005-12-15 15:50:17 +00:00
Robert Osfield
7d4acba022 Changed constructors to use unsigned int to get round VS6.0 + wrapper problems. 2005-12-09 16:00:01 +00:00
Robert Osfield
479af6e825 Build fix for VS6.0 in the template constructors 2005-12-09 14:52:19 +00:00
Robert Osfield
a8d7234a0b From Eric Wing, added missing removeChildren method. 2005-12-09 11:22:09 +00:00
Robert Osfield
53ee0ce3ec Added CameraNode::releaseGLObejcts() to help in clean up, and changed the
ordering in SceneView::flushDeleteGLObjects() so that fbo's are deleted
before any texture objects they use are deleted.
2005-12-08 10:06:57 +00:00
Robert Osfield
27ad107378 Added new Node::getParentalNodePaths() method.
Added better handling in computeIntersections(..) of nodes that are internal
to the scene graph, correctly accounting for the accumulated transforms.

Changed the EventVisitor so that it only traveses active children rather than
all children.

Updated wrappers.
2005-12-07 15:29:29 +00:00
Robert Osfield
3f3c7b1df8 Added Camera::isRenderToTextureCamera() method, and improved support in PickVisitor
and IntersectVisitor for CameraNode, including the ignoring of render to texture cameras,
such that HUD's etc are still intersected against.
2005-12-07 11:36:56 +00:00
Robert Osfield
65d06b4577 From Farshid Lashkari, removed second redundent dirtyDisplayList() call. 2005-12-06 10:18:33 +00:00
Robert Osfield
22d5390784 From Louis Hamilton, fix to LightPoint's under 64 bit build, changing longs to ints in
colour conversion code.
2005-12-06 10:16:21 +00:00
Robert Osfield
c45ead4c65 Fixed tabbing. 2005-12-04 20:08:41 +00:00
Robert Osfield
851972beab Added OSG_EXPORT to PrimitiveSet. 2005-12-03 15:12:52 +00:00
Robert Osfield
b16f40e5ab Moved the body of the getNumPrimitives() into the .cpp. 2005-12-03 00:03:31 +00:00
Robert Osfield
8d8229cc05 From Marco Jez, hack/fix for VS compile/link problems related to STL containers. 2005-12-02 00:25:40 +00:00
Robert Osfield
6a5a10cf47 Fixed docs of setImage. 2005-11-25 13:45:23 +00:00
Robert Osfield
daefa1cae6 Added releaseGLObjects to PrimitiveSet. 2005-11-25 12:31:04 +00:00
Robert Osfield
736a8433ca Added FBO deletion support, and better FBO querry and fallback mechansim in RenderStage. 2005-11-24 15:18:12 +00:00
Robert Osfield
09bfbeec8b Changed the VS template export block to just compile when VS verion >= 1300 (VS.NET onwards.) 2005-11-24 15:17:28 +00:00
Robert Osfield
e1dd759dd8 Changed CameraNode::getDataChangeMutex() to be a pointer rather than a reference to
get around osgIntrospeciton build problem with the OpenThreads::Mutex copy constructor being private.
2005-11-23 16:32:55 +00:00
Robert Osfield
74830f9ce1 Added multi-buffering of the CameraNode::_renderingCache to help cope with multiple graphis context usages. 2005-11-23 13:44:27 +00:00
Robert Osfield
a91b8fa40a Moved getGLExtensionFuncPtr implementation into the .cpp to make it easier to
change it implementation without forcing a complete recompile.
2005-11-23 10:16:25 +00:00
Robert Osfield
33f4494830 Added missing dirtyDisplayList call into osg::Geometry::set calls. 2005-11-22 13:56:50 +00:00
Robert Osfield
14f943cc32 From Marco Jez, fix for wchar_t being redefined. 2005-11-22 09:47:18 +00:00
Robert Osfield
8289eecb7e From Roger James, reworked the export of std::vector<> on standard types to prevent
problems with .lib being built for all targets under VS7.x
2005-11-21 13:51:24 +00:00
Robert Osfield
9c93332c03 From Rodger James, changed the Win32 static library compilation support to use
OSG_LIBRARY_STATIC to avoid problems with building libs when not required.
2005-11-18 09:52:24 +00:00
Robert Osfield
35fcaf7bde Convert tabs to spaces. 2005-11-17 17:44:48 +00:00
Robert Osfield
c2f1527fe0 Added better control for cancel GraphicsThreads. 2005-11-10 15:25:06 +00:00
Robert Osfield
83d492162e Added the support in AnimationPathCallback for taking a pivot, axis and rotation rate
paramters in its constructor to allow it to be used to create rotations around a point.
This provides the same interface and functionality as osgUtil::TransformCallback but
has the advantage and AnimationPathCallback is fully supported by the .osg and .ive file formats.
2005-11-09 15:11:22 +00:00
Robert Osfield
258425d649 Bumped the version numbers up to 1.0 in preparation for 1.0-rc1. 2005-11-09 10:49:56 +00:00
Robert Osfield
53e075f78b From Brad Colbert/Robert Osfield: added s/getSourceFormat and s/getSourceType to osg::Texture
along with support for this Texture1D, 2D, 3D, TextureCubeMap and TextureRectangle.  The
new SourceFormat and SourceType parameters are only used when no osg::Image is assigned to
an osg::Texture, and main use is for render to texture effects.

Added support for --hdr option in osgprerender, which utilises the new Texture::setSourceFormat/Type() methods.
2005-11-08 15:52:21 +00:00
Robert Osfield
4915259878 Improved support for texture subload/render to texture in various Texture classes
and RenderStage.
2005-11-04 12:08:16 +00:00
Robert Osfield
fb2d3ae108 Further work on added IO support from CameraNode. 2005-11-03 15:59:17 +00:00
Robert Osfield
eb28f9f587 From Eric Sokolowsky, added writeEnvironmentSettings to help report what OSG
centric environment variables are used.
2005-11-03 10:01:09 +00:00
Robert Osfield
f3cfe97da9 Added support in DisplaySettings and OscCameraGroup for requesting accumulator buffer. 2005-11-02 19:15:18 +00:00
Robert Osfield
a86df172f9 Added doc comment and removed redundent inline keyword 2005-11-02 11:33:10 +00:00
Robert Osfield
8748e21e61 Added static orthoNormal function to match equivilant in Matrixd 2005-11-02 10:49:38 +00:00
Robert Osfield
4c1110858a From Colin McDonald, "Fix for missing class name qualifier on the orthoNormal function." 2005-11-02 10:45:56 +00:00
Robert Osfield
21c5a129ff Fixed compile warning 2005-11-02 10:29:13 +00:00
Robert Osfield
a742cb682e Added RenderTargetFallback option into osg::CameraNode. 2005-11-01 10:42:54 +00:00
Robert Osfield
fa5ab64c94 From Ravi Mathur, "Here is an update to BlendEquation that adds checking for the
SGIX_blend_alpha_minmax and EXT_blend_logic_op extensions.  It is
tested with the osgblendequation example.  If the extensions are not
supported, a WARN level notification is generated."
2005-10-28 13:18:09 +00:00
Robert Osfield
026fba54b4 From Bob Kuehne, "changed two set methods (setFocalLength,setFieldOfView) to perform
assignment."
2005-10-26 16:02:24 +00:00
Robert Osfield
be07f48884 From Geoff Michel, compile fixes for VS6.0 2005-10-26 09:22:13 +00:00
Robert Osfield
f46044084a From Farshid Lashkari & Robert Osfield: Added support for VERTICAL_INTERLACE and HORIZONTAL_INTERLACE
stereo modes use the stencil buffer.
2005-10-25 15:43:04 +00:00
Robert Osfield
f2f6e6bb45 Added beginnings of Programming Guide, and NodeTrackerCallback. 2005-10-24 10:51:50 +00:00
Robert Osfield
1e508d432b Added SmokeTrailEffect which renders created particles as single quad or line
strip, in the case of the quad strip the strip is aligned to the be orthogonal with
the eye point.
2005-10-12 18:42:36 +00:00
Robert Osfield
290e0b6eed From Alberto Jaspe, added double precision interpolation method 2005-10-10 09:17:22 +00:00
Robert Osfield
4b43b22c5a Added support for CameraView into NodeVistor, and support for CameraNode and CameraView
into the AnimationPathCallback so you can now animate both via animation paths.
2005-10-05 09:48:53 +00:00
Robert Osfield
cf2974329f Added code paths for PBuffer RTT support. 2005-10-04 18:50:00 +00:00
Robert Osfield
8e9ffd09af Added osg::CameraView to help application/modellers position their cameras in scenes. Note,
CameraView is *not* a camera, it isn't an active object, but a passive one that
camera must track each frame to following the path of the CameraView.
2005-10-04 13:41:20 +00:00
Robert Osfield
e749839061 From MFM, Added FreeBSD specific implementation for getGLExtensionFuncPtr using dlsym(RTLD_DEFAULT, xxx) 2005-10-03 19:33:54 +00:00
Robert Osfield
e2f2960704 Added a dirtyDisplayList() to the setColor() and setTesselationHint() methods. 2005-10-01 19:27:52 +00:00
Robert Osfield
d82d598115 Fixed typo of CameraNode::setRenderTargetImplementation(..) 2005-09-29 09:36:51 +00:00
Robert Osfield
f26c3da074 From Chris Hanson, "The following files are drop-in replacements for the include/*/Export files to permit
building statically linked osg libraries under Win32."
2005-09-28 14:05:05 +00:00
Robert Osfield
97f6a82b1e From Leandro Motta Barros: fixed type of ATTRIBUTE_* 2005-09-28 13:55:22 +00:00
Robert Osfield
05528abf25 From Chris Hanson:
Spelling fixes in include/osg/LOD

   Negated priority in PagedLOD when using _rangeMode==PIXEL_SIZE_ON_SCREEN

   Added clampedPixelSize() methods to CullStack and CullingSet to return fabs()ed values.

   Changed LOD and PagedLOD ::traverse to use clampedPixelSize() methods.
2005-09-28 13:33:58 +00:00
Robert Osfield
871cc70c32 From Ravi Mathur, added extension checks for point sprite support.
From Robert Osfield, tweaks of the above to use osg::buffer_object and a local struct to store
initialized to help with multi-thread and out of order context usage.
2005-09-19 15:28:31 +00:00
Robert Osfield
196eafd70b Removed duplicate typedef. 2005-09-09 15:42:48 +00:00
Robert Osfield
765db1998c Added support for cullable state, that uses a polytope to define the extents
of objects that will be influenced by it.
2005-09-07 16:18:43 +00:00
Robert Osfield
14980872a7 Standardised the Vec* class interfaces, and added num_components enum to aid
generic programming.
2005-09-04 11:17:00 +00:00
Robert Osfield
d58487c763 Changed red()/green()/blue()/alpha() to r()/g()/b()/a() for greater consistency
across Vec* classes and with OpenGL Shander Lanaguage.
2005-09-03 20:56:25 +00:00
Robert Osfield
caaeaee321 Fixed typo 2005-09-01 19:12:06 +00:00
Robert Osfield
7fc95ddae7 Added graphics context pointer to osg::Texture in prep for support for Pbuffer
Render To Texture.
2005-08-31 12:56:15 +00:00
Robert Osfield
c02e91c1b4 Added support for GrapicsOpeations that are reused each frame, cleaned up
osgcamera example.
2005-08-30 22:28:30 +00:00
Robert Osfield
f9bcde3cf0 Added name and keep member variables to osg::GraphicsThread::Operation to allow
the names of the operations to be logged for stats purposes, or used when
do searches of the operation list.  The keep member variable tells the graphics
thread run loop wether to remove the entry from the list once its been called.
2005-08-30 19:03:02 +00:00
Robert Osfield
aba3b4fa67 Clean up and fixes to GraphicThread class, and osgcamera example. 2005-08-30 14:41:08 +00:00
Robert Osfield
d154c2a4cd From Eric Sokolowsky, warning fixes for g++ 4.0 under Fedora Core 4. 2005-08-25 17:53:01 +00:00
Robert Osfield
320d0f67e4 Removed old commented out code. 2005-08-24 19:21:12 +00:00
Robert Osfield
dedf81fa51 From Domenico Mangieri, added constructor. 2005-08-24 19:20:36 +00:00
Robert Osfield
b50ac89b9d From Domenico Mangieri:
"I've added a Plane constructor which accepts a normal and a point.
I also removed calculateUpperLowerBBCorners() from the Plane(const
Vec3& v1, const Vec3& v2, const Vec3& v3) since the constructor is
using the function set(const Vec3& v1, const Vec3& v2, const Vec3& v3)
which already computes the upper and lower bounding box."
2005-08-22 14:07:47 +00:00
Robert Osfield
29958a5612 Added OSG_EXPORT to GrephicsThread and fixed typo in osg.dsp. 2005-08-21 15:32:38 +00:00
Robert Osfield
ac07e07705 Further work on GraphicsContext/GraphicsThread 2005-08-20 08:59:03 +00:00
Robert Osfield
356f1ccfaf Added GraphicsThread class 2005-08-18 20:35:19 +00:00
Robert Osfield
51faa7e43a Various updates to support the new GraphicsThread class. 2005-08-18 20:17:51 +00:00
Robert Osfield
717a6dcf14 Added beginings of GraphicsThread class 2005-08-18 09:36:40 +00:00
Robert Osfield
84618ffcb3 Merged RenderToTextureStage functionality into RenderStage 2005-08-17 10:12:49 +00:00
Robert Osfield
e8fc5248fa Added realize() and isRealized() methods to osg::GraphicsContext.
Added osgcamera example that uses osg::GraphicsContext to create the required
window for rendering too, will eventually use osg::CameraNode to replace usage
of osgUtil::SceneView.
2005-08-16 13:29:07 +00:00
Robert Osfield
a5d64e5a77 Added getDisplayList access method 2005-08-09 10:48:26 +00:00
Robert Osfield
4e69d46289 Further work on trying to get glGenerateMipMapEXT working in conjunction with
frame buffer objects.  Still don't work under Linux yet through :-|
2005-07-27 11:27:44 +00:00
Robert Osfield
bddaefd569 Perliminary support for glGenerateMinMapEXT. 2005-07-25 16:12:24 +00:00
Robert Osfield
384830d37e Added handling of automatic setting up of the contextID. 2005-07-25 14:28:22 +00:00
Robert Osfield
3c23a42f17 Added support for TextureCubeMap into osgUtil::RenderToTextureStage. 2005-07-25 13:05:57 +00:00
Robert Osfield
ee8f7bb756 Added post draw callback to osg::CameraNode/osgUtil::RenderToTextureStage.
Added support for Texture1D, 2D, 3D and TextureRectangle into osgUtil::RenderToTextureStage.
2005-07-24 20:31:21 +00:00
Robert Osfield
47651d3c8d Added glSissor suppor via new osg::Scissor class.
Added .osg support for osg::Scissor.
Added .ive support for osg::Viewport and osg::Scissor.
2005-07-22 09:31:19 +00:00
Robert Osfield
37b4df3f71 Added missing typedef 2005-07-22 08:21:17 +00:00
Robert Osfield
302c58fc93 Implemented the beginings of the osgProducer::GraphicsContexImplementation.
Added options into osgprerender for controlling how to do the pre rendering i.e.
--fbo, --pbuffer, --fb --window, and also added the option for controlling the
window size with --width and --height.
2005-07-21 19:27:19 +00:00
Robert Osfield
7776924407 Checked in graphics context. 2005-07-21 08:43:24 +00:00
Robert Osfield
1e9fb4ab03 From Marco Jez (with tweaks by Robert Osfield) : clean up of inheritance from std::vector<> classes 2005-07-20 19:42:59 +00:00
Robert Osfield
b9e651baf1 Added new osg::GraphicsContext base class 2005-07-20 15:55:07 +00:00
Robert Osfield
7b23cf930e Added support for multiple colour buffers into osg::CameraNode/osgUtil::CullVisitor 2005-07-19 20:01:00 +00:00
Robert Osfield
8dd013171c Ported all the render to texture examples across to using the new osg::CameraNode.
Added support for texture cube maps in FBO + CameraNode.
2005-07-19 16:30:55 +00:00
Robert Osfield
5c9bd792a3 Updated wrappers 2005-07-15 21:47:11 +00:00
Robert Osfield
d35ea68f3e Renamed Byte2,3,4 and Short2,3,4 and UByte4 to use the Vec*b, Vec*s and Vec4ub form 2005-07-15 14:41:19 +00:00
Robert Osfield
cfac4c74bc Added reference frame to TexGenNode 2005-07-15 08:32:36 +00:00
Robert Osfield
53347812cb From Mike Weiblen, addiding of Program::validateProgram and osg::isNotifyEnabled() method 2005-07-14 10:27:00 +00:00
Robert Osfield
5cfc42daf8 Added missing copy _referenceFrame in copy constructor 2005-07-14 10:17:20 +00:00
Robert Osfield
99279fbf61 From Marco Jez, added missing method implementations to CameraNode and
added check to ensure FBO extension is support to RenderToTextureStage.
2005-07-08 14:46:13 +00:00
Robert Osfield
0d8e38f9ee Tweaks for better OSX paging support, 6 and 9 keys for control drive manipulator
up and down looking, and removed redundent API from osg::Geometry.
2005-07-07 14:14:38 +00:00
Robert Osfield
facb0e2638 From Pavel Moloshtan, Byte2,3,4 and Short2,3,4 classes and their Array counterparts.
With a few build tweaks and bug fixes by Robert Osfield.
2005-07-05 15:57:53 +00:00
Robert Osfield
72488d274f Added support for equalizing the normals along tile boundaries. 2005-07-02 08:11:55 +00:00
Robert Osfield
34be5166ff From Tom Jolly, added method for getting the number of frames. 2005-06-20 10:38:39 +00:00
Robert Osfield
7453711267 From Mike Weiblen,
" - adjustments to improve namespacing on VS
  - clarify compilation status message"
2005-06-20 10:36:06 +00:00
Robert Osfield
9c950f0f3c From Andreas Jochens (submitted by Loic Dachary), addintion of forward declare
of class Progam; to fix compile problem under gcc4.0/amd64/debian unstable.
2005-06-20 10:28:52 +00:00
Robert Osfield
ba2aeb52e5 From Mike Weiblen, added OSG_EXPORT to FrameBufferObject files. 2005-06-20 10:16:30 +00:00
Robert Osfield
1641cd7b54 From Pavel Moloshtan, added support of Drawable::Extensions::glDeleteQueries() 2005-06-16 13:53:52 +00:00
Robert Osfield
3a0b742461 Added copyright notices. 2005-06-16 11:45:50 +00:00
Robert Osfield
d702fed0ef Moved FBO support from osgfbo example into core osg. 2005-06-16 11:42:59 +00:00