Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private :
- friend class RenderTarget;
- ////////////////////////////////////////////////////////////
- /// Draw the object into the specified window
- ///
- /// param Target : Target into which render the object
- ///
- ////////////////////////////////////////////////////////////
- void Draw(RenderTarget& Target) const;
- ////////////////////////////////////////////////////////////
- /// Render the specific geometry of the object
- ///
- /// param Target : Target into which render the object
- ///
- ////////////////////////////////////////////////////////////
- virtual void Render(RenderTarget& Target) const = 0;
- class MyDrawable : public sf::Drawable {
- private:
- virtual void Render(RenderTarget& target) const {
- // Do some rendering of whatever...
- target.Draw(mySubSprite);
- }
- sf::Sprite mySubSprite;
- };
- class MyDrawable : public sf::Drawable
- {
- public :
- ...
- private :
- virtual void Render(sf::RenderTarget& target, sf::Renderer& renderer) const
- {
- // Low-level geometry rendering
- renderer.SetTexture(&myTexture);
- renderer.Begin(sf::Renderer::QuadList);
- renderer.AddVertex(...);
- renderer.AddVertex(...);
- renderer.AddVertex(...);
- renderer.AddVertex(...);
- renderer.End();
- // High-level drawable rendering
- target.Draw(mySubSprite);
- }
- sf::Image myTexture;
- sf::Sprite mySubSprite;
- };
Add Comment
Please, Sign In to add comment