Skip to content

Rendering

☕️ Miguel edited this page Nov 17, 2016 · 15 revisions

Rendering is a crucial part in the brainGDX framework. libgdx already provides commands to render textures, sprites, particles and animations on the screen. The problem is when it comes to more complex examples:'

  • how to render a village with 25 different NPCs without writing 25 Java classes?
  • how to change the appearance of game objects dynamically?
  • how to disable rendering for a particular game object?
  • how to easily add debug rendering for game objects?

The solutions are so called Renderer implementations. A Renderer describes how a game object should get rendered:

public class MyRenderer implements GameObjectRenderer {
    @Override
    public void init() {
        // is called when the renderer gets attached
    }

    @Override
    public void render(GameObject object, Batch batch, float delta) {
        // is called when the object should get rendered
    }
}

brainGDX already comes with various predefined renderers which you can use to describe the render behavior for your entities:

  • QuadRenderer renders a quad.
  • CircleRenderer renders a circle.
  • SpriteRenderer renders a defined sprite.
  • AnimationRenderer renders a defined animation.
  • ParticleRenderer renders a particle effect onto the given renderer (decorator).

To learn how to use the renderers in order to display entities on the screen continue with the next chapter.

Clone this wiki locally