3D texture object class. More...

#include <texture_3d.h>

+ Inheritance diagram for clan::Texture3D:

Public Member Functions

 Texture3D ()
 Constructs a null instance. More...
 
 Texture3D (const std::shared_ptr< Texture_Impl > &impl)
 Constructs a texture from an implementation. More...
 
 Texture3D (GraphicContext &context, int width, int height, int depth, TextureFormat texture_format=tf_rgba8, int levels=1)
 Constructs a 3D Texture. More...
 
 Texture3D (GraphicContext &context, const Vec3i &size, TextureFormat texture_format=tf_rgba8, int levels=1)
 Constructs a Texture. More...
 
int get_depth () const
 Get the texture depth. More...
 
int get_height () const
 Get the texture height. More...
 
Vec3i get_size () const
 Get the texture size. More...
 
int get_width () const
 Get the texture width. More...
 
TextureWrapMode get_wrap_mode_r () const
 Get the texture wrap mode for the r coordinate. More...
 
TextureWrapMode get_wrap_mode_s () const
 Get the texture wrap mode for the s coordinate. More...
 
TextureWrapMode get_wrap_mode_t () const
 Get the texture wrap mode for the t coordinate. More...
 
void set_image (GraphicContext &context, PixelBuffer &image, int depth, int level=0)
 Upload image to texture. More...
 
void set_subimage (GraphicContext &context, int x, int y, int z, const PixelBuffer &image, const Rect &src_rect, int level=0)
 Upload image to sub texture. More...
 
void set_wrap_mode (TextureWrapMode wrap_s, TextureWrapMode wrap_t, TextureWrapMode wrap_r)
 Set the texture wrapping mode. More...
 
- Public Member Functions inherited from clan::Texture
 Texture ()
 Constructs a null instance. More...
 
 Texture (GraphicContext &gc, PixelBufferSet pixelbuffer_set)
 Constructs a texture as described in a pixelbuffer set. More...
 
 Texture (const std::shared_ptr< Texture_Impl > &impl)
 Constructs a texture from an implementation. More...
 
 Texture (TextureProvider *provider)
 Constructs a texture from a texture provider. More...
 
virtual ~Texture ()
 
void generate_mipmap ()
 Generate the mipmap. More...
 
int get_base_level () const
 Get the texture base level. More...
 
CompareFunction get_compare_function () const
 Get the texture compare function. More...
 
TextureCompareMode get_compare_mode () const
 Get the texture compare mode. More...
 
std::weak_ptr< Texture_Impl > get_impl () const
 Get the implementation weakptr. More...
 
float get_lod_bias () const
 Get the level of detail bias constant. More...
 
TextureFilter get_mag_filter () const
 Get the texture magnification filter. More...
 
int get_max_level () const
 Get the texture max level. More...
 
float get_max_lod () const
 Get the maximum level of detail. More...
 
TextureFilter get_min_filter () const
 Get the texture minification filter. More...
 
float get_min_lod () const
 Get the minimum level of detail. More...
 
TextureProviderget_provider () const
 Get Provider. More...
 
bool is_null () const
 Returns true if this object is invalid. More...
 
bool is_resident () const
 Returns true if texture is resident in texture memory. More...
 
 operator bool () const
 
bool operator!= (const Texture &other) const
 Inequality operator. More...
 
bool operator< (const Texture &other) const
 Less than operator. More...
 
bool operator== (const Texture &other) const
 Equality operator. More...
 
void set_base_level (int base_level)
 Sets the texture base level texture parameter. More...
 
void set_lod_bias (float lod_bias)
 Sets the level of detail bias constant. More...
 
void set_mag_filter (TextureFilter filter)
 Set the magnification filter. More...
 
void set_max_anisotropy (float max_anisotropy)
 Set the maximum degree of anisotropy. More...
 
void set_max_level (int max_level)
 Sets the texture max level texture parameter. More...
 
void set_max_lod (float max_lod)
 Set the maximum level of detail texture parameter. More...
 
void set_min_filter (TextureFilter filter)
 Set the minification filter. More...
 
void set_min_lod (float min_lod)
 Set the minimum level of detail texture parameter. More...
 
void set_texture_compare (TextureCompareMode mode, CompareFunction func)
 Sets the texture compare mode and compare function texture parameters. More...
 
void throw_if_null () const
 Throw an exception if this object is invalid. More...
 
Texture1D to_texture_1d () const
 Dynamic cast to Texture1D. More...
 
Texture1DArray to_texture_1d_array () const
 Dynamic cast to Texture1DArray. More...
 
Texture2D to_texture_2d () const
 Dynamic cast to Texture2D. More...
 
Texture2DArray to_texture_2d_array () const
 Dynamic cast to Texture2DArray. More...
 
Texture3D to_texture_3d () const
 Dynamic cast to Texture3D. More...
 
TextureCube to_texture_cube () const
 Dynamic cast to TextureCube. More...
 
TextureCubeArray to_texture_cube_array () const
 Dynamic cast to TextureCubeArray. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from clan::Texture
static Texture load (GraphicContext &gc, const std::string &id, const XMLResourceDocument &doc, const ImageImportDescription &import_desc=ImageImportDescription())
 Loads a Texture from a XML resource definition. More...
 
static Resource< Textureresource (GraphicContext &gc, const std::string &id, const ResourceManager &resources)
 Retrieves a Texture resource from the resource manager. More...
 
- Protected Attributes inherited from clan::Texture
std::shared_ptr< Texture_Impl > impl
 

Detailed Description

3D texture object class.

Constructor & Destructor Documentation

clan::Texture3D::Texture3D ( )

Constructs a null instance.

clan::Texture3D::Texture3D ( const std::shared_ptr< Texture_Impl > &  impl)
inline

Constructs a texture from an implementation.

Parameters
impl= The implementation
clan::Texture3D::Texture3D ( GraphicContext context,
int  width,
int  height,
int  depth,
TextureFormat  texture_format = tf_rgba8,
int  levels = 1 
)

Constructs a 3D Texture.

Parameters
context= Graphic Context
width= value
height= value
depth= value
internal_format= Texture Format
levels= Mipmap levels for the texture. 0 = all levels
clan::Texture3D::Texture3D ( GraphicContext context,
const Vec3i size,
TextureFormat  texture_format = tf_rgba8,
int  levels = 1 
)

Constructs a Texture.

Parameters
context= Graphic Context
size= Size
internal_format= Texture Format
levels= Mipmap levels for the texture. 0 = all levels

Member Function Documentation

int clan::Texture3D::get_depth ( ) const

Get the texture depth.

int clan::Texture3D::get_height ( ) const

Get the texture height.

Vec3i clan::Texture3D::get_size ( ) const

Get the texture size.

int clan::Texture3D::get_width ( ) const

Get the texture width.

TextureWrapMode clan::Texture3D::get_wrap_mode_r ( ) const

Get the texture wrap mode for the r coordinate.

TextureWrapMode clan::Texture3D::get_wrap_mode_s ( ) const

Get the texture wrap mode for the s coordinate.

TextureWrapMode clan::Texture3D::get_wrap_mode_t ( ) const

Get the texture wrap mode for the t coordinate.

void clan::Texture3D::set_image ( GraphicContext context,
PixelBuffer image,
int  depth,
int  level = 0 
)

Upload image to texture.

Parameters
contextGraphic context to use for the request
imageImage to upload.
levelMipmap level-of-detail number.
void clan::Texture3D::set_subimage ( GraphicContext context,
int  x,
int  y,
int  z,
const PixelBuffer image,
const Rect src_rect,
int  level = 0 
)

Upload image to sub texture.

Parameters
contextGraphic context to use for the request
imageImage to upload.
levelMipmap level-of-detail number.
void clan::Texture3D::set_wrap_mode ( TextureWrapMode  wrap_s,
TextureWrapMode  wrap_t,
TextureWrapMode  wrap_r 
)

Set the texture wrapping mode.


The documentation for this class was generated from the following file: