Added proper handling of 3d texture compression

This commit is contained in:
Robert Osfield
2004-09-30 09:10:29 +00:00
parent a8739f952a
commit d204a087c3
6 changed files with 139 additions and 32 deletions

View File

@@ -507,6 +507,8 @@ class SG_EXPORT Texture : public osg::StateAttribute
void computeRequiredTextureDimensions(State& state, const osg::Image& image,GLsizei& width, GLsizei& height,GLsizei& numMipmapLevels) const;
bool isCompressedInternalFormat(GLint internalFormat) const;
void getCompressedSize(GLenum internalFormat, GLint width, GLint height, GLint depth, GLint& blockSize, GLint& size) const;
/** Helper method. Sets texture paramters. */
void applyTexParameters(GLenum target, State& state) const;

View File

@@ -201,6 +201,8 @@ class SG_EXPORT Texture3D : public Texture
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;