55 lines
1.4 KiB
C
55 lines
1.4 KiB
C
|
#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
|