Crazy Eddies GUI System 0.7.5
|
Texture implementation for the Direct3D9Renderer. More...
Public Member Functions | |
void | setDirect3D9Texture (LPDIRECT3DTEXTURE9 tex) |
set the D3D9 texture that this Texture is based on to the specified texture. | |
LPDIRECT3DTEXTURE9 | getDirect3D9Texture () const |
Return the internal D3D9 texture used by this Texture object. | |
void | setOriginalDataSize (const Size &sz) |
Sets what the texture should consider as the original data size. | |
void | preD3DReset () |
auto called via the Renderer prior to Reset on the Direct3DDevice9. | |
void | postD3DReset () |
auto called via the Renderer after Reset on the Direct3DDevice9. | |
const Size & | getSize () const |
Returns the current pixel size of the texture. | |
const Size & | getOriginalDataSize () const |
Returns the original pixel size of the data loaded into the texture. | |
const Vector2 & | getTexelScaling () const |
Returns pixel to texel scale values that should be used for converting pixel values to texture co-ords. | |
void | loadFromFile (const String &filename, const String &resourceGroup) |
Loads the specified image file into the texture. The texture is resized as required to hold the image. | |
void | loadFromMemory (const void *buffer, const Size &buffer_size, PixelFormat pixel_format) |
Loads (copies) an image in memory into the texture. The texture is resized as required to hold the image. | |
void | saveToMemory (void *buffer) |
Save / dump the content of the texture to a memory buffer. The dumped pixel format is always RGBA (4 bytes per pixel). | |
Protected Member Functions | |
Direct3D9Texture (Direct3D9Renderer &owner) | |
Basic constructor. | |
Direct3D9Texture (Direct3D9Renderer &owner, const String &filename, const String &resourceGroup) | |
Construct texture from an image file. | |
Direct3D9Texture (Direct3D9Renderer &owner, const Size &sz) | |
Construct texture with a given size. | |
Direct3D9Texture (Direct3D9Renderer &owner, LPDIRECT3DTEXTURE9 tex) | |
Construct texture that wraps an existing D3D9 texture. | |
virtual | ~Direct3D9Texture () |
Destructor. | |
void | cleanupDirect3D9Texture () |
clean up the internal texture. | |
void | updateCachedScaleValues () |
updates cached scale value used to map pixels to texture co-ords. | |
void | updateTextureSize () |
set d_size to actual texture size (d_dataSize is used if query fails) | |
Protected Attributes | |
Direct3D9Renderer & | d_owner |
Direct3D9Renderer object that created and owns this texture. | |
LPDIRECT3DTEXTURE9 | d_texture |
The D3D9 texture we're wrapping. | |
Size | d_size |
Size of the texture. | |
Size | d_dataSize |
original pixel of size data loaded into texture | |
Vector2 | d_texelScaling |
cached pixel to texel mapping scale values. | |
D3DSURFACE_DESC | d_savedSurfaceDesc |
holds info about the texture surface before we released it for reset. | |
bool | d_savedSurfaceDescValid |
true when d_savedSurfaceDesc is valid and texture can be restored. | |
Friends | |
Texture & | Direct3D9Renderer::createTexture (void) |
Texture & | Direct3D9Renderer::createTexture (const String &, const String &) |
Texture & | Direct3D9Renderer::createTexture (const Size &) |
Texture & | Direct3D9Renderer::createTexture (LPDIRECT3DTEXTURE9 tex) |
void | Direct3D9Renderer::destroyTexture (Texture &) |
Texture implementation for the Direct3D9Renderer.
LPDIRECT3DTEXTURE9 CEGUI::Direct3D9Texture::getDirect3D9Texture | ( | ) | const |
Return the internal D3D9 texture used by this Texture object.
const Size& CEGUI::Direct3D9Texture::getOriginalDataSize | ( | ) | const [virtual] |
Returns the original pixel size of the data loaded into the texture.
Implements CEGUI::Texture.
const Size& CEGUI::Direct3D9Texture::getSize | ( | ) | const [virtual] |
Returns the current pixel size of the texture.
Implements CEGUI::Texture.
const Vector2& CEGUI::Direct3D9Texture::getTexelScaling | ( | ) | const [virtual] |
Returns pixel to texel scale values that should be used for converting pixel values to texture co-ords.
Implements CEGUI::Texture.
void CEGUI::Direct3D9Texture::loadFromFile | ( | const String & | filename, |
const String & | resourceGroup | ||
) | [virtual] |
Loads the specified image file into the texture. The texture is resized as required to hold the image.
filename | The filename of the image file that is to be loaded into the texture |
resourceGroup | Resource group identifier to be passed to the resource provider when loading the image file. |
Implements CEGUI::Texture.
void CEGUI::Direct3D9Texture::loadFromMemory | ( | const void * | buffer, |
const Size & | buffer_size, | ||
PixelFormat | pixel_format | ||
) | [virtual] |
Loads (copies) an image in memory into the texture. The texture is resized as required to hold the image.
buffer | Pointer to the buffer containing the image data. |
buffer_size | Size of the buffer (in pixels as specified by pixelFormat) |
pixel_format | PixelFormat value describing the format contained in buffPtr. |
Implements CEGUI::Texture.
void CEGUI::Direct3D9Texture::saveToMemory | ( | void * | buffer | ) | [virtual] |
Save / dump the content of the texture to a memory buffer. The dumped pixel format is always RGBA (4 bytes per pixel).
buffer | Pointer to the buffer that is to receive the image data. You must make sure that this buffer is large enough to hold the dumped texture data, the required pixel dimensions can be established by calling getSize. |
Implements CEGUI::Texture.
void CEGUI::Direct3D9Texture::setOriginalDataSize | ( | const Size & | sz | ) |
Sets what the texture should consider as the original data size.