fishbowl/engine/include/fishbone/draw.h
2026-06-01 14:23:48 +09:00

45 lines
750 B
C++

#ifndef __FISHBOWL_DRAW_H__
#define __FISHBOWL_DRAW_H__
#include <fishbone/pre.h>
namespace fishbone {
class Texture;
class Mesh;
class Renderer;
};
/* no includes */
namespace fishbone {
class Texture {
struct Impl;
Impl* impl;
public:
Texture(fishbone::Renderer* renderer, unsigned char* rgba, int width, int height);
~Texture();
};
class Mesh {
struct Impl;
Impl* impl;
public:
Mesh(fishbone::Renderer* renderer, std::vector<struct fishbone::Vector3> vertices, std::vector<struct fishbone::Vector2> texcoords, std::vector<struct fishbone::Vector3> normals, std::vector<int> elements);
~Mesh();
void draw();
};
class Renderer {
struct Impl;
Impl* impl;
public:
Renderer();
~Renderer();
};
};
#endif