engine/include/Utils/TgaLoader.h

55 lines
1.4 KiB
C
Raw Normal View History

#ifndef TGA_LOADER_H_INCLUDED
#define TGA_LOADER_H_INCLUDED
#include "include/Utils/Utils.h"
//Thanks to NeHe
namespace SE
{
const int CONST_TGA_OUTER_HEADER_SIZE = 12;
typedef struct
{
GLubyte Header[CONST_TGA_OUTER_HEADER_SIZE]; // TGA File Header
} TGAHeader;
const int CONST_TGA_INNER_HEADER_SIZE = 6;
typedef struct
{
GLubyte header[CONST_TGA_INNER_HEADER_SIZE]; // First 6 Useful Bytes From The Header
GLuint bytesPerPixel; // Holds Number Of Bytes Per Pixel Used In The TGA File
GLuint imageSize; // Used To Store The Image Size When Setting Aside Ram
GLuint temp; // Temporary Variable
GLuint type;
GLuint Height; //Height of Image
GLuint Width; //Width ofImage
GLuint Bpp; // Bits Per Pixel
} TGA;
//TGAHeader tgaheader; // TGA header
//TGA tga; // TGA image data
extern GLubyte uTGAcompare[12]; // Uncompressed TGA Header
extern GLubyte cTGAcompare[12]; // Compressed TGA Header
struct TTextureData; // Find it in SalmonTexture.h
bool LoadTGA(const std::string& filename, TTextureData& texture);
bool LoadUncompressedTGA(TTextureData& texture, boost::shared_array<char> fTGA); // Load an Uncompressed file
bool LoadCompressedTGA(TTextureData& texture, boost::shared_array<char> fTGA); // Load a Compressed file
} //namespace SE
#endif //TGA_LOADER_H_INCLUDED