Referencia de la Clase zak::Sprite

Diagrama de herencias de zak::Sprite

zak::Shape zak::Entity2D zak::ENTITY zak::Widget zak::WdgConsole zak::WdgEditBox Lista de todos los miembros.

Métodos públicos

bool LoadIni (const char *iniFile)
bool Unload ()
void SetFrame (int iFrame)
int GetCurrentFrame (void)
void SetAnimation (Animation *Animation)
AnimationGetAnimation ()
bool IsAnimationRunning ()
virtual void Draw ()
void Update (float fTimeBetweenFrames)
 Sprite ()
 ~Sprite ()

Métodos públicos estáticos

static bool RegisterSprite (char *className=NULL)

Métodos protegidos

void SetUVWH (float fU, float fV, float fW, float fH)
bool InitFrames (int iFramesCount, int iFrameWidth, int iFrameHeight, int iFramesCountPerWidth)
bool Load (const char *pszImageFilename, unsigned int uiColorKey, bool persist=false, DWORD filter=2, DWORD mipFilter=2)
bool Load (const string &filename)

Métodos protegidos estáticos

static void Constructor (Sprite *spr)
static void Destructor (Sprite *spr)
static void ConstructArray (vector< Sprite > *self)
static void ConstructArray (int length, vector< Sprite > *self)
static void DestructArray (vector< Sprite > *self)

Atributos protegidos

TexVertex _sprVertex [4]
Texture * _pTexture
float _fUV [2]
float _fW
float _fH
Frame * _Frames
int _iFramesCount
int _iActualFrame
Animation_Animation
bool _bAnimationRuning
float _fTime
int _offsetX
int _offsetY
float _offsetU
float _offsetV
DWORD _minFilter
DWORD _magFilter

Descripción detallada

Clase de manejo de sprites Ejemplo de uso:
bool TestGame::OnInit() {
        if (!_sprite.LoadIni("./data/graphics/roxy.spr"))
                return false;

        if (!_anim.Load("./data/graphics/example.ani")) {
                return false;
        }

        _sprite.SetAnimation(&_anim);
}
void TestGame::OnFrame() {
        _sprite.Update((float)_fpsMeter.GetDT());
}

void TestGame::OnDraw() {
        _sprite.Draw();
}

Ejempo de archivo .spr

[SPRITE]
Filename="data/roxy.png" ; Ubicación del bitmap
TextureFilter=0         ; Filtro de textura 0-None 1-Point 2-Linear 3-Triangle 4-Box
TextureMipFilter=0      ; Filtro de textura mipmap 0-None 1-Point 2-Linear 3-Triangle 4-Box
MinFilter=0             ; MinFilter 0-None 1-Point 2-Linear 3-Triangle 4-Box
MagFilter=0                     ; MagFilter 0-None 1-Point 2-Linear 3-Triangle 4-Box
ColorKey=4294967295     ; Color que deseamos que sea transparente       
FramesCount=44 ; Cantidad de cuadros de animación en total
FrameWidth=146 ; Ancho de cada frame
FrameHeight=155 ; Alto de cada frame
FramesCountPerWidth=7 ; Cantidad de cuadros que hay a lo ancho
OffsetX = 0 ; Offset del comienzo de los cuadros en la textura
OffsetY = 0
PosX=0 ; Posición inicial
PosY=0
PivotPosX=0 ; Posición del Pivot
PivotPosY=0 
Width=48 ; Ancho y alto del sprite en pantalla
Height=48
ScaleX=1.0 ; Escala
ScaleY=1.0
Visible=true ; Visible o no
CheckCollision=false ; Activa el chequeo de colisión
CollisionVisible=false ; Area de colisión visible o no
CollisionWidth=25 ; Ancho de la colisión
CollisionHeight=25 ; Alto de la colisión
Persist=false ; Persistencia de la textura en memoria ram o no

Autor:
Juan Pablo "McKrackeN" Bettini


Documentación del constructor y destructor

zak::Sprite::Sprite (  ) 

Constructor

zak::Sprite::~Sprite (  ) 

Destructor


Documentación de las funciones miembro

bool zak::Sprite::LoadIni ( const char *  iniFile  ) 

Permite la carga de un sprite a partir de un archivo de definición de sprites

Parámetros:
iniFile nombre del archivo a cargar
Devuelve:
retorna true si todo salió bien y false en caso contrario

bool zak::Sprite::Unload (  ) 

Permite liberar la memoria RAM y de video de la textura cargada

Devuelve:
retorna true si todo salió bien y false en caso contrario

void zak::Sprite::SetFrame ( int  iFrame  ) 

Permite indicar qué cuadro mostrar

Parámetros:
iFrame cuadro a mostrar

int zak::Sprite::GetCurrentFrame ( void   )  [inline]

Devuelve el cuadro de animación que se está mostrando

Devuelve:
cuadro de animación que se está mostrando

void zak::Sprite::SetAnimation ( Animation Animation  ) 

Permite indicar la animación a correr

Parámetros:
Animation puntero a la animación a mostrar que, en caso de ser NULL, cortará la animación actual

Animation* zak::Sprite::GetAnimation (  )  [inline]

Devuelve la animación que se está ejecutando

Devuelve:
puntero a la animación que está corriendo. En caso de no haber ninguna, retornará NULL.

bool zak::Sprite::IsAnimationRunning (  ) 

Devuelve si la animación está corriendo

Devuelve:
devuelve true en caso de que la animación esté corriendo y false en caso contrario.

void zak::Sprite::Draw (  )  [virtual]

Muestra el sprite en pantalla

Reimplementado de zak::Shape.

Reimplementado en zak::Widget, zak::WdgEditBox, y zak::WdgConsole.

void zak::Sprite::Update ( float  fTimeBetweenFrames  )  [virtual]

Actualiza el sprite y la animación

Parámetros:
fTimeBetweenFrames tiempo transcurrido entre iteraciones

Reimplementado de zak::Entity2D.

Reimplementado en zak::Widget, zak::WdgEditBox, y zak::WdgConsole.


La documentación para esta clase fué generada a partir de los siguientes archivos:
Generado el Tue May 29 14:46:16 2007 para Zak Engine v1.1.0 por  doxygen 1.5.1-p1