#ifndef AVHSPRITEAPI_H #define AVHSPRITEAPI_H enum AvHSpriteDrawMode { kSpriteDrawModeFilled, kSpriteDrawModeBorder, }; /** * Once the final coordinates are computed, they are transformed to this viewport. */ void AvHSpriteSetViewport(float x1, float y1, float x2, float y2); /** * Clears any previously set viewport. */ void AvHSpriteClearViewport(); void AvHSpriteBeginFrame(); void AvHSpriteEndFrame(); /** * Sets the render mode used for subsequent sprite operations. */ void AvHSpriteSetRenderMode(int renderMode); /** * Sets the rotation used for subsequence sprite operations. The rotation is * specified about a point in the screen (cx, cy). */ void AvHSpriteSetRotation(float degrees, float cx, float cy); /** * Enables or disables the clipping rectangle. If the clipping rectangle is * disabled the sprites won't be clipping, however it will be faster. */ void AvHSpriteEnableClippingRect(bool enable); /** * Sets the screen space rectangle which drawing operations are clipped against. */ void AvHSpriteSetClippingRect(float x1, float y1, float x2, float y2); /** * */ void AvHSpriteSetDrawMode(AvHSpriteDrawMode drawMode); /** * Sets the color which is multiplied by the sprite pixel values. */ void AvHSpriteSetColor(float r, float g, float b, float a = 1); /** * */ void AvHSpriteSetDepthOffset(float depthOffset); void AvHSpriteDraw(AVHHSPRITE spriteHandle, int frame, float x1, float y1, float x2, float y2, float u1, float v1, float u2, float v2); void AvHSpriteDrawTiles(AVHHSPRITE spriteHandle, int numXFrames, int numYFrames, float x1, float y1, float x2, float y2, float u1, float v1, float u2, float v2); void AvHSpriteEnableVGUI(bool enableVGUI); void AvHSpriteSetVGUIOffset(int x, int y); #endif