15 #define OSG_TEXTURE3D 1
17 #include <osg/Texture>
44 void setImage(
Image* image);
55 return _modifiedCount[contextID];
65 virtual const Image*
getImage(
unsigned int)
const {
return _image.get(); }
76 _textureWidth =
width;
78 _textureDepth =
depth;
84 width = _textureWidth;
85 height = _textureHeight;
86 depth = _textureDepth;
101 virtual void load(
const Texture3D& texture,
State& state)
const = 0;
102 virtual void subload(
const Texture3D& texture,
State& state)
const = 0;
128 void copyTexSubImage3D(
State& state,
int xoffset,
int yoffset,
int zoffset,
int x,
int y,
int width,
int height);
133 virtual void apply(
State& state)
const;
139 void computeRequiredTextureDimensions(
State& state,
const osg::Image& image,GLsizei&
width, GLsizei&
height,GLsizei&
depth, GLsizei& numMipmapLevels)
const;
141 virtual void computeInternalFormat()
const;
142 void allocateMipmap(
State& state)
const;
144 void applyTexImage3D(GLenum target,
Image* image,
State& state, GLsizei& inwidth, GLsizei& inheight, GLsizei& indepth, GLsizei& numMipmapLevels)
const;
const Image * getImage() const
void setTextureHeight(int height)
virtual int getTextureDepth() const
void setNumMipmapLevels(unsigned int num) const
void getTextureSize(int &width, int &height, int &depth) const
GLint GLenum GLsizei GLsizei GLsizei depth
ImageModifiedCount _modifiedCount
ref_ptr< SubloadCallback > _subloadCallback
void setTextureDepth(int depth)
SubloadCallback * getSubloadCallback()
virtual GLenum getTextureTarget() const
virtual Image * getImage(unsigned int)
unsigned int & getModifiedCount(unsigned int contextID) const
GLint GLenum GLsizei width
const SubloadCallback * getSubloadCallback() const
virtual const Image * getImage(unsigned int) const
buffered_value< unsigned int > ImageModifiedCount
void setTextureSize(int width, int height, int depth) const
#define META_StateAttribute(library, name, type)
GLint GLenum GLsizei GLsizei height
virtual int getTextureWidth() const
unsigned int getNumMipmapLevels() const
virtual void setImage(unsigned int, Image *image)
void setTextureWidth(int width)
virtual unsigned int getNumImages() const
virtual int getTextureHeight() const
void setSubloadCallback(SubloadCallback *cb)