Hi Ken, Basically you just need to setup a TextureSubloadCallback for your specific type of texture(1D,2D,3D). This allows you to override the load and subload methods that you would encounter in gl. Then set the subloadcallback to your texture using:
Texture*D::setSubloadCallback(SubloadCallback* sb); Overrides are something like the following: load: //////////////////////////////////////////////////////////////////////////////////// void UpdateTextureCallback::load(const osg::Texture3D& texture,osg::State& state )const { texture.getExtensions(state.getContextID(),false)->glTexImage3D(GL_TEXTURE_3D, 0, GL_RGBA, _textureWidth, _textureHeight, _textureDepth, 0, GL_RGBA, GL_UNSIGNED_BYTE, (unsigned char*)_tm->dataField); } and subload : ////////////////////////////////////////////////////////////////////////////////////////////// void UpdateTextureCallback::subload(const osg::Texture3D& texture,osg::State& state) const { texture.getExtensions(state.getContextID (),false)->glTexSubImage3D(GL_TEXTURE_3D, 0, 0,0,0, _textureWidth, _textureHeight, _textureDepth, GL_RGBA, GL_UNSIGNED_BYTE, (unsigned char*)_tm->dataField); } You'll have to adjust this for your texture type (this is ours for 3D textures) but this should give you a general idea. biv On 10/19/07, Sewell, Kenneth R Civ USAF AFRL/RYZW < [EMAIL PROTECTED]> wrote: > > > Is there a good example of texture subloading in OSG? I have a large > image and just want to replace small tiles of the texture. Can anyone > give me a few starting pointers? > > > Ken. > _______________________________________________ > osg-users mailing list > osg-users@lists.openscenegraph.org > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org >
_______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org