Large refactoring, using the Entity-Component model.
This commit is contained in:
45
src/graphics/SpriteRenderer.h
Normal file
45
src/graphics/SpriteRenderer.h
Normal file
@ -0,0 +1,45 @@
|
||||
/*
|
||||
* SpriteRenderer.h
|
||||
*
|
||||
* Created on: Nov 30, 2016
|
||||
* Author: tibi
|
||||
*/
|
||||
|
||||
#ifndef GRAPHICS_SPRITERENDERER_H_
|
||||
#define GRAPHICS_SPRITERENDERER_H_
|
||||
|
||||
#include <base/Component.h>
|
||||
#include <base/RenderContext.h>
|
||||
#include <base/Sprite.h>
|
||||
#include <base/Transform.h>
|
||||
|
||||
#include <SDL2/SDL.h>
|
||||
|
||||
namespace farmlands {
|
||||
namespace graphics {
|
||||
|
||||
class SpriteRenderer: public base::Component
|
||||
{
|
||||
public:
|
||||
SpriteRenderer();
|
||||
virtual ~SpriteRenderer();
|
||||
|
||||
virtual void onInitialize() override;
|
||||
virtual void onRender() override;
|
||||
virtual void onPostRender() override;
|
||||
|
||||
// Public fields
|
||||
base::Sprite* sprite;
|
||||
|
||||
private:
|
||||
void getCell(SDL_Texture* texture, uint32_t cell, int* outX, int* outY);
|
||||
|
||||
// Private fields
|
||||
base::Transform* m_transform;
|
||||
base::RenderContext* m_context;
|
||||
};
|
||||
|
||||
} /* namespace graphics */
|
||||
} /* namespace farmlands */
|
||||
|
||||
#endif /* GRAPHICS_SPRITERENDERER_H_ */
|
Reference in New Issue
Block a user