34 lines
725 B
C++
34 lines
725 B
C++
//
|
|
// Created by Wouter Groeneveld on 11/07/20.
|
|
//
|
|
|
|
#ifndef GBA_BITMAP_ENGINE_PROJECT_RENDERER_H
|
|
#define GBA_BITMAP_ENGINE_PROJECT_RENDERER_H
|
|
|
|
#include <libgba-sprite-engine/matrixfx.h>
|
|
#include <libgba-sprite-engine/mesh.h>
|
|
|
|
class GBAEngine;
|
|
|
|
class Renderer {
|
|
protected:
|
|
std::shared_ptr<GBAEngine> engine;
|
|
|
|
public:
|
|
virtual void render(const MatrixFx &transformationMatrix, const Mesh* mesh) = 0;
|
|
};
|
|
|
|
class PixelRenderer : public Renderer {
|
|
public:
|
|
void render(const MatrixFx &transformationMatrix, const Mesh* mesh) override;
|
|
|
|
};
|
|
|
|
class WiredRenderer : public Renderer {
|
|
public:
|
|
void render(const MatrixFx &transformationMatrix, const Mesh* mesh) override;
|
|
|
|
};
|
|
|
|
#endif //GBA_BITMAP_ENGINE_PROJECT_RENDERER_H
|