Package gaiasky

Class GaiaSky

java.lang.Object
gaiasky.GaiaSky
All Implemented Interfaces:
com.badlogic.gdx.ApplicationListener, IObserver, IMainRenderer

public class GaiaSky extends Object implements com.badlogic.gdx.ApplicationListener, IObserver, IMainRenderer
The main class. Holds all the entities manages the update/draw cycle and all other top-level functions of Gaia Sky.
  • Field Details

    • instance

      public static GaiaSky instance
      Singleton instance.
    • window

      public com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window window
      Window.
    • graphics

      public com.badlogic.gdx.Graphics graphics
      Graphics.
    • vrContext

      public VRContext vrContext
      The VRContext setup in createVR(), may be null if no HMD is present or SteamVR is not installed.
    • vrLoadingLeftFb

      public com.badlogic.gdx.graphics.glutils.FrameBuffer vrLoadingLeftFb
      Loading frame buffers.
    • vrLoadingRightFb

      public com.badlogic.gdx.graphics.glutils.FrameBuffer vrLoadingRightFb
      Loading frame buffers.
    • vrLoadingLeftTex

      public org.lwjgl.openvr.Texture vrLoadingLeftTex
      Loading texture.
    • vrLoadingRightTex

      public org.lwjgl.openvr.Texture vrLoadingRightTex
      Loading texture.
    • assetManager

      public com.badlogic.gdx.assets.AssetManager assetManager
      The asset manager.
    • cameraManager

      public CameraManager cameraManager
      The main camera manager.
    • scene

      public Scene scene
    • sceneRenderer

      public SceneRenderer sceneRenderer
    • frames

      public long frames
      Holds the number of frames produced in this session.
    • inputMultiplexer

      public com.badlogic.gdx.InputMultiplexer inputMultiplexer
    • welcomeGui

      public IGui welcomeGui
      The user interfaces
    • welcomeGuiVR

      public IGui welcomeGuiVR
      The user interfaces
    • loadingGui

      public IGui loadingGui
      The user interfaces
    • loadingGuiVR

      public IGui loadingGuiVR
      The user interfaces
    • mainGui

      public IGui mainGui
      The user interfaces
    • spacecraftGui

      public IGui spacecraftGui
      The user interfaces
    • stereoGui

      public IGui stereoGui
      The user interfaces
    • debugGui

      public IGui debugGui
      The user interfaces
    • crashGui

      public IGui crashGui
      The user interfaces
    • controllerGui

      public IGui controllerGui
      The user interfaces
    • time

      public ITimeFrameProvider time
      Time
    • windowCreated

      public boolean windowCreated
    • frameMonitor

      public final Object frameMonitor
      Used to wait for new frames
    • saveState

      public boolean saveState
      Save state on exit
    • externalView

      public boolean externalView
      External view with final rendered scene and no UI
    • gaiaSkyView

      public GaiaSkyView gaiaSkyView
      External UI window
  • Constructor Details

    • GaiaSky

      public GaiaSky()
      Creates an instance of Gaia Sky.
    • GaiaSky

      public GaiaSky(boolean skipWelcome, boolean vr, boolean externalView, boolean headless, boolean noScriptingServer, boolean debugMode)
      Creates an instance of Gaia Sky.
      Parameters:
      skipWelcome - Skips welcome screen if possible.
      vr - Launch in VR mode.
      externalView - Open a new window with a view of the rendered scene.
      headless - Launch in headless mode, without window.
      debugMode - Output debug information.
  • Method Details

    • create

      public void create()
      Specified by:
      create in interface com.badlogic.gdx.ApplicationListener
    • touchSceneGraph

      public void touchSceneGraph()
      Forces a global scene update. Updates the scene with a very small dt to force the re-computation of all entities.
    • reinitialiseGUI1

      public void reinitialiseGUI1()
      Re-initialises all the GUI (step 1)
    • reinitialiseGUI2

      public void reinitialiseGUI2()
      Second step in GUI initialisation.
    • pause

      public void pause()
      Specified by:
      pause in interface com.badlogic.gdx.ApplicationListener
    • resume

      public void resume()
      Specified by:
      resume in interface com.badlogic.gdx.ApplicationListener
    • dispose

      public void dispose()
      Specified by:
      dispose in interface com.badlogic.gdx.ApplicationListener
    • resetDynamicResolution

      public void resetDynamicResolution()
    • getBackRenderBuffer

      public com.badlogic.gdx.graphics.glutils.FrameBuffer getBackRenderBuffer()
    • setCrashed

      public void setCrashed(boolean crashed)
    • isCrashed

      public boolean isCrashed()
    • render

      public void render()
      Specified by:
      render in interface com.badlogic.gdx.ApplicationListener
    • update

      public void update(double dt)
      Update method.
      Parameters:
      dt - Delta time in seconds.
    • preRenderScene

      public void preRenderScene()
      Specified by:
      preRenderScene in interface IMainRenderer
    • renderSgr

      public void renderSgr(ICamera camera, double t, int width, int height, int tw, int th, com.badlogic.gdx.graphics.glutils.FrameBuffer frameBuffer, IPostProcessor.PostProcessBean ppb)
      Specified by:
      renderSgr in interface IMainRenderer
    • resize

      public void resize(int width, int height)
      Specified by:
      resize in interface com.badlogic.gdx.ApplicationListener
    • resizeImmediate

      public void resizeImmediate(int width, int height, boolean resizePostProcessors, boolean resizeRenderSys, boolean resizeGuis, boolean resizeScreenConf)
    • getFrameBuffer

      public com.badlogic.gdx.graphics.glutils.FrameBuffer getFrameBuffer(int w, int h)
      Specified by:
      getFrameBuffer in interface IMainRenderer
    • getVRDeviceToModel

      public HashMap<VRContext.VRDevice,com.badlogic.ashley.core.Entity> getVRDeviceToModel()
    • scripting

      public IScriptingInterface scripting()
    • getExecutorService

      public GaiaSkyExecutorService getExecutorService()
    • getGuiRegistry

      public GuiRegistry getGuiRegistry()
    • getBookmarksManager

      public BookmarksManager getBookmarksManager()
    • getICamera

      public ICamera getICamera()
      Specified by:
      getICamera in interface IMainRenderer
    • getT

      public double getT()
      Specified by:
      getT in interface IMainRenderer
    • getCameraManager

      public CameraManager getCameraManager()
      Specified by:
      getCameraManager in interface IMainRenderer
    • getPostProcessor

      public IPostProcessor getPostProcessor()
      Specified by:
      getPostProcessor in interface IMainRenderer
    • isOn

      public boolean isOn(int ordinal)
    • isOn

      public boolean isOn(ComponentTypes.ComponentType comp)
    • isOn

      public boolean isOn(ComponentTypes cts)
    • alpha

      public float alpha(ComponentTypes cts)
    • getCatalogInfoFromEntity

      public Optional<CatalogInfo> getCatalogInfoFromEntity(com.badlogic.ashley.core.Entity entity)
    • notify

      public void notify(Event event, Object source, Object... data)
      Description copied from interface: IObserver
      Event notification call.
      Specified by:
      notify in interface IObserver
      Parameters:
      event - The event type.
      source - The source object, if any.
      data - The data associated with this event.
    • isInitialised

      public boolean isInitialised()
    • isHeadless

      public boolean isHeadless()
    • getGlobalResources

      public GlobalResources getGlobalResources()
    • parkUpdateRunnable

      public void parkUpdateRunnable(String key, Runnable runnable)
      Parks an update runnable that runs after the update-scene stage until it is removed.
      Parameters:
      key - The key to identify the runnable.
      runnable - The runnable to park.
    • parkCameraRunnable

      public void parkCameraRunnable(String key, Runnable runnable)
      Parks a camera runnable that runs after the update-camera stage, and before the update-scene stage, until it is removed.
      Parameters:
      key - The key to identify the runnable.
      runnable - The runnable to park.
    • parkRunnable

      public void parkRunnable(String key, Runnable runnable, Map<String,Runnable> map, com.badlogic.gdx.utils.Array<Runnable> runnables)
      Parks a runnable to the given map and list.
      Parameters:
      key - The key to identify the runnable.
      runnable - The runnable to park.
      map - The map to use.
      runnables - The runnables list.
    • removeRunnable

      public void removeRunnable(String key)
      Removes a previously parked update runnable.
      Parameters:
      key - The key of the runnable to remove.
    • postRunnable

      public static void postRunnable(Runnable r)
      Posts a runnable that will run once after the current frame.
      Parameters:
      r - The runnable to post.