Something went wrong. Try again.
the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
Something went wrong. Try again.
3.2 kB · 98 lines
C
at main
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798#pragma once
class Rect2i;class ByteBuffer;class BufferedImage;
#ifdef __PS3__class ByteBuffer_IO;#endif
class Texture{public: static const int WM_WRAP = GL_REPEAT; static const int WM_CLAMP = GL_CLAMP; static const int WM_MIRROR = 0; //GL_MIRRORED_REPEAT;
static const int TFMT_RGBA = GL_RGBA; static const int TFMT_BGRA = GL_BGRA;
static const int TFLT_NEAREST = GL_NEAREST; static const int TFLT_LINEAR = GL_LINEAR; static const int TFLT_LINEAR_MIP_NEAREST = 0; //GL_LINEAR_MIPMAP_NEAREST; static const int TFLT_LINEAR_MIP_LINEAR = 0; //GL_LINEAR_MIPMAP_LINEAR; static const int TFLT_NEAREST_MIP_NEAREST = 0; //GL_NEAREST_MIPMAP_NEAREST; static const int TFLT_NEAREST_MIP_LINEAR = GL_NEAREST_MIPMAP_LINEAR;
static const int TM_STATIC = 0; static const int TM_DYNAMIC = 1; static const int TM_CONTAINER = 2;
private: int glId; int managerId;
// Indicates certain aspects of this texture's behavior in terms of how tightly it is bound, conceptually. A static // texture is loaded once, uploaded to the GPU, and discarded CPU-side. A dynamic texture is kept on both the CPU // and GPU, as it will likely be dynamically updated on the CPU. A container texture exists only to keep the data // on the CPU, usually for later combination into a larger texture via the Stitcher class. int mode;
int width; int height; int depth; int format; int type; int minFilter; int magFilter; int wrapMode; bool mipmapped; wstring name;
Rect2i *rect;
bool valid; bool immediateUpdate; bool updated; int m_iMipLevels;#ifdef __PS3__ ByteBuffer_IO *data[10];#else ByteBuffer *data[10]; // Arrays for mipmaps - NULL if not used#endif
public: bool m_bInitialised; // 4J Added
~Texture();private: Texture(const wstring &name, int mode, int width, int height, int depth, int wrapMode, int format, int minFilter, int magFilter, bool mipMap = true);
void _init(const wstring &name, int mode, int width, int height, int depth, int wrapMode, int format, int minFilter, int magFilter, bool mipMap); void _init(const wstring &name, int mode, int width, int height, int depth, int wrapMode, int format, int minFilter, int magFilter, BufferedImage *image, bool mipMap);
public: Texture(const wstring &name, int mode, int width, int height, int wrapMode, int format, int minFilter, int magFilter, BufferedImage *image, bool mipMap = true); Texture(const wstring &name, int mode, int width, int height, int depth, int wrapMode, int format, int minFilter, int magFilter, BufferedImage *image, bool mipMap = true);
const Rect2i *getRect(); void fill(const Rect2i *rect, int color); void writeAsBMP(const wstring &name); void writeAsPNG(const wstring &filename); void blit(int x, int y, Texture *source); void blit(int x, int y, Texture *source, bool rotated); void transferFromBuffer(intArray buffer); void transferFromImage(BufferedImage *image); int getManagerId(); int getGlId(); int getWidth(); int getHeight(); wstring getName(); void setImmediateUpdate(bool immediateUpdate); void bind(int mipMapIndex); void updateOnGPU(); ByteBuffer *getData(unsigned int level = 0);
static int crispBlend(int c0, int c1);};