Class RenderComponent

java.lang.Object
com.deco2800.game.components.Component
com.deco2800.game.rendering.RenderComponent
All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable, Renderable, Comparable<Renderable>
Direct Known Subclasses:
AnimationRenderComponent, TerrainComponent, TextureRenderComponent, UIComponent

public abstract class RenderComponent extends Component implements Renderable, com.badlogic.gdx.utils.Disposable
A generic component for rendering an entity. Registers itself with the render service in order to be rendered each frame. Child classes can implement different kinds of rendering behaviour.
  • Constructor Details

    • RenderComponent

      public RenderComponent()
  • Method Details

    • create

      public void create()
      Description copied from class: Component
      Called when the entity is created and registered. Initial logic such as calls to GetComponent should be made here, not in the constructor which is called before an entity is finished.
      Overrides:
      create in class Component
    • dispose

      public void dispose()
      Description copied from class: Component
      Called when the component is disposed. Dispose of any internal resources here.
      Specified by:
      dispose in interface com.badlogic.gdx.utils.Disposable
      Overrides:
      dispose in class Component
    • render

      public void render(com.badlogic.gdx.graphics.g2d.SpriteBatch batch)
      Description copied from interface: Renderable
      Render the renderable. Should be called only by the renderer, not manually.
      Specified by:
      render in interface Renderable
      Parameters:
      batch - Batch to render to.
    • compareTo

      public int compareTo(Renderable o)
      Specified by:
      compareTo in interface Comparable<Renderable>
    • getLayer

      public int getLayer()
      Description copied from interface: Renderable
      Layer to be rendered in. Higher layers will be rendered on top of lower layers.
      Specified by:
      getLayer in interface Renderable
      Returns:
      layer
    • getZIndex

      public float getZIndex()
      Description copied from interface: Renderable
      Z index controls rendering order within a layer. Higher Z index is drawn on top.
      Specified by:
      getZIndex in interface Renderable
      Returns:
      Z index
    • draw

      protected abstract void draw(com.badlogic.gdx.graphics.g2d.SpriteBatch batch)
      Draw the renderable. Should be called only by the renderer, not manually.
      Parameters:
      batch - Batch to render to.