Robert Osfield
804c91c8c1
From Art Tevs, "I've attached a patch for the Texture2DArray which solves problems of loading image data into the texture array. So here are a small description:
...
- Solves issues of loading image data into the texture memory
- Print a warning if images are of different dimensions or have different internal formats (GL specification requires images to be the same)
Patch is tested and seems to work fine. It shouldn't break any other functionality. It should go into include/osg and src/osg
"
2008-05-26 21:53:57 +00:00
Robert Osfield
4c81aa0aa7
From Paul Martz, "The attached code changes StateSet::merge() so that it copies RenderBin data such as the rendering hint and RenderBin details from rhs into "this", only if "this" has RenderBin mode set to INHERIT.
...
It replaces a comment by you indicating something along these lines should be done. To me, this seems like the right thing to do."
2008-05-26 21:33:41 +00:00
Robert Osfield
cac6e2facb
Added continuous recording of the animation path to the RecordAnimationPathHandler
2008-05-26 17:30:43 +00:00
Robert Osfield
7b003b24ea
Refactored DatabasePager and related classes to introduce support for
...
multi-threaded paging, where the Pager manages threads of reading local
and http files via seperate threads. This makes it possible to smoothly
browse large databases where parts of the data are locally cached while
others are on a remote server. Previously with this type of dataset
the pager would stall all paging while http requests were being served,
even when parts of the models are still loadable virtue of being in the
local cache.
Also as part of the refactoring the DatabaseRequest are now stored in the
ProxyNode/PagedLOD nodes to facilitate quite updating in the cull traversal,
with the new code avoiding mutex locks and searches. Previous on big
databases the overhead involved in make database requests could accumulate
to a point where it'd cause the cull traversal to break frame. The overhead
now is negligable.
Finally OSG_FILE_CACHE support has been moved from the curl plugin into
the DatabasePager. Eventually this functionality will be moved out into
osgDB for more general usage.
2008-05-21 21:09:45 +00:00
Robert Osfield
965c72f5bd
From Eric Sokolowski and Robert Osfield, moved command line option usage setup
...
from osgviewer example into osg::ArgumentParser and osgViewer::Viewer to make
them more universally available.
2008-05-12 10:55:55 +00:00
Robert Osfield
ebf653369a
From Art Trevs, set the _geometryVerticesOut to default to 1 as a workaround
...
for OpenGL driver bug that incorrectly reports a warning when value is 0.
2008-05-09 11:54:24 +00:00
Robert Osfield
f733bf17e9
Added missing check against handling invalid bounding sphere's
2008-05-08 17:02:08 +00:00
Robert Osfield
10c3044499
From Farshid Lashkari, "I've added hardware mipmap support to Texture3D."
2008-05-07 13:42:29 +00:00
Robert Osfield
78964b4baa
Reverted the changes for ill fated tweaks for Apple build
2008-04-24 11:34:43 +00:00
Robert Osfield
8ae30c9bfc
Refactored the inclusion of the headers in the ADD_LIBRARY so that they aren't
...
added under OSX.
2008-04-23 20:50:53 +00:00
Robert Osfield
a59e93a0df
Added mutex to object creation to avoid a race condition when using threaded multiple graphics context
2008-04-23 14:10:41 +00:00
Robert Osfield
196a550cda
Added write(ostream&) method to allow one to print out the current state
2008-04-18 13:57:08 +00:00
Robert Osfield
648199cb2b
Changed the FrameBufferObject::setAttachment() methods so it now use osg::Camera::BufferComponent
...
to enable it to distinguish between MRT and non MRT paths
2008-04-18 13:25:14 +00:00
Robert Osfield
f09d583f44
Introduce OSG_GL_ERROR_CHECKING env var checking to osg::State constructor so that you
...
can enable fine grained check via env vars o.e.
export OSG_GL_ERROR_CHECKING=ONCE_PER_ATTRIBUTE
2008-04-18 11:09:54 +00:00
Robert Osfield
9724303f38
From Art Trevs, moved multile render targets support from RenderStage into FrameBufferObject.
...
From Robert Osfield, refactored the FrameBufferObejcts::_drawBuffers set up so that its done
within the setAttachment method to avoid potential threading/execution order issues.
2008-04-15 19:36:40 +00:00
Robert Osfield
2a54ff3e4a
Introduced CMake build option for compiling double or float versions of osg::BoundingSphere and osg::BoundingBox.
...
Introduced code in BoundgingSphere, BoundingBox, ProxyNode and LOD to utilise the above settings.
Added Matrix::value_type, Plane::value_type, BoundingSphere::value_type and BoundingBox::value_type command line
options that report where the types of floats or doubles.
2008-04-03 18:36:50 +00:00
Robert Osfield
64f8631d9d
Added Camera::s/getClearAccum, s/getClearStencil and s/getClearDepth.
2008-03-31 11:44:31 +00:00
Robert Osfield
027b4b0986
Introduced InheritanceMaskActionOnAttributeSetting member to CullSettings, and associated applyMaskAction method that is
...
now used in all CullSettings::set*() methods, which by default helps disable the inheritance mask associated
with settings that are made locally.
2008-03-19 11:40:08 +00:00
Robert Osfield
1d1dcf2cf3
To osg::AutoTransform added support for MinimumScale, MaximumScale and AutoScaleTransitionWidth parameters
...
and a new scheme for computing the scaling when using autoscale that introduces smooth
transitions to the scaling of the subgraph so that it looks more natural.
2008-03-18 15:37:38 +00:00
Robert Osfield
7a7c197af3
Added minimum and maximum scale support to osg::AutoTransform
2008-03-17 15:22:03 +00:00
Robert Osfield
a49ed677b5
Fixed indenting
2008-03-14 15:32:56 +00:00
Robert Osfield
f1fe11f5a9
Added double versions of intersect methods
2008-03-13 16:05:40 +00:00
Robert Osfield
194a987974
From Andy Skinner, "I've taken this another step, to use value_type inside the intersect calls. I did choose to use sqrt() instead of sqrtf()."
2008-03-13 15:23:24 +00:00
Robert Osfield
1b9cefa10f
Added extra constructors
2008-03-12 20:15:45 +00:00
Robert Osfield
b2ead391b3
From Mathias Froehlich, "it appears to me that sun CC cannot use static functions from template
...
functions. The attached change is required to make it compile with sun CC."
2008-03-11 13:23:49 +00:00
Robert Osfield
66f1a6ceaa
From Atr Trevs, added missinging initializers
2008-03-05 11:52:56 +00:00
Robert Osfield
9d0c950bb0
From Colin McDonald, "Attached is an updated to osgViewer::PixelBufferWin32.
...
The win32 pbuffer implementation returned an error unless both the
WGL_ARB_pbuffer and the WGL_ARB_render_texture functions were present.
This was too restrictive, as a pbuffer can usefully be created without
render-to-texture, e.g. for use with glReadPixels. The osg 1.2/Producer
pbuffers worked without RTT, and osgUtil::RenderStage has all the code to
handle both RTT and non-RTT pbuffers, doing a read and copy in the
latter case.
With these changes I have successfully tested the osgprerender example
on a graphics card which supports RTT, and one which doesn't. Plus
tested in my own application.
In order to aid diagnostics I have also added more function status
return checks, and associated error messages. I have included the win32
error text in all error messages output. And there were some errors
with multi-threaded handling of "bind to texture" and a temporary window
context which I have corrected.
These is one (pre-existing) problem with multi-threaded use of pbuffers
in osgViewer & osgprerender, which I have not been able to fix. A win32
device context (HDC) can only be destroyed from the thread that created
it. The pbuffers for pre-render cameras are created in
osgUtil::RenderStage::runCameraSetUp, from the draw thread. But
closeImplementation is normally invoked from the destructor in the main
application thread. With the additional error messages I have added,
osgprerender will now output a couple of warnings from
osgViewer::PixelBufferWin32::closeImplementation() at exit, after
running multi-threaded on windows. I think that is a good thing, to
highlight the problem. I looked into fixing it in osgViewer::Renderer &
osgUtil::RenderStage, but it was too involved for me. My own
application requirements are only single-threaded.
Unrelated fix - an uninitialised variable in
osg::GraphicsThread::FlushDeletedGLObjectsOperation().
"
2008-03-04 16:39:44 +00:00
Robert Osfield
1d18bc7f48
From Art Trevs, "in the current implementation of the FrameBufferObject
...
there is a bug. The header file do specify something
like this:
FrameBufferAttachment(Texture3D* target, int zoffset,
int level = 0);
However in the .cpp file we have:
FrameBufferAttachment::FrameBufferAttachment(Texture3D*
target, int level, int zoffset)
Which means that the meaning of level and zoffset is
interchanged.
The file with the corrected line is attached. Should
go into src/osg/
"
2008-03-04 15:29:47 +00:00
Robert Osfield
c4d07194a2
From Art Trevs, add support for saving external shader files.
...
From Robert Osfield, adding missing member variable initializes and Output::getShaderFileNameForOutput() implementation
2008-03-04 14:04:48 +00:00
Robert Osfield
f7c33bb2e8
Change the setViewAsLookAt method to use Vec3d rather than Vec3 for better precision
2008-03-04 11:53:09 +00:00
Robert Osfield
dd9dc85d40
Disabled the resizing of Camera's with FBO's
2008-02-29 16:09:48 +00:00
Robert Osfield
aa43b3c8a6
Added Camera::g/setIntialDrawCallback and g/setFinalDrawCallback(), and added
...
screen snapshot example code to osghud.
2008-02-29 15:25:57 +00:00
Robert Osfield
3b4af26136
From Paul Martz, fixed get/set methods API
2008-02-27 11:43:58 +00:00
Robert Osfield
75b9a9c809
From Robert Osfield and Carlo Camporesi, took submission from Carlo for adding LoadingExternalReferenceMode to ProxyNode and extended it
...
to include a wider range of options, also completed implementation
2008-02-25 15:07:35 +00:00
Robert Osfield
3333ca2b46
From Mathias Froehlich, "I have extended the X11 pbuffer code to use either the complete set of glx 1.3
...
pbuffer functions or exactly ask for the extensions we need to call the
apropriate glx extension functions for and around pbuffers extensions.
The glx 1.3 version of this functios are prefered. If this is not pressent we
are looking for the glx extensions and check for them.
Prevously we just used some mix of the glx 1.3 functions or the extension
functions without making sure that this extension is present.
"
2008-02-22 18:38:30 +00:00
Robert Osfield
67f1503c7d
Refactored osgTerrain so that the interface for setting up layer is more straight forward, and added support into GeometryTechnique for handling multiple layers
2008-02-22 11:52:23 +00:00
Robert Osfield
6516bf4910
Added TextureUnit entry to osg::TransferFunction and osgTerrain::Layer
2008-02-20 12:34:13 +00:00
Robert Osfield
9c24dc7083
Changed the updating of the contextID so that the DisplaySetting::MaxNumberOfGrapicsContexts()
...
is updated on each new graphics context creation, in keeping with how osgProducer used to do things.
2008-02-19 12:26:19 +00:00
Robert Osfield
a97dc84228
Introduced typedef vec_type and value_type into LineSemgment class to allow easier
...
switching between double and float versions.
2008-02-18 14:51:05 +00:00
Robert Osfield
a87c98857c
From Paul Martz, "Attached is a modification to OcclusionQueryNode. The copy constructor was failing to initialize all member variables. This change resolves the issue. Thanks to Doug McCorkle for testing and finding the bug."
2008-02-18 13:44:30 +00:00
Robert Osfield
ae8713acde
Reorganized the static vector used for buffering extensions to prevent an crash on exit.
2008-01-29 12:24:47 +00:00
Robert Osfield
53135ac8ac
Removed duplicate declaration of DeleteHandlerPointer
2008-01-24 10:04:33 +00:00
Robert Osfield
5c6869ccc9
Fixed Geometry::removePrimitiveSet method so that it no longer emits a warning when
...
removing 0 elements form an empty primtive set list.
2008-01-21 12:00:10 +00:00
Robert Osfield
fea3595b43
From Mike Weiblen, restructured GL2Extensions so that they now live in their own GL2Extensions.cpp file rather than in Program.cpp
2008-01-21 11:47:40 +00:00
Robert Osfield
6d3a90219c
Removed redundental vertex buffer object flush methods
2008-01-21 11:36:54 +00:00
Robert Osfield
76b6ef6368
Added thread safe debugging checking of allocation/deallocations
2008-01-19 18:26:41 +00:00
Robert Osfield
b91df6c867
Removed erroneous const in method parameter
2008-01-18 21:08:42 +00:00
Robert Osfield
4a08d8daaa
Added geometry shader extension supported check to geometry shader parameter calls
2008-01-14 11:44:04 +00:00
Robert Osfield
276f439ff9
From Colin McDonald, "Multi-texturing fails with recent osg on older graphics cards, due to
...
use of parameter GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS which is only part
of the standard from 2.0 onwards. I've updated src/osg/State.cpp, so
that it attempts to be more rigorous regarding OpenGL version and
extension checking."
2008-01-14 11:30:39 +00:00
Robert Osfield
4b05e84d59
From Daniel Stien, "When removing a child from a osg::Group, childRemoved is called after the
...
node has already been erased from the node list, causing childRemoved to be
performed on the consecutive node.
Lines 180 and 182 are swapped in the attached Group.cpp.
"
2008-01-14 10:14:32 +00:00
Robert Osfield
9d010e14fe
From Paul Martz, "his pretty much wraps up the OcclusionQueryNode work. I might make some additional modifications if testing reveals any issues, otherwise it's ready for 2.4."
2008-01-10 11:02:21 +00:00
Robert Osfield
11db24e6b3
From Colin McDonald, build fixes for Solaris.
2008-01-08 18:13:06 +00:00
Robert Osfield
e73134d6fb
Removed non standard and redundent /*EOF*/
2008-01-08 14:38:58 +00:00
Robert Osfield
578f385760
From Mike Weiblen, support for geometry shaders, and osgeometryshaders example to demonstrate them.
2008-01-08 14:29:44 +00:00
Robert Osfield
ff565128af
Introduced new osg::discardDeletedOpenGLObjects() methods, and usage of it in
...
GrpahicsContext::close() to handle cases where deletingOpenGLObjects is no possible,
such as when GraphicsWindowEmbedded is used.
2008-01-08 13:24:29 +00:00
Robert Osfield
5832dadb68
From Glenn Waldron, "I found that osg::Sequence::setDuration(speed,reps) was not changing the animation speed factor as expected. The one-line fix (line 312) is attached"
2008-01-04 15:33:21 +00:00
Robert Osfield
35d9107d81
Added catch for handling cases where undefined settings for dislayNum and screenNum are used
2008-01-04 13:57:36 +00:00
Robert Osfield
b222d4201c
From Paul Martz, "The osgocclusionquery example contained some duplicate code that was also in the core OSG occlusion query code. This change removes the need for that."
2007-12-26 22:00:28 +00:00
Robert Osfield
93127866a8
From Sid Byce, fixes for compiling with gcc 4.3
2007-12-24 15:19:52 +00:00
Robert Osfield
e39bb04c62
From Jason Daly, "I'm still having a problem with SWING animations on sequences. Here's
...
the fix again, merged with this morning's svn (including the other
Sequence fixes from J-S)."
2007-12-24 14:45:31 +00:00
Robert Osfield
4889342c4a
From Paul Martz, Introduced osg::OcclusionQueryNode with support for OpenGL occlusion query extension
2007-12-21 14:45:16 +00:00
Robert Osfield
9ae1ffe13b
From Jean-Sebastien Guay, "When using osg::Sequence you can stop the sequence by setting the mode
...
to STOP. Subsequently, you can restart it from the beginning by
setting the mode to START. This does not work as expected. The _now
time is not updated while the mode is STOP, which causes the items in
the sequence to flash by very quickly when the mode is set to START.
For example, if the mode was set to STOP and left that way for 30
seconds, and there are 10 items in the sequence, when the mode is set
to START all the items will flash by (in 3 loops) while the _now time
catches up with the real time, and then the sequence will go on at the
rate it should.
This is a simple fix for that, which updates the _now time regardless
of the mode the sequence is in."
2007-12-21 13:18:13 +00:00
Robert Osfield
3fcba1bc51
From Jean-Sebastien Guay, "Some clients at my new job noticed that picking did not work with the
...
osg::Capsule subclass of osg::Shape in an osg::ShapeDrawable. Other
shapes worked fine. So I have fixed this. Code attached.
My modification is in the PrimitiveShapeVisitor, and is based on the
DrawShapeVisitor - I added methods called createCylinderBody and
createHalfSphere, and used them in apply(Cylinder&) and
apply(Capsule&). In my testing they work fine, tested even with
transforms and moving around the scene.
"
2007-12-16 17:57:19 +00:00
Robert Osfield
be5f709bdb
From Mike Garrity, "There was an on again/off again thread on OSG users about
...
creating subclasses of osg::Array that referenced data
stored an application's internal data structures. I took
a stab at implementing that and ran into a couple of
downcasts in Geometry.cpp. Enclosed is my take at fixing
those along with a simple example of how to do this."
2007-12-11 15:55:02 +00:00
Robert Osfield
42723fec8f
From Joseph Steel, "he change is to initializeExtensionProcs() to
...
verify the version of the OpenGL implementation before attempting to get the
MaxTextureCoords parameter."
2007-12-11 11:57:32 +00:00
Robert Osfield
880682f138
From Mathias Froelich, "I have cleaned up the state set handling of the osg::ClipNode.
...
Previously the complete StateSet was cleared, even the non clipping releted
state attributes and modes in this stateset on a call to
setLocalSetateSetModes.
With this change only those modes/attributes are changed that need to be
changed. That is, if a clip plane is removed from the ClipNode, only this
assiciated mode is removed from the state set, instead of throwing away the
whole state set.
In this way we have less surprising results if the state set of a clip node is
used for more state than just the clip state.
"
2007-12-11 11:55:15 +00:00
Robert Osfield
298e07fc72
From Mathias Froechlich, "I have extended the StateSet api with a
...
StateSet::removeAssociatedModes(const StateAttribute*)
and a
StateSet::removeAssociatedTextureModes(unsigned, const StateAttribute*)
call. These funktions are just missing for a complete api IMO."
2007-12-11 11:42:02 +00:00
Robert Osfield
4e5ce63c85
From Per Fahlberg, "Attached is a fix allowing removal of shaders from a program after it is
...
first compiled. It will also allow new shaders to be attached after the
program is first compiled."
2007-12-11 11:21:13 +00:00
Robert Osfield
c43606e3fe
From Richard Schmidt, fix on ordering to be standard OpenGL way.
2007-12-10 20:33:22 +00:00
Robert Osfield
f4afa427a7
From Roland Smeenk, "Attached you will find a large set of small typo fixes (mainly in the comments)."
2007-12-10 17:30:18 +00:00
Robert Osfield
0c4648e027
Added include<string.h> to fix compile errors under gcc 4.3
2007-12-10 10:16:13 +00:00
Robert Osfield
df2f9f5f7c
From Ralf Karn, fixed "invalid enumerant" warning on TEXTURE_2D_ARRAY_EXT initialization
2007-12-09 16:14:07 +00:00
Robert Osfield
a0c2349438
From Mario Guimaraes, "Currently, in the StateSet::merge method, the rhs state attributes and
...
modes are not merged into the lhs state when the rhs is PROTECTED. The
changes I'm providing here address this problem."
2007-12-08 17:10:07 +00:00
Robert Osfield
2d4ef642e6
from Paul Matz, "Understood. Well, I think it's reasonable to assume that the non-env var
...
case is the more tested case, and therefore it is correct to set
_supportsVertexBufferObjects to the same value as _fastPath. So here's a
change that does the same thing for the env var case."
2007-12-08 17:00:38 +00:00
Robert Osfield
13e8af6305
From Robert Osfield and Richard Schmidt, made fixes inspired by an original submission from Richard which
...
highlighted problems with Light, ClipPlane and Hint usage in osg::State's usage of cloneType
and reassignment of target/num in StateSet/these StateAttributes.
2007-12-08 13:29:31 +00:00
Robert Osfield
1b1c5bbdd1
Added support for new double Vec*Array classes in various functors.
2007-12-04 14:46:46 +00:00
Robert Osfield
a909a62b85
Added double Vec*Array support
2007-12-04 14:44:21 +00:00
Robert Osfield
da9b845558
Added a check against the makeCurrent() return type to make sure that OpenGL
...
calls are only made if the makeCurrent() is successful.
2007-11-21 10:18:10 +00:00
Robert Osfield
6ad176042c
Fixed bug in addSlave
2007-11-03 10:32:18 +00:00
Robert Osfield
316b36fab7
Added getColor method to allow easy reading of individual pixels.
2007-10-31 12:55:15 +00:00
Robert Osfield
8b46a624c2
Fixed errors is setup of VBO/EBO's.
2007-10-19 09:58:11 +00:00
Robert Osfield
cc2a0290a4
Fix for setting scene data after slaves have been added.
2007-10-19 08:42:44 +00:00
Robert Osfield
60052a0488
Fixed getOrCreateVertexBufferObject().
2007-10-19 08:39:07 +00:00
Robert Osfield
7086aeeebc
Removed log2 and replaced the places where is was used with a new Image::computeNumberOfMipmapLevels method.
2007-10-01 08:50:58 +00:00
Robert Osfield
5e504026a5
Changed copy constrcutor to a default constrcutor and std::copy to avoid
...
problems with dodge Sun compiler.
2007-09-27 10:42:56 +00:00
Robert Osfield
bd68958877
From Art Tevs, "Following
...
two lines has to be included into the Image.cpp in the
computeNumComponents(...) method:
case(GL_RGBA16F_ARB): return 4;
case(GL_RGBA32F_ARB): return 4;"
2007-09-24 09:26:21 +00:00
Robert Osfield
5c36fbb18f
From David Callu, added findSlaveIndexForCamera method
2007-09-21 19:43:06 +00:00
Robert Osfield
3bfaee3654
Added support for basic viewer configuration files
2007-09-21 15:34:25 +00:00
Robert Osfield
7ea3632dfc
Added support for bool in ArgumentParser::Parameter.
...
Added support for using Input::read(...) methods using ArgumentParser::Paramter
to adapter to multiple paramter types.
2007-09-19 15:29:57 +00:00
Robert Osfield
34af300957
Removed unncessary typedefs
2007-09-13 10:16:19 +00:00
Robert Osfield
0c5d6da793
Fixed warnings of casting void* by refactoring the type and extensiosn setup.
2007-09-13 10:15:48 +00:00
Robert Osfield
b2fe3d475b
Fixed uint/int comparison warning.
2007-09-13 10:10:35 +00:00
Robert Osfield
041afdc303
Replaced allocateMipmap code with warning message as mipmaps aren't support for TextureRectangle.
2007-09-11 16:56:21 +00:00
Robert Osfield
291d253161
From Mathias Froenlich, "have a problem with the SunOS CC.
...
It does not like that the prototype of ClipNode::setStateSetModes() differs
from implementation of that function in the constness of the second
parameter.
On SunOS it compiles fine, but I get link errors when the variant that is
declared in the header is referenced.
The attached src/osg/ClipNode.cpp file removes the const qualifier from the
implementation to match exactly the prototype in the header file.
The file is based on revision 7386 as of today.
"
2007-09-11 13:39:55 +00:00
Robert Osfield
175c3ce806
From Art Trevs, "File Changes:
...
- GL2Extensions, Program and Program.cpp
Features:
- Support for fragment output binding. (e.g. You can now specify in the fragment shader varying out vec3 fragOut; fragOut = vec3(1,0,1); to write to the fragOut variable. In your program you call glBindFragDataLocation(program, 1, "fragOut") to bind the fragOut variable with the MRT 1 - GL_COLOR_ATTACHMENT1_EXT)
- new methods Program::add/removeBindFragDataLocation Program::getFragDataBindingList
"
2007-09-11 13:34:41 +00:00
Robert Osfield
5e83ae4821
From Art Trevs, "Features of the patch are:
...
- Implementation of integer textures as in EXT_texture_integer
- setBorderColor(Vec4) changed to setBorderColor(Vec4d) to pass double values
as border color. (Probably we have to provide an overloading function to
still support Vec4f ?)
- new method Texture::getInternalFormatType() added. Gives information if the
internal format normalized, float, signed integer or unsigned integer. Can
help people to write better code ;-)
"
Futher changes to this submission by Robert Osfield, changed the dirty mipmap
flag into a buffer_value<> vector to ensure safe handling of multiple contexts.
2007-09-11 12:04:58 +00:00
Robert Osfield
98763cc4c5
From Rafa Giatan, "Changed int to GLsizei in the input parameter of the method
...
osg::Texture2DArray::applyTexImage2DArray_subload inside
Texture2DArray (lines 214 and 257), Otherwise it gives a compile
error on MacOSX."
2007-09-11 10:16:21 +00:00
Robert Osfield
bea07b5f72
From Mike Wittman and Robert Osfield, added support for SO_VERSION number in
...
runtime version info. Added checks for OpenThreads version.
2007-09-11 10:10:43 +00:00
Robert Osfield
409cdd0b28
Intoduced a new setGLExtensions template method to do a copy of void* pointer to
...
local function pointer to avoid compiler warnings related to case void*.
Moved various OSG classes across to using setGLExtensions instead of getGLExtensions,
and changed them to use typedef declarations in the headers rather than casts in
the .cpp.
Updated wrappers
2007-09-10 15:19:23 +00:00
Robert Osfield
91983cbe71
Fixed typo
2007-09-08 07:04:27 +00:00
Robert Osfield
8e7e6529be
From David Callu, warning fixes
2007-09-07 15:03:56 +00:00
Robert Osfield
c7a72c8435
From Art Tevs,
...
"A new texture class Texture2DArray derived from
Texture extends the osg to support the new
EXT_texture_array extensions. Texture arrays provides
a feature for people interesting in GPGPU programming.
Faetures and changes:
- Full support for layered 2D textures.
- New uniform types were added (sampler2DArray)
- FrameBufferObject implementation were changed to
support attaching of 2D array textures to the
framebuffer
- StateSet was slightly changed to support texture
arrays. NOTE: array textures can not be used in fixed
function pipeline. Thus using the layered texture as a
statemode for a Drawable produce invalid enumerant
OpenGL errors.
- Image class was extended to support handling of
array textures
Tests:
I have used this class as a new feature of my
application. It works for me without problems (Note:
Texture arrays were introduced only for shading
languages and not for fixed function pipelines!!!).
RTT with Texture2DArray works, as I have tested them
as texture targets for a camera with 6 layers/faces
(i.e. replacement for cube maps). I am using the array
textures in shader programming. Array textures can be
attached to the FBO and used as input and as output."
2007-09-07 11:21:02 +00:00
Robert Osfield
8414a16e52
From Sherman Wilcox, added extension checking support for compressed texture subloading.
2007-09-03 15:43:58 +00:00
Robert Osfield
027158b441
From Laurens Voerman, "I hit a bug when making a copy of a PagedLOD node, the copy has lost
...
it's _databasePath and can no longer load it's childen. "
Added _databasePath(plod._databasePath), in the copy copy construcutor.
2007-09-03 09:56:30 +00:00
Robert Osfield
d730559ade
Fixed spacing.
2007-09-03 09:54:24 +00:00
Robert Osfield
c83bc830cd
From Sherman Wilcox, "I modified texturerectangle.cpp to address this issue. I used a DXT5 DDS
...
file to test the change."
2007-09-03 09:50:50 +00:00
Robert Osfield
86e998f64c
Added mutex locking add addParents/removeParents in Drawable, Node and StateSet.
2007-08-31 20:14:36 +00:00
Robert Osfield
020d7a5651
Added support for controlling the draw order on Cameras on each GraphcisContext
...
via the Camera::setRenderOrder parameters
2007-08-27 13:29:09 +00:00
Robert Osfield
5ce34fd7f3
Cleaned up the getRotate implementation selection using #defines, and made the
...
COMPILE_getRotate_David_Spillings_Mk1 the default.
2007-08-27 10:00:09 +00:00
Robert Osfield
cb5fb828d0
From Jan Ciger, warning fixes
2007-08-26 10:27:31 +00:00
Robert Osfield
8a4db98e2b
Change char* to const char* to fix warnings
2007-08-26 09:59:39 +00:00
Robert Osfield
6827104532
From Galen Faidley," Please find attached the modifications to get the new checkerboard
...
stereo format to work. It's a good thing I tested these on a TV
before submitting them since I did indeed have a bug. One thing I
did not test was to see how this would work in windowed mode. Does
the interlaced stereo code have support for 'absolute' positions?
For example a given pixel on the screen is always shown in a given
eye no matter where the graphics context is placed?
"
2007-08-23 14:31:23 +00:00
Robert Osfield
f8ac71d7e5
Addd control for serializing draw dispatch.
2007-08-23 11:00:12 +00:00
Robert Osfield
de4a4042f7
Set main scene graph elements to use thread safe ref/unref by default
2007-08-22 10:34:11 +00:00
Robert Osfield
5196b09672
Added debug ENFORCE_THREADSAFE paths into osg::Referenced, these are off by default.
2007-08-22 09:48:39 +00:00
Robert Osfield
94db040884
Added thread safe ref/unref
2007-08-22 09:45:20 +00:00
Robert Osfield
94af61ed01
Added setting of thread safe ref/unref.
2007-08-22 09:43:24 +00:00
Robert Osfield
57a18ff112
Added default setting of use of thread safe ref/unref.
2007-08-22 09:42:27 +00:00
Robert Osfield
9d0e273a15
Changed ++_modifedCount cases to dirty().
2007-08-17 09:37:49 +00:00
Robert Osfield
d57a16e023
Added DisplaySetting::s/getCompileContextHint() and use of this hint in osgViewer::Viewer/CompositeViewer.
...
Removed the CustomViewer in osgterrain example as the above now removes the need for it.
2007-08-11 14:49:14 +00:00
Robert Osfield
e5a365afee
Added support for an update OperationQueue to Viewer and CompositeViewer to allow asyncrnous adding of operations to be added
...
to the view to be done during syncronous updateTraversal().
This feature can be used for doing things like merging subgraphs that have been loaded
in a background thread.
2007-08-11 10:28:14 +00:00
Robert Osfield
0e475106dc
Updated wrappers
2007-08-10 17:44:54 +00:00
Robert Osfield
7366daca91
Refactored the way the Scene is used in Viewer and CompositeViewer to ensure
...
that only on Scene exists per scene graph.
2007-08-10 10:52:35 +00:00
Robert Osfield
eecd3e9257
From Andy Skinner, The attached file adds #include <stdlib.h> to GraphicsContext.cpp, so that it compiles with the solaris compiler we use.
2007-08-07 08:18:15 +00:00
Robert Osfield
4c3a13c3a1
From Andy Skinner, fixes for avoiding warnings about mixing c and c++ versions of c libs.
2007-08-05 14:51:56 +00:00
Robert Osfield
9b9e4cd7c8
Added perlimnary support for reading the DISPLAY variable.
2007-08-03 14:50:58 +00:00
Robert Osfield
c346f5b943
Introduce new osgViewer::Renderer class for implementing of the rendering
...
of cameras in viewers
2007-08-02 11:02:47 +00:00
Robert Osfield
59d3e0ceb7
From Andy Skinner, adding C includes to avoid issues when mixing C and C++ standard includes
2007-07-28 10:44:03 +00:00
Robert Osfield
6dec61842d
Introduce Camera::s/getRenderer().
2007-07-28 10:28:40 +00:00
Robert Osfield
5faeead2c6
From Bryan Thrall, added copying of boundingbox callback to copy constructor.
2007-07-27 17:14:51 +00:00
Robert Osfield
3eae87854b
Added FlushDeletedGLObjectsOperation.
2007-07-23 16:42:25 +00:00
Robert Osfield
de69a4a3d8
Added call to State::initializeExtensionsProcs() to prevent crashes before
...
these variables are initialized.
2007-07-18 14:54:27 +00:00
Robert Osfield
04c1dee7a2
Fixed GraphcicsContext::getMaxContextID so it properly returns the current max contextID.
...
Fixed the osgviewer's compile context code to account for the above fix.
Added compile context support into osgterrain example.
2007-07-17 10:54:17 +00:00
Robert Osfield
af19e71024
Changed BarrierOperation so that it isn't limited to jut working within GraphicsContexts.
2007-07-14 09:17:18 +00:00
Robert Osfield
a28588a84c
Introduce GraphicsOperation subclass from osg::Operation, and osgUtil::GLObjectOperation
...
for compiling subgraphs.
2007-07-13 17:25:35 +00:00
Robert Osfield
ecf0b58a19
Renamed include/osg/OperationsThread to OperationThread.
...
Created a new GraphicsThread subclass from OperationThread which allows the
GraphicsContext specific calls to be moved out of the base OperationThread class.
Updated the rest of the OSG to respect these changes.
2007-07-12 15:54:45 +00:00
Robert Osfield
4d7e8b12ae
Renamed OperationsThread to OperationThread and add two way link between OperationQueue and OperationThread
2007-07-12 12:15:42 +00:00
Robert Osfield
095da72020
Fixed typo
2007-07-11 16:06:04 +00:00
Robert Osfield
691a49d0fa
From Paul Melis, fixes to spelling mistakes/typos.
2007-07-11 15:51:17 +00:00
Robert Osfield
6a9551ebfb
Wired up OperationsThread to use the new OperationQueue and thereby support
...
thread pooling where multiple OperationsThreads share a single OperationsQueue
2007-07-10 17:36:01 +00:00
Robert Osfield
44c07b9fad
Separated OperationsThread out from the GraphicsThread header and introduced
...
new OperationQueue class.
2007-07-09 19:04:36 +00:00
Robert Osfield
4d04f3f645
Fixed unitialized variables.
2007-07-09 15:02:03 +00:00
Robert Osfield
c407866f30
Added OpertionQueue
2007-07-09 11:05:04 +00:00
Robert Osfield
6931ae4878
Added include/osg/GLObjects + .cpp which provide osg::flush*DeletedGLObjects() methods.
...
Added and cleaned up DeleteHandler calls in osgViewer to help avoid crashes on exit.
Changed DatabasePager across to dynamically checcking osg::getCompileContext(..)
Updated wrappers.
2007-07-06 13:08:51 +00:00
Robert Osfield
a484b95d3c
Added #include<algorithm>
2007-07-06 09:06:37 +00:00
Robert Osfield
d1fa520349
Added support for managing a CompileContext. Rearranged the DeleteHandler::flushAll call.
2007-07-05 18:33:20 +00:00
Robert Osfield
847a7c1644
Added Point::Extension::isPointSpriteCoordOriginSupported() method
2007-06-29 17:01:37 +00:00
Robert Osfield
74af1b8351
From Paul Martz, "Attached is src/osg/CMakeLists.txt. Adding TemplatePrimitiveFunctor to the source code list for the project. This makes this header file show up in the VS IDE as part of this project, and therefore facilitates IDE searching of project-related files, as well as making other tasks easier."
2007-06-29 16:10:24 +00:00
Robert Osfield
ddc26afa16
Fixed indenting to use 4 spaces instead of tabs
2007-06-29 16:09:12 +00:00
Robert Osfield
eac3dc1963
From Paul Melis, "Here is a list of fixes to misspelled APIs. Unfortunately, more than one
...
of these are public APIs and therefore will break linkage to existing
shared libraries."
Note from Robert Osfield, updated wrappers.
2007-06-27 20:36:16 +00:00
Robert Osfield
314a22d553
Changed the version format.
2007-06-15 12:41:46 +00:00
Robert Osfield
d2c16c2fa0
Added better handling of 0,0,0 values
2007-06-13 13:41:23 +00:00
Robert Osfield
a7a0e2c4d3
Added Image::g/setOrigin to help movie plugins tell applications that the imagery
...
is not the usual OpenGL BOTTOM_LEFT orientation, but with the origin TOP_LEFT. This
allows geometry setup code to flip the t tex coord to render the movie the correct way up.
2007-06-12 16:55:44 +00:00
Robert Osfield
43790b07b3
From Vladimir Shabanov, "osg::Image::isImageTranslucent() now handles
...
GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV,
GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV,
GL_UNSIGNED_INT_10_10_10_2, GL_UNSIGNED_INT_2_10_10_10_REV and
GL_HALF_FLOAT_NV pixel formats."
2007-06-10 19:22:13 +00:00
Robert Osfield
90ae3f385b
Added DisplaySettings to osg::Camera, and support into osg::View for initializing
...
the Camera to the DisplaySettings ScreenWidth/Height/Distance. Added support
for dual screen horizontal split stereo.
2007-06-09 10:06:38 +00:00
Robert Osfield
9064895b91
Revert the signOrZero cade path in the getRotate() to fix bugs.
2007-06-07 11:06:40 +00:00
Robert Osfield
448efe0722
Added osg::Hint class
2007-06-04 10:47:15 +00:00
Robert Osfield
053ba0c543
From Wojciech Lewandowski, "I did few tests to see whether adding PreDraw callback would help us with SPI problems when using Viewer. Results were positive so I decided to give it a try and ask you to verify and maybe merge with existing codebase.
...
I added _preDrawCallback member and neccessary access methods plus modified osgUtil RenderStage.cpp to invoke it before all drawInner calls are made. I tried to maintain symmetry with postDrawCallback but you know better where is a proper place for this call ;-)
"
2007-06-01 19:45:24 +00:00
Robert Osfield
34fe63a74f
Fixed case of when view==NULL
2007-05-30 09:25:01 +00:00
Robert Osfield
96f0e8bd54
Added some debug message to the set/getWindowSystemInterface function
2007-05-25 15:57:59 +00:00
Robert Osfield
5056f6fee6
Added osg::Camera::ProjectionResizePolicy enum and associated methods for controlling
...
how the field of view is adjust on window resizes.
2007-05-22 09:32:38 +00:00
Robert Osfield
c100841487
In Drawable::releaseGLObjects() replaced glDeleteLists with Drawable::deleteDisplayList(..) to prevent inappropriate OpenGL deletion when current thread does have required grpahics contxt
2007-05-19 07:08:20 +00:00
Robert Osfield
ab4398e440
From Farshid Lashkari, "I made a modification to the setClientActiveTextureUnit and
...
setActiveTextureUnit methods of osg::State so they return false if the
texture unit is outside the range of allowable units for the driver.
Currently, the functions would return true even if the units are
invalid. This would cause the osg::State to become out of sync with
the actual driver state, which can cause some bugs in certain cases.
The change I made would verify that the unit passed to
setClientActiveTextureUnit is below GL_MAX_TEXTURE_COORDS, and the
unit passed to setActiveTextureUnit is below
max(GL_MAX_TEXTURE_COORDS,GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS). I
modeled this behavior from the OpenGL docs for these commands which
can be found here:
http://www.opengl.org/sdk/docs/man/xhtml/glClientActiveTexture.xml
http://www.opengl.org/sdk/docs/man/xhtml/glActiveTexture.xml
"
2007-05-15 11:25:14 +00:00
Robert Osfield
d8ee198735
From John Kelso,
...
"Attached are updates of src/osg/Sequence.spp and include/osg/Sequence.
I've taken _sbegin/_send/_ubegin/_uend and _step our of the include file
and made them local variables in whatever method might need them.
I got rid of the _recalculate method as it was only getting used in
one place.
I also found a cut/paste bug in setMode's START case."
Note from Robert Osfield, Also includes some guards against crashes that was occuring in this new
code when handling empty Sequences.
2007-05-09 11:11:19 +00:00
Robert Osfield
6c74589014
Added signOrZero template method, and to Matrix_implementation.cpp usage of this
...
method in the get(Quat&) code.
2007-05-09 09:26:33 +00:00
Robert Osfield
963cd837e3
Added s/getLightingMode and s/getLight to osg::View to allow control of the viewers
...
global light source.
2007-05-07 22:07:23 +00:00
Robert Osfield
958c3efa3a
Added CMake support for local OpenThreads build
2007-05-02 18:07:41 +00:00
Robert Osfield
859bcf3c4b
Further perfomrmance optimizations and clean up on new VBO/EBO/PBO API.
2007-05-01 18:03:32 +00:00
Robert Osfield
fe85a439fb
Cleaned up the optional code paths in new VBO code
2007-05-01 09:29:30 +00:00
Robert Osfield
40db1a8934
Moved VBO switching code into inline methods into osg::State to speed performance
2007-05-01 06:28:20 +00:00
Robert Osfield
d625a5e114
Implementated new dirty buffer mechansim for BufferObjects to make it more efficient
2007-04-30 12:18:27 +00:00
Robert Osfield
9e07a72119
Added temporary code (but comment out) for testing VBO performance
2007-04-29 20:13:53 +00:00
Robert Osfield
921eb0fdd0
Further work on new VertexBufferObject/ElementsBufferObject support
2007-04-29 08:12:29 +00:00
Robert Osfield
4968eb7136
Further work on the new VBO support
2007-04-27 14:52:30 +00:00
Robert Osfield
a3e6d8283d
Further work VertexBufferObject and ElementsBufferObject classes
2007-04-26 16:50:06 +00:00
Robert Osfield
4b71e3948b
Added VertexBufferObject and ElementBufferObject class interfaces, and wired
...
up osg::Array and osg::DrawElements* to these respectively.
Updated wrappers
2007-04-25 18:50:11 +00:00
Robert Osfield
f242570269
Unified the setup of version numbers so that they all are based on the version
...
number setup in the include/osg/Version header file.
2007-04-22 20:19:43 +00:00
Robert Osfield
9db23e0b22
Fixed bug associated with complex RenderBin setup.
2007-04-16 12:18:56 +00:00
Robert Osfield
68a6882d04
Bumbped the version number up to 1.9, in preperation for using odd release numbers
...
for development releases, odd versions for stable releases.
2007-04-16 06:03:22 +00:00
Robert Osfield
2e6ee4bb39
Removed old gmake and VisualStudio build files
2007-04-10 13:10:25 +00:00
Robert Osfield
11d74fd54e
From Eric Wing, pedantic warning fixes
2007-04-06 15:13:02 +00:00
Robert Osfield
6c12c71337
Added constructor argument to ShadeModel
2007-04-05 16:12:10 +00:00
Robert Osfield
561dc02da5
Commented out superfluous debug messages
2007-04-05 15:04:05 +00:00
Robert Osfield
43c24da12d
Added setValue method and osg::Image setup to osg::TransferFunction1D, and setup
...
of TransferFunction1D into osgterrain example.
2007-04-02 13:06:59 +00:00
Robert Osfield
a2ecb93c2b
Converted osg::HeightField across to using a osg::FloatArray internally to enable
...
it to be assigned as a vertex attribute array to an osg::Geometry.
Removed the osgTerrain::ArrayLayer as its no longer required thanks to the above change
which makes the osgTerrain::HeightFieldLayer more flexible.
Updated wrappers
2007-03-29 19:42:07 +00:00
Robert Osfield
0a43ff6571
From Eric Wing, added handling of CMAKE_THREAD_LIBS_INIT
2007-03-29 10:56:07 +00:00
Robert Osfield
b7967b7007
From Mike Wittman, "Here is a change to the .cpp file to fix it by disambiguating the cull invocation."
2007-03-28 15:05:49 +00:00
Robert Osfield
7fc714ada1
Removed deprecated drawImplementation(State&) method from Drawable and Drawable::DrawCallback
2007-03-28 11:30:38 +00:00
Robert Osfield
b419fa93ef
From Luigi Calori, "when we link against something that comes out from a Find... we ususally have a variable <LINK_VAR_NAME>available like OPENTHREADS_LIBRARY,
...
so I' ve set up a macro that uses the variable name expanded for linking, and test if a variable ${LINK_VAR_NAME}_DEBUG
like OPENTHREADS_LIBRARY_DEBUG exists and in case uses it for linking in debug mode.
I' ve also set up FindOpenThreads to set up these variables.
I had to edit the core libraries CMakeLists to add the calls to the macros used.
I' ve tested under MSVC"
2007-03-26 13:02:38 +00:00
Robert Osfield
92865923f3
Added missing StencilTwoSided header
2007-03-23 10:11:09 +00:00
Robert Osfield
6eee949142
From Eric Wing, added ${MATH_LIB} to osg CMakeLists.txt and definition of this to m under unix
2007-03-22 13:38:23 +00:00
Robert Osfield
fb1c25616b
Correct TransferFunction entry.
2007-03-10 11:56:34 +00:00
Robert Osfield
bff1b51361
Added preliminary work on osg::TransferFunction
2007-03-10 11:53:31 +00:00
Robert Osfield
6c1b2d29d9
Commenting out Matrix_implementation.cpp entry to avoid it being installed.
2007-03-09 14:54:01 +00:00
Robert Osfield
db6f07f1d6
Ran dos2unx of CMakeLists.txt files
2007-03-08 15:31:36 +00:00
Robert Osfield
5423add9e2
Added support for 4,7,12,16 bit luminance and intensity formats
2007-03-06 11:20:39 +00:00
Robert Osfield
ac1106372b
Added missing files
2007-03-05 12:09:42 +00:00
Robert Osfield
f50ed9667a
From Eric Wing and others, first cut of CMake build support
2007-03-04 13:05:33 +00:00
Robert Osfield
b55f5c2bd8
Fixed auto rotate to screen so that it handles scales in to the parental path
2007-02-26 14:36:43 +00:00
Robert Osfield
f43cd7332c
Further work on add serialization support for osgViewer configurations
2007-02-25 20:05:23 +00:00
Robert Osfield
ad3cac84e9
Moved Block, ReentrantMutex and ReadWriteMutex into OpenThreads.
2007-02-23 16:31:34 +00:00
Robert Osfield
96f567eff3
Added bool View::Slave::_useMastersSceneData to help manage HUD's and RTT
...
cameras that are embedded in the Viewer's View
2007-02-23 11:53:45 +00:00
Robert Osfield
ee9440d155
Added Camera::s/getAllowsEventFocus() method to allow osgViewer to have non interfactive cameras such as RTT ones
2007-02-21 19:06:43 +00:00
Robert Osfield
37e3114534
Wojciech Lewandowski: "TexGenNode::TexGenNode( TexGen * texGen ) constructor does not initialize ReferenceFrame. I am not sure maybe this was the intent but first constructor does it so I don't see a reson why third one shouldn't."
2007-02-21 15:15:55 +00:00
Robert Osfield
228fd04a19
Removed the exclusion of CullSettings from the genwrapper.conf, and then changed the CullStack RefMatrix& methods to RefMatrix*
...
as the RefMatrix& versions caused the wrappers to fail.
2007-02-21 13:48:01 +00:00
Robert Osfield
ffda14c669
Fixed inheritance check for copying clear colour to slave cameras
2007-02-20 20:56:03 +00:00
Robert Osfield
d8e6436dc1
From Andre Garneau:
...
* Fix for the aspect ratio not being properly set when screens have
different aspect ratios.
* Minor fix for makeCurrentImplementation being called directly instead of
makeCurrent() causing the owning thread pointer not being tracked
* Fix for osglauncher so that it sets its update text regions to DYNAMIC to
prevent multi-threading issues.
2007-02-18 14:21:16 +00:00
Robert Osfield
a3594bc653
Added new osg::ComputeBoundsVisitor
2007-02-16 17:34:34 +00:00
Robert Osfield
810e7291fc
Added use of Mutex into osg::Stats to better handle multi-threaded usage
2007-02-14 16:24:49 +00:00
Robert Osfield
07411f3246
Introduced new osg::Object::DataVariance type of UNSPECIFIED, and changed the deafult
...
values of DataVariance to UNSPECIFIED to all types.
2007-02-14 13:18:58 +00:00
Robert Osfield
89c99a88fa
Added computeDataVariance method into osg::Object and implementations in Drawable and StateSet,
...
and calling of osgUtil::StaticObjectDetectionVisitor in osgViewer::Viewer
2007-02-14 11:24:42 +00:00
Robert Osfield
fe177e42d5
Added osgViewer::HelpHandler
2007-02-12 13:39:18 +00:00
Robert Osfield
f1a82f35b2
From Vivek Rajan, MatrixDecomposition implementaion, adapted by Robert Osfield
...
to be part of osg::Matrixf and osg::Matrixd classes.
2007-02-10 18:01:37 +00:00
Robert Osfield
c52207b637
Added new Transform::ReferenceType enum ABSOLUTE_RF_INHERIT_VIEWPOINT to support
...
internal RTT cameras that wish to use the main cameras view/eye point for LOD and other
distance based tests.
2007-02-07 16:32:14 +00:00
Robert Osfield
945faf0133
Fixed bug in AutoTransform::accept() that was related to the accept() method
...
checking the nodemask as it should.
2007-02-07 14:53:58 +00:00
Robert Osfield
cfe737c552
Tweak API and updated wrappers to get wrappers to build
2007-02-05 14:56:41 +00:00
Robert Osfield
ebd68ba063
Added Camera's s/getCameraThread() and updated wrappers
2007-02-05 13:44:16 +00:00
Robert Osfield
69da91620f
Convert GraphicsThread/GraphicsOperation to more generic OperationsThread/Operation.
...
This paves the way to running cull traversals in seperate threads.
Updated wrappers
2007-02-02 22:30:36 +00:00
Robert Osfield
6d9641a78b
Added a concrete osg::DeleteHandler implementation which provides support for
...
retain objects for several frames before deleting them. Also added RenderStageCache
into CullVistor.cpp that is used for handling RTT osg::Camera's that are being
used in double buffered SceneView usage.
2007-02-02 12:41:13 +00:00
Robert Osfield
f8213d1c53
Updated wrappers
2007-01-30 14:47:13 +00:00
Robert Osfield
b8d98a2cfe
Added support for compute average stats attributes in inverse space to improve
...
the quality of frame rate reporting.
2007-01-30 13:48:04 +00:00
Robert Osfield
ecedc8d86a
Added Stats::collectStats(string,bool) controls, getAveragedAttribute methods into osg::Stats class, and
...
related support into osgViewer::Viewer and osgViewer::StatsHandler.
Added lazy updating of text in StatsHandler HUD to minimize the impact of
slow text updating on observed frame rates.
2007-01-30 11:40:23 +00:00
Robert Osfield
fd0ea388c2
Began work on providing support for threading camera cull traversals in parallel with
...
the previous frames draw traversal. Changes range from osg::State, through osgUtil::RenderBin, through to osgViewer
2007-01-29 22:44:29 +00:00
Robert Osfield
7232a831da
Added osg::FrameStamp::set/getSimulationTime().
...
Added setting of osg_SimulationTime and osg_DeltaSimulationTime to the uniforms set by SceneView
Added frame(double simulationTime) and advance(double simulationTime) parameters to
osgViewer::SimpleViewer, Vewer and CompositeViewer.
Updated various examples and Nodes to use SimulationTime where appropriate.
2007-01-25 12:02:51 +00:00
Robert Osfield
13dd5acb63
From Gordon Tomlinson, fixes to BoundingSphere::expandBy(BoundingSphere&)
2007-01-25 10:02:20 +00:00
Robert Osfield
d6ecce6f5f
Improvements to stats
2007-01-22 11:22:37 +00:00
Robert Osfield
b47ef11d74
Initial on screen stats support
2007-01-21 18:24:54 +00:00
Robert Osfield
f0e2404541
Added new osg::Stats class for collecting frame stats of different sorts.
...
Added s/getStats() to osg::View and osg::Camera.
Added population of View::getStats() with frame stats in osgViewer/Viewer.
Added Basic StatsHandler to osgviewer example.
2007-01-19 19:53:23 +00:00
Robert Osfield
a90206bcbb
Added EXT_timer_query support
2007-01-19 14:41:29 +00:00
Robert Osfield
ccc8a922a6
Added osg::StencilTwoSided state attribute to wrap up the stencil_two_sided extension.
...
Added path in osgShadow work for using StencilTwoSided to accelerate shadow volume rendering.
2007-01-18 22:32:18 +00:00
Robert Osfield
d63b351137
From André Garneau, threading bug fixes - moving scoped statics out of scope to be global statics
2007-01-17 14:40:03 +00:00
Robert Osfield
09cef410ec
Added releaseContext to end of GraphicsThread::run()
2007-01-14 20:23:47 +00:00
Robert Osfield
5c78d06dad
Added a default StateSet to osg::View's master Camera. Wired up osgViewer::Viewer so
...
that the master Camera's StateSet is passed to osgUtil::SceneView to use as its global StateSet.
2007-01-12 12:10:06 +00:00
Robert Osfield
5ee30edbea
Added support for setThreadSafeRefUnref into TexGenNode
2007-01-11 10:35:03 +00:00
Robert Osfield
16d1c00a3d
Changed the return types of makeCurrent to bool, and added a bool GraphicsContext::releaseContext method
...
along with implementations in osgViewer.
2007-01-08 19:29:59 +00:00
Robert Osfield
4a5eda6522
Added GraphicsContext::ResizedCallback and GraphicsContext::resizedImplementation.
...
Added message on non implementation of GraphicsContext::valid().
Added prelimary GraphicsContext clean up support.
2007-01-08 16:20:10 +00:00
Robert Osfield
773fbd1b16
Added setThreadSafeRefUnref to LightSource
2007-01-07 10:00:50 +00:00
Robert Osfield
9fcace0e73
Added GraphicsContext support for clearing the graphis context. The clearing
...
is off by default (ClearMask is 0), but can be switched on when ClearMask is
non zero. GraphicsContext::clear() is called after each swap buffers
2007-01-05 15:24:06 +00:00
Robert Osfield
73fffe1800
Made Refernced::setThreadSafeReferenceCounting(bool) a virtual then overrode
...
this in various scene graph classes to ensure that the scene graph gets
updated as well as the objects that the initialial call is made from.
2007-01-04 16:49:58 +00:00
Robert Osfield
ff195bddf5
Added Object::resizeGLObjectBuffers(uint) method to help improve the ability
...
to change the number of active graphics contexts on the fly during an applications
life.
2007-01-04 14:11:51 +00:00
Robert Osfield
1de65ddedc
Added setting of default backgroud colour of View's master colour to be
...
consistent with the previous default colour used by SceneView
2007-01-03 17:26:24 +00:00
Robert Osfield
3eaa9ff05b
Changed the View's master camera projection matrix setting so that it is
...
consistent with osgProducer::Viewer default setting.
2007-01-03 16:32:44 +00:00
Robert Osfield
4f87afdbf5
Improved the robustness of thread start and cancellation
2007-01-03 16:06:12 +00:00
Robert Osfield
740363133f
Fixed the COPY_OP( Array, DEEP_COPY_ARRAYS); entry.
2007-01-02 20:26:49 +00:00
Robert Osfield
7155f7d1b0
Various work on osgViewer library, including warp point and graphics window resize support
2007-01-01 18:20:10 +00:00
Robert Osfield
93dbfa04b7
Aded new convinience methods to osg::Timer - s/getStartTick and time_s(), time_m() etc
...
to help get time reletive the new start tick.
2006-12-26 17:37:06 +00:00
Robert Osfield
39c0c2df76
Unified the osg::GraphicsThread::Operation and osg::GraphicsContext::Operation classes
...
as osg::GraphicsOperation. Unpdated parts of OSG depending upon these.
Added a virtaul bool valid() method to osg::GraphicsContext to allow apps to
test whether a valid graphis context has been created or not.
2006-12-24 16:40:19 +00:00
Robert Osfield
76461b3ab2
Added support for sample and sampleBuffers to osg::GraphicsContext::Traits and
...
cleaned up the Traits naming
2006-12-22 21:53:44 +00:00
Robert Osfield
bd6b7d581e
Implemented perliminary multi-threading support in osgViewer::Viewer
2006-12-22 17:46:21 +00:00
Robert Osfield
4fc9af7ea0
Moved rendering support into GraphisContext, osgViewer::Viewer/View, and
...
added frame stamp updating and update traversal to osgViewer::Scene/Viewer.
Updated osgcamera example to use new Viewer API calls instead of using local
rendering calls.
2006-12-21 16:56:20 +00:00
Robert Osfield
c9c2950759
Moved UnitTestFramework from core osg lib into osgunittests example
2006-12-19 17:06:59 +00:00
Robert Osfield
dcebe4daa0
Added initial GraphicsWindowX11 implementation, and fleshed out more of the
...
osgViewer and osg::GraphicsContext/osg::View infrastructure.
2006-12-19 16:00:51 +00:00
Robert Osfield
afc77f9b39
Added support WindowingSystemInterface for querring the number of screens, the screen size and creating GraphicsContexts.
2006-12-17 20:49:01 +00:00
Robert Osfield
982a4db9e2
Added ViewPoint support into NodeVistor/CullStack/CullVisitor/LOD/PagedLOD etc to facilate
...
management of LOD settings for RTT cameras.
2006-12-15 17:27:18 +00:00
Robert Osfield
693302574d
From Rein Kadijk, "While displaying a certain scene, OsgEdit crashed in ProxyNode::traverse() in file OSG_OP_OT-1.2\OpenSceneGraph\src\osg\proxynode.cpp.
...
It turned out that nv.getDatabaseRequestHandler() returned NULL; using this pointer to call one of DatabaseRequestHandler's methods is of course illegal.
I patched it by adding: if (nv.getDatabaseRequestHandler())"
From Robert Osfield, reordered the addition of the nv.getDatabaseRequestHandler() check to allow the
default traverse() to be called when no database handling is attached to the visitor.
2006-12-05 16:45:27 +00:00
Robert Osfield
a9d18d01db
Basic shadow volume alogirthm implemented in example.
2006-11-30 16:30:24 +00:00
Robert Osfield
345810ef22
Added support for float or double osg::Plane, and the default osg::Plane to double.
...
Performance tests on big models did not indicate any performance penalty in using doubles over floats,
so the move to doubles should mainly impact precision improvements for whole earth databases.
Also made improvements to osgUtil::PlaneIntersector and osgSim::ElevationSlice classes
2006-11-28 16:00:52 +00:00
Robert Osfield
fd2ffeb310
Renamed osg::CameraNode to osg::Camera, cleaned up osg::View.
...
Added beginnings of new osgViewer::Scene,View,Viewer,CompositeViewer and GraphicsWindowProxy files.
2006-11-27 14:52:07 +00:00
Robert Osfield
d0df2df7ad
Replaced the setTextureUnit(0) call in State::reset() with code that just
...
sets the member variables without requiring a graphics context.
2006-11-21 16:59:04 +00:00
Robert Osfield
2151573ccd
From Michael Platings, Fixed Geometry cloning of the texture
...
coordinates and vertex attributes.
2006-11-16 16:25:29 +00:00
Robert Osfield
d0cc014f1b
Further migration to using RenderInfo
2006-11-14 12:51:31 +00:00
Robert Osfield
7cb1bcbd7d
From Farshid Lashkari, "This patch adds a CoordOriginMode to the osg::PointSprite attribute.
...
The mode needs to be changed to LOWER_LEFT when rendering point
sprites to pbuffers or FBOs, otherwise the points will be transformed
on the CPU."
2006-11-14 12:29:54 +00:00
Robert Osfield
c3f3093ecc
From John Kelso, add support for default frame time for children of a Sequence node
2006-11-10 15:25:04 +00:00
Robert Osfield
c5c4c5da1d
From Edgar Ellis, "
...
method may not take the node into consideration when computing its bound.
In this case of:
switch->insertChild(0, child, false);
switch->insertChild(1, child, true);
child will not be used in computeBound, but will be drawn.
Solution:
Changed compute bound to loop over children using an index instead of an
iterator. This behaviour matches that of the traverse method."
-----------------------------------------------
2006-10-30 12:14:00 +00:00
Robert Osfield
f257285efc
From Chuck Seberion, added support reading ARB float format textures.
2006-10-14 21:50:29 +00:00
Robert Osfield
660cda57c8
From Terry Welsh, mplemented POINT_ROT_EYE.
2006-10-14 21:47:13 +00:00
Robert Osfield
97fc2dfa21
Fixed texture coordinates of cylinder ends.
2006-10-14 10:07:21 +00:00
Robert Osfield
842b96bbc9
From Colin McDonald, "I've included render bin checks in the StateSet::compare function, because
...
without them the Optimizer can incorrectly eliminate (otherwise identical)
StateSets from different render bins."
2006-10-02 15:59:43 +00:00
Robert Osfield
e0599f652e
Added releaseGLObjects to NodeCallbacks, Drawable::DrawCallbacks and wired up
...
osgProducer to use it when doing cleanup_frame.
2006-10-02 15:38:31 +00:00
Robert Osfield
eb68735ff9
From Farshid Lashkari, "The ColorControl of osg::LightModel is never applied because it
...
incorrectly checks for a valid OpenGL version. Instead of checking if
the current version is exactly 1.2, it will check if the version is
greater than 1.2."
2006-10-02 13:40:58 +00:00
Robert Osfield
35d134f712
From Farshid Lashkari, added function for querring whether a mode is a texture related mode or not.
2006-09-21 10:01:27 +00:00
Robert Osfield
0dcf5271f1
Added missining initialization of _radius in constructors
2006-09-20 13:41:33 +00:00
Robert Osfield
cc202c1b6d
Updates for fade text to work properly, but only in perspetive views at present.
2006-09-20 10:36:21 +00:00
Robert Osfield
def74d3471
Introduced new osg::View, and osg::RenderInfo classes into the core OSG to help
...
handle scenes with multiple views with elements that need coordinating on a per view basis.
Added beginings of new osgText::FadeText class (not functionality yet).
2006-09-18 20:54:48 +00:00
Robert Osfield
c7906d5412
Added a check for zero length line segment in bool LineSegment::intersect(const BoundingSphere& bs,float& r1,float& r2) const.
2006-09-12 12:35:20 +00:00
Robert Osfield
5915584b37
Revised the osg::ClampColor API to allow vertex, fragment and read color clamping to
...
be applied together.
2006-09-12 09:26:42 +00:00
Robert Osfield
daa54a3b09
From Farshid Lashkari,
...
"I've made some changes to osg which I think make it easier to control
the render order of CameraNode's. Instead of using the built-in orders
(PRE_RENDER, POST_RENDER, NESTED_RENDER), you can specify an integer
order. Values less than zero are pre rendered in order. Values greater
than zero are post rendered in order. And a value of 0 is equivalent
to NESTED_RENDER.
The changes should be fully backward compatible. Also, I changed the
RenderStageList type from a vector to a list because I needed to be
able to insert values anywhere in the list.
The reason I made these changes was because I wanted to be able to set
the render order of a CameraNode at runtime without having to reorder
it in the scenegraph."
and later in the final submission message (relating to what has been finally been merged) :
"I've rethought my implementation and came up with something a little
better. The setRenderOrder will continue to take an enum, but will
have an optional orderNum parameter which can be both positive and
negative. I think this method is more intuitive and flexible."
2006-09-04 13:15:08 +00:00
Robert Osfield
f0277df858
Added osg::TexMat::s/getScaleByTextureRectangleSize feature that allows
...
one to use the osg::TexMat to automatically scale non dimensional tex coordinats to
the size of the last texture rectangle applied.
2006-09-04 12:46:49 +00:00
Robert Osfield
87a221445e
Updated version numbers of the up comming 1.2 release
2006-08-31 20:54:28 +00:00
Robert Osfield
113c1dfc3e
From Eric Wing, "Attached is a change for GLExtensions.cpp that allows OS X to use
...
dlopen/dlsym instead of NS*Symbol* functions for 10.3 or later. The
latter is now deprecated.
I'm not completely sure how to test the changes. But I compiled these
new changes in and ran the osgvertexprogram and osgshaders examples
and they seemed to display the same results as before.
With respect to the use of dlopen and dlsym, I was uncertain if the
usage should look like Sun or FreeBSD (or something else). Apple's man
pages discourage the use of RTLD_DEFAULT so I avoided the FreeBSD
implementation and copied the Sun implementation. I'm not sure if this
is correct/ideal or not."
2006-08-31 20:48:49 +00:00
Robert Osfield
179f6100a0
Added missing setDataType and setPacking functions
2006-08-25 15:49:29 +00:00
Robert Osfield
0900857333
From Farshid Lashkari,
...
"I was experiencing hard crashes of my application when using PBO's on
machines that don't support PBO's. I think osg incorrectly checks if
PBO's are supported.
I added a new method to the BufferObject::Extensions class which
returns if the "GL_ARB_pixel_buffer_object" string is supported. This
fixes the problem on my end. Machines without PBO support will
continue to work and machines with PBO support will still be able to
use it."
2006-08-25 08:48:16 +00:00
Robert Osfield
1413eea52c
Add error message report to catch attempts to flip mipmap images.
2006-08-24 16:33:23 +00:00
Robert Osfield
be60b32add
Fixed texture optimization problem associated with mixing already compiled scene graphs - resulting
...
in incorrect texture assignment. Solution was to a compareTextureObjects() test to the Texture*::compare(..) method that
the osgUtil::Optimizer::StateSetVisitor uses to determine uniqueness.
2006-08-14 19:42:22 +00:00
Robert Osfield
a16568254c
Moved reset to 0 of _createReuseMatrixIndex from CullVistor.cpp to CullStack.cpp so that
...
CullStack::reset works correctly for all subclasses - fixing a memory consumption issue with occluders
2006-08-12 18:19:43 +00:00
Robert Osfield
132f9ead45
Updated version number for 1.1.1 release
2006-08-12 08:29:16 +00:00
Robert Osfield
306743c903
Fixed bug in Group::setChild relating to the accounting for OccluderNode.
2006-08-11 12:53:57 +00:00
Robert Osfield
b832453c10
From Uwe Woessner, implementated by Robert Osfield, Fixed vertex attribute bug, changed _vertexAttribList[unit] -> _vertexAttribList[index]
2006-08-04 13:17:56 +00:00
Robert Osfield
7ef12b37b5
Changed:
...
static TextureGLModeSet s_textureGLModeSet;
To:
static TextureGLModeSet& getTextureGLModeSet()
{
static TextureGLModeSet s_textureGLModeSet;
return s_textureGLModeSet;
}
to prevent static initialization problems under static builds.
2006-08-03 13:35:21 +00:00
Robert Osfield
0336231321
Moved extension function pointer initilization into a method, and the pointers from
...
being static to be local member variables. This should avoid issues under Windows
with multiple graphics contexts have seperate entry points.
2006-08-02 16:14:17 +00:00
Robert Osfield
4d556c0ec4
Reworked the TextureObjectManager singleton so that it no longer reconstructed itself once deleted, and added checks to against a null manager to prevent calling code crashing.
2006-08-02 15:41:47 +00:00
Robert Osfield
564ee34f76
Added Matrix*::getRotate()/setRotate(Quat), deprecating Matrix*::get(Quat&), Matrix*::set(Quat&)
2006-07-31 17:31:21 +00:00
Robert Osfield
f977d7c606
Updated osgunittests with a matrix invert unit test, and added a conditional
...
calling of invert_4x4 or invert_4x3 depending on the the right hand column of the matrix.
Updated wrappers
2006-07-28 13:48:08 +00:00
Robert Osfield
a5ea4e0b33
From David Spilling, "Matrix_implementation.cpp modified as requested. I ran a version of it through a local version of osgunittests.cpp and it passes.
...
Note that firstly it always returns the positive real quaternion (positive w)
Note also that it will sometimes slightly differ from the results of the other methods because it assumes that the input matrix really is a rotation matrix - if it isn't, e.g. because of rounding error, then the output quaternion will be very slightly different. For example, the test matrix
0 1 0 0
1 0 0 0
0 0 0.999999 0
0 0 0 1
will return 0.707107 0.707107 0.0005033 0.0005033
whereas the previous methods return 0.707107 0.707107 0.0 0.0
However, since quaternions are rotations, the meaning of how to convert a matrix that isn't a rotation is a little unclear..."
2006-07-27 15:23:50 +00:00
Robert Osfield
3e8af92da1
From David Spilling, fix to Matrix::get(Quat&)
2006-07-27 11:14:28 +00:00
Robert Osfield
d9b6d87d5a
Cleaned up per context buffers support
2006-07-26 15:29:26 +00:00
Robert Osfield
f1c2694c17
Updated copyright years.
2006-07-18 15:21:48 +00:00
Robert Osfield
419e185895
From Eric Wing, add alternate backdrop implementations.
...
From Robert Osfield, updated naming and copy constructor methods.
2006-07-18 12:24:04 +00:00
Robert Osfield
a74801a0ee
Added Optimizer::FlattenBillboardsVisitor.
2006-07-18 11:03:46 +00:00
Robert Osfield
2ef59b73e9
Change Unit to Units to keep consistent with OpenGL naming.
2006-07-17 11:43:26 +00:00
Robert Osfield
e8235f6967
Changed the Radeon defaults to 1, 128 for the factor and unit mulitpliers respectively.
2006-07-17 10:24:31 +00:00
Robert Osfield
9f81ef8561
Implemented Radeon workaround for polygonoffset
2006-07-14 14:38:55 +00:00
Robert Osfield
4bae225d39
Added s/getFactorMultiplier(), s/getUnitMultiplier(), areUnitAndMultipliersSet() and
...
setFactorAndUnitMultipliersUsingBestGuessForDriver() static methods to
osg::PolygonOffset to help implement workarounds for lack of portablity of
settings between different hardware.
2006-07-14 14:08:33 +00:00
Robert Osfield
0b32213394
From Eric Sokolowsky,
...
"If a texture is used that is not a multiple of four, and compression
was requested through the texture's internal format, the texture's
internal format reverts to a non-compressed type and a NOTICE is given.
At present, compressed textures must have a multiple of four in each
dimension."
2006-07-06 14:14:19 +00:00
Robert Osfield
865ee4429c
From Eric Sokolowsky,
...
"Attached is some fixes for Image::readImageFromCurrentTexture. It was
failing when used with a new Image object (some of the fields were
not set before they were used, and some were set to the wrong values).
A new optional parameter was added to give the desired data type, which
defaults to GL_UNSIGNED_BYTE, so programs should only need a recompile
to work properly."
2006-07-06 14:02:14 +00:00
Robert Osfield
88609a5eee
Updated version numbers for 1.1 release
2006-07-06 10:28:12 +00:00
Robert Osfield
d7f1c34df8
From Eric Sokolowsky, "The attached Texture.cpp fixes a problem when subloading compressed
...
textures. Near the top of the function that implements texture
subloading, osg::Texture::applyTexImage2D_subload(), the local variable
compressed_image examines the _image's_ pixel format to see if it is
compressed. However, further on, in calls to getCompressedSize() the
_texture's_ pixel format is used. In my application's Texture2D class,
I use osg::Texture::USE_ARB_COMPRESSION to
osg::Texture2D::setInternalFormatMode(), which causes the internal format
to become one of the generic ARB_COMPRESSED types, which do not have a
specific size. Thus the recent warning message added to
osg::Texture::getCompressedSize() is triggered. The correct behavior is
to use the format mode from the Image class instead of the Texture class
within the subload implementation, and then the size is calculated
correctly."
2006-07-05 21:52:36 +00:00
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
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
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
84618ffcb3
Merged RenderToTextureStage functionality into RenderStage
2005-08-17 10:12:49 +00:00
Robert Osfield
d48841f09b
Fixed indenting and typo
2005-08-09 10:47:21 +00:00
Robert Osfield
e534e4d1ed
Added setStateSet(0) to destructors to force the problem clean up of attached
...
StateSets.
2005-07-30 18:44:18 +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
83da1b0894
From Brede Johansen, fix to the isImageTranslucent() method.
2005-07-26 16:05:42 +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
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
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
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
0e4b263ddb
Fix PagedLOD::addChild(,,) so that they allocate the correct size of range data.
2005-07-14 20:32:25 +00:00
Robert Osfield
aece690d8e
Removed the set culling active flag setting
2005-07-14 10:34:46 +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
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
4e0a5e5069
Added missing dirtyBound().
2005-06-27 08:54:43 +00:00
Robert Osfield
e8cc8f06c5
From Martijn Kragtwijk: "I ran into the same problems as Karl Martensson
...
(http://openscenegraph.org/archiver/osg-users/2005-June/0575.html );
after switching children of a Switch node off and on again, they become
unpickable. This issue occurs first in 0.9.9, with 0.9.8 everything is fine.
My fix involves calling dirtyBound() every time the on/off-values of the
Switch are changed"
2005-06-24 15:34:46 +00:00
Robert Osfield
3baa8cdad2
Disabled NPO2T on GeforceFX.
2005-06-22 11:02:37 +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
c5cad6982e
Further FBO support work.
2005-06-16 14:01:38 +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
bc76fbf60d
Added automatic creation of texture when size is set but not osg::Image is assigned.
...
This is useful for FBO usage.
2005-06-15 20:05:47 +00:00
Robert Osfield
92087ee5ac
From David Guthrie, " In the constructor
...
in removes any options beginning with "-psn" from argv on OSX by
calling the "remove" method. When a .app run is created in OSX,
which is required to get a fully functioning UI application, the OSX
finder passes a -psn_XXXX option to the application where the XXXX
refers to a unique process number. An example option would be "-
psn_0_37617665". The argument parser was choking on this option in
all the osg example applications."
2005-06-15 11:49:25 +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
4fb9039d0c
Fixed position of glBindBuffer.
2005-06-14 08:48:48 +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
fee1e75fe0
Changed char* to const char*
2005-05-31 05:47:40 +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
f6298daae4
Added env var report.
2005-05-20 06:39:41 +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
51458ceea7
Fixed copy and paste mistakes in setEventCallback methods
2005-05-18 18:31:03 +00:00
Robert Osfield
4645217733
Added RADEON as render type for disabling mipmapped NPO2T
2005-05-17 20:12:13 +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
428608e781
Warning fixes for IRIX
2005-05-16 15:51:57 +00:00
Robert Osfield
a209542c60
Added missing Uniform(Matrixd) constructor implementation
2005-05-12 19:05:33 +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
fe384e53c7
Added clear of lazy uniform updating structure on relink, also added debug
...
output of shader being compiled.
2005-05-12 08:54:11 +00:00
Robert Osfield
679c44f4ae
Changed the info log so that it output to INFO on success, to WARN when an
...
error has occured.
2005-05-11 19:32:57 +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
d681d47c72
Moved the infolog to the error handling block and upping its notification
...
level to WARN to provide better feedback on failure with needing to use
DEBUG notification level.
2005-05-10 18:21:31 +00:00
Robert Osfield
1afd5e48a7
Added support for PROTECTED and OVERRIDE to uniforms.
2005-05-10 13:56:05 +00:00
Robert Osfield
7d6c90aaa4
Added missing copy of _stereo
2005-05-08 15:24:26 +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
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
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
68032dafc8
Commented out notify messages to prevent crash under OSX at start up.
2005-04-29 13:30:59 +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
59ebf86dd0
Added #include <algorithm> for VS.NET build
2005-04-26 11:20:19 +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
baa9af49c4
Reduced the verbosness of debugging messages
2005-04-25 14:28:16 +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
8b4f9dce60
From Mike Weiblen, added support for samplers and mat4 to .osg
2005-04-22 07:13:50 +00:00
Robert Osfield
496227d239
From Mike Weiblen, removed Uniform not quite ready notice,
...
and added .h files into osgshaders project file.
2005-04-20 18:50: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
1525a00e1f
From Mike Weiblen,added debug info to osg::Program and changed shader uniform names to
...
avoid conflict with built in functions
2005-04-16 10:11:18 +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
678b22ce83
Updated Copyright notices to 1998-2005.
2005-04-14 21:41:28 +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
789cb7dea7
Added applying of all parents uniforms
2005-04-13 14:31:25 +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
4fec031e6c
Moved #include <osg/State> from header into .cpp to clean up build.
2005-04-11 15:17:24 +00:00
Robert Osfield
2fb3d9aae5
Fixed warning, and sorted entries in GNUmakefile
2005-04-11 10:12:32 +00:00
Robert Osfield
d31cd3dce6
From Mike Weiblen, updates to GL Shadler Language support
2005-04-08 13:10:44 +00:00
Robert Osfield
7d24d9fdd5
Added #include <algorithm>
2005-04-08 12:22:03 +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
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
d160b4977b
Fixed the MatrixTransform(Matrix&) constructor so that it correct sets _inverseDirty = true;
2005-04-07 15:27:53 +00:00
Robert Osfield
2e32a7cb78
From Carlo Camporesi,fixed for loop bug
2005-04-04 11:47:50 +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
Robert Osfield
60597f4bbb
Fixed the scaling in pixelSize computation and the autoscale usage of it.
2005-03-23 10:46:08 +00:00
Robert Osfield
667ecd91f1
From Alberto Farre, fixes to ProxyNode.
2005-03-18 10:00:16 +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
7bf72cd43b
From Marco Jez, improved Texture2D and Image handling of compare().
2005-03-07 14:30:55 +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
d0c79ea638
From Mike Weiblen, warning fix for VS7.1
2005-03-07 12:05:48 +00:00
Robert Osfield
a139d28a12
Added the use of pixel buffer object in ImageStream so that it is only
...
compiled in on non OSX platforms.
2005-03-07 12:05:22 +00:00
Don BURNS
678281f2f2
In osg::isGLUExtensionSupported, fixed gluGetString to call GLU_EXTENSIONS
...
rather than GL_EXTENSIONS.
2005-03-02 15:06:23 +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
feb06f7e4b
Added improved PBO support.
2005-02-22 13:34:24 +00:00
Robert Osfield
25658ad31f
Fixes from Marco Jez.
2005-02-22 11:55:30 +00:00
Robert Osfield
64e6b79340
Changed the Switch::addChild(Node*) behavior so it doesn't override the
...
any pre-exisitng _values value.
2005-02-22 10:08:01 +00:00
Robert Osfield
5215d43e14
warning fix
2005-02-10 20:21:01 +00:00
Robert Osfield
ec8624f185
Implemented the osg::Image::isImagTranslucent function.
2005-02-10 15:52:18 +00:00
Robert Osfield
021440b9a4
Commented out the debug messages, added back in the audio into the xine plugin
2005-02-09 12:29:09 +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
c3c3ed8519
Added support for 8 parameters.
2005-02-01 09:00:10 +00:00
Robert Osfield
9a93d7ae06
Fixes to osg::Image's handling of compressed formats.
2005-01-27 20:18:49 +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
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
fa4eaae122
From Frederic Marmond, add osg::LogicOp for support for glLogicOp.
2004-12-13 04:54:20 +00:00
Don BURNS
b84342c59a
Spelling errors fixed by Brede Johansen
2004-12-07 00:42:21 +00:00
Don BURNS
3412c6811e
Changed the strcmp() to use std::string instead.
2004-12-06 19:32:59 +00:00
Don BURNS
1771cdbcc7
Update version numbers in files
2004-12-04 23:38:24 +00:00
Robert Osfield
c5f5373e05
Added missing OSG_SCREEN_WIDTH docs
2004-11-26 21:35:36 +00:00
Robert Osfield
f213e473f3
From Fabien Dachicourt, bug fix to addChild(node,value)
2004-11-23 17:07:48 +00:00
Robert Osfield
5adff5c15e
Added support for pixel based LOD's and set the default priority scale to 1.0
2004-11-20 12:08:33 +00:00
Robert Osfield
796b4cbe8d
Added support for pixel range to PagedLOD
2004-11-20 11:48:28 +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
7d43aee78d
Made the use of the standard clock default instead of the RDTSC calls to avoid
...
problems with variable CPU frequency such as found on laptops.
2004-11-14 10:41:48 +00:00
Robert Osfield
a0fc9632b8
Fixed warnings.
2004-11-13 21:42:45 +00:00
Robert Osfield
b60304f8ad
Improvements to support for archives
2004-11-12 08:55:11 +00:00
Robert Osfield
fd9063628a
Added guard to testing _internalFormat in compareTexture(..) so that
...
a comparison would only be done if both the lhs and rhs had already been
set to a non zero value.
2004-11-08 16:39:10 +00:00
Robert Osfield
3fde44b5a5
Made fix to the setReferenceFrame method to properly disable culling
...
when reference frame is ABSOLUTE.
2004-11-06 10:18:55 +00:00
Robert Osfield
d548d77010
From Tree chagenes required for Java Wrappers
2004-11-01 16:14:53 +00:00
Robert Osfield
48191bb1ab
From Anders Backman, unit tests to test matrix to quat compute.
2004-10-28 13:40:09 +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
f86be80c20
Added support for hardware generated mipmaps into Textre2D::copy*() methods.
2004-10-18 18:31:04 +00:00
Robert Osfield
4c8e48c9e7
From Yuzhong Shen, fix to the image dimensions passed to allocImage in Image::copySubImage
2004-10-18 14:46:57 +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
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
c27bf441e2
Improved the osg::Geometry::computeCorrectBindingsAndArraySizes() implemention
...
so that it produce more optimal settings.
Changed flt/GeoSetBuilder so that it doensn't merge geometry, as it was
merging geometry even when inappropriate.
2004-10-06 20:32:09 +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
5ecfb11e1b
Changed the argument parser to accept strings that start with a - as being
...
valid strings.
2004-10-01 18:32:42 +00:00
Robert Osfield
884544c52c
Added setPlanesFromMatrix method
2004-10-01 15:48:58 +00:00
Robert Osfield
08d4fdefb0
Fixed newly introduced compressed mipmnap error.
2004-09-30 12:10:45 +00:00
Robert Osfield
d204a087c3
Added proper handling of 3d texture compression
2004-09-30 09:10:29 +00:00
Robert Osfield
e08328a449
Preliminary steps to support for compressed 3D textures.
2004-09-29 10:01:46 +00:00
Robert Osfield
7b826228bb
From Brad Christiansen, fix expandBy(const BoundingSphere&) method to properly
...
handle the instance of when the two bounding sphere's have a coincident center.
2004-09-28 07:15:01 +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
7e5c87de6a
Changed the version strings to use OpenSceneGaph rather than "Open Scene Graph"
2004-09-27 12:07:34 +00:00
Robert Osfield
1b31024cd5
Clean up of new DatabasePager code, and change of osgProducer so that
...
DatabasePager support is now integrated into the OsgSceneHandler.
2004-09-23 18:50:38 +00:00
Robert Osfield
5b0739bcf0
Updates for better DatabasePager peformance w.r.t constant frame rates.
2004-09-23 12:27:56 +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
63f8935afb
From George Papagiannakis, added extra Quat length to catch case
...
where length is zero.
2004-09-13 14:33:41 +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
a36b10ac24
From Marco Jez, added missing TexGenNode constructor.
2004-09-06 14:30:25 +00:00
Robert Osfield
d9af748b78
From Tom Jolly, add detection for whether multi-texturing is supported before
...
checking for number of texture units supported, using 1 as a fallback value
2004-09-01 10:41:50 +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
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
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
2733324701
Fixed the Matrix::get(Quat&) method
2004-08-30 18:51:42 +00:00
Robert Osfield
f15877f89b
Changed the AnimationPathCallback::reset() to reset the _firstTime to DBL_MAX
...
so that it resets on the next update traversal.
2004-08-24 18:23:53 +00:00
Robert Osfield
b2d39d7f5b
Added s/getLoopingMode() to ImageStream and MPEG plugin
2004-08-24 12:55:15 +00:00
Robert Osfield
1a455e1aad
Rejigged the __int* definitions to try and get round Mingw compile errors
2004-08-18 06:06:02 +00:00
Robert Osfield
5460013a92
From Bruce Clay, fixes for VS6.0 build.
2004-08-17 19:42:45 +00:00
Robert Osfield
a1fc4b986c
Changed sizeof(..) references to 1,2,4 respectively.
2004-08-17 18:56:24 +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
a9cb803404
Added a handling of different hex long long handling for VS and non
...
VS.
2004-08-16 21:03:41 +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
bb6fe74738
Fixed _MSC_VAR reference
2004-08-16 16:43:17 +00:00
Robert Osfield
8c1f1e05c8
Added fxtctool in prep for adding compressed imagery swap
2004-08-16 15:43:12 +00:00
Robert Osfield
6c3eb95f7b
Disabled the culling for clear node.
2004-08-16 08:55:48 +00:00
Robert Osfield
61033103bc
Removed inappropriate #ifdefs
2004-08-13 10:49:45 +00:00
Robert Osfield
bd68cf9f50
Changed binding warnings to be reported as info rather than as warnings.
2004-08-07 19:08:12 +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
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
ddb7423e46
Set version numbers for 0.9.7 release
2004-08-05 08:02:48 +00:00
Robert Osfield
98d30a8ce0
From Pavel Moloshtan, fix to Image copy constructor so that it used the
...
correct size of image including mipmaps.
2004-08-03 18:06:36 +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
ebad31c3dd
Fixed warnings
2004-08-02 13:57:47 +00:00
Robert Osfield
6524fe1293
From Norman Vine, fixes for Mingw
2004-08-02 09:11:31 +00:00
Robert Osfield
40a1a39bff
Replaced GL_PACK_ROW_LENGTH by GL_UNPACK_ROW_LENGTH
2004-07-28 12:38:54 +00:00
Robert Osfield
7deea8531e
Clean up of debugging messages
2004-07-27 13:32:15 +00:00
Robert Osfield
654764a0e9
Fixed unref image so it only unref's when images are STATIC
2004-07-27 13:24:35 +00:00
Robert Osfield
bb5576bef8
Added support s/getImage(uint i) and getNumImages().
2004-07-27 10:11:45 +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
1963fac426
Replaced STOPPED by PAUSED.
2004-07-21 19:14:15 +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
3e5c491f54
Added debugging message, currently commented out.
2004-07-12 13:13:58 +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
788a19d3b5
Made debugging message write to osg::INFO instead of osg::NOTICE
2004-07-11 23:07:47 +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
ba20259794
Removed debugging message
2004-07-06 12:32:09 +00:00
Robert Osfield
b8aa8bfc40
Fixed warning.
2004-07-06 12:15:03 +00:00
Robert Osfield
518cedf6c7
Added dealloc or previous image data into readImageFromTexture
2004-07-05 21:46:02 +00:00
Robert Osfield
cce00c475b
Added suppor for copying mipmaps of compressed textures
2004-07-05 21:09:30 +00:00
Robert Osfield
1c2c5c4f43
From Ulrich Hertlein, added check for detailRatio<=0.0
2004-07-05 09:04:53 +00:00
Robert Osfield
c58891d168
Fixed missing member variable initialized varaibles
2004-07-05 07:42:46 +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
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
c45138f977
Fixed handling of PROCTED/OVERRIDE
2004-06-30 09:02:41 +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
fdbb1fe021
Re-organised Texture::computeInternalFormatWithImage() to avoid testing
...
for extensions when not required.
2004-06-28 22:09:52 +00:00
Robert Osfield
4c0aa24526
Added handling of GL_INTENSITY in osg::Image::computeNumComponents()
2004-06-17 15:07:50 +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
840d5d4930
From Loic Dachary, added missing copy contructor operations.
2004-06-16 15:05:01 +00:00
Robert Osfield
ad6bf73037
From David Fries, small treak to debugging output.
2004-06-16 06:02:12 +00:00
Robert Osfield
78d075eb24
Added new TexGenNode class for positioning tex gens.
2004-06-14 19:11:04 +00:00
Robert Osfield
773ffc0c05
Added better debugging messages for verify bindings.
2004-06-11 21:05:50 +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
6f82b37dd0
Improved the precision of animation paths.
2004-06-08 14:30:48 +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
c69a8a5b80
Added check to Quat::makeRotate(,,,) to catch zero lengh axis.
2004-06-04 10:05:18 +00:00
Robert Osfield
0fac56f56a
From Max Behensky, fixes to the computation of the number of primitives
2004-06-04 08:13:36 +00:00
Robert Osfield
eb3917060f
From George Tarantilis, fixes to DDS size computations.
...
From Robert Osfield, addition of constructors for internal DDS structures.
2004-05-25 16:10:28 +00:00
Robert Osfield
ab2b817e61
Made improvements to the handling of small rotations in Quat and
...
TerrainManipulator
2004-05-20 23:25:26 +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
867a1ae105
From Bob Kuehne, more general checks for existance of extensions.
2004-05-17 13:20:41 +00:00
Robert Osfield
45998cfdf7
Revert the computeNearFar mode to using bounding volumes as default.
2004-05-13 22:06:20 +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
1678066e6e
Changed the default near far calculation mode so that it uses the
...
fine grained computation of near/far.
2004-05-02 14:03: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
884099b11c
From Bob Kuehne, updated extension/version checking for border clamp extension.
2004-04-16 10:05:57 +00:00
Robert Osfield
97ef4985f7
From Eric Wing, clean ups for OSX support.
2004-04-11 21:21:38 +00:00
Robert Osfield
50d066d756
From Bob Kuehne, reworked code to use a marco instead of duplicated code,
...
done as measure for reducing the risk of copy and paste errors.
2004-04-02 15:45:34 +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
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
6800b7d29a
Added the setting of the _internalTextureFormat from within osg::Image.
2004-03-17 20:03:56 +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
6112a373c1
Replaced eronous GL_TEXTURE_2D instances with GL_TEXTURE_3D and GL_TEXTURE_RECTANGLE_NV
...
respectively.
2004-03-11 14:34:59 +00:00
Robert Osfield
b0aede8dfe
From Bob Kuehne, fixed eroneous use of GL_TEXTURE_2D token in texture object
...
manager usage
2004-03-11 14:34:08 +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
7c6734ff01
Added support for APPLE_client_storage to TextureRectange
2004-03-08 17:13:22 +00:00
Robert Osfield
358743f999
Added support for APPLE_client_storage of textures.
2004-03-08 17:09:58 +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
1e4bceb562
Added #include <memory> for Win32 build
2004-03-07 21:03:01 +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
f10a47ed75
From David Fries, changed the Win32 Timer init code across to using
...
QueryPerformanceCounter to avoid inaccurate and slow original Sleep based code.
2004-03-02 21:37:44 +00:00
Robert Osfield
e2469aece9
From David Jung, added support for osg::Capsule shape
2004-03-02 20:33:00 +00:00
Robert Osfield
57ed6ebb79
Warning fix
2004-02-24 12:04:48 +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
e36ceae483
Changed the Timer class to default to using the standard clock under
...
Linux to prevent Timer problems occur under Linux32 on the Athlon64.
2004-02-21 16:59:14 +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