public class SimpleOrthoGroupStrategy extends Object implements GroupStrategy
Minimalistic grouping strategy useful for orthogonal scenes where the camera faces the negative z axis. Handles enabling and disabling of blending and uses world-z only front to back sorting for transparent decals.
States (* = any, EV = entry value - same as value before flush):
expects | exits on | |
glDepthMask | true | EV | true |
GL_DEPTH_TEST | enabled | EV |
glDepthFunc | GL_LESS | GL_LEQUAL | EV |
GL_BLEND | disabled | EV | disabled |
glBlendFunc | * | * |
GL_TEXTURE_2D | * | disabled |
Constructor and Description |
---|
SimpleOrthoGroupStrategy() |
Modifier and Type | Method and Description |
---|---|
void |
afterGroup(int group)
Invoked directly after rendering of a group has completed
|
void |
afterGroups()
Invoked after having rendered all groups
|
void |
beforeGroup(int group,
Array<Decal> contents)
Invoked directly before rendering the contents of a group
|
void |
beforeGroups()
Invoked before rendering any group
|
int |
decideGroup(Decal decal)
Assigns a group to a decal
|
ShaderProgram |
getGroupShader(int group)
Returns the shader to be used for the group.
|
public int decideGroup(Decal decal)
GroupStrategy
decideGroup
in interface GroupStrategy
decal
- Decal to assign group topublic void beforeGroup(int group, Array<Decal> contents)
GroupStrategy
beforeGroup
in interface GroupStrategy
group
- Group that will be renderedcontents
- Array of entries of arrays containing all the decals in the grouppublic void afterGroup(int group)
GroupStrategy
afterGroup
in interface GroupStrategy
group
- Group which completed renderingpublic void beforeGroups()
GroupStrategy
beforeGroups
in interface GroupStrategy
public void afterGroups()
GroupStrategy
afterGroups
in interface GroupStrategy
public ShaderProgram getGroupShader(int group)
GroupStrategy
getGroupShader
in interface GroupStrategy
group
- the groupShaderProgram
Copyright © 2015. All rights reserved.