Texture state class which encapsulates OpenGl 3D texture functionality
Inheritance:
Public Methods
-
Texture3D()
-
Texture3D(const Texture3D& text, const CopyOp& copyop=CopyOp::SHALLOW_COPY)
- Copy constructor using CopyOp to manage deep vs shallow copy
-
META_StateAttribute(osg, Texture3D, TEXTURE)
-
virtual int compare(const StateAttribute& rhs) const
- return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs
-
virtual void getAssociatedModes(std::vector<GLMode>& modes) const
-
void setImage(Image* image)
- Set the texture image.
-
Image* getImage()
- Get the texture image.
-
inline const Image* getImage() const
- Get the const texture image.
-
inline void setTextureSize(int width, int height, int depth) const
- Set the texture width and height.
-
inline void getTextureSize(int& width, int& height, int& depth) const
- Get the texture subload width.
-
void setSubloadCallback(SubloadCallback* cb)
-
SubloadCallback* getSubloadCallback()
-
const SubloadCallback* getSubloadCallback() const
-
void setNumMipmapLevels(unsigned int num) const
- Set the number of mip map levels the the texture has been created with, should only be called within an osg::Texuture::apply() and custom OpenGL texture load
-
unsigned int getNumMipmapLevels() const
- Get the number of mip map levels the the texture has been created with
-
void copyTexSubImage3D(State& state, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height)
- Copy a two-dimensional texture subimage.
-
virtual void apply(State& state) const
- On first apply (unless already compiled), create the minmapped texture and bind it, subsequent apply will simple bind to texture
-
static const Extensions* getExtensions(uint contextID, bool createIfNotInitalized)
- Function to call to get the extension of a specified context.
-
static void setExtensions(uint contextID, Extensions* extensions)
- setExtensions allows users to override the extensions across graphics contexts.
Public Members
-
class SubloadCallback: public Referenced
-
class Extensions: public osg::Referenced
- Extensions class which encapsulates the querring of extensions and associated function pointers, and provide convinience wrappers to check for the extensions or use the associated functions
Protected Fields
-
mutable ref_ptr<Image> _image
-
mutable GLsizei _textureWidth
-
mutable GLsizei _textureHeight
-
mutable GLsizei _textureDepth
-
mutable GLsizei _numMimpmapLevels
-
ref_ptr<SubloadCallback> _subloadCallback
Protected Methods
-
virtual ~Texture3D()
-
virtual void computeInternalFormat() const
-
void applyTexImage3D(GLenum target, Image* image, State& state, GLsizei& inwidth, GLsizei& inheight, GLsizei& indepth, GLsizei& numMimpmapLevels) const
Inherited from Texture:
Public Methods
-
virtual osg::Object* cloneType() const
-
virtual osg::Object* clone(const CopyOp& copyop) const
-
virtual bool isSameKindAs(const osg::Object* obj) const
-
virtual const char* libraryName() const
-
virtual const char* className() const
-
virtual Type getType() const
-
virtual bool isTextureAttribute() const
-
void setWrap(WrapParameter which, WrapMode wrap)
-
WrapMode getWrap(WrapParameter which) const
-
void setBorderColor(const Vec4& color)
-
const Vec4& getBorderColor() const
-
void setFilter(FilterParameter which, FilterMode filter)
-
FilterMode getFilter(FilterParameter which) const
-
void setMaxAnisotropy(float anis)
-
inline float getMaxAnisotropy() const
-
inline void setInternalFormatMode(InternalFormatMode mode)
-
inline InternalFormatMode getInternalFormatMode() const
-
inline void setInternalFormat(GLint internalFormat)
-
inline GLint getInternalFormat() const
-
bool isCompressedInternalFormat() const
-
inline GLuint& getTextureObject(uint contextID) const
-
inline uint& getModifiedTag(uint contextID) const
-
inline uint& getTextureParameterDity(uint contextID) const
-
void dirtyTextureObject()
-
void dirtyTextureParameters()
-
static void deleteTextureObject(uint contextID, GLuint handle)
-
static void flushDeletedTextureObjects(uint contextID)
-
virtual void compile(State& state) const
Public Members
-
enum WrapParameter
-
enum WrapMode
-
enum FilterParameter
-
enum FilterMode
-
enum InternalFormatMode
-
Get the handle to the texture object for the current context
Protected Fields
-
mutable TextureNameList _handleList
-
mutable ImageModifiedTag _modifiedTag
-
mutable TexParameterDirtyList _texParametersDirtyList
-
WrapMode _wrap_s
-
WrapMode _wrap_t
-
WrapMode _wrap_r
-
FilterMode _min_filter
-
FilterMode _mag_filter
-
float _maxAnisotropy
-
Vec4 _borderColor
-
InternalFormatMode _internalFormatMode
-
mutable GLint _internalFormat
Protected Methods
-
void computeInternalFormatWithImage(osg::Image& image) const
-
bool isCompressedInternalFormat(GLint internalFormat) const
-
void applyTexParameters(GLenum target, State& state) const
-
void applyTexImage2D(GLenum target, Image* image, State& state, GLsizei& width, GLsizei& height, GLsizei& numMimpmapLevels) const
-
int compareTexture(const Texture& rhs) const
Protected Members
-
typedef buffered_value<GLuint> TextureNameList
-
typedef buffered_value<uint> ImageModifiedTag
-
typedef buffered_value<uint> TexParameterDirtyList
Public Methods
-
bool operator < (const StateAttribute& rhs) const
-
bool operator == (const StateAttribute& rhs) const
-
bool operator != (const StateAttribute& rhs) const
Public Members
-
typedef GLenum GLMode
-
typedef unsigned int GLModeValue
-
typedef unsigned int OverrideValue
-
enum Values
-
typedef unsigned int Type
-
enum Types
Inherited from Object:
Public Methods
-
inline void setDataVariance(const DataVariance dv)
-
inline const DataVariance getDataVariance() const
-
inline void setUserData(Referenced* obj)
-
inline Referenced* getUserData()
-
inline const Referenced* getUserData() const
Public Members
-
enum DataVariance
Protected Fields
-
DataVariance _dataVariance
-
ref_ptr<Referenced> _userData
Public Methods
-
inline Referenced& operator = (Referenced&)
-
inline void ref() const
-
inline void unref() const
-
inline void unref_nodelete() const
-
inline int referenceCount() const
-
inline static int createdCount()
-
inline static int deletedCount()
Protected Fields
-
mutable int _refCount
-
static int _createdCount
-
static int _deletedCount
Documentation
Texture state class which encapsulates OpenGl 3D texture functionality
- Texture3D()
- Texture3D(const Texture3D& text, const CopyOp& copyop=CopyOp::SHALLOW_COPY)
- Copy constructor using CopyOp to manage deep vs shallow copy
- META_StateAttribute(osg, Texture3D, TEXTURE)
- virtual int compare(const StateAttribute& rhs) const
- return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs
- virtual void getAssociatedModes(std::vector<GLMode>& modes) const
- void setImage(Image* image)
- Set the texture image.
- Image* getImage()
- Get the texture image.
- inline const Image* getImage() const
- Get the const texture image.
- inline void setTextureSize(int width, int height, int depth) const
- Set the texture width and height. If width or height are zero then
the repsective size value is calculated from the source image sizes.
- inline void getTextureSize(int& width, int& height, int& depth) const
- Get the texture subload width.
- void setSubloadCallback(SubloadCallback* cb)
- SubloadCallback* getSubloadCallback()
- const SubloadCallback* getSubloadCallback() const
- void setNumMipmapLevels(unsigned int num) const
- Set the number of mip map levels the the texture has been created with,
should only be called within an osg::Texuture::apply() and custom OpenGL texture load
- unsigned int getNumMipmapLevels() const
- Get the number of mip map levels the the texture has been created with
- void copyTexSubImage3D(State& state, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height)
- Copy a two-dimensional texture subimage. As per glCopyTexSubImage2D.
Updates portion of an existing OpenGL texture object from the current OpenGL background
framebuffer contents at pos \a x, \a y with width \a width and
height \a height.
- virtual void apply(State& state) const
- On first apply (unless already compiled), create the minmapped
texture and bind it, subsequent apply will simple bind to texture
- static const Extensions* getExtensions(uint contextID, bool createIfNotInitalized)
- Function to call to get the extension of a specified context.
If the Exentsion object for that context has not yet been created then
and the 'createIfNotInitalized' flag been set to false then returns NULL.
If 'createIfNotInitalized' is true then the Extensions object is
automatically created. However, in this case the extension object
only be created with the graphics context associated with ContextID..
- static void setExtensions(uint contextID, Extensions* extensions)
- setExtensions allows users to override the extensions across graphics contexts.
typically used when you have different extensions supported across graphics pipes
but need to ensure that they all use the same low common denominator extensions.
- virtual ~Texture3D()
- virtual void computeInternalFormat() const
- void applyTexImage3D(GLenum target, Image* image, State& state, GLsizei& inwidth, GLsizei& inheight, GLsizei& indepth, GLsizei& numMimpmapLevels) const
- mutable ref_ptr<Image> _image
- mutable GLsizei _textureWidth
- mutable GLsizei _textureHeight
- mutable GLsizei _textureDepth
- mutable GLsizei _numMimpmapLevels
- ref_ptr<SubloadCallback> _subloadCallback
- This class has no child classes.
Alphabetic index HTML hierarchy of classes or Java
This page was generated with the help of DOC++.