uicore::Texture3D Class Referenceabstract

3D texture object class. More...

#include <texture_3d.h>

+ Inheritance diagram for uicore::Texture3D:

Public Member Functions

virtual int depth () const =0
 Get the texture depth. More...
 
virtual int height () const =0
 Get the texture height. More...
 
virtual void set_image (const GraphicContextPtr &context, const PixelBufferPtr &image, int depth, int level=0)=0
 Upload image to texture. More...
 
virtual void set_subimage (const GraphicContextPtr &context, int x, int y, int z, const PixelBufferPtr &image, const Rect &src_rect, int level=0)=0
 Upload image to sub texture. More...
 
virtual void set_wrap_mode (TextureWrapMode wrap_s, TextureWrapMode wrap_t, TextureWrapMode wrap_r)=0
 Set the texture wrapping mode. More...
 
Vec3i size () const
 Get the texture size. More...
 
virtual int width () const =0
 Get the texture width. More...
 
virtual TextureWrapMode wrap_mode_r () const =0
 Get the texture wrap mode for the r coordinate. More...
 
virtual TextureWrapMode wrap_mode_s () const =0
 Get the texture wrap mode for the s coordinate. More...
 
virtual TextureWrapMode wrap_mode_t () const =0
 Get the texture wrap mode for the t coordinate. More...
 
- Public Member Functions inherited from uicore::Texture
virtual int base_level () const =0
 Get the texture base level. More...
 
virtual CompareFunction compare_function () const =0
 Get the texture compare function. More...
 
virtual TextureCompareMode compare_mode () const =0
 Get the texture compare mode. More...
 
virtual void generate_mipmap ()=0
 Generate mipmap textures. More...
 
virtual float lod_bias () const =0
 Get the level of detail bias constant. More...
 
virtual TextureFilter mag_filter () const =0
 Get the texture magnification filter. More...
 
virtual int max_level () const =0
 Get the texture max level. More...
 
virtual float max_lod () const =0
 Get the maximum level of detail. More...
 
virtual TextureFilter min_filter () const =0
 Get the texture minification filter. More...
 
virtual float min_lod () const =0
 Get the minimum level of detail. More...
 
virtual void set_base_level (int base_level)=0
 Sets the texture base level texture parameter. More...
 
virtual void set_lod_bias (float lod_bias)=0
 Sets the level of detail bias constant. More...
 
virtual void set_mag_filter (TextureFilter filter)=0
 Set the magnification filter. More...
 
virtual void set_max_anisotropy (float max_anisotropy)=0
 Set the maximum degree of anisotropy. More...
 
virtual void set_max_level (int max_level)=0
 Sets the texture max level texture parameter. More...
 
virtual void set_max_lod (float max_lod)=0
 Set the maximum level of detail texture parameter. More...
 
virtual void set_min_filter (TextureFilter filter)=0
 Set the minification filter. More...
 
virtual void set_min_lod (float min_lod)=0
 Set the minimum level of detail texture parameter. More...
 
virtual void set_texture_compare (TextureCompareMode mode, CompareFunction func)=0
 Sets the texture compare mode and compare function texture parameters. More...
 
virtual TextureObject * texture_object ()=0
 

Static Public Member Functions

static std::shared_ptr< Texture3Dcreate (const GraphicContextPtr &context, int width, int height, int depth, TextureFormat texture_format=tf_rgba8, int levels=1)
 Constructs a 3D texture. More...
 
static std::shared_ptr< Texture3Dcreate (const GraphicContextPtr &context, const Vec3i &size, TextureFormat texture_format=tf_rgba8, int levels=1)
 
- Static Public Member Functions inherited from uicore::Texture
static std::shared_ptr< Texturecreate (const GraphicContextPtr &gc, PixelBufferSetPtr pixelbuffer_set)
 Constructs a texture as described by a pixelbuffer set. More...
 

Detailed Description

3D texture object class.

Member Function Documentation

static std::shared_ptr<Texture3D> uicore::Texture3D::create ( const GraphicContextPtr context,
int  width,
int  height,
int  depth,
TextureFormat  texture_format = tf_rgba8,
int  levels = 1 
)
static

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
static std::shared_ptr<Texture3D> uicore::Texture3D::create ( const GraphicContextPtr context,
const Vec3i size,
TextureFormat  texture_format = tf_rgba8,
int  levels = 1 
)
static
virtual int uicore::Texture3D::depth ( ) const
pure virtual

Get the texture depth.

Referenced by size().

virtual int uicore::Texture3D::height ( ) const
pure virtual

Get the texture height.

Referenced by size().

virtual void uicore::Texture3D::set_image ( const GraphicContextPtr context,
const PixelBufferPtr image,
int  depth,
int  level = 0 
)
pure virtual

Upload image to texture.

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

Upload image to sub texture.

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

Set the texture wrapping mode.

Vec3i uicore::Texture3D::size ( ) const
inline

Get the texture size.

References depth(), height(), and width().

virtual int uicore::Texture3D::width ( ) const
pure virtual

Get the texture width.

Referenced by size().

virtual TextureWrapMode uicore::Texture3D::wrap_mode_r ( ) const
pure virtual

Get the texture wrap mode for the r coordinate.

virtual TextureWrapMode uicore::Texture3D::wrap_mode_s ( ) const
pure virtual

Get the texture wrap mode for the s coordinate.

virtual TextureWrapMode uicore::Texture3D::wrap_mode_t ( ) const
pure virtual

Get the texture wrap mode for the t coordinate.


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