Package gaiasky.scene.system.render.draw
Class VariableSetInstancedRenderer
java.lang.Object
gaiasky.render.system.AbstractRenderSystem
gaiasky.render.system.ImmediateModeRenderSystem
gaiasky.render.system.InstancedRenderSystem
gaiasky.scene.system.render.draw.VariableSetInstancedRenderer
- All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable
,IObserver
,IRenderSystem
,Comparable<IRenderSystem>
Renders variable star sets as instanced triangles.
-
Nested Class Summary
Nested classes/interfaces inherited from class gaiasky.render.system.InstancedRenderSystem
InstancedRenderSystem.InstancedModel
Nested classes/interfaces inherited from class gaiasky.render.system.ImmediateModeRenderSystem
ImmediateModeRenderSystem.MeshData, ImmediateModeRenderSystem.OwnUsage
Nested classes/interfaces inherited from class gaiasky.render.system.AbstractRenderSystem
AbstractRenderSystem.RenderSystemRunnable
-
Field Summary
Fields inherited from class gaiasky.render.system.InstancedRenderSystem
models, utils
Fields inherited from class gaiasky.render.system.ImmediateModeRenderSystem
auxMat, curr, inGpu, meshes, meshIdx, tempIndices, tempVerts
Fields inherited from class gaiasky.render.system.AbstractRenderSystem
alphas, aux3f, comp, postRunners, preRunners, programs, rc, sceneRenderer
-
Constructor Summary
ConstructorDescriptionVariableSetInstancedRenderer
(SceneRenderer sceneRenderer, RenderGroup rg, float[] alphas, ExtShaderProgram[] shaders) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addAttributesDivisor1
(com.badlogic.gdx.utils.Array<com.badlogic.gdx.graphics.VertexAttribute> attributes, int primitive) Adds the required vertex attributes for this renderer to the given list.protected void
Initializes metadata or essential uniforms in the shader program.void
Event notification call.protected void
Computes the offset for each vertex attribute.protected void
Computes the offset for each vertex attribute in the instanced array.protected void
preRenderObjects
(ExtShaderProgram shaderProgram, ICamera camera) protected void
renderObject
(ExtShaderProgram shaderProgram, IRenderable renderable) void
resize
(int w, int h) Resize the current render target with the given width and height.protected void
setInGpu
(IRenderable renderable, boolean state) Methods inherited from class gaiasky.render.system.InstancedRenderSystem
addAttributesDivisor0, addMeshData, buildAttributesDivisor0, buildAttributesDivisor1, getModel, getModel, initVertices, isWireframe, postRenderObjects, renderStud, setModel
Methods inherited from class gaiasky.render.system.ImmediateModeRenderSystem
addAffineTransformUniforms, clearMeshData, clearMeshes, color, color, color, color, createMeshData, dispose, ensureTempIndicesSize, ensureTempVertsSize, getCount, getOffset, inGpu, setCount, setOffset, vertex
Methods inherited from class gaiasky.render.system.AbstractRenderSystem
addCameraUpCubemapMode, addDepthBufferUniforms, addEffectsUniforms, addGravWaveUniforms, addPostRunnables, addPreRunnables, addRelativisticUniforms, addVRScale, compareTo, getAlpha, getAlpha, getAlpha, getRenderGroup, getShaderProgram, getShaderProgram, render, resetFlags, run, updateBatchSize
-
Field Details
-
MAX_VARI
public static final int MAX_VARI- See Also:
-
logger
-
-
Constructor Details
-
VariableSetInstancedRenderer
public VariableSetInstancedRenderer(SceneRenderer sceneRenderer, RenderGroup rg, float[] alphas, ExtShaderProgram[] shaders)
-
-
Method Details
-
addAttributesDivisor1
protected void addAttributesDivisor1(com.badlogic.gdx.utils.Array<com.badlogic.gdx.graphics.VertexAttribute> attributes, int primitive) Description copied from class:InstancedRenderSystem
Adds the required vertex attributes for this renderer to the given list. These attributes are added for every instance (divisor=1)- Specified by:
addAttributesDivisor1
in classInstancedRenderSystem
- Parameters:
attributes
- The list of attributes with divisor=1primitive
- The rendering primitive.
-
offsets0
protected void offsets0(ImmediateModeRenderSystem.MeshData curr, InstancedRenderSystem.InstancedModel model) Description copied from class:InstancedRenderSystem
Computes the offset for each vertex attribute. The offsets will be used later in the render stage.- Specified by:
offsets0
in classInstancedRenderSystem
- Parameters:
curr
- The current mesh data.model
- The instanced model.
-
offsets1
protected void offsets1(ImmediateModeRenderSystem.MeshData curr, InstancedRenderSystem.InstancedModel model) Description copied from class:InstancedRenderSystem
Computes the offset for each vertex attribute in the instanced array. The offsets will be used later in the render stage.- Specified by:
offsets1
in classInstancedRenderSystem
- Parameters:
curr
- The current mesh data.model
- The instanced model.
-
initShaderProgram
protected void initShaderProgram()Description copied from class:AbstractRenderSystem
Initializes metadata or essential uniforms in the shader program.- Overrides:
initShaderProgram
in classAbstractRenderSystem
-
preRenderObjects
- Overrides:
preRenderObjects
in classInstancedRenderSystem
-
renderObject
- Overrides:
renderObject
in classInstancedRenderSystem
-
setInGpu
- Overrides:
setInGpu
in classImmediateModeRenderSystem
-
notify
Description copied from interface:IObserver
Event notification call. -
resize
public void resize(int w, int h) Description copied from interface:IRenderSystem
Resize the current render target with the given width and height.- Specified by:
resize
in interfaceIRenderSystem
- Overrides:
resize
in classAbstractRenderSystem
- Parameters:
w
- The new width.h
- The new height.
-