diff options
Diffstat (limited to 'src/libjin/Graphics/je_sprite.h')
-rw-r--r-- | src/libjin/Graphics/je_sprite.h | 34 |
1 files changed, 20 insertions, 14 deletions
diff --git a/src/libjin/Graphics/je_sprite.h b/src/libjin/Graphics/je_sprite.h index 76ef30a..4fb7ebf 100644 --- a/src/libjin/Graphics/je_sprite.h +++ b/src/libjin/Graphics/je_sprite.h @@ -11,19 +11,6 @@ namespace JinEngine { namespace Graphics { - /** Determines position of the sprite in its bounds. */ - enum SpriteAnchor - { - SA_TopLeft, - SA_TopCenter, - SA_TopRight, - SA_MiddleLeft, - SA_MiddleCenter, - SA_MiddleRight, - SA_BottomLeft, - SA_BottomCenter, - SA_BottomRight - }; /// /// A sprite is unit of rendering. Animation is based on sprite, but not texture or other graphic stuff. @@ -31,6 +18,24 @@ namespace JinEngine class Sprite { public: + Sprite(); + virtual ~Sprite(); + + enum Origin + { + TopLeft, + TopCenter, + TopRight, + MiddleLeft, + MiddleCenter, + MiddleRight, + BottomLeft, + BottomCenter, + BottomRight + }; + + void setRotation(float r); + void setOrigin(Origin origin); void setOrigin(int x, int y); void setPosition(int x, int y); void setScale(float x, float y); @@ -41,7 +46,7 @@ namespace JinEngine /// /// Render callback. /// - virtual void onRender(); + virtual void render(); private: /// @@ -50,6 +55,7 @@ namespace JinEngine Math::Vector2<float> mPosition; Math::Vector2<int> mOrigin; Math::Vector2<float> mScale; + float mRotation; Color mColor; Shaders::Shader* mShader; Graphic* mGraphic; |