Package com.prineside.tdi2.systems
Class RenderSystem
java.lang.Object
com.prineside.tdi2.Registrable
com.prineside.tdi2.GameSystem
com.prineside.tdi2.systems.RenderSystem
- All Implemented Interfaces:
 Disposable,KryoSerializable
Manages the order of rendering.
 Everything, except the UI, is rendered through this system.
 Layers are ordered by "z-index", from lowest to the highest (higher z-index is being drawn on top
 of a lower ones). Default systems add their (default) layers with z-index specified in
 config.GameRenderingOrder.
 By default, LayerRenderers will receive an instance of Batch which is already prepared to be
 used (batch.begin() already called, color set to WHITE, previous layers are flushed if needed,
 projection and transform matrices are reset to camera / zero, blending is enabled and "additive"
 color mode is set to the value specified by the layer) and it guarantees that this batch
 has not been affected by the previous layers. It is not necessary to use this instance of batch
 and it can be completely ignored - batch is there for a convenience, other rendering methods
 (ShapeRenderer / PolygonBatch / SpriteCache etc) can be used instead but LayerRenderer must
 properly configure them manually (make sure to set a proper color / matrices etc).
 Layers can do whatever they need to in their LayerRenderers - for example, switch a shader / end
 the batch, use ShapeRenderer instead, start rendering to FrameBuffers (using RenderManager's
 methods) etc.
- 
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classstatic interface - 
Field Summary
FieldsModifier and TypeFieldDescriptionfloatfloatfloatfloatfloatfloatFields inherited from class com.prineside.tdi2.Registrable
S - 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionvoidaddLayer(RenderSystem.Layer layer) booleanvoidcalculateDeltaTimes(Render event) voiddispose()Releases all resources of this object.voiddrawLayers(Batch batch) getLayer(int zIndex) voidprepareBatch(Batch batch, boolean additive) Does the same as RenderingManager.prepareBatch but also resets projection / transform matrix to the current camera (in case it has been changed)booleanShould the update() method be rendered on the debug overlayremoveLayer(RenderSystem.Layer layer) removeLayerByZIndex(int zIndex) voidsetup()Performs the initial configuration of the system.Methods inherited from class com.prineside.tdi2.GameSystem
getFastStateHash, postSetup, postStateRestore, updateMethods inherited from class com.prineside.tdi2.Registrable
isRegistered, read, setRegistered, setUnregistered, write 
- 
Field Details
- 
realDeltaTimeMultiplier
public float realDeltaTimeMultiplier - 
gameOverGameSpeed
public float gameOverGameSpeed - 
gameOverInterpolatedTime
public float gameOverInterpolatedTime - 
currentInGameDeltaTime
public float currentInGameDeltaTime - 
currentInterpolatedDeltaTime
public float currentInterpolatedDeltaTime - 
currentRealDeltaTime
public float currentRealDeltaTime 
 - 
 - 
Constructor Details
- 
RenderSystem
public RenderSystem() 
 - 
 - 
Method Details
- 
setup
public void setup()Description copied from class:GameSystemPerforms the initial configuration of the system. At the moment of call, systemProvider already contains all objects of systems.- Overrides:
 setupin classGameSystem
 - 
getCamera
 - 
dispose
public void dispose()Description copied from interface:com.badlogic.gdx.utils.DisposableReleases all resources of this object.- Specified by:
 disposein interfaceDisposable- Overrides:
 disposein classGameSystem
 - 
getLayer
 - 
removeLayerByZIndex
 - 
removeLayer
 - 
addLayer
 - 
calculateDeltaTimes
 - 
drawLayers
 - 
prepareBatch
Does the same as RenderingManager.prepareBatch but also resets projection / transform matrix to the current camera (in case it has been changed) - 
profileUpdate
public boolean profileUpdate()Description copied from class:GameSystemShould the update() method be rendered on the debug overlay- Overrides:
 profileUpdatein classGameSystem
 - 
affectsGameState
public boolean affectsGameState()- Specified by:
 affectsGameStatein classGameSystem
 - 
getSystemName
- Specified by:
 getSystemNamein classGameSystem
 
 -