Initial Commit

This commit is contained in:
2026-02-12 11:46:06 +03:00
commit b044c8d1a5
3973 changed files with 1599881 additions and 0 deletions

52
src/render/texture2d.h Normal file
View File

@@ -0,0 +1,52 @@
#ifndef TEXTURE2D_H
#define TEXTURE2D_H
#include <string>
#include "render_shared.h"
class TexturesManager;
class Texture2D
{
friend class TexturesManager;
public:
static Texture2D* Create();
public:
Texture2D();
~Texture2D();
void CreateBlackTexture(int width, int height, int channels);
void CreateWhiteTexture(int width, int height, int channels);
void CreateGrayTexture(int width, int height, int channels);
void CreateTexture_Generator(int width, int height, int channels, int color);
void CreateFromExistedData(void* data, int width, int height, int channels);
void CreateFromFile(const char* filename);
void CreateRaw(void* data, int width, int height, PixelFormat pf);
void GenerateMipmaps();
void Bind();
void setWrapS(TextureWrap wrap);
void setWrapT(TextureWrap wrap);
void setMin(TextureFilter filter);
void setMag(TextureFilter filter);
uint32_t GetHandle() { return m_handle; }
int GetWidth() { return m_width; }
int GetHeight() { return m_height; }
private:
std::string m_textureFileName;
PixelFormat m_pf;
int m_width;
int m_height;
int m_channels;
uint32_t m_handle;
};
#endif // !TEXTURE2D_H