Package gaia.cu9.ari.gaiaorbit.render
Class SceneGraphRenderer
- java.lang.Object
-
- gaia.cu9.ari.gaiaorbit.render.AbstractRenderer
-
- gaia.cu9.ari.gaiaorbit.render.SceneGraphRenderer
-
- All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable
,IObserver
,IProcessRenderer
public class SceneGraphRenderer extends AbstractRenderer implements IProcessRenderer, IObserver
Renders a scenegraph.
-
-
Field Summary
Fields Modifier and Type Field Description static float[]
alphas
Alpha values for each typestatic SceneGraphRenderer
instance
static com.badlogic.gdx.utils.Array<com.badlogic.gdx.utils.Array<IRenderable>>
render_lists
Render lists for all render groupscom.badlogic.gdx.graphics.glutils.FrameBuffer[]
shadowMapFb
java.util.Map<ModelBody,com.badlogic.gdx.math.Matrix4>
smCombinedMap
java.util.Map<ModelBody,com.badlogic.gdx.graphics.Texture>
smTexMap
static long[]
times
Contains the last update time of each of the flagsstatic ComponentTypes
visible
Contains the flags representing each type's visibility-
Fields inherited from class gaia.cu9.ari.gaiaorbit.render.AbstractRenderer
sg
-
-
Constructor Summary
Constructors Constructor Description SceneGraphRenderer()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clearLists()
This must be called when all the rendering for the current frame has finished.void
dispose()
void
doneLoading(com.badlogic.gdx.assets.AssetManager manager)
Actually initializes all the clockwork of this renderer using the assets in the given managercom.badlogic.gdx.graphics.glutils.FrameBuffer
getGlowFb()
static void
initialise(com.badlogic.gdx.assets.AssetManager manager)
void
initialize(com.badlogic.gdx.assets.AssetManager manager)
Initializes the renderer, sending all the necessary assets to the manager for loadingboolean
isOn(int ordinal)
boolean
isOn(ComponentTypes comp)
Checks if the component types are all onboolean
isOn(ComponentTypes.ComponentType comp)
Checks if a given component type is onvoid
notify(Events event, java.lang.Object... data)
void
render(ICamera camera, double t, int rw, int rh, com.badlogic.gdx.graphics.glutils.FrameBuffer fb, IPostProcessor.PostProcessBean ppb)
Renders the scene.void
renderGlowPass(ICamera camera, com.badlogic.gdx.graphics.glutils.FrameBuffer fb)
void
renderScene(ICamera camera, double t, RenderingContext rc)
Renders the scenevoid
renderSystem(ICamera camera, double t, RenderingContext rc, java.lang.Class<? extends IRenderSystem> clazz)
Renders all the systems which are the same type of the given classvoid
resize(int w, int h)
void
resize(int w, int h, boolean resizeRenderSys)
void
resizeRenderSystems(int w, int h)
void
updateLineRenderSystem()
-
Methods inherited from class gaia.cu9.ari.gaiaorbit.render.AbstractRenderer
initialize
-
-
-
-
Field Detail
-
instance
public static SceneGraphRenderer instance
-
visible
public static ComponentTypes visible
Contains the flags representing each type's visibility
-
times
public static long[] times
Contains the last update time of each of the flags
-
alphas
public static float[] alphas
Alpha values for each type
-
render_lists
public static com.badlogic.gdx.utils.Array<com.badlogic.gdx.utils.Array<IRenderable>> render_lists
Render lists for all render groups
-
shadowMapFb
public com.badlogic.gdx.graphics.glutils.FrameBuffer[] shadowMapFb
-
smTexMap
public java.util.Map<ModelBody,com.badlogic.gdx.graphics.Texture> smTexMap
-
smCombinedMap
public java.util.Map<ModelBody,com.badlogic.gdx.math.Matrix4> smCombinedMap
-
-
Method Detail
-
initialise
public static void initialise(com.badlogic.gdx.assets.AssetManager manager)
-
initialize
public void initialize(com.badlogic.gdx.assets.AssetManager manager)
Description copied from interface:IProcessRenderer
Initializes the renderer, sending all the necessary assets to the manager for loading- Specified by:
initialize
in interfaceIProcessRenderer
- Parameters:
manager
- The asset manager
-
doneLoading
public void doneLoading(com.badlogic.gdx.assets.AssetManager manager)
Description copied from interface:IProcessRenderer
Actually initializes all the clockwork of this renderer using the assets in the given manager- Specified by:
doneLoading
in interfaceIProcessRenderer
- Parameters:
manager
- The asset manager
-
renderGlowPass
public void renderGlowPass(ICamera camera, com.badlogic.gdx.graphics.glutils.FrameBuffer fb)
-
render
public void render(ICamera camera, double t, int rw, int rh, com.badlogic.gdx.graphics.glutils.FrameBuffer fb, IPostProcessor.PostProcessBean ppb)
Description copied from interface:IProcessRenderer
Renders the scene.- Specified by:
render
in interfaceIProcessRenderer
- Parameters:
camera
- The camera to use.t
- The delta time computed in the update method in seconds.rw
- The render width.rh
- The render height.fb
- The frame buffer to write to, if any.ppb
- The post process bean.
-
getGlowFb
public com.badlogic.gdx.graphics.glutils.FrameBuffer getGlowFb()
-
renderScene
public void renderScene(ICamera camera, double t, RenderingContext rc)
Renders the scene- Parameters:
camera
- The camera to uset
- The time in seconds since the startrc
- The render context
-
renderSystem
public void renderSystem(ICamera camera, double t, RenderingContext rc, java.lang.Class<? extends IRenderSystem> clazz)
Renders all the systems which are the same type of the given class- Parameters:
camera
- The camera to uset
- The time in seconds since the startrc
- The render contexclazz
- The class
-
clearLists
public void clearLists()
This must be called when all the rendering for the current frame has finished.
-
isOn
public boolean isOn(ComponentTypes.ComponentType comp)
Checks if a given component type is on- Parameters:
comp
- The component- Returns:
- Whether the component is on
-
isOn
public boolean isOn(ComponentTypes comp)
Checks if the component types are all on- Parameters:
comp
- The components- Returns:
- Whether the components are all on
-
isOn
public boolean isOn(int ordinal)
-
notify
public void notify(Events event, java.lang.Object... data)
-
resize
public void resize(int w, int h)
-
resize
public void resize(int w, int h, boolean resizeRenderSys)
-
resizeRenderSystems
public void resizeRenderSystems(int w, int h)
-
dispose
public void dispose()
- Specified by:
dispose
in interfacecom.badlogic.gdx.utils.Disposable
-
updateLineRenderSystem
public void updateLineRenderSystem()
-
-