Commit Graph

84 Commits

Author SHA1 Message Date
Robert Osfield
edce2211fa From Romano Magacho, fixes to handle the subloading from Image when the
internal format changes requiring a rebuild of the texture object.
2004-01-23 13:25:45 +00:00
Robert Osfield
694aec666c Fixed bug in logic in areAllTextureObjectsLoaded() which was producing the
exact opposite result to what it should have been generating.
2004-01-19 11:01:45 +00:00
Robert Osfield
23443aa5db From Alberto Farre, added osgDB::SharedStateManager. Also a couple of
ammendments by Robert Osfield, adding get/setSharedStateManager()
methods into osgDB::Registry, and clean up fixes in SharedStateManager
for the StateSet arrays.
2004-01-10 17:13:20 +00:00
Robert Osfield
2cb360dd38 From Rommano Silva, admendments to Texture::computeRequiredTextureDimensions
so that it takes into account the current mip map settings.
2003-12-27 11:30:41 +00:00
Robert Osfield
3ee8ed15a6 Added _ARB to GL_COMPARE_R_TO_TEXTURE 2003-12-19 10:52:17 +00:00
Robert Osfield
8fefec9f47 From Pavel Moloshtan, added GL_ARB_shadow_support to osg::Texture. 2003-12-17 19:26:16 +00:00
Robert Osfield
de0253aac7 Changed the default wrap modes from REPEAT to CLAMP since CLAMP is the OpenGL
default value.
2003-12-15 23:22:35 +00:00
Robert Osfield
169eb0fd07 Changed applyTextParamaters() to set the wrap modes :
GL_TEXTURE_WRAP_S for all texture targets.
	GL_TEXTURE_WRAP_T for all texture targets except GL_TEXRTURE_1D
	GL_TEXTURE_WRAP_R for only GL_TEXTURE_3D

And changed the defaults to OpenGL defaults of GL_REPEAT.
2003-08-18 19:51:27 +00:00
Robert Osfield
282eb39ec5 Changed cout's to notufy(INFO). 2003-08-15 09:38:36 +00:00
Robert Osfield
a0d0803f1f Improvements to the handling of deletion of OpenGL rendering objets such as
display lists and textures object such that they can be deleted according
to an available amount of time given to do deletes.
2003-07-16 09:52:43 +00:00
Robert Osfield
82008d5ecd Updates to the flush rendering objects function calls to allow for
managment of amount of time available to do gl delete's.  This control is
required for constant frame rate applications.
2003-07-15 21:19:03 +00:00
Robert Osfield
1b9d7d458a Added support for texture object manager, which provides an automatic mechansim
for reusing deleted textures.
2003-07-14 14:42:10 +00:00
Robert Osfield
b5442ac835 Added support for the ARB_vertex_buffer_object into osg::Geometry. 2003-06-29 21:41:57 +00:00
Robert Osfield
aaa761e333 Added tests for presense of extensions to osgcubemap, osgvertexproram and
osgmultitexture examples.

Added osg::VertexProgram::Extensions class to better handle multiple graphics
context vertex program extensions.
2003-04-10 19:32:32 +00:00
Robert Osfield
8b03d59be3 Added support for modifying the osg::Texture*:Extensions stuctures.
Added an example modifying osg::Texture::Extensions to osgtext.  Optionally
compiled out by default.
2003-04-10 13:41:45 +00:00
Robert Osfield
9f0fa75484 Added support for unref image data after apply in the osg::Texture*
classes.  Only unref's after all graphics context have been applied.
2003-04-07 12:51:00 +00:00
Robert Osfield
7e58786b11 Moved the modified tag's from osg::Texture into the osg::Texture1D,2D,3D and
CubeMap classes.
2003-04-07 09:46:06 +00:00
Robert Osfield
0f3eaeba46 From Rune Schmidt Jensen - new dds loader. 2003-04-02 18:26:34 +00:00
Robert Osfield
5a974ab091 Fixes to osg::Texture's handling of anisotropy updating and
hardware generate mip mapping.

Added switching off generate mip map from osgText::Font.cpp.

Changed savedmodel.osg to saved_model.osg in ViewerEventHandler.
2003-04-01 20:32:57 +00:00
Robert Osfield
3975fc9b01 Improved handling of subloading.
Removed the rescalling of images in osg::Image during texture apply, moving
the rescale so it is locally calculated.  This solves an outstanding threading
problem which occured by multiple draw threads all tried to rescale the same
image at one time.

Made osg::Image ptr in osg::Texture2D non mutable as it is no longer modified
during apply.
2003-04-01 11:49:09 +00:00
Robert Osfield
b728b1dd99 Implemented load and subload methods in osg::Texture/Texture2D. 2003-03-31 21:41:17 +00:00
Robert Osfield
11a38e12f2 Made the default transparent bin be bin number 10 rather than 1 to allow
more bins between it and the default opaque bin of 0.

Added a check for compressed image format in osg::Texture.
2003-03-31 12:48:33 +00:00
Robert Osfield
55c25a551b Added support for using the generate mip map extension within osgText. 2003-03-04 15:47:28 +00:00
Robert Osfield
bd506b53da Removed last of the uint references. 2003-02-14 11:41:52 +00:00
Robert Osfield
8f1ba9d21b Removed include/osg/Types header defining osg::ubyte, osg::ushort etc. Changed
any reference to these in the distribution across to using unsigned char,
unsigned short etc.  This has been done to keep the OSG code more opaque
to what types are.
2003-02-12 19:20:47 +00:00
Robert Osfield
9aaf5a560b Changed the implementation of the texture objects and display list to delete
caches so that they use a std::vector<> swap on the internal data structures
when ready to delete to minimize the amount of time that a race condition
condition can happen.
2003-01-22 23:34:18 +00:00
Robert Osfield
48bda9cc79 Added new Copyright/License notice to header and source files. 2003-01-21 16:45:36 +00:00
Robert Osfield
f948a3de7c Fixed typo. 2003-01-09 18:41:01 +00:00
Robert Osfield
043839f40b Added #ifndef GL_TEXTURE_WRAP_S #define block to keep things compiling
on old drivers.
2003-01-09 16:13:30 +00:00
Robert Osfield
97da5d7f92 Fixed typo. 2003-01-09 11:48:49 +00:00
Robert Osfield
e8c2226e38 Added setting of the R wrap paramter to applyTexParamters(). 2003-01-09 10:06:44 +00:00
Robert Osfield
5fca8ea229 Moved Drawable across to using osg::buffered_value.
Added new osg::State::setInterleavedArray() method.

Added new osg::Group::setNode(uint,Node*) method.

Cleaned up and fixed the osg::Texture's handling of dirtyTextureParamters().
2002-11-19 10:56:59 +00:00
Robert Osfield
35b9317baf Fixes to typo of *Dirty() 2002-11-11 16:11:48 +00:00
Robert Osfield
55215651d7 Renamed osg::Primitive to osg::PrimitiveSet which better reflect what it
encapsulates.

Added new osg::IndexGeometry implemention, *not* complete yet.

Changed the rest of the OSG to handle the renaming og Primitive to PrimitiveSet.
2002-09-20 14:51:59 +00:00
Robert Osfield
9a9e88b78a Added missing isCompressedInternalFormat() method. 2002-09-18 16:05:26 +00:00
Robert Osfield
91df37b5c8 Further work on multiple context extensions. 2002-09-16 20:58:05 +00:00
Robert Osfield
5733cc1470 From Brede Johansen - Fixes to osg::Plane::valid and added a new set method.
From Stephan Huber - Compilation fix to Texture.cpp for OSX.

From Don Tidrow - added dirtyBound() to osgText::Text::setPosition
2002-09-12 13:23:15 +00:00
Robert Osfield
bb0022175b Added new buffered_value template class which encapsulates a std::vector but
initializes the array to the number of graphics contexts, and automatically
expands the array when indices outside the current size are required.

Added new osg::Texture::Extensions nested class to handle extensions on a per
context basis.
2002-09-05 11:42:55 +00:00
Robert Osfield
6ff24b338f Added support for multiple graphics contexts to osg::Texture and its
subclasses.
2002-09-04 08:14:04 +00:00
Robert Osfield
12226e4371 Converted the instances of const built in types being returned from methods
and passed as paramters into straight forward non const built in types,
i.e. const bool foogbar(const int) becomes bool foobar(int).
2002-09-02 12:31:35 +00:00
Robert Osfield
8353fc0ed6 Removed deprecated code from the distribution.
Added .osg support for Texture1D and Texture3D.
2002-08-28 15:28:11 +00:00
Robert Osfield
501f28449c Fixed typo of _texParametersDirty. 2002-08-26 20:11:24 +00:00
Robert Osfield
239068f223 Added new osg::TextureBase, osg::Texture1D, osg::Texture2D, and osg::Texture3D
classes, and changed osg::Texture and osg::TextureCubeMap so that they now derive
from osg::TextureBase.
2002-08-24 19:39:39 +00:00
Robert Osfield
7dfefaf67f Added new osg::Texture::SubloadCallback, and getNumMipmapLevels() to osg::Texture
and osg::Image.  This additions are design to make texture subloading more
flexible.
2002-08-16 13:33:32 +00:00
Robert Osfield
b9b013e15b Changed the support for anisotropic filtering in osg::Texture so that it
is now controlled via the setMaxAnisotropy(float) method, and is set up
independently for the mag filter mode, which it previously was done.
2002-08-07 15:52:24 +00:00
Robert Osfield
6a04fc3dee Integrated Ulrich Hertlien's osg::Sequence node, and osgsequence demo, and
support for osg::Sequence in the pfb loader.
2002-08-03 18:11:21 +00:00
Robert Osfield
0fa1b4a2ff Removed default value from constructor. 2002-07-29 11:02:14 +00:00
Robert Osfield
067dc6cddf Fixes to the new texture subloading methods. 2002-07-29 00:04:07 +00:00
Robert Osfield
6b59f66d80 Checked in new methods for setting up texture subloading, these allow the
user to control which parts on an image are subloaded from, and how big
the initial texture is.
2002-07-28 23:28:27 +00:00
Robert Osfield
05472135b0 Added set/getUnrefImageOnApply() methods and associated flag and
code in Texture::apply() to set the _image to 0 on apply.  Note,
this will only work when you have a single graphics context, as
with multiple graphics contexts one can't delete the image after
the first apply, as there will be more than one texture object to
update.
2002-07-28 21:25:32 +00:00