Class RegionRenderer
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final RegionRenderer.GLCallback
DefaultGL.GL_BLEND
disableRegionRenderer.GLCallback
, simply turning-off theGL.GL_BLEND
state and turning-on depth writing viaGL.glDepthMask(boolean)
ifRenderState.BITHINT_GLOBAL_DEPTH_TEST_ENABLED
is set.static final RegionRenderer.GLCallback
DefaultGL.GL_BLEND
enableRegionRenderer.GLCallback
, turning-off depth writing viaGL.glDepthMask(boolean)
ifRenderState.BITHINT_GLOBAL_DEPTH_TEST_ENABLED
is set and turning-on theGL.GL_BLEND
state. -
Method Summary
Modifier and TypeMethodDescriptionstatic RegionRenderer
create
(RenderState rs, RegionRenderer.GLCallback enableCallback, RegionRenderer.GLCallback disableCallback) Create a Hardware accelerated Region Renderer.final void
final void
Enabling or disabling theRenderState
'sshader program
.final int
Return height of current viewportfinal PMVMatrix
final RenderState
final int
getWidth()
Return width of current viewportfinal void
Initialize shader and bindings for GPU based rendering bound to the given GL object's GLContext if not initialized yet.final boolean
final boolean
final void
reshapeNotify
(int width, int height) No PMVMatrix operation is performed here.final void
reshapeOrtho
(int width, int height, float near, float far) final void
reshapePerspective
(float angle, int width, int height, float near, float far) final boolean
useShaderProgram
(GL2ES2 gl, int renderModes, boolean pass1, int quality, int sampleCount, TextureSequence colorTexSeq)
-
Field Details
-
defaultBlendEnable
DefaultGL.GL_BLEND
enableRegionRenderer.GLCallback
, turning-off depth writing viaGL.glDepthMask(boolean)
ifRenderState.BITHINT_GLOBAL_DEPTH_TEST_ENABLED
is set and turning-on theGL.GL_BLEND
state.Implementation also sets
RenderState
'sblending bit-hint
, which will causeGLRegion's draw-method
to set the properblend-function
and the clear-color to transparent-black in case ofmultipass
FBO rendering. -
defaultBlendDisable
DefaultGL.GL_BLEND
disableRegionRenderer.GLCallback
, simply turning-off theGL.GL_BLEND
state and turning-on depth writing viaGL.glDepthMask(boolean)
ifRenderState.BITHINT_GLOBAL_DEPTH_TEST_ENABLED
is set.Implementation also clears
RenderState
'sblending bit-hint
.
-
-
Method Details
-
create
public static RegionRenderer create(RenderState rs, RegionRenderer.GLCallback enableCallback, RegionRenderer.GLCallback disableCallback) Create a Hardware accelerated Region Renderer.The optional
RegionRenderer.GLCallback
senableCallback
anddisableCallback
maybe used to issue certain tasks atenable(GL2ES2, boolean)
.
For example, instancesdefaultBlendEnable
anddefaultBlendDisable
can be utilized to enable and disableGL.GL_BLEND
.- Parameters:
rs
- the usedRenderState
enableCallback
- optionalRegionRenderer.GLCallback
, if notnull
will be issued atinit(gl)
andenable(gl, true)
.disableCallback
- optionalRegionRenderer.GLCallback
, if notnull
will be issued atenable(gl, false)
.- Returns:
- an instance of Region Renderer
- See Also:
-
isInitialized
public final boolean isInitialized() -
getWidth
public final int getWidth()Return width of current viewport -
getHeight
public final int getHeight()Return height of current viewport -
getMatrix
-
isVBOSupported
public final boolean isVBOSupported() -
init
Initialize shader and bindings for GPU based rendering bound to the given GL object's GLContext if not initialized yet.Leaves the renderer enabled, ie ShaderState.
Shall be called by a
draw()
method, e.g.RegionRenderer#draw(GL2ES2, Region, int)
- Parameters:
gl
- referencing the current GLContext to which the ShaderState is bound torenderModes
-- Throws:
GLException
- if initialization failed
-
destroy
-
getRenderState
-
enable
Enabling or disabling theRenderState
'sshader program
.In case enable and disable
RegionRenderer.GLCallback
s are setup viacreate(RenderState, GLCallback, GLCallback)
, they will be called before toggling the shader program. -
reshapeNotify
public final void reshapeNotify(int width, int height) No PMVMatrix operation is performed here. PMVMatrix is marked dirty. -
reshapePerspective
public final void reshapePerspective(float angle, int width, int height, float near, float far) -
reshapeOrtho
public final void reshapeOrtho(int width, int height, float near, float far) -
useShaderProgram
public final boolean useShaderProgram(GL2ES2 gl, int renderModes, boolean pass1, int quality, int sampleCount, TextureSequence colorTexSeq) - Parameters:
gl
-renderModes
-pass1
-quality
-sampleCount
-colorTexSeq
-- Returns:
- true if a new shader program is being used and hence external uniform-data and -location, as well as the attribute-location must be updated, otherwise false.
-