Class GameLoop

java.lang.Object
uni.robot.base.GameLoop
All Implemented Interfaces:
Runnable
Direct Known Subclasses:
RobotLoop

public abstract class GameLoop extends Object implements Runnable
Objeto que controla el ciclo de juego, es decir, es responsable de actualizar estados (ciclo Update) y repintar las ventanas (ciclo Draw) periodicamente.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Agrega una nueva ventana al ciclo de juego.
    void
    Metodo usado dentro de handleLoop para ejecutar un ciclo Draw.
    int
    Retorna la cantidad de ciclo Draw que realiza por segundo.
    Retorna el manejador de recursos.
    int
    Retorna la cantidad de ciclo Update que realiza por segundo.
    void
    Metodo usado por el hilo creado en startGameLoop para correr el ciclo de juego.
    abstract void
    Metodo que se ejecuta cuando comienza el ciclo de juego.
    abstract void
    Metodo que se ejecuta periodicamente al comienzo de cada ciclo Update.
    void
    run()
     
    void
    setDrawPerSecond(int drawPerSecond)
    Setea la cantidad de ciclo Draw que realiza por segundo.
    void
    setUpdatePerSecond(int updatePerSecond)
    Setea la cantidad de ciclo Update que realiza por segundo.
    void
    Comienza el ciclo de juego en un hilo nuevo.
    void
    Metodo usado dentro de handleLoop para ejecutar un ciclo Update.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • GameLoop

      public GameLoop()
  • Method Details

    • startGameLoop

      public void startGameLoop()
      Comienza el ciclo de juego en un hilo nuevo.
    • run

      public void run()
      Specified by:
      run in interface Runnable
    • addWindow

      public void addWindow(GameWindow window)
      Agrega una nueva ventana al ciclo de juego.
      Parameters:
      window - la ventana GameWindow
    • getResourceManager

      public ResourceManager getResourceManager()
      Retorna el manejador de recursos.
      Returns:
      el objeto ResourceManager.
      See Also:
    • onCreate

      public abstract void onCreate()
      Metodo que se ejecuta cuando comienza el ciclo de juego.
    • onUpdate

      public abstract void onUpdate()
      Metodo que se ejecuta periodicamente al comienzo de cada ciclo Update.
    • getUpdatePerSecond

      public int getUpdatePerSecond()
      Retorna la cantidad de ciclo Update que realiza por segundo.
      Returns:
      la cantidad de ciclo Update por segundo
    • setUpdatePerSecond

      public void setUpdatePerSecond(int updatePerSecond)
      Setea la cantidad de ciclo Update que realiza por segundo.
      Parameters:
      updatePerSecond - el valor nuevo, en segundos
    • getDrawPerSecond

      public int getDrawPerSecond()
      Retorna la cantidad de ciclo Draw que realiza por segundo.
      Returns:
      la cantidad de ciclo Draw por segundo
    • setDrawPerSecond

      public void setDrawPerSecond(int drawPerSecond)
      Setea la cantidad de ciclo Draw que realiza por segundo.
      Parameters:
      drawPerSecond - el valor nuevo, en segundos
    • handleLoop

      public void handleLoop()
      Metodo usado por el hilo creado en startGameLoop para correr el ciclo de juego.
    • update

      public void update()
      Metodo usado dentro de handleLoop para ejecutar un ciclo Update.
    • draw

      public void draw()
      Metodo usado dentro de handleLoop para ejecutar un ciclo Draw.