archeus/include/arc/graphics/spritesheet.h
2024-09-03 03:55:17 -06:00

29 lines
816 B
C

#ifndef ARC_GRAPHICS_SPRITESHEET_H_
#define ARC_GRAPHICS_SPRITESHEET_H_
#ifdef __cplusplus
extern "C" {
#endif
#include <stdint.h>
#include "arc/math/point.h"
#include "arc/math/rectangle.h"
#include "arc/graphics/renderer.h"
#include "arc/std/string.h"
typedef struct ARC_Spritesheet ARC_Spritesheet;
void ARC_Spritesheet_CreateFromFile(ARC_Spritesheet **spritesheet, ARC_Renderer *renderer, ARC_String *path);
void ARC_Spritesheet_Destroy(ARC_Spritesheet *spritesheet);
void ARC_Spritesheet_RenderArea(ARC_Spritesheet *spritesheet, ARC_Rect *sheetBounds, ARC_Renderer *renderer, ARC_Rect *renderBounds);
ARC_Point ARC_Spritesheet_GetSize(ARC_Spritesheet *spritesheet);
uint32_t *ARC_Spritesheet_GetTileSize(ARC_Spritesheet *spritesheet);
#ifdef __cplusplus
}
#endif
#endif // !ARC_GRAPHICS_SPRITESHEET_H_