Commit Graph

1485 Commits

Author SHA1 Message Date
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
Robert Osfield
77a4cef9d6 Futher work on FBO support 2005-06-15 20:06:10 +00:00
Robert Osfield
dfaed083ea Added osgmultiplecameras example and support for pre/post multiplaction. 2005-06-15 10:59:10 +00:00
Robert Osfield
71122ff38f Work on the RenderToTexture usage of the new osg::CameraNode. Both osghud
and osgprerender now ported across to osg::CameraNode.
2005-06-14 20:51:35 +00:00
Robert Osfield
868d381528 Added osg::CameraNode. 2005-06-14 13:16:58 +00:00
Robert Osfield
27c4c6a956 Moved the set/getName() support from osg::Node etc into the osg::Obejct
base class
2005-06-08 13:16:19 +00:00
Robert Osfield
e0cf176590 From Mike Weiblen, added GLSL datatypes mat2 and mat3 to osg::Uniform, with .osg and .ive support 2005-06-08 10:36:56 +00:00
Robert Osfield
a799cdca2f From Tim Daust, "I fixed the getScale functions in matrixf and
matrixd.  It was returning the values of the diagonal
of the matrix, which only returns the scale if there
is not a rotation.  I fixed this by returning the
length of the  vectors that form the basis.
  I also added a function to orthonormalize the
rotation component of the matrix. I seem to always run
into situations where non uniform (or even uniform)
scale complicate my calculations, and I thought other
members of the community could use this function as
well."
2005-05-31 06:21:16 +00:00
Robert Osfield
3c308104a9 Updated Version numbers for release.
UPdated wrappers.
2005-05-25 20:02:25 +00:00
Robert Osfield
2b08f729f3 Updated change log.
From Fredric Marmond, changed unsigned int to unsigned long to avoid compile errors under 64 bit compile.
2005-05-25 15:35:51 +00:00
Robert Osfield
59be8c19f3 Changd unsigned int's to unsigned char* to fix gcc3.4 64 bit issues. 2005-05-25 09:50:11 +00:00
Robert Osfield
cf06b40891 Added pragma to remove warnings under VS.8.0 2005-05-24 18:57:13 +00:00
Robert Osfield
43ad7114be Reworking to avoid compile issues under VS6.0. 2005-05-20 15:45:12 +00:00
Robert Osfield
955cc1ec2a Added s/getClearMask() support to osg::ClearNode, osgUtil::SceneView and the
.osg plugin.
2005-05-18 19:55:14 +00:00
Robert Osfield
2e4b266c39 Added differentiation between Non power of two textures when mip mapped vs
when not mipped mapped to get round the issue of incomplete support under
ATI cards.
2005-05-17 11:00:13 +00:00
Robert Osfield
1dd553ed0e Bumped version numbers to 0.9.9 in rediness for 0.9.9 release. 2005-05-16 17:17:53 +00:00
Robert Osfield
10232cf81a Fixed method signatures. 2005-05-16 11:18:11 +00:00
Robert Osfield
a9f37f1f05 Moved computeBounds into public scope. 2005-05-15 20:31:22 +00:00
Robert Osfield
95a9a4362f From John Grant, added getDrawableList() const. 2005-05-15 05:47:14 +00:00
Robert Osfield
76e7853971 From Tom Jolly, removing trailing comma for last entries in enums to fix
IRIX compile warnings.
2005-05-13 21:38:34 +00:00
Robert Osfield
e82a63ca81 Cross platform build fixes. 2005-05-13 11:11:52 +00:00
Robert Osfield
715df123f1 From Mike Weiblen, Added queries of compilation state to Shader (for symmetry with Program's
link state queries)
2005-05-12 20:59:53 +00:00
Robert Osfield
7c90800822 From Jan Ciger, gcc 4.0 compile fix. 2005-05-12 20:35:15 +00:00
Robert Osfield
54abc6f471 Added IO support for new intialBound and callbacks to .osg, and initialBound to .ive 2005-05-12 14:48:56 +00:00
Robert Osfield
bf4d63f6ea Added new Node/Drawable::s/getInitialBound and Node/Drawable::s/getComputeBoundCallback
methods and reimplement computeBound so that it passes back a bounding volume rather
than modifying the local one.
2005-05-12 14:03:22 +00:00
Robert Osfield
25b36ef648 Moved OpenGL2 definitions from Uniform header to GL2Extensions 2005-05-12 07:47:43 +00:00
Robert Osfield
ea1dc4dd20 Added missing required includes 2005-05-11 21:06:29 +00:00
Robert Osfield
1f6cdc49e5 Compile fix. 2005-05-11 20:37:22 +00:00
Robert Osfield
9ef29824aa Moved GL2Extensions back out of Program and into its own header file. 2005-05-11 19:59:21 +00:00
Robert Osfield
aa6ea8c047 Completed GLSL support in .ive 2005-05-11 13:37:38 +00:00
Robert Osfield
fb34b22e34 Cleaned up API of BindAttributeLocation, added deletion of shader objects. 2005-05-11 11:41:44 +00:00
Robert Osfield
1afd5e48a7 Added support for PROTECTED and OVERRIDE to uniforms. 2005-05-10 13:56:05 +00:00
Robert Osfield
538ced579e Removed deprecated API in preparation for 0.9.9 release. 2005-05-09 13:09:07 +00:00
Robert Osfield
d1a1b1d95c Added more comprehensive releaseGLObjects(State*=0) throughout Nodes,
Drawables,StateSet, and osgDB::Registry.

Added cleanup_frame() from to osgProducer::OsgCamerGroup to help with proper
clean of OpenGL objects before exit, and modified osgviewer, osghangglider,
osgwindows examples to do the extra frame call to cleanup_frame() before exit.
2005-05-07 20:47:09 +00:00
Robert Osfield
7480d51830 From Mike Weiblen, further work on GLSL support 2005-05-06 09:58:49 +00:00
Robert Osfield
fc585cd33d From Farshid Lashkari, support for non power of two extension. 2005-05-06 09:04:41 +00:00
Robert Osfield
2798d58a41 Added support for osg_FrameNumber, osg_FrameTime, osg_ViewMatrix, osg_InverseViewMatrix
into SceneView, controlled via a setActiveUniforms(.) method.
2005-05-05 12:30:54 +00:00
Robert Osfield
c4e2e85aa1 From Farshid Lashkari, added Texture::Extension support for non power of two extension. 2005-05-05 09:18:03 +00:00
Robert Osfield
f8c855a576 Fix for Tiger build 2005-05-04 11:38:34 +00:00
Robert Osfield
97daa561f4 Added support for lazy state updating of uniforms. 2005-05-03 21:46:47 +00:00
Robert Osfield
b85d4d4e7e Added support for optimization of Uniforms 2005-05-02 10:18:37 +00:00
Robert Osfield
938d13ecc7 Improved the handling of update/event callbacks on Drawable and Geodes 2005-05-02 09:57:58 +00:00
Robert Osfield
03232ec667 Moved osg::Impostor to osgSim::Impostor, as Impostor isn't a core feature. 2005-05-01 19:48:49 +00:00
Robert Osfield
adba6fa559 Added RemoveLoadedProxyNodes pass to Optimizer, set on by default at present. 2005-04-30 15:16:05 +00:00
Robert Osfield
a5fcddc5e5 From Mike Weiblen, Progra/Shader fixes 2005-04-30 07:02:02 +00:00
Robert Osfield
7117ff4bd3 Added support for controlling the frequency of checking for OpenGL errors
via:

        enum CheckForGLErrors
        {
            /** NEVER_CHECK_GL_ERRORS hints that OpenGL need not be checked for, this
                is the fastest option since checking for errors does incurr a small overhead.*/
            NEVER_CHECK_GL_ERRORS,
            /** ONCE_PER_FRAME means that OpenGl errors will be checked for once per
                frame, the overhead is still small, but at least OpenGL errors that are occurring
                will be caught, the reporting isn't fine grained enough for debugging purposes.*/
            ONCE_PER_FRAME,
            /** ONCE_PER_ATTRIBUTE means that OpenGL errors will be checked for after
                every attribute is applied, allow errors to be directly associated with
                particular operations which makes debugging much easier.*/
            ONCE_PER_ATTRIBUTE
        };

        /** Set whether and how often OpenGL errors should be checked for.*/
        void setCheckForGLErrors(CheckForGLErrors check) { _checkGLErrors = check; }

        /** Get whether and how often OpenGL errors should be checked for.*/
        CheckForGLErrors getCheckForGLErrors() const { return _checkGLErrors; }
2005-04-29 20:56:20 +00:00
Robert Osfield
0b34ab9cb7 Added version number #define's 2005-04-28 12:45:55 +00:00
Robert Osfield
a1bda0dab8 Added support for per context extension string.
Note, this required adding a unsigned int context ID to the osg::isGLUExtensionSupported(,)
and osg::isGLExtensionSupported(,) functions.  This may require reimplementation
of end user code to accomodate the new calling convention.
2005-04-26 13:15:27 +00:00
Robert Osfield
3c90a5f694 Added support notification of Drawable parents of StateSet that event/update callbacks have been called. 2005-04-26 09:58:19 +00:00
Robert Osfield
e24cfa0370 Futher work on supporting update and event callbacks in StateSet, Uniform and StateAttribute 2005-04-25 13:37:12 +00:00
Robert Osfield
bc83e63bb4 Futher work on adding event and update callbacks to StateSet, Uniform and StateAttributes 2005-04-25 11:05:02 +00:00
Robert Osfield
193c83cb9c Added ParentList's into StateSet, Uniform and StateAttribute in preparation for
providing update and event handling.
2005-04-24 21:04:54 +00:00
Robert Osfield
f91efb7f31 Added missing bodes of Uniform::operator = and setEvent/UpdateCallback in StateSet. 2005-04-23 10:41:30 +00:00
Robert Osfield
819d2c6c56 Preliminary steps to adding update and event callbacks to StateSet, StateAttribute
and Uniform.
2005-04-22 22:45:39 +00:00
Robert Osfield
2914f7c342 Improved handling of invalid imagery in BufferObject 2005-04-22 15:43:34 +00:00
Robert Osfield
af70cd8801 Removed unusaged methods 2005-04-22 14:40:22 +00:00
Robert Osfield
8b4f9dce60 From Mike Weiblen, added support for samplers and mat4 to .osg 2005-04-22 07:13:50 +00:00
Robert Osfield
e2a85f6bc6 From Brede Johnansen, adding support for EXT, ARB and GL version 1.4 point parameters. 2005-04-20 12:32:43 +00:00
Robert Osfield
88e8477cbf Moved istream/ostream includes out of Vec3f, and reimpleted osg::Matrix*::compare. 2005-04-17 10:41:23 +00:00
Robert Osfield
62994ac4a2 From Tony Horrobin, fix for VS6.0 2005-04-17 09:41:48 +00:00
Robert Osfield
8bf4a98a91 From Marco Jez, added operator >> for Plane and Quat to io_utils, and added
OSG_EXPORT to PerContextProgram.
2005-04-16 17:44:11 +00:00
Robert Osfield
f4be038d46 Moved Plane and Quat << operators into the io_utils headers 2005-04-15 20:59:24 +00:00
Robert Osfield
0503712fe4 Removed osgGL2 from CVS, osgGL2 now can be found on the Community/NodeKits section on the OSG website. 2005-04-15 08:35:06 +00:00
Robert Osfield
678b22ce83 Updated Copyright notices to 1998-2005. 2005-04-14 21:41:28 +00:00
Robert Osfield
869548bafb Uniforms open for business :) 2005-04-14 20:14:53 +00:00
Robert Osfield
e7ce7c0529 Fixed getUniformLocation and getAttribLocation methods 2005-04-14 20:05:16 +00:00
Robert Osfield
086efcdff1 Removed setProgram from osg::StateSet as Program works just fine right now
as a standard osg::StateAttribute and set in a StateSet with setAttribute.
2005-04-14 15:53:28 +00:00
Robert Osfield
d6d764a729 From Terry Welsh, added copy texture support to TextureRectangle 2005-04-13 18:19:38 +00:00
Robert Osfield
0015a31de8 Added basic support for applying uniforms to programs, non lazy state updating
is yet applied though.
2005-04-13 14:12:06 +00:00
Robert Osfield
2e10cffb4d Work in progress on shader language uniform support 2005-04-13 12:00:28 +00:00
Robert Osfield
d268cf46fa Renamed SG_LIBRARY and SG_EXPORT macro's to OSG_LIBRARY and OSG_EXPORT 2005-04-11 17:14:17 +00:00
Robert Osfield
195b63dc65 From Olaf Flebbe, compile fix for Sun. 2005-04-11 15:22:29 +00:00
Robert Osfield
4fec031e6c Moved #include <osg/State> from header into .cpp to clean up build. 2005-04-11 15:17:24 +00:00
Robert Osfield
d0097718e1 Added friend class PerContextProgram; 2005-04-11 08:15:43 +00:00
Robert Osfield
864817d0d0 From Randall Hopper, fixed typo of setRedMask. 2005-04-10 21:26:49 +00:00
Robert Osfield
f46858c49b Moved UByte4 i/ostream support into io_utils. 2005-04-08 14:10:22 +00:00
Robert Osfield
a2974de978 Moved the istream and ostream support from Vec* and Matrix* into a seperate io_utils file. 2005-04-08 09:01:23 +00:00
Robert Osfield
f417974f5b Added iostream operators 2005-04-07 21:28:57 +00:00
Robert Osfield
d006ce627f From Olaf Flebbe, removed supporios BufferObject:: 2005-04-07 20:28:36 +00:00
Robert Osfield
84e8338be1 From Mike Weiblen, "adds sourcefiles for beginnings of .osg fileformat i/o support
> - enhancemens to core GLSL classes to support file i/o"
2005-04-07 20:23:58 +00:00
Robert Osfield
7a27a0bef7 From Marco Jez, improvements to osgIntrospection, and new automatically generated
osgWrappers/osg set.
2005-04-07 20:00:17 +00:00
Don BURNS
5b4482c70d Set PagedLOD::removeExpiredSubgraph() to be virtual 2005-04-07 17:15:48 +00:00
Don BURNS
af3ac699aa Rolled in Olaf's changes for HP-UX build 2005-04-05 19:08:48 +00:00
Robert Osfield
097c8f18f9 Fixed comment 2005-04-04 13:22:24 +00:00
Robert Osfield
aa8dbea11c From Mike Weiblen, updates to Shander Language support 2005-04-04 10:08:15 +00:00
Robert Osfield
60cecb8959 Added State::getActiveUnit and usage of it in the glTexCopyImage*() implementations 2005-03-25 11:07:48 +00:00
Robert Osfield
7883574d28 From Mike Weiblen,
"updates for GLSL core integration:
Code compiles and runs on win32.
Basic functionality of Program and Shader in place.
Program derived from StateAttribute.
Uniform value propagation is not yet functional (in development)
Includes some patches by Nathan Cournia.
includes example testcase to demo use of new classes."
2005-03-24 09:37:45 +00:00
Robert Osfield
2ab78cfe38 From Marco Jez, fixed constness of data return type 2005-03-23 21:00:28 +00:00
Don BURNS
5d10547ac5 Added getCameraByName method to viewer and home(double currentTime) to
MatrixManipulator, UFO, Trackball and ANimation manipulator.
2005-03-20 23:57:17 +00:00
Robert Osfield
b0c36076fb From Marco Jez, added OSGNVEXT_ prefex to StateAttribute enums. 2005-03-18 09:48:09 +00:00
Robert Osfield
f8426a8ad8 Made supports(..) methods use support(const ...) 2005-03-18 02:42:59 +00:00
Robert Osfield
a2e8bc6267 Added support for set/getUniform and set/getProgram into osg::StateSet. 2005-03-11 20:29:21 +00:00
Robert Osfield
a72845cfc4 Sebastien Grignard, fixed getMember methods to properly use const type. 2005-03-07 14:38:43 +00:00
Robert Osfield
5684a130b7 From Alberto Farre, addition of ProxyNode, with support in .osg, .ive and .flt loaders 2005-03-07 14:06:09 +00:00
Robert Osfield
6772a1deb6 From Paul Melis, fixed typo of setFunctionMask. 2005-02-26 21:44:16 +00:00
Robert Osfield
0f61af08bd Added support for new event visitor type into osgGA and osgProducer::Viewer,
and event callback into Drawable.
2005-02-25 14:02:48 +00:00
Robert Osfield
96514b5077 New simplified timer implementation. 2005-02-25 08:38:05 +00:00
Robert Osfield
79833fa704 Added pause, rewind and play support into xine plugin. 2005-02-24 17:07:37 +00:00
Robert Osfield
5fbb1f11cd From Mike Weiblen, adding prelimimnary GL Shader Language support into core OSG lib.
with renaming and reordering by Robert Osfield,
2005-02-24 13:33:35 +00:00
Robert Osfield
164cb8216c Made Referenced::ref() and unref() inline methods. 2005-02-23 12:50:10 +00:00
Robert Osfield
e01990d419 Made the osg::Referenced Mutex be declared as a pointer to a Mutex, with the
Mutex allocated dynamically when required. Added the following methods to
help manage the usage of the mutex:

        void setThreadSafeRefUnref(bool threadSafe);

        bool getThreadSafeRefUnref() const;
2005-02-22 20:25:58 +00:00
Robert Osfield
b40fe170c7 From Igor Kravtchenko, add #define's for OpenGL float internal texture formats. 2005-02-22 10:16:22 +00:00
Robert Osfield
355ee7a785 Put pixel buffer define's into their own block. 2005-02-10 20:14:22 +00:00
Robert Osfield
117c791a3b Added osg::BufferObject and a made a number associated to accomodate this
new class. osg::BufferObject wraps up OpenGL pixel and array buffer objects.
Currently implementation is work in progress.
2005-02-09 10:39:45 +00:00
Robert Osfield
46ce4c3df3 Added the full set of buffer object methods 2005-02-07 17:28:03 +00:00
Robert Osfield
b7bd8075de From, Leandro Motta Barros, Doxygen comments.
Ammendments by Robert Osfield, a few comment rewrites to better reflect API functionality/usage.
2005-02-02 15:08:55 +00:00
Robert Osfield
7be056275b Added red, green, blue and alpha values. 2005-02-01 09:00:32 +00:00
Robert Osfield
c3c3ed8519 Added support for 8 parameters. 2005-02-01 09:00:10 +00:00
Robert Osfield
203133bb3f Added definitation for GL_COMPRESSED_* tokens for case where early OpenGL headers
don't provide them.
2005-01-28 11:01:11 +00:00
Robert Osfield
355650ac1d From Nicolas Brodu, new faster osg::Quat::makeRotate(Vec3d,Vec3d) implmentation.
From Robert Osfield, modes to osg::Quat to keep the original implmentation around
as makeRotate_original(,) and added tests into osgunittest to test the new
methods provide equivilant results to the original implemementation.  The
orignal implementation will be removed once the new method is more widely tested.
2005-01-27 14:39:58 +00:00
Robert Osfield
d0f42c9231 From Chris Hanson, minor tweaks to docs on getDescriptions. 2005-01-27 13:23:46 +00:00
Robert Osfield
7e75997db0 From Leandro Motta Barros, doxygen comments 2005-01-27 13:15:21 +00:00
Robert Osfield
75175ecb48 Changed template<class> instances to template<typename> 2005-01-27 11:18:33 +00:00
Robert Osfield
fd8f62f941 build fix 2005-01-21 19:31:56 +00:00
Robert Osfield
341267d898 Tweaked the #define's of GL_ALPHA_MIN_SGIX and GL_ALPHA_MAX_SGIX to ensure compilation across
OGL drivers.
2005-01-08 10:21:49 +00:00
Robert Osfield
40632c97b0 From Tree, moved GL_ #define's out of osg namespaces 2005-01-07 19:00:40 +00:00
Robert Osfield
e2132cc62a Cleaned up the types. 2005-01-05 17:14:38 +00:00
Robert Osfield
c58f56adb6 From Fredric Mammond, fix for build using full extension checked mechansim 2005-01-05 16:16:52 +00:00
Robert Osfield
fab7c4d715 From Fredric Mammond, added new osg::BlendEquation state attribute wrapping
up glBlendEquation.
2005-01-03 16:39:28 +00:00
Don BURNS
3e96112b82 Added computeBound to osg::Switch, which now checks to see if a child is
enabled before computing its bound.
2004-12-17 20:51:55 +00:00
Robert Osfield
a0ba625cb0 Property API clean to smooth the task of generating wrappers. 2004-12-17 01:06:33 +00:00
Robert Osfield
88234ea31f Removed redundent cont qualification 2004-12-14 03:12:18 +00:00
Robert Osfield
fa4eaae122 From Frederic Marmond, add osg::LogicOp for support for glLogicOp. 2004-12-13 04:54:20 +00:00
Robert Osfield
66396e9452 Teaks to API to make it easier to generate wrappers automatically 2004-12-13 01:07:24 +00:00
Robert Osfield
71a1a96883 Added extra set methods to match get's to make then symetric proporties 2004-12-10 03:37:33 +00:00
Robert Osfield
c3fd271dc4 Addd high level introductory docs for all the libs 2004-11-26 16:01:04 +00:00
Robert Osfield
02ee5ff0cc Altered the path for Cygwin to set the _ticksPerSecond to the correct value. 2004-11-18 09:19:15 +00:00
Robert Osfield
e378e3da8f From Loic Dachary, changes to Timer for PowerPC support, with small re-arrangement
by Robert Osfield to make tick() code block mode readable.
2004-11-16 09:03:24 +00:00
Robert Osfield
84d3746e8a From Tree, fixes for Java bindings 2004-11-15 13:02:43 +00:00
Don BURNS
ff92aef6fe PowerPC fix for Timer by Guillaume Morin 2004-11-13 22:04:26 +00:00
Robert Osfield
91af37573a Added public access to VertexProgram's LocalParamters and added .osg support
for these.
2004-11-08 17:12:36 +00:00
Robert Osfield
72330d33ee Added a clear() into the RefNodePath operator = (NodePath) method. 2004-11-04 20:25:35 +00:00
Robert Osfield
d548d77010 From Tree chagenes required for Java Wrappers 2004-11-01 16:14:53 +00:00
Robert Osfield
fd327f68f6 From Tom Jolley, Added a new enum POINT_ROT_WORLD_Z_AXIS and a new section in computeMatrix for this enum.
With a small tweak from Robert Osfield to set _cacheMode.
2004-10-28 13:26:06 +00:00
Robert Osfield
df9c7e5031 From Tree, fixes for Java bindings 2004-10-25 19:16:57 +00:00
Robert Osfield
b70ff91eaf Changed ABSOLUTE and RELATIVE to ABSOLUTE_RF and RELATIVE_RF to avoid stooppid Win32 #define 2004-10-24 20:04:00 +00:00
Robert Osfield
63e4587a88 Added s/getEventCallback support into osg::Node, and an EVENT_VISITOR
type into NodeVisitor.
2004-10-24 13:51:44 +00:00
Robert Osfield
6821a80e14 Changed the ReferenceFrame enums to be RELEATIVE and ABSOLUTE, and
deprecated the RELATIVE_TO_ABSOLUTE and RELATIVE_TO_PARENTS.
2004-10-22 19:26:45 +00:00
Robert Osfield
93c439ba01 Generalised the osg::ClusterCullingCallback so that it coud be attached
to Node as well as Drawables.

Changed the osgTerrain::DataSet so that it moves the ClusterCullingCallback
up to the Node level.

Added support to the .ive plugin for attaching the ClusterCullingCallback to nodes.
2004-10-21 09:36:34 +00:00
Robert Osfield
2047ac250f From Frank Lichtenheld, compile fix to Linux powerpc build. 2004-10-18 18:59:05 +00:00
Robert Osfield
b79337d7f8 From Bob Kuehne, addition of Vec3f(Vec2f,float) and Vec3d(Vec2d,double)
constructors.
2004-10-18 18:36:40 +00:00
Robert Osfield
8770309da9 Added osgNV enum Types 2004-10-15 10:35:09 +00:00
Robert Osfield
cecaec4ed8 From Sohey Yamamoto, added support for GL_TEXTURE_FILTER_CONTROL/GL_TEXTURE_LOD_BIAS. 2004-10-13 19:52:39 +00:00
Robert Osfield
edb15e17bc Added new getMember() method and TypeMemberPair into StateAttribute and
support for the unsigned int member to be paired with types in osg::StateSet
so that lights, clipplanes and other attributes that have a type group but
then need to differentiate within that group via a member uint.
2004-10-13 11:15:50 +00:00
Robert Osfield
4192ef796b Added CullingSettngs::s/getInheritanceMask() and inheritCullSettings(,) method. 2004-10-12 09:54:03 +00:00
Robert Osfield
de283b315b Changed StaetAttribute::Type so it is an enum list rather than a unsigned int. 2004-10-08 09:18:40 +00:00
Robert Osfield
d77e6a0829 Added new clear, removeAttribute, removeMode, removeTextureAttribute and
removeTextureMode method and deprecated the setToInherit equivilants.
2004-10-07 09:40:03 +00:00
Robert Osfield
976140f1d7 Replaced #ifndef GL_TEXTURE_3D by GL_TEXTRE_BINDING_3D as the former was a copy
and paste error.
2004-10-06 12:02:37 +00:00
Robert Osfield
7e4d34c57a Added :
osg::PagedLOD::s/getDatabasePath() and support in PagedLOD::traverse().
    osgDB::ReaderWriter::Options::s/getDatabasePath()
    osgDB::Input::s/getOptions()
    setting of osgDB::Input::setOptions() in ReaderWriterOSG.cpp
    src/osgPlugins/ive/DataInputStream::s/getOptions()
    setting of src/osgPlugins/ive/DataInputStream::setOptions() in ReaderWriterIVE.cpp
2004-10-06 09:31:34 +00:00
Robert Osfield
9af350eb41 From Lewis Harmon, fixes to the Node and NodeCallback constructors. 2004-10-01 22:05:40 +00:00
Robert Osfield
03d2ecccde Added new setPlanesFromMatrix method 2004-10-01 15:48:00 +00:00
Robert Osfield
a7a6709d05 Added define of GL_TEXTURE_BINDING_3D for systems with OpenGL1.2 compliant
headers
2004-10-01 09:38:21 +00:00
Robert Osfield
d204a087c3 Added proper handling of 3d texture compression 2004-09-30 09:10:29 +00:00
Robert Osfield
a8739f952a Added support for ClipPlane, ClipNode, TexGenNode to .ive 2004-09-29 19:10:00 +00:00
Robert Osfield
e08328a449 Preliminary steps to support for compressed 3D textures. 2004-09-29 10:01:46 +00:00
Robert Osfield
5747773096 From Tree, changes to better support Java binding generation 2004-09-28 09:14:04 +00:00
Robert Osfield
de0e616433 Added new methods into osg::Referenced for controlling the use of thread safe
ref/unref:

        /** Set whether reference counting should be use a mutex to create thread reference counting.*/
        static void setThreadSafeReferenceCounting(bool enableThreadSafeReferenceCounting);

        /** Get whether reference counting is active.*/
        static bool getThreadSafeReferenceCounting();
2004-09-27 14:15:13 +00:00
Robert Osfield
54b45ce3bc Updated to DatabasePager support 2004-09-21 21:33:52 +00:00
Robert Osfield
0d884d66eb Various improvements to database paing. 2004-09-21 17:26:08 +00:00
Robert Osfield
8bce22343b Various improvements to the DatabasePager with the aim to achieve
constant framerates and minimizing memory consumption.
2004-09-18 19:28:45 +00:00
Robert Osfield
9ac9bfa5ae Removed reference to ComputeTransformCallback 2004-09-18 19:27:39 +00:00
Robert Osfield
b25c08bca4 More spelling & top fixes. 2004-09-15 19:10:15 +00:00
Robert Osfield
88e2c1b1df From Geoff Michel, typo and spelling fixes 2004-09-15 19:07:56 +00:00
Robert Osfield
c204628d1a Fix of tabbing and typo 2004-09-13 17:19:05 +00:00
Robert Osfield
4c4be0a750 From Paul Martz, typo and spelling fixes 2004-09-13 16:10:59 +00:00
Robert Osfield
b272fcf803 Fixed comments 2004-09-13 15:17:43 +00:00
Robert Osfield
ee67127279 From Eric Hammil, typo and spelling fixes 2004-09-13 15:14:11 +00:00
Robert Osfield
6b2e17fe14 Made update, cull and draw callbacks virtual to allow custom Drawable's
to there own specific extensions for handling callbacks
2004-09-10 08:26:53 +00:00
Robert Osfield
790da0776a Made the computeLocalToWorld etc method to use const NodePath's parameters. 2004-09-09 15:14:33 +00:00
Robert Osfield
6a48a3ffe7 Added osg::RefNodePath class for handling node paths. 2004-09-09 13:18:45 +00:00
Robert Osfield
bafc126eda From Paul Martz, removed redundent paramaters in clampArray4LEQUAL. 2004-09-07 10:31:30 +00:00
Robert Osfield
767b397534 From Paul Martz, typos and spelling fixes 2004-09-07 10:07:11 +00:00
Robert Osfield
d7d83923f4 Added setConstantColorAsLightDirection & getConstantColorAsLightDirection methods
to make it more convinient to set up DOT3 register combiners.
2004-09-03 15:05:33 +00:00
Robert Osfield
21691f2d56 From Geoff Michel, typo and spelling fixes 2004-09-02 19:10:33 +00:00
Robert Osfield
13f43ec836 Added Sequence back in with correct Permission, and with Geoff Michel's spelling
corrections.
2004-09-02 18:19:38 +00:00
Robert Osfield
d5989faf65 Temporary removal of Sequence to try and get around permissions problem with it. 2004-09-02 18:17:38 +00:00
Robert Osfield
19bf7bb1ce From Eric Sokolsky, add support for recording default values for env vars 2004-09-01 09:48:17 +00:00
Robert Osfield
6483c8f78b From Sondra Iverson, adding of CONSTANT_COLOR and ONE_MINUS_CONSTANT_COLOR options 2004-09-01 08:59:58 +00:00
Robert Osfield
e5cfe0a27a From Marco Jez, addition of new interal texture formats to osg/Texture and Image.cpp 2004-09-01 08:49:48 +00:00
Robert Osfield
a85ea0a8cc From Brede Johhansen, fixed copy and paste bug where in getInverse(..) methods 2004-09-01 08:34:49 +00:00
Robert Osfield
b855987297 From Paul Martz, typos and spelling fixes. 2004-09-01 08:15:36 +00:00
Robert Osfield
32a78e5a16 From Geoff Michel, typo and spelling fixes. 2004-08-31 14:49:33 +00:00
Robert Osfield
e278cc9d4c From Geoff Michel, spelling and typo fixes. 2004-08-31 14:08:12 +00:00
Robert Osfield
3b90a0e8a6 From Sébastien Kuntz, spelling and typo fixes 2004-08-31 13:19:30 +00:00
Robert Osfield
08017daf37 Added rescale of quaternion in Matrix::set(Quat), a copy operation in osg::Quat and
extra tracking options in NodeTrackerManipulator.
2004-08-31 09:20:31 +00:00
Robert Osfield
b2d39d7f5b Added s/getLoopingMode() to ImageStream and MPEG plugin 2004-08-24 12:55:15 +00:00
Robert Osfield
ca61c11134 From David Fries, "I added code to also check the local up vector, but
only if one of the rotation modes is selected, because autoscale isn't
affected by the camera rotations. "
2004-08-17 07:58:32 +00:00
Robert Osfield
cf99c3c9bd Added support in Image::flipVertical for flipping mipmapped imagery
and for flipping compressed imagery.
2004-08-16 20:57:24 +00:00
Robert Osfield
857d8e2435 Added the ability to set the global stateset, as use this RenderStageLighting 2004-08-07 09:42:19 +00:00
Robert Osfield
3579506fa8 Added support for osg::AutoTransform::setAutoRotateMode(AutoRotateMode) deprecating
the previous setAutoRotateToScreen().  Added support for ROTATE_TO_CAMERA mode.

Cleaned up the autotransform demo to use a sensible number of labels
2004-08-06 08:22:58 +00:00
Robert Osfield
c35d5de13a Typo fixes from Geoff Michel 2004-08-06 05:28:51 +00:00
Robert Osfield
e9f4ed87bc From Jay Zuckerman, fixes to AutoTransform so that it includes checking of
previous position value.
2004-08-05 15:15:51 +00:00
Robert Osfield
7eb3f2646e From Norman Vine (with small tweaks by Robert Osfield), build fixes for Cygwin 2004-08-04 08:27:43 +00:00
Robert Osfield
1f0eebb8cd Fixed tabbing 2004-08-03 19:00:55 +00:00
Robert Osfield
7126ca44e9 Better macro support for switching on/off use of mutex 2004-08-03 11:01:39 +00:00
Robert Osfield
6524fe1293 From Norman Vine, fixes for Mingw 2004-08-02 09:11:31 +00:00
Robert Osfield
4d9bd4d825 Build fixes for gcc 3.4.1 support 2004-08-01 08:26:44 +00:00
Robert Osfield
b790fa59a8 Added beginnings of new TrackballManipulator 2004-07-30 15:44:59 +00:00
Robert Osfield
bb5576bef8 Added support s/getImage(uint i) and getNumImages(). 2004-07-27 10:11:45 +00:00
Robert Osfield
8837d667f0 Made the handling of types more consistent 2004-07-26 19:40:02 +00:00
Robert Osfield
31a664a24d Changed value_type back to being a float. 2004-07-25 18:46:20 +00:00
Robert Osfield
cf62f7097d Added ImageStream::quit(bool) for exiting from video threads, and added
clean up to OsgCameGroup to quit movie threads automatically.
2004-07-23 09:15:22 +00:00
Robert Osfield
c9f5749c12 Added preliminary support for thread safety in various delete GLobjects code 2004-07-21 19:16:49 +00:00
Robert Osfield
f634026034 Removed stop method, as it overlaps the pause method. 2004-07-21 19:00:48 +00:00
Robert Osfield
aa833acfd3 Added support for releasing GLObjects, and renamed DisplayListVisitor the
GLObjectVisitor to better fit its function, and added support for releasing
objects as well as compiling them.
2004-07-20 05:37:59 +00:00
Robert Osfield
d36e302573 Added OpenThreads mutex to protect ref()/unref(). 2004-07-20 05:34:02 +00:00
Robert Osfield
ba295ccab7 Added a more flexible variable on the textured quad generation function 2004-07-12 01:01:00 +00:00
Robert Osfield
363d13d7ce Added CLUSTER_CULLING mask to CullSettings, and modified the ClusterCullingCallback
to use the mask to see if cluster culling is enabled or disabled.
2004-07-11 21:46:23 +00:00
Robert Osfield
3f4b8e9034 Fixed cluster culling. 2004-07-09 20:58:43 +00:00
Robert Osfield
7ef8b14bf0 VS.NET Warning fixes from Stephane 2004-07-09 15:41:50 +00:00
Robert Osfield
89a4dcbbd3 Added GL_TEXTURE_DEPTH #define for Win32 build 2004-07-06 06:13:34 +00:00
Robert Osfield
cce00c475b Added suppor for copying mipmaps of compressed textures 2004-07-05 21:09:30 +00:00
Robert Osfield
2ce192f0ae Change the light in LightSource from a generic osg::StateAttribute to
a osg::Light.
2004-07-02 14:46:24 +00:00
Robert Osfield
4ba3f7cad3 Added setFunction and setReferenceValue method 2004-07-02 14:45:36 +00:00
Robert Osfield
0c38189018 Moved the radius parameter from PageLOD into LOD. 2004-07-01 13:53:30 +00:00
Robert Osfield
a8ee967f14 Added support for using pixel size control of LOD levels. 2004-06-30 19:07:05 +00:00
Robert Osfield
888d9e2a25 From Pavel Moloshtan, added support for storing primitive sets in VBO's 2004-06-29 15:04:38 +00:00
Robert Osfield
20de9666dd From Terry Welsh, added support for reading and writing osg::FragmentProgram
local parameters.
2004-06-28 10:00:21 +00:00
Robert Osfield
06aa06d686 Added support for setting texture units in the new TexGenNode. 2004-06-17 14:02:15 +00:00
Robert Osfield
85344ebdaf Fixed deprecated #idef 2004-06-14 20:14:54 +00:00
Robert Osfield
3eea9dc1a7 Fixed #ifdef USE_DEPRECATED_API 2004-06-14 20:11:28 +00:00
Robert Osfield
2d35b3cc27 Changed Billboard::g/setPos(..) to g/setPosition(..). 2004-06-14 19:34:43 +00:00
Robert Osfield
7367c1cee5 Added extra constructor to make it more convinient to create AlphaFunc. 2004-06-14 19:30:20 +00:00
Robert Osfield
33bc3820ac Tweaked comments. 2004-06-14 19:20:07 +00:00
Robert Osfield
1e2aae1634 Removed old UserData comment which was non longer relevant. 2004-06-14 19:17:32 +00:00
Robert Osfield
78d075eb24 Added new TexGenNode class for positioning tex gens. 2004-06-14 19:11:04 +00:00
Robert Osfield
f75a7c6294 Added CoordinateSystemNode::set(const CoordinateSystemNode&) method to conviniently
set up a coordindate system.
2004-06-09 15:11:27 +00:00
Robert Osfield
a8ce6b01d6 Added CoordinateSystem::s/getFormat(). 2004-06-09 15:00:03 +00:00
Robert Osfield
893eaaa3f4 Cleaned up float vs double types in Vec*d and Vec2f classes 2004-06-09 13:06:12 +00:00
Robert Osfield
eec378a885 Moved the osg::ClusterCullingCallback into into own header and source file. 2004-06-07 15:05:22 +00:00
Robert Osfield
1f4417ab2b Fixed the Vec*d class so there have value_type set to double. 2004-06-04 16:32:00 +00:00
Robert Osfield
bfd1286b25 Add clamping to 0..1 bounds for each of the r,g,b,a components in
the CubeMapGenerator::set_pixel() method.
2004-06-04 11:35:13 +00:00
Robert Osfield
fee33001fd Fixed warnigs on VS. 2004-05-20 13:54:53 +00:00
Robert Osfield
eba53406d4 Fixed typo of Vec3f to Vec2f 2004-05-20 10:42:05 +00:00
Robert Osfield
f02c75f5ea Added Vec2d, Vec3d and Vec4d classes, and remapped Vec2, Vec3 and Vec4 to
Vec2f, Vec3f an Vec4f respectively, with typedef's to the from Vec* to Vec*f.
2004-05-20 10:15:48 +00:00
Robert Osfield
17214df1fc Added GL_SCALE_NORMAL define to get round compilation against GL1.1 headers 2004-05-19 09:17:36 +00:00
Robert Osfield
9ff7933d96 Added GL_RESCALE_NORMAL to allow compilation with GL1.1 headers 2004-05-19 09:12:52 +00:00
Robert Osfield
71150e96dc From Ruben, fix for gcc 3.4 build 2004-05-17 10:21:30 +00:00
Don BURNS
4ebb2ddd5a Ooops... previous fix didn't work, corrected. 2004-05-08 18:41:18 +00:00
Don BURNS
3b92e02f29 Fixed a define for __sgi. Irix does not allow dlsym(0L, ...) without
calling dlopen() first, just like __sun
2004-05-08 18:37:26 +00:00
Robert Osfield
0307463746 Added GL_TEXTURE_RECTANGLE define 2004-05-07 12:40:21 +00:00
Robert Osfield
48dad727b1 From Bob Kuehne, added getting of the max number of texture units in
the Texture::Extension object
2004-05-07 11:28:55 +00:00
Robert Osfield
eedfe44a1c Fixed computeLocalTransform to generate correct orientation of local coordinate
frame.
2004-05-06 10:54:58 +00:00
Robert Osfield
8bdb68ef97 Added support for reading environmental varables in CullSettings. 2004-05-05 09:16:12 +00:00
Robert Osfield
b7746ff56e Added support for automatically finding CoordinateSystemNode's in the
scene graph and then using them to set up the CoordinateFrame used
by the camera manipulators.
2004-05-03 12:04:25 +00:00
Robert Osfield
fced94fab3 Added support for decoration of the osgTerrain::DataSet generated databases
with a CoordinateSystemNode which reflect the coordinate system of the
database.

Added support for reading and writing CoordianteSystemNode into the .osg
and .ive formats.
2004-05-02 21:50:15 +00:00
Robert Osfield
5836d60fbd Added osg::CullSettings class as a way of collecting all the various
settings related to the cull traversal in one place, so we can keep APIs
for settings these values more consistent.
2004-04-30 15:35:31 +00:00
Robert Osfield
36cd372847 Added osg::CoordinateSystemNode 2004-04-29 22:16:50 +00:00
Robert Osfield
017983429b Added getBoundingBox() method to osg::Geode to provide a closer bound
of the bounding volume of a Geode to be tracked.  This sits alongside
the existing getBound() method which returns a bounding sphere.
2004-04-22 10:47:12 +00:00
Robert Osfield
715cdcf5e2 From Don Tidrow, changed "setupGLExtenions()" to "setupGLExtensions()" in Texture and
Texture.cpp
2004-04-16 22:50:41 +00:00
Robert Osfield
97ef4985f7 From Eric Wing, clean ups for OSX support. 2004-04-11 21:21:38 +00:00
Robert Osfield
e44176a7aa Fixed the handling begin()/vertex()/end() sequences in TriangleIndexFunctor. 2004-03-29 12:28:40 +00:00
Robert Osfield
aa52005b87 Added empty() method to Geometry to facilitate tests for removing empty
geometry from the scene graph.

Added removal of empty geometry leaves from within the RemoveEmptyNodeVisitor
2004-03-29 10:24:16 +00:00
Robert Osfield
c46855976c Added empty() method as a convinience method for setting checking whether
an animation path contains any control points
2004-03-26 10:48:29 +00:00
Robert Osfield
02f9ce48bc Added ArgumentParser::Parameter class to make the argument parsing much more
flexible, and to simplifying the API.  The read(,,,) methods now take
Parameter objects as arguments, and this Parameter adapt what ever basic
type is passed in, so is able to transparently handle float, double, int,
unsigned int & strings.
2004-03-19 22:03:09 +00:00
Robert Osfield
28214337a3 Moved the LineSegment destructor from the header to the source to avoid
compilation problems under MingW.
2004-03-19 09:18:21 +00:00
Robert Osfield
86dbbb2874 Added PrimitiveIndexFunctor for better support of TriangleIndexFunctor 2004-03-14 21:54:17 +00:00
Robert Osfield
28759baa98 From Marco Jez, added support NVidia extension to imager formats. 2004-03-14 15:08:12 +00:00
Robert Osfield
9f6383f5dd Added TextureRectangle(Image*) contructor. 2004-03-09 14:59:33 +00:00
Robert Osfield
a3d99d88ff Added float s, float t parameters to createTexturedGeometry function 2004-03-09 14:58:50 +00:00
Robert Osfield
8b47c9c85d Preliminary work on general support of video textures. 2004-03-09 09:42:07 +00:00
Robert Osfield
358743f999 Added support for APPLE_client_storage of textures. 2004-03-08 17:09:58 +00:00
Robert Osfield
136db7b63a Clean up of headers. 2004-03-08 11:53:12 +00:00
Robert Osfield
bd37f999c4 From Bob Kuehne, change on __DARWIN_OSX__ define to __APPLE__ 2004-03-08 11:02:05 +00:00
Robert Osfield
ccefa05523 Clean up of headers. 2004-03-07 14:21:11 +00:00
Robert Osfield
c8b8a81052 Changed StateAttribute::getAssociatedModes(std::vector<GLMode>&) across
to StateAttribute::getModeUsage(StateAttribute::ModeUsage&).
2004-03-03 15:38:22 +00:00
Robert Osfield
4aa7afedf3 Removed include <iostream> where possible, replacing with istream or ostream and changing
std::cout/cerr to osg::notify().
2004-03-03 13:27:21 +00:00
Robert Osfield
f8f1456654 From Ruben, addition of osg::PointSprite and osgpointsprite example. 2004-03-02 22:36:11 +00:00
Robert Osfield
e2469aece9 From David Jung, added support for osg::Capsule shape 2004-03-02 20:33:00 +00:00
Robert Osfield
1b7b65389e From Brad Christiansen: added _matrixDirty=true to AutoTransform::setPosition(..)
method.  From Robert Osfield, probagated this change to other AutoTransform set
methods.
2004-03-02 15:27:59 +00:00
Robert Osfield
8a1c39bffb Fixed warning message 2004-03-02 15:26:31 +00:00
Robert Osfield
ac812539d8 Added scale parameter into PositionAttitudeTransform.
Added pivotPoint parameter into AnimationPathCallack.
2004-02-22 11:58:44 +00:00
Robert Osfield
d2491f6750 Added AnimationPathCallback::s/getTimeOffset and s/getTimeMultiplier() methods. 2004-02-21 16:56:23 +00:00
Robert Osfield
a6541a27bf Added missing _pause(false) into AnimationPathCallback default contructor. 2004-02-20 20:47:35 +00:00
Robert Osfield
a992676a98 Added missing initialization in the AnimationPathCallback constructor. 2004-02-20 20:10:51 +00:00
Robert Osfield
ebbf92e43c Added Material::operator = 2004-02-20 11:51:14 +00:00
Robert Osfield
eca2fc2837 Improved osgSim::SphereSegmenet's handling of transparancy. 2004-02-12 01:15:37 +00:00
Robert Osfield
61cb27806f From Brad Christiansen, fix to enable AutoTransform to keep track of window
size/perspective changes
2004-02-11 10:19:52 +00:00
Robert Osfield
33201a8f25 Added new TriangleIndexFunctor. 2004-02-09 10:14:06 +00:00
Robert Osfield
f5e2f7c731 Added atan2f to the list of #define's into include/osg/Math. 2004-02-02 08:55:17 +00:00
Robert Osfield
d83fa3fca5 Added AnimationPathCallback::getAnimationTime() method 2004-01-31 11:34:28 +00:00
Robert Osfield
268096be69 Added osg:: infront of State in Draw callback to make the callback work
when copy and pasting it in user code.
2004-01-30 21:10:05 +00:00
Robert Osfield
475c583975 From Pavel Moloshtan, add support to osg::Texture files for GL_ARB_shadow_ambinet support 2004-01-29 11:16:49 +00:00
Robert Osfield
635f302a2a Added support for osg::Texture::setBorderWidth(). 2004-01-27 21:29:58 +00:00
Robert Osfield
6700faccf4 Added operator = implementations to template classes. 2004-01-27 14:46:29 +00:00
Robert Osfield
635cf7f7c5 Made getLookAt() etc methods const 2004-01-23 16:09:56 +00:00
Robert Osfield
edce2211fa From Romano Magacho, fixes to handle the subloading from Image when the
internal format changes requiring a rebuild of the texture object.
2004-01-23 13:25:45 +00:00
Robert Osfield
b9f032bbb5 Updates for improvements to osgdem, such as adding support for skirt
and border into osg::HeightField, handling of computation of neigherbouring
tiles in osgdem's DestinationGraph.
2004-01-18 21:59:20 +00:00
Robert Osfield
6ff3f430b0 Clean ups of floats & .0f's 2004-01-14 15:14:20 +00:00
Robert Osfield
72b8e5797c Fixed for Win32 build 2004-01-13 09:47:31 +00:00
Robert Osfield
4765c8744d Introduce new Matrix::invert() implementation from Ravi Mathur, with tweaks
by Robert Osfield.
2004-01-12 14:22:18 +00:00
Robert Osfield
c3b888c862 Fixed compile warning 2004-01-12 14:21:26 +00:00
Robert Osfield
b89ec5dcf9 Changed of _firstTime intial values of 0 to DBL_MAX. 2004-01-12 13:53:04 +00:00
Robert Osfield
8747b5161a Standardised on using value_type in most methods in Matrixd & Matrixf interfaces
and Matrix_implementation.cpp.
2004-01-09 20:33:23 +00:00
Robert Osfield
6bdd84e3b0 Made the default settings of Quat 0,0,0,1 to represent a zero rotation. 2004-01-08 21:04:42 +00:00
Robert Osfield
cace776940 Moaved PagedLOD::PerRangeData implementaton into .cpp and add missing
return *this to copy operator.
2004-01-07 08:39:33 +00:00
Robert Osfield
413064fc6e Added support for priority offset and scale into PagedLOD. 2004-01-05 20:45:28 +00:00
Robert Osfield
d25b682269 Fixed osgFX::Validator::compare(..) so that it checked for the correct
StateAttribute type before comparing member variables.

Fixed docs typo in Material
2004-01-04 12:37:18 +00:00
Robert Osfield
458e10c796 Fixed getFogCoord methods 2004-01-02 20:44:18 +00:00
Robert Osfield
30bafd8867 Added Mode parameter to constructor. 2003-12-20 14:19:09 +00:00
Robert Osfield
b1945b865e Added swap bytes methods. 2003-12-19 22:34:18 +00:00
Robert Osfield
d99e7a2d00 Changed inline docs for readPixels to say "read pixels from current frame buffer" 2003-12-18 20:53:23 +00:00
Robert Osfield
7f76c66a00 Added definition of GL_DEPTH_TEXTURE_MODE_ARB 2003-12-18 16:15:58 +00:00
Robert Osfield
3eef331f2a Fixed s/getCreateBackFace(bool on) methds so that use used the correct variable. 2003-12-18 10:57:57 +00:00
Robert Osfield
8fefec9f47 From Pavel Moloshtan, added GL_ARB_shadow_support to osg::Texture. 2003-12-17 19:26:16 +00:00
Robert Osfield
1e361017c8 From Pavel Molishtan, Fixed comparision of _t plane. 2003-12-17 17:05:20 +00:00
Robert Osfield
2e9676f2cb Put the ordering of the callbacks so that the update callback is first,
then cull then draw.  Added missing copy of update callback into copy
constructor.
2003-12-16 08:56:49 +00:00
Robert Osfield
5295d68fd3 Added _maximumNumberOfActiveOccluders variable to CollectOccludersVisitor(), to
limit the maximum number of occluders used in the cull traversal, default is
now 10.

Added set/getCollectOccluderVisitor() method into SceneView to allow control
of the the settings of the CollectOccluderVisitor.
2003-12-11 16:46:45 +00:00
Robert Osfield
9780a7cbd6 Removed osg::Transform::ComputeTransformCallback from osg::Transform.
Updated various dependant files to reimplemt callbacks as Transform subclasses.
2003-12-09 14:07:44 +00:00
Robert Osfield
1baffa3a77 Addition of the following methods:
/** Set the object-space reference radius of the volume enclosed by the PagedLOD.
          * Used to detmine the bounding sphere of the PagedLOD in the absense of any children.*/
        inline void setRadius(float radius) { _radius = radius; }

        /** Get the object-space radius of the volume enclosed by the PagedLOD.*/
        inline float getRadius() const { return _radius; }


        /** Set the number of children that the PagedLOD must keep around, even if thay are older than their expiry time.*/
        inline void setNumChildrenThatCannotBeExpired(unsigned int num) { _numChildrenThatCannotBeExpired = num; }

        /** Get the number of children that the PagedLOD must keep around, even if thay are older than their expiry time.*/
        unsigned int getNumChildrenThatCannotBeExpired() const { return _numChildrenThatCannotBeExpired; }
2003-12-09 12:08:27 +00:00
Robert Osfield
6d5eb79804 Addition of Mode mode=MODULATE constructor. 2003-12-09 12:05:50 +00:00
Robert Osfield
393f1580c8 From Pavel Moloshtan, extension support for ARB_occlusion_querry 2003-12-09 11:20:44 +00:00
Robert Osfield
db66abd6d6 Implemented duplicate removal code into TriStripVisitor and added an
extra pass to doing tri stripping in the osgUtil::Optimzer.

Added validity checks into osg::TexEnvCombine to catch eronous enumarant values.

Improved the efficient of CullingSet's handling of new transforms.

Added a copy shared subgraphs and subdivision code into osgUtil::Optimizer.
2003-12-03 21:45:32 +00:00
Robert Osfield
cdb6f9a1df Made removedExpiredChildren() virtual. 2003-12-03 21:28:42 +00:00
Robert Osfield
e7f9a51f0f Updates to osgdem + BoundingBox to support graph iterators 2003-11-27 15:13:55 +00:00
Robert Osfield
31c5528ffb Moved osg::DOFTransform to osgSim::DOFTransform.
Fixed crash associated with .osg files which contain empty description fields.

From Sondra Inverson, added support to .ive plugin for osgSim::DOFTransform.
2003-11-25 14:11:05 +00:00
Robert Osfield
9c311b4077 Added intersect method. 2003-11-25 10:56:42 +00:00
Robert Osfield
d82b3d0105 Added read(string,float,float,float,float) method 2003-11-25 10:56:12 +00:00
Robert Osfield
62c955fa19 Added the missing insertChild(index,child) and insertChild(index,child,value) into
osg::Switch.
2003-11-20 12:03:51 +00:00
Robert Osfield
8f2a688eff Added TextureObjectManager constructor. 2003-11-04 22:00:16 +00:00
Robert Osfield
54a8ea33ce Added support to slideshow3D for -s commandline option allow the size of
the display to be specified.

Also implementaited some code for display position and speed info in
osgProducer::Viewer, not fully implemented yet.
2003-11-04 16:38:10 +00:00
Robert Osfield
bc7622149d Updated to slideshow3D to support animation + pausing of animation.
Updated associated osg/osgUtil classes that provide animation pausing.
2003-11-03 23:13:31 +00:00
Robert Osfield
fd016af34b Added support for 565 textures to osgbluemarble.
Added a osg::Image::scaleImage() version which allows the datatype to be varied.
2003-10-29 23:10:11 +00:00
Robert Osfield
f1c4dc3b0d Updates for osgdem. Including new read/writeHeightField() methods. 2003-10-29 11:11:17 +00:00
Robert Osfield
eb4ee3afad *** empty log message *** 2003-10-27 16:07:21 +00:00
Robert Osfield
8bb2ca48b7 Made = opeator const. 2003-10-17 10:26:31 +00:00
Robert Osfield
fad832425f Improvements to DatabasePager 2003-10-10 19:25:14 +00:00
Robert Osfield
5d35daa970 Udates to Drawable + IVE plugin with support for new ClusterCullingCallack.
Improvement to osgbluemarble.
2003-10-10 12:54:21 +00:00
Robert Osfield
1a6dc82d32 Made the Drawable::*Callback derive from osg::Object so that they can be
saved to .osg properly.

Added osg::ClusterCullingCallback to Drawable header/source.  Not complete yet,
but will enable drawables to culled is they are facing away from the eye point.
2003-10-08 21:29:45 +00:00
Robert Osfield
4700b8902c Introduced new DisplaySettings::set/getDisplayType() and environemtal variables
to and command line arguments to set it.

Added support for using the DisplaySettings::getDisplayType() to detect use
of a Head Mounted Display when doing stereo so that the asymtric frustum can
be switched off.
2003-10-01 15:56:52 +00:00
Robert Osfield
e693f148cb Made osg::Quat support either float or double internal representation, defaulting to double.
Generalised the osgDB::Field so that its getFloat() method can be used with either doubles or
floats governed by the type passed in - this helps support either float/double
Quat and Matrix classes seemlessly.
2003-09-29 13:35:02 +00:00
Robert Osfield
7d69f8e193 Added getPerspective() method to Matrix* and SceneView 2003-09-29 13:14:34 +00:00
Robert Osfield
da8ef894c1 Added equals operator to CUllingSet.
Update AUTHORS file.

Change tabs to 4 spaces in ive/TextureCubeMap.cpp
2003-09-28 10:15:10 +00:00
Robert Osfield
5027d831c0 Fixed nameing of getAllocationMode() 2003-09-28 09:23:45 +00:00
Robert Osfield
f8df9991b2 Improves to CullStack.
From M.Grngr. options support for f=switching off internal imagery in .ive files
2003-09-26 11:20:43 +00:00
Robert Osfield
7fb9f6be4b Added the beginnings of a new osgforest example.
Added support into osg::TriangleFunctor for specifying whether the vertices
being generates are temporary or not.
2003-09-25 21:54:33 +00:00
Robert Osfield
2812c50329 Improved the Geometry::verifyBinding() and computeCorrectBindingsAndArraySizes()
methods to check all atributes and to report warnigns when errors are detected.

Added a CheckGeomtryVisitor to osgUtil::Optimizer to detect eroneous Geometry
before rendering.
2003-09-24 15:54:22 +00:00
Robert Osfield
c2b02608d1 Renamed instance of variables called format to pixelFormat to make a
clearer distinction between pixelFormat and internalTextureFormat.
2003-09-22 09:13:22 +00:00
Robert Osfield
d45fcb5613 From Alberto Farre, added support for GL_EXT_blend_color, GL_ARB_multisample,
GL_NV_multisample_filter_hint extension in the form of osg::BlendColor and
osg::Multisample state attribute classes.
2003-09-17 12:04:48 +00:00
Robert Osfield
cec0b35cd4 Fixes for .osg output of UByte4 values, and added missing template contructor
to DrawElementsUShort.
2003-09-16 19:54:57 +00:00
Robert Osfield
41a07127fe Added applyProjectionMatrix(0); & applyModelViewMatrix(0); into
osg::State::popAllStateSets(), removed some debugging output.
2003-09-10 23:18:52 +00:00
Robert Osfield
69c4e87bb7 Added osg::State::popAllStateSets() method to pop all remain StateSet's off
the state stack, thus readying the state object to recieve a new frame.

Removed the state.reset() call in osgUtil::SceneView::cull() as this was
causing problems with stats producing inheritance of state when toggling
stats on.
2003-09-10 21:22:47 +00:00
Robert Osfield
6c22afa51c Fixes for osgFX. 2003-09-10 12:38:28 +00:00
Robert Osfield
b165fc9b4d Cleaned up handling of vertex arrays in osg::Geometry.
Added support for vertex attribute arrays in .osg and .ive.
2003-09-09 22:18:35 +00:00
Robert Osfield
33b03f7ac3 Updated docs for release.
Added OSG_USE_DOUBLE_MARTRICES define into include/osg/Matrix to make it more
convinient to switch between single and double matrices.
2003-09-09 08:56:51 +00:00
Robert Osfield
3f042d2f1b Updated NEWS/AUTHORS + html docs for release. 2003-09-08 10:51:14 +00:00
Robert Osfield
792bba05b9 Added new Matrixf and Matrixd implementations.
Made Matrix be a typedef to either Matrixf or Matrixd.  Defaults to Matrixf.

Converted the osgGA::MatrixManipulators and osgProducer::Viewer/OsgCameraGroup
across to using exclusively Matrixd for internal computations and passing betwen
Manipulators, Producer and SceneView. Note, SceneView still uses Matrix internally
so will depend on what is set as the default in include/osg/Matrix.

Added the ability to osgProducer::setDone/getDone(), kept done() as the
method that the viewer main loop uses for detecting the exit condition.
2003-09-05 22:35:34 +00:00
Robert Osfield
a2834d74d2 Added set and get methods for Matrixd and Matrixf. 2003-09-05 20:52:36 +00:00
Robert Osfield
5b93250eb0 Added support for Matrixd and Matrixf implementations, with the default
Matrix typedef's to either Matrixd or Matrixf.
2003-09-05 20:48:42 +00:00
Robert Osfield
f8107a39b9 Build Fixes for IRIX. 2003-09-04 08:50:06 +00:00
Robert Osfield
bd44cfcfd8 Added a Matrix::value_type typedef'd trait into osg::Matrix, defaulting its
value to float, and converted the internal code across to use value_type.  This
allows Matrix to be converted to use double's simply by change the definition
of value_type.  Added Matrix::glLoadlMatrix and Matrix::glMultMatrix() to
help encapsulate the changes between float and double matrix usage.

Updated code that uses Matrix so it doesn't assume float or double matrices.
2003-09-03 10:47:25 +00:00
Robert Osfield
e530912744 Made Matrix a typedef to Matrixf, and converted the old Matrix to Matrixf, as
part of prep for supporting both Matrixf (float) and Matrixd (double).

Added osg::Matrixf::glLoadMatrix() and osg::Matrixf::glMultiMatrix() methods
and changed corresponding usage of glLoad/MultMatrixf() calls across to use these
methods. Again prep for support Matrixd.

Fixes for VisualStudio 6.0 compile.
2003-09-02 17:19:18 +00:00
Robert Osfield
0ed56936ce Removed suplerfluous inline from setInitialViewMatrix(). 2003-08-25 13:31:31 +00:00
Robert Osfield
bd798a6c4e Added getInitialInverseViewMatrix() to osg::State. 2003-08-25 13:06:15 +00:00
Robert Osfield
02561a96c7 Compile/Warnings fixes. 2003-08-21 14:26:40 +00:00
Robert Osfield
18abc3aff7 Renamed instances of Click to Tick for consistency. 2003-08-20 12:51:40 +00:00
Robert Osfield
1c3b2b2554 Standardised the culling flags between CullingSet and CullStack, and
made ENABLE_ALL_CULLING enable all culling including the near and far plane.
DEFAULT_CULLING is now used for the default as uses the same original
values as ENABLE_ALL_CULLING once did - view frustum culling with near and
far culling. SceneView now uses DEFAULT_CULLING.
2003-08-20 12:50:54 +00:00
Robert Osfield
bca7e4e73b Added osg::setGLExtensionDisableString && osg::getGLExtensionDisableString()
functions the GLExtensions file, and made the isGLExtensionSupported() function
use the extension disable string when extension are querried.
2003-08-20 10:38:54 +00:00
Robert Osfield
0685c2a852 Added applyTexImage_subload() implemention into TextureRectangle class
to provide automatic support for texture subloading.
2003-08-18 19:36:50 +00:00
Robert Osfield
c334279935 Changed private to protected to allow Timer to be subclassed more easily. 2003-08-18 15:14:09 +00:00
Robert Osfield
ee0cce1679 Added getSecondsPerClick() method to Timer. 2003-08-18 15:12:04 +00:00
Robert Osfield
8c65920c1f Fixes for Java build. 2003-08-18 09:24:17 +00:00
Robert Osfield
4b7bde1440 Removed the deprecated NodeVisitor::getLocalToWorld/WorldToLocal methods as
this are replaced by the osg::computeLocalToWorld/WorldToLocal() functions
found in osg/Transform.

Made the ReleaseTextureAndDisplayListsVisitor a public nested class of
osgDB::DatabasePager to allow it to be used in the TXP plugin, and added
usage of this visitor to the TXP plugin to make sure that textures and
display lists are released during the update thread.
2003-08-14 00:05:34 +00:00
Robert Osfield
ef4535a2a4 Added s/getFastPathHint(). 2003-08-09 00:46:48 +00:00
Robert Osfield
a11395feec Added missing copy ops in the copy constructor.
Added computeInternalOptimziedGeometry() and associated methods to Geometry
to support alternate versions of a geometry to be used to optimize rendering,
such as flattening indexed attributes to straight attribute arrays.
2003-08-08 00:21:30 +00:00
Robert Osfield
ca3f824410 Added convience constructor. 2003-08-08 00:19:06 +00:00
Robert Osfield
8bd3e9f1b2 From Romano José Magacho da Silva, extension checking for NV_occlusion_query extension. 2003-07-23 20:53:53 +00:00
Robert Osfield
27c4dc0920 From Sean, fix for Sun windows extension checking. 2003-07-23 20:50:56 +00:00
Robert Osfield
2ce08d8088 Warning fixes from Gideon May. 2003-07-23 11:45:37 +00:00
Robert Osfield
ee30f2e30c Added support for osg::State::s/getInitialViewMatrix();
Added slideshow3D examples to the runexamples.bat.

Fixed DatabasePager to work with the latest OpenThreads.
2003-07-22 21:03:59 +00:00
Robert Osfield
23fc1900ce From Romano Jose Magacho da Silva, added osg:FragmentProgram.
From Robert, add .osg support for FragmentProgram.
2003-07-17 06:43:15 +00:00
Robert Osfield
2a142c096a Added setProjectionMatrix*(), setViewMatrix*() and get*() methods to osgUtil::SceneView. 2003-07-16 22:15:28 +00:00
Robert Osfield
a4b29996fd Added osg::Matrix::getOtho,getFrustum and getLookAt() methods.
Added test for new matrix methods into unit tests example, but these really
should go in their own lib...
2003-07-16 20:14:48 +00:00
Robert Osfield
82008d5ecd Updates to the flush rendering objects function calls to allow for
managment of amount of time available to do gl delete's.  This control is
required for constant frame rate applications.
2003-07-15 21:19:03 +00:00
Robert Osfield
47965884e9 Moved PROGRAMOBJECT definition into StateAttribute. 2003-07-15 16:22:29 +00:00
Robert Osfield
1998bdef86 Moved osg::Statistics to osgUtil::Statistics and merged addition to it
fro Pavel Moloshtan.
2003-07-15 13:46:19 +00:00
Robert Osfield
953ac782ac From Gideon May, added
typedef T element_type;

To ref_ptr<> to make it compatible with the boost ref_ptr<> implemenations.
2003-07-15 08:17:54 +00:00
Robert Osfield
1b9d7d458a Added support for texture object manager, which provides an automatic mechansim
for reusing deleted textures.
2003-07-14 14:42:10 +00:00
Don BURNS
c60b5b6522 included <sys/types.h> for SGI compilation of Timer header file 2003-07-11 18:46:56 +00:00
Robert Osfield
606daca904 Added default constructor implemention to LOD and PagedLOD.
Added verbose messages to DatabasePager.
2003-07-10 14:53:07 +00:00
Robert Osfield
9c5f84e99e From Eric Sokolosky, insertChild(). 2003-07-10 13:11:25 +00:00
Robert Osfield
5aa47a77c2 Improvements to the DatabasePager and PagedLOD class adding support for
deleting expuired children in the database thread.
2003-07-09 14:55:39 +00:00
Robert Osfield
c2eabe1d4b Added osg::PagedLOD and osgProducer::DatabasePager class, and linked up osgProducer::Viewer
to manage the pager.
2003-07-08 14:44:00 +00:00
Robert Osfield
b5442ac835 Added support for the ARB_vertex_buffer_object into osg::Geometry. 2003-06-29 21:41:57 +00:00
Robert Osfield
d70ab592ed Additions since the CVS back up was made. 2003-06-24 21:57:13 +00:00
Don BURNS
15f88f35b2 *** empty log message *** 2003-06-24 15:40:09 +00:00
Robert Osfield
b444cc1ab3 Added support for scaling the projection in vertical and horizontal split stereo
modes.
2003-05-27 11:03:49 +00:00
Robert Osfield
4a804ebf32 Reverted recent changes so the set(Matrix&) method. 2003-05-27 11:02:45 +00:00
Robert Osfield
9ab1c960b6 Moved the GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB into its own #ifndef block
to help with OSX support.
2003-05-26 09:29:59 +00:00
Robert Osfield
fb55f6ffbc Improved the handling of scaled matrices in the Quat::set(Matrix&) method. 2003-05-21 21:32:56 +00:00
Robert Osfield
4a6bdad3e1 Removed osg::GeoSet for core osg lib and osgPlugin.
Commented out OpenDX plugin as its still based on GeoSet.

Added support for loading and converting GeoSet into the osgconv example.
2003-05-21 12:15:45 +00:00
Robert Osfield
ab1b199da8 Removed the now redundent osg::Camera. 2003-05-20 08:09:36 +00:00
Robert Osfield
57af40ee95 Updates to the handling of vertex attributes. 2003-05-09 13:07:06 +00:00
Robert Osfield
173a09fb32 Added UserData to NodeVisitor. 2003-05-07 15:26:08 +00:00
Robert Osfield
cda2c90315 From Romano José Magacho da Silva, support for vertex attributes in vertex program. 2003-05-07 13:13:13 +00:00
Robert Osfield
fa0333b6fe Aded extra constructors to BlendFunc and Depth to help set them up convieniently.
Added a background quad to osghud.
2003-05-06 18:04:27 +00:00
Robert Osfield
06054d9520 Added support for multibuffering of tex coordinates. 2003-05-06 13:13:31 +00:00
Robert Osfield
895a722842 Addd support for maximum screen text size into osgText when auto scale to
screen is active.

Added osgautotransform demo.
2003-05-01 21:06:18 +00:00
Robert Osfield
0ab467483f Added support for automatic scaling of text to screen coords. Optimized
the text implementation to provide better speed, especially by using the
alignement to screen option.

Deprecated the Text::setFontSize(,) method, which is now being replaced
by setFontResolution(,)

Fixed typos in Texture*.cpp.

Removed old deprecated methods from osg headers.
2003-04-30 11:40:17 +00:00
Robert Osfield
c1b1a091fa From Tree, addition of ; after MACRO_'s to help with Java port.
From Tree + Robert, Addition of LEFT_BASE_LINE,RIGHT_BASE_LINE,CENTER_BASE_LINE
Alignment options in Text.
2003-04-27 10:58:39 +00:00
Robert Osfield
0b0c6c4e60 Added support for set/getColor to ShapeDrawable. 2003-04-16 20:02:15 +00:00
Robert Osfield
3df0401007 Addd new computeLocalToWorld(NodePath) etc methods. 2003-04-14 13:22:21 +00:00
Robert Osfield
5ecc25540c From Michael Gronager, changed apply(Sequence) to cast to an Group rather than
a Switch which was a bug.
2003-04-13 12:02:29 +00:00
Robert Osfield
50d1fcfea2 From Romano, added support in osg::VertexProgram for deleting the flushed
vertex programs.
2003-04-11 09:54:27 +00:00
Robert Osfield
aaa761e333 Added tests for presense of extensions to osgcubemap, osgvertexproram and
osgmultitexture examples.

Added osg::VertexProgram::Extensions class to better handle multiple graphics
context vertex program extensions.
2003-04-10 19:32:32 +00:00
Robert Osfield
8b03d59be3 Added support for modifying the osg::Texture*:Extensions stuctures.
Added an example modifying osg::Texture::Extensions to osgtext.  Optionally
compiled out by default.
2003-04-10 13:41:45 +00:00
Robert Osfield
22546b8085 Added support for multiple graphics context to osg::VertexProgram and osg::Impostor 2003-04-10 12:11:40 +00:00
Robert Osfield
2166f9b701 Fixes to the Impostor implementation. 2003-04-09 21:53:09 +00:00
Robert Osfield
b02917e7a2 Fixed type of osg::ApplicationUsage::set/getApplictionName(), updated
demos accordingly.

Made OsgCameraGroup set the _applicationUsage to the
osg::ApplicationUsage::instance() when no ArgumentParser is supplied.

Added export to osgProducer::ViewerEventAdapter.
2003-04-09 08:20:08 +00:00
Robert Osfield
559f5f93e5 Added an osg::absolute template function into osg/Math. 2003-04-08 09:42:03 +00:00
Robert Osfield
7af174fadb From Ulrich Hertlien, new osg::TextureRectangle class. 2003-04-07 13:20:53 +00:00
Robert Osfield
9f0fa75484 Added support for unref image data after apply in the osg::Texture*
classes.  Only unref's after all graphics context have been applied.
2003-04-07 12:51:00 +00:00
Robert Osfield
7e58786b11 Moved the modified tag's from osg::Texture into the osg::Texture1D,2D,3D and
CubeMap classes.
2003-04-07 09:46:06 +00:00
Robert Osfield
49a28660dc Added the usage report to the examples for when no arguments are passed
to the examples.
2003-04-06 21:32:44 +00:00
Robert Osfield
e1e22ab430 Added GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB etc to the Texture header to
allow compilation across platforms.
2003-04-02 20:43:19 +00:00
Robert Osfield
0f3eaeba46 From Rune Schmidt Jensen - new dds loader. 2003-04-02 18:26:34 +00:00
Robert Osfield
5b36049f33 Added convinience constructor. 2003-04-01 18:42:38 +00:00
Robert Osfield
3975fc9b01 Improved handling of subloading.
Removed the rescalling of images in osg::Image during texture apply, moving
the rescale so it is locally calculated.  This solves an outstanding threading
problem which occured by multiple draw threads all tried to rescale the same
image at one time.

Made osg::Image ptr in osg::Texture2D non mutable as it is no longer modified
during apply.
2003-04-01 11:49:09 +00:00
Robert Osfield
b728b1dd99 Implemented load and subload methods in osg::Texture/Texture2D. 2003-03-31 21:41:17 +00:00
Robert Osfield
3fe1313ad9 Adding reseting of the array pointers to the dirty methods. 2003-03-31 11:25:04 +00:00
Robert Osfield
8779fe20a7 Added help support for display help on screen to osgProducer::Viewer. 2003-03-26 12:50:30 +00:00
Robert Osfield
a3bb1da618 Added Endian test header to the core osg, and add use of the new
getCpuByteOrder test in LightPointDrawable.
2003-03-19 21:46:44 +00:00
Don BURNS
e978c405e1 Set VERSION_RELEASE back to 3, replaced guards in include/osg/Verson to
OSG_VERSION_ with trailing underscore
2003-03-18 20:02:02 +00:00
Robert Osfield
bf184ef7a3 From Tree, added SG_EXPORT to the inner classes for Java binding work. 2003-03-18 19:42:34 +00:00
Robert Osfield
33ad8d8cb0 From Tree, ushort renamed GLushort 2003-03-18 09:29:06 +00:00
Robert Osfield
e87a08f1c3 Fixes to osgcluster demo as new Producer based example.
Added extra pragrma remove a warning about float to int cast under VS.NET.
2003-03-16 21:58:27 +00:00
Robert Osfield
2ca505b3d8 Ported all glut based demos across to using the new osg::ArgumentParser. 2003-03-14 10:49:06 +00:00
Robert Osfield
2915550887 Reverted Don's changed of sqrtf to sqrt. Don't understand why the change was
required, suggest a problem elsewhere which should be fixed, *not* by modification
of Vec2.
2003-03-13 14:29:16 +00:00
Don BURNS
ec3e1dc611 Fixes for Mac OS X 2003-03-13 06:22:31 +00:00
Robert Osfield
b0dce04063 Added setBound() method to Drawable. 2003-03-11 21:53:28 +00:00
Robert Osfield
e51c7f1587 Added support for AbortRendering flag pointer in osg::State which is used
by osgUtil::RenderLeaf to test if any abort state has been set, if so it
doesn't do any further drawing.

The osgProducer::Viewer has been set up to set the osg::State's it manages
with their AbortRendering flag pointers set to the osgProducer::Viewer::_done
memeber varaible.  Now when escape is pressed the rendering is aborted early.
2003-03-11 15:25:49 +00:00
Robert Osfield
78de76f17f Bug fixes to osgText to handle the osgUtil::Optimizer being used on a scene
graph containing text.

Fixed warning in MD2 plugin.
2003-03-11 13:30:03 +00:00
Robert Osfield
06fb808ad3 Improvements to the Text .osg support. 2003-03-10 16:40:26 +00:00
Robert Osfield
152e60c61b Reverted the changes to ref_ptr<> for implicit cast to pointer. 2003-03-06 19:41:59 +00:00
Robert Osfield
fab6f24f4e Changed the osgText::Font implementation so it used a facade us abstract away
the actual implemention. This has been done so that when a freetype font is
created the implementation can unloaded when the freetype plugin is unloaded
without breaking the main font.

Also add image margin around founds to prevent any image boundaries appearing.
2003-03-06 17:11:24 +00:00
Robert Osfield
0d9aaa5ca6 Reverted the ref_ptr<> implementation to prior implicit cast operator via
commenting out// #define AUTOMATIC_CAST_TO_POINTER.
2003-03-06 13:45:20 +00:00
Robert Osfield
b70c80ba39 Add #ifndef's around the comparison operator's against const T* now that the
implicit cast operator has been added.
2003-03-06 10:38:31 +00:00
Robert Osfield
f9d8f3fa9d Added implicit cast to T* to ref_ptr<>. 2003-03-05 21:04:11 +00:00
Robert Osfield
5e396d40e1 Made the State::setInterleavedArrays method use a const GLvoid*. 2003-03-05 21:02:37 +00:00
Robert Osfield
55c25a551b Added support for using the generate mip map extension within osgText. 2003-03-04 15:47:28 +00:00
Robert Osfield
1c34c0981e Further improvements to osgText and the freetype plugin, handling different
font sizes better and plugin removal safely.
2003-03-04 12:34:42 +00:00
Robert Osfield
fbe674b321 First cut of new osgText implementation. 2003-03-02 21:05:05 +00:00
Robert Osfield
b32c8c65f3 Added osg::Image::AllocationMode enum and associated set/get methods.
osg::Image::setImage has also been modified to require the AllocationMode
mode to be passed to it so that it knows how to delete the data once the
image goes out of scope.

Port the image plugins across to specify the new AllocationMode, and converted
them across to using new/delete in place of malloc/free.
2003-02-25 11:56:18 +00:00
Robert Osfield
7877c55770 Implemented an osg::minimum and osg::maximum template functions to replace
the std::min/max functions previously used in parts of the osg, since the
std::min/max methods do not seem implemented under IRIX.
2003-02-24 12:02:00 +00:00
Robert Osfield
5471ada6da Fixes to try and keep OSX and Win32 compiling with the new usage of std::max. 2003-02-23 15:50:57 +00:00
Robert Osfield
73f741d16f Completed first pass at providing commandline option usage via the new
osg::ArgumentPareser and osg::ApplicationUsage classes. The osgproducer
demo has been implemented using these new mechansims.
2003-02-18 21:58:40 +00:00
Robert Osfield
c10d5f2d6f Added new osg::ApplicationUsage and osg::ArgumentParser to help streamline
application/example developement.
2003-02-18 16:36:42 +00:00
Robert Osfield
44f88715ae MOre work on uint -> unsigned int. 2003-02-14 19:47:59 +00:00
Robert Osfield
77fee92d71 Renamed futher uint/ushort instances. 2003-02-14 16:52:47 +00:00
Robert Osfield
bd506b53da Removed last of the uint references. 2003-02-14 11:41:52 +00:00
Robert Osfield
8f1ba9d21b Removed include/osg/Types header defining osg::ubyte, osg::ushort etc. Changed
any reference to these in the distribution across to using unsigned char,
unsigned short etc.  This has been done to keep the OSG code more opaque
to what types are.
2003-02-12 19:20:47 +00:00
Robert Osfield
6c4f2f5207 Fixes for multipipe support.
Addition of FrameStatsHandler to osgproducer demo to add frame stats.
2003-01-29 17:16:26 +00:00
Robert Osfield
0d4e969746 Added support for osg::Transform::asMatrixTransform, asPositionAttitudeTransform
and as DOFTransform.
2003-01-24 09:37:56 +00:00
Robert Osfield
20ba1a4033 Fix for impostors bug where image insert were visible, this was down to a double
call to RenderStage::drawPreRenderStage().  The call to it in RenderStage inside
the draw() method has been removed, leaving on the call in SceneView.
2003-01-24 09:11:05 +00:00
Robert Osfield
48bda9cc79 Added new Copyright/License notice to header and source files. 2003-01-21 16:45:36 +00:00
Robert Osfield
0f69a4c3ae Made the drawable::compile(State&) method const and the DisplayListVisitor to
compile even when dislay list is off.  This has been done to allow subclasses
of Drawable handle their own compile implementation, such as used by text.
2003-01-20 20:40:06 +00:00
Robert Osfield
e56872aa1f Added the new standard copyright notice. 2003-01-20 12:41:15 +00:00
Robert Osfield
08456ecf70 Added osg::State::dirtyAllModes() and dirtyAllAttributes() methods. 2003-01-19 15:28:08 +00:00
Robert Osfield
c406d2476f Removed the osg::Referenced::createCount() and deleteCount() methods and
associated variables which were only compiled in on debug build.  These optional
methods/static vars were causingproblems when mixing debug and release builds.
2003-01-17 14:11:34 +00:00
Robert Osfield
4dd273de70 Added support for ReferenceFrame into osg::LightSource, modified the .osg
plugin and cull visitor to account for this change.
2003-01-16 16:37:24 +00:00
Robert Osfield
d542a2165d Removed the template versions of the PrimitiveSet constructors as this was
causing problem under VisualStudio6.0.
2003-01-15 11:29:30 +00:00
Robert Osfield
c882283b5d Typo fix if USE_HOME_POSITION. 2003-01-13 20:14:23 +00:00
Robert Osfield
f36bc69c58 Made the more of the OSG's referenced object desctructors protected to ensure
that they arn't created on the stack inappropriately.

Split the implemention of Matrix up so that it is a simple no referenced counted
class and can be safefly created on the stack.  To support referenced counting a
seperate subclass now exists, this is RefMatrix which inherits from both Matrix and
Object.
2003-01-10 09:25:42 +00:00
Robert Osfield
ba34880464 Added support for reading and writing Sphere, Box, Cone, Cylinder and Grid shapes. 2003-01-08 14:32:13 +00:00
Robert Osfield
3ef3666d0f Added new ARB vertex program state attribute and demo program,
sent in my Brede Johansen.
2003-01-04 20:45:53 +00:00