Axmol Engine 2.4.0-258ceca
|
#include <Texture2D.h>
Inherits Object.
Public Types | |
using | TexParams = backend::SamplerDescriptor |
Extension to set the Min / Mag filter. | |
Public Member Functions | |
Texture2D () | |
@js ctor | |
virtual | ~Texture2D () |
@js NA @lua NA | |
bool | initWithData (const void *data, ssize_t dataLen, backend::PixelFormat pixelFormat, int pixelsWide, int pixelsHigh, bool preMultipliedAlpha=false) |
Initializes with a texture2d with data. | |
bool | initWithData (const void *data, ssize_t dataLen, backend::PixelFormat pixelFormat, backend::PixelFormat renderFormat, int pixelsWide, int pixelsHigh, bool preMultipliedAlpha=false) |
Initializes with a texture2d with data. | |
bool | initWithMipmaps (MipmapInfo *mipmaps, int mipmapsNum, backend::PixelFormat pixelFormat, backend::PixelFormat renderFormat, int pixelsWide, int pixelsHigh, bool preMultipliedAlpha=false) |
Initializes with mipmaps. | |
bool | updateWithImage (Image *image, backend::PixelFormat format, int index=0) |
Update with image. | |
bool | updateWithSubData (void *data, int offsetX, int offsetY, int width, int height, int index=0) |
Update with texture data. | |
void | drawAtPoint (const Vec2 &point, float globalZOrder) |
Drawing extensions to make it easy to draw basic quads using a Texture2D object. | |
void | drawInRect (const Rect &rect, float globalZOrder) |
Draws a texture inside a rect. | |
bool | initWithImage (Image *image) |
Extensions to make it easy to create a Texture2D object from an image file. | |
bool | initWithImage (Image *image, backend::PixelFormat format) |
Initializes a texture from a UIImage object. | |
bool | initWithString (std::string_view text, std::string_view fontName, float fontSize, const Vec2 &dimensions=Vec2(0, 0), TextHAlignment hAlignment=TextHAlignment::CENTER, TextVAlignment vAlignment=TextVAlignment::TOP, bool enableWrap=true, int overflow=0) |
Initializes a texture from a string with dimensions, alignment, font name and font size. | |
bool | initWithString (std::string_view text, const FontDefinition &textDefinition) |
Initializes a texture from a string using a text definition. | |
bool | updateTextureDescriptor (const backend::TextureDescriptor &descriptor, bool preMultipliedAlpha=false) |
!Used for render buffer, such depth stencil attachment | |
void | generateMipmap () |
Generates mipmap images for the texture. | |
void | setAntiAliasTexParameters () |
Sets antialias texture parameters: | |
void | setAliasTexParameters () |
Sets alias texture parameters: | |
const char * | getStringForFormat () const |
Returns the pixel format. | |
unsigned int | getBitsPerPixelForFormat () const |
Returns the bits-per-pixel of the in-memory OpenGL texture. | |
unsigned int | getBitsPerPixelForFormat (backend::PixelFormat format) const |
Helper functions that returns bits per pixels for a given format. | |
const Vec2 & | getContentSizeInPixels () |
Get content size. | |
bool | hasPremultipliedAlpha () const |
Whether or not the texture has their Alpha premultiplied. | |
bool | hasMipmaps () const |
Whether or not the texture has mip maps. | |
backend::PixelFormat | getPixelFormat () const |
Gets the pixel format of the texture. | |
int | getPixelsWide () const |
Gets the width of the texture in pixels. | |
int | getPixelsHigh () const |
Gets the height of the texture in pixels. | |
float | getMaxS () const |
Gets max S. | |
void | setMaxS (float maxS) |
Sets max S. | |
float | getMaxT () const |
Gets max T. | |
void | setMaxT (float maxT) |
Sets max T. | |
Vec2 | getContentSize () const |
Get the texture content size. | |
![]() | |
void | retain () |
Retains the ownership. | |
void | release () |
Releases the ownership immediately. | |
Object * | autorelease () |
Releases the ownership sometime soon automatically. | |
unsigned int | getReferenceCount () const |
Returns the Object's current reference count. | |
virtual | ~Object () |
Destructor. | |
Static Public Member Functions | |
static void | setDefaultAlphaPixelFormat (backend::PixelFormat format) |
sets the default pixel format for UIImagescontains alpha channel. | |
static backend::PixelFormat | getDefaultAlphaPixelFormat () |
Returns the alpha pixel format. | |
Additional Inherited Members | |
![]() | |
unsigned int | _ID |
object id, ScriptSupport need public _ID | |
int | _luaID |
Lua reference id. | |
Texture2D class.
This class allows to easily create OpenGL 2D textures from images, text or raw data. The created Texture2D object will always have power-of-two dimensions. Depending on how you create the Texture2D object, the actual image area of the texture might be smaller than the texture dimensions i.e. "contentSize" != (pixelsWide, pixelsHigh) and (maxS, maxT) != (1.0, 1.0). Be aware that the content of the generated textures will be upside-down!
|
static |
sets the default pixel format for UIImagescontains alpha channel.
format | If the UIImage contains alpha channel, then the options are:
|
How does it work ?
This parameter is not valid for PVR / PVR.CCZ images.
|
static |
Returns the alpha pixel format.
|
inline |
Initializes with a texture2d with data.
data | Specifies a pointer to the image data in memory. |
dataLen | The image data length. |
pixelFormat | The image pixelFormat. |
pixelsWide | The image width. |
pixelsHigh | The image height. |
contentSize | The image content size. |
preMultipliedAlpha | The texture has premultiplied alpha @js NA @lua NA |
bool initWithData | ( | const void * | data, |
ssize_t | dataLen, | ||
backend::PixelFormat | pixelFormat, | ||
backend::PixelFormat | renderFormat, | ||
int | pixelsWide, | ||
int | pixelsHigh, | ||
bool | preMultipliedAlpha = false ) |
Initializes with a texture2d with data.
data | Specifies a pointer to the image data in memory. |
dataLen | The image data length. |
pixelFormat | The image pixelFormat. |
renderFormat | The format converted to. |
pixelsWide | The image width. |
pixelsHigh | The image height. |
contentSize | The image content size. |
preMultipliedAlpha | The texture has premultiplied alpha @js NA @lua NA |
bool initWithMipmaps | ( | MipmapInfo * | mipmaps, |
int | mipmapsNum, | ||
backend::PixelFormat | pixelFormat, | ||
backend::PixelFormat | renderFormat, | ||
int | pixelsWide, | ||
int | pixelsHigh, | ||
bool | preMultipliedAlpha = false ) |
Initializes with mipmaps.
mipmaps | Specifies a pointer to the image data in memory. |
mipmapsNum | The mipmaps number. |
pixelFormat | The image pixelFormat. |
pixelsWide | The image width. |
pixelsHigh | The image height. |
preMultipliedAlpha | The texture has premultiplied alpha |
bool updateWithImage | ( | Image * | image, |
backend::PixelFormat | format, | ||
int | index = 0 ) |
Update with image.
data | Specifies a pointer to the image data in memory. |
offsetX | Specifies a texel offset in the x direction within the texture array. |
offsetY | Specifies a texel offset in the y direction within the texture array. |
width | Specifies the width of the texture subimage. |
height | Specifies the height of the texture subimage. |
bool updateWithSubData | ( | void * | data, |
int | offsetX, | ||
int | offsetY, | ||
int | width, | ||
int | height, | ||
int | index = 0 ) |
Update with texture data.
data | Specifies a pointer to the image data in memory. |
offsetX | Specifies a texel offset in the x direction within the texture array. |
offsetY | Specifies a texel offset in the y direction within the texture array. |
width | Specifies the width of the texture subimage. |
height | Specifies the height of the texture subimage. |
void drawAtPoint | ( | const Vec2 & | point, |
float | globalZOrder ) |
Drawing extensions to make it easy to draw basic quads using a Texture2D object.
These functions require GL_TEXTURE_2D and both GL_VERTEX_ARRAY and GL_TEXTURE_COORD_ARRAY client states to be enabled. Draws a texture at a given point.
bool initWithImage | ( | Image * | image | ) |
Extensions to make it easy to create a Texture2D object from an image file.
Initializes a texture from a UIImage object.
We will use the format you specified with setDefaultAlphaPixelFormat to convert the image for texture. NOTE: It will not convert the pvr image file.
image | An UIImage object. |
bool initWithImage | ( | Image * | image, |
backend::PixelFormat | format ) |
Initializes a texture from a UIImage object.
We will use the format you passed to the function to convert the image format to the texture format. If you pass PixelFormat::NONE, we will auto detect the image render type and use that type for texture to render.
image | An UIImage object. |
format | Texture pixel formats. |
bool initWithString | ( | std::string_view | text, |
std::string_view | fontName, | ||
float | fontSize, | ||
const Vec2 & | dimensions = Vec2(0, 0), | ||
TextHAlignment | hAlignment = TextHAlignment::CENTER, | ||
TextVAlignment | vAlignment = TextVAlignment::TOP, | ||
bool | enableWrap = true, | ||
int | overflow = 0 ) |
Initializes a texture from a string with dimensions, alignment, font name and font size.
text | A null terminated string. |
fontName | The font name. |
fontSize | The font size. |
dimensions | The font dimension. |
hAlignment | The font horizontal text alignment type. |
vAlignment | The font vertical text alignment type. |
enableWrap | Whether enable text wrap or not. |
overflow | Whether shrink font size when content larger than the dimensions. |
bool initWithString | ( | std::string_view | text, |
const FontDefinition & | textDefinition ) |
Initializes a texture from a string using a text definition.
text | A null terminated string. |
textDefinition | A FontDefinition object contains font attributes. |
void generateMipmap | ( | ) |
Generates mipmap images for the texture.
It only works if the texture size is POT (power of 2).
void setAntiAliasTexParameters | ( | ) |
Sets antialias texture parameters:
void setAliasTexParameters | ( | ) |
Sets alias texture parameters:
const char * getStringForFormat | ( | ) | const |
Returns the pixel format.
unsigned int getBitsPerPixelForFormat | ( | ) | const |
Returns the bits-per-pixel of the in-memory OpenGL texture.
unsigned int getBitsPerPixelForFormat | ( | backend::PixelFormat | format | ) | const |
Helper functions that returns bits per pixels for a given format.