Robert Osfield
0f209a5362
From Eric Sokolowsky, "There is code in Image.cpp that calculates the size of a compressed image
...
based on the internal format. There is similar code in the Texture class
but it does not account for the ARB types. I modified the Texture class
implementation to show a warning when an incomplete internal format is
used to calculate the image size."
2006-07-05 13:44:07 +00:00
Robert Osfield
ce4b3a7b9e
Changed parameter name from osberver_ptr to observer.
2006-07-04 19:58:53 +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
30265ac0b3
Added support for RenderBin's have a local top level StateSet. This is now
...
used by default in the depth sorted bin.
2006-06-29 15:57:24 +00:00
Robert Osfield
d084c34e04
Added a functional DeleteHandler.
2006-06-26 20:35:10 +00:00
Robert Osfield
4ab7be2833
Martin Spindler, new osg::ClampColor state attribute.
2006-06-08 15:27:18 +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
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
ff518eb9c6
Removed redundent variable declaration.
2006-05-09 09:13:07 +00:00
Robert Osfield
3132f1f2f7
Fixed expire of children to work with the new Group::removeChildren method.
2006-05-04 19:15:52 +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
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
6558a5589f
Reset the default number of graphics context to 1.
2006-04-25 09:00:07 +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
c64f527925
From Brede Johansen, added missing array handling into Geometry::accept(AttributeFunctor&
...
af) and Geometry::accept(ConstAttributeFunctor& af).
2006-02-28 19:46:02 +00:00
Robert Osfield
deb6632b04
Fixes to removed dependency on RefNodePath.
2006-02-28 18:54:29 +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
def7a78842
Fixed typo of Validity.
2006-02-22 19:14:01 +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
9473d80345
Moved the intialization variable reset to end of the init funciton to
...
avoid multi-thread initialization from producing different results.
2006-02-20 16:50:47 +00:00
Robert Osfield
59ad441be1
Added BlenColour(Vec4) constructor and updated wrappers.
2006-02-09 12:20:42 +00:00
Robert Osfield
39381c6fe7
From Edmond Gheury, fixe and bug in the PrimitiveShapeVisitor.
2006-02-04 21:25:33 +00:00
Robert Osfield
e89852e25f
From Marco Jez, " I've modified in order to make FBO mipmapping work. In
...
FrameBufferObject.cpp there is also another fix: when initializing a FBO
attachment from a CameraNode attachment, the renderbuffer's format must be
set to the attachment's internal format, not to the image's pixel format.
Another problem is that attaching a renderbuffer to the FBO through
CameraNode is not simple (if not impossible) if you don't intend to specify
an Image object. Probably CameraNode could be enriched with an
"attach(buffer, width, height, format)" method. For example if you attach a
color buffer as a texture whose size is different than that of the
CameraNode's viewport you also need to attach a depth buffer of the same
size, because the depth buffer that is automatically attached by RenderStage
has the viewport's size. FBOs require that all attachment have the same
dimensions, so said setup will fail if you can't specify a custom depth
renderbuffer"
2006-02-04 21:20:25 +00:00
Robert Osfield
a0f43443a4
From Marco Jez, addition of glw extension checking under Windows, and tweaks to
...
BlendEquation and RenderStage to correct the extensions being tested.
2006-01-18 11:45:58 +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
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
bcd082db3d
From Farshid Lashkari, compile fix
2005-12-20 09:13:59 +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
a8d7234a0b
From Eric Wing, added missing removeChildren method.
2005-12-09 11:22:09 +00:00
Robert Osfield
a4ea759ce5
From Simon Julier, fixed typo of unknown.
2005-12-08 14:08: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
e311cf83d8
Added checks in the drawImplementation to catch when attribute bindings are set on
...
but the relevant arrays remain unset, this prevents previous crash when this
occured.
2005-12-06 11:24:24 +00:00
Robert Osfield
6971588592
Changed debug message to INFO.
2005-12-05 20:11:50 +00:00
Robert Osfield
b16f40e5ab
Moved the body of the getNumPrimitives() into the .cpp.
2005-12-03 00:03:31 +00:00
Robert Osfield
2ce7718a66
From Eric Wing, fixes for "warning: converting of negative value '-0x00000000000000001' to 'unsigned int'"
2005-11-29 11:39:07 +00:00
Robert Osfield
06cb8c030f
Added temporary ref_ptr<osg::Image> to prevent the _image going out of scope
...
due to another thread complete the texture::apply() while the present texture::apply()
is still running.
2005-11-28 20:08:36 +00:00
Robert Osfield
0663c3b653
From John Donovan, typo fixes.
2005-11-25 19:18:12 +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
b5a5cd7901
Changed the default value of Texture::_resizeNonPowerOfTwoHint to true, to
...
improve the backwards compatibility of peformance on systems that have OpenGL2.0
drivers but without hardware that can't handle non power of two textures.
2005-11-24 10:28:09 +00:00
Robert Osfield
4ca3a4fd45
Changed the linux implement of getGLExtensionFuncPtr to querry for glXGetProcAddressARB
...
and then use this if its available, otherwise fallback to the original dlsym usage.
2005-11-23 15:25:56 +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
85b3c4b179
Added check against LODScale being zero, and fixed the search for the maximum
...
LOD range in the pixel size range fallback.
2005-11-22 10:26:27 +00:00
Robert Osfield
611e49b736
From Chris Hanson, add LODScale support to pixel based LOD range selection.
2005-11-22 10:08:00 +00:00
Robert Osfield
26e77fc92f
From Jason Daly, (with small tweak by Robert Osfield) fix for Prorgram::removeShader(Shader*)
...
so that it properly remove the shader and its entry in the _shaderList.
2005-11-22 09:57:32 +00:00
Robert Osfield
0e16b64665
Coverted tabs to space in core libraries.
2005-11-17 13:35:53 +00:00
Robert Osfield
b15b677cc3
From Mikkel Gjøl, addition of paramter set/get methods to osgGA::*Manipulators,
...
change of ' ' to GUIEventAdapter::KEY_Space, fix to url in Matrix_implementation.cpp.
Syntax fixes by Robert Osfield to above submission fix inconsistencies with normal
OSG coding style.
2005-11-17 11:03:20 +00:00
Robert Osfield
19c1863432
Added (_data || rhs._data) extra qualify to Image::compare is data equal test.
2005-11-17 09:20:58 +00:00
Robert Osfield
2d33e6f2ad
From Mike Weiblen, support for ARB_texture_rectangle extension name.
2005-11-16 09:28:09 +00:00
Robert Osfield
c2f1527fe0
Added better control for cancel GraphicsThreads.
2005-11-10 15:25:06 +00:00
Robert Osfield
20d9c3c3c4
Compile fixes for VS7.1
2005-11-10 09:42:34 +00:00
Robert Osfield
73f7a68dbe
Added writing of commandline options in getFormatedString when there is no description string.
2005-11-09 17:19:34 +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
6c70812928
Fixed warnings.
2005-11-09 10:41:52 +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
6ed9cb40cc
From Colin McDonald, fixed image size calculation in getTotalSizeInBytesIncludingMipmaps(),
...
added checks on success of opening files for writing in the .ive plugin.
2005-11-08 13:51:28 +00:00
Robert Osfield
18c916de1a
From Bob Kuehne, proper c++ cast instead of c-cast for ApplicationUsage
2005-11-07 15:46:05 +00:00
Robert Osfield
efd96108fb
From Gideon May, compile fixes for OSX.
2005-11-07 11:14:23 +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
7c612fb1d9
Added env var docs on OSG_MAX_TEXTURE_SIZE
2005-11-03 10:59:22 +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
781f6d3cec
From Colin McDonald, "Fixes for some duplicate global symbol definitions in the plugins,
...
which cause errors when creating a statically linked executable."
2005-11-02 10:29:38 +00:00
Robert Osfield
44d0e90f92
Changed the error number reporting to be reported as hex.
2005-11-01 20:16:31 +00:00
Robert Osfield
4509232792
Improved handling of osg::Image copying.
2005-11-01 15:23:03 +00:00
Robert Osfield
a4275fb8d7
From Brad Colbert, Added checking for a NULL return string rom gluErrorString (with slight reformating of this by Robert Osfield.)
2005-11-01 11:18:40 +00:00
Robert Osfield
a742cb682e
Added RenderTargetFallback option into osg::CameraNode.
2005-11-01 10:42:54 +00:00
Robert Osfield
79a7f8c729
Added catch for NULL return from glGetString( GL_VERSION );
2005-10-29 10:04:35 +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
1b26232f71
Added command line support for the interlaced stereo modes.
2005-10-25 15:49:48 +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
2b2ca82b5a
Added check against glGetString(GL_VERSION) returning NULL.
2005-10-25 13:24:39 +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
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
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
ff9ace16b4
From Keith Steffen, fixed bug in StateSet::clear() where parents of texture attributes
...
where not being reset correctly due to incorrect ordering of _textureAttributeList.clear().
2005-10-03 19:37: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
76058f747c
From Marco Jez, added fallback to TextureCubeMap subloading that calls load
...
when mipmaps are required, but non are present.
2005-09-29 09:49:20 +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
f32984fefe
Removed some debugging messages
2005-09-10 12:51:18 +00:00
Robert Osfield
6391691be6
Added release() to all GraphicsOperations in GraphicsThread.
2005-09-03 20:54:32 +00:00
Robert Osfield
4167a3f980
Added clean up class to help improve the exit of GraphicsThread
2005-09-02 13:10:46 +00:00
Robert Osfield
caaeaee321
Fixed typo
2005-09-01 19:12:06 +00:00