Inheritance diagram for osg::Texture3D:
Public Member Functions | |
Texture3D () | |
Texture3D (const Texture3D &text, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
META_StateAttribute (osg, Texture3D, TEXTURE) | |
virtual int | compare (const StateAttribute &rhs) const |
virtual bool | getModeUsage (ModeUsage &usage) const |
void | setImage (Image *image) |
Image * | getImage () |
const Image * | getImage () const |
unsigned int & | getModifiedTag (unsigned int contextID) const |
virtual void | setImage (unsigned int, Image *image) |
virtual Image * | getImage (unsigned int) |
virtual const Image * | getImage (unsigned int) const |
virtual unsigned int | getNumImages () const |
void | setTextureSize (int width, int height, int depth) const |
void | getTextureSize (int &width, int &height, int &depth) const |
void | setSubloadCallback (SubloadCallback *cb) |
SubloadCallback * | getSubloadCallback () |
const SubloadCallback * | getSubloadCallback () const |
void | setNumMipmapLevels (unsigned int num) const |
unsigned int | getNumMipmapLevels () const |
void | copyTexSubImage3D (State &state, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height) |
virtual void | apply (State &state) const |
Static Public Member Functions | |
static Extensions * | getExtensions (unsigned int contextID, bool createIfNotInitalized) |
static void | setExtensions (unsigned int contextID, Extensions *extensions) |
Protected Types | |
typedef buffered_value< unsigned int > | ImageModifiedTag |
Protected Member Functions | |
virtual | ~Texture3D () |
void | computeRequiredTextureDimensions (State &state, const osg::Image &image, GLsizei &width, GLsizei &height, GLsizei &depth, GLsizei &numMipmapLevels) const |
virtual void | computeInternalFormat () const |
void | applyTexImage3D (GLenum target, Image *image, State &state, GLsizei &inwidth, GLsizei &inheight, GLsizei &indepth, GLsizei &numMipmapLevels) const |
Protected Attributes | |
ref_ptr< Image > | _image |
GLsizei | _textureWidth |
GLsizei | _textureHeight |
GLsizei | _textureDepth |
GLsizei | _numMipmapLevels |
ref_ptr< SubloadCallback > | _subloadCallback |
ImageModifiedTag | _modifiedTag |
Classes | |
class | Extensions |
class | SubloadCallback |
|
|
|
|
|
Copy constructor using CopyOp to manage deep vs shallow copy. |
|
|
|
Bind the texture object. If the texture object hasn't already been compiled, create the texture mipmap levels. Implements osg::Texture. |
|
|
|
Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs. Implements osg::StateAttribute. |
|
Implements osg::Texture. |
|
|
|
Copies a two-dimensional texture subimage, as per glCopyTexSubImage3D. Updates a portion of an existing OpenGL texture object from the current OpenGL background framebuffer contents at position x, y with width width and height height. Loads framebuffer data into the texture using offsets xoffset, yoffset, and zoffset. width and height must be powers of two. |
|
Encapsulates queries of extension availability, obtains extension function pointers, and provides convinience wrappers for calling extension functions. Reimplemented from osg::Texture. |
|
Gets the const texture image, ignoring face. Implements osg::Texture. |
|
Gets the texture image, ignoring face. Implements osg::Texture. |
|
Gets the const texture image. |
|
Gets the texture image. |
|
|
|
|
|
Gets the number of images that can be assigned to the Texture. Implements osg::Texture. |
|
Gets the number of mipmap levels created. |
|
|
|
|
|
Gets the texture subload width. |
|
|
|
Overrides Extensions objects across graphics contexts. Typically used to ensure the same lowest common denominator of extensions on sustems with different graphics pipes. |
|
Sets the texture image, ignoring face. Implements osg::Texture. |
|
Sets the texture image. |
|
Helper function. Sets the number of mipmap levels created for this texture. Should only be called within an osg::Texuture::apply(), or during a custom OpenGL texture load. |
|
|
|
Sets the texture width, height, and depth. If width, height, or depth are zero, calculate the respective value from the source image size. |
|
It's not ideal that _image is mutable, but it's required since Image::ensureDimensionsArePowerOfTwo() can only be called in a valid OpenGL context, and therefore within Texture::apply, which is const. |
|
|
|
Number of mip map levels the the texture has been created with, |
|
|
|
|
|
|
|
Subloaded images can have different texture and image sizes. |