|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.jme3.renderer.lwjgl.LwjglGL1Renderer
public class LwjglGL1Renderer
Constructor Summary | |
---|---|
LwjglGL1Renderer()
|
Method Summary | |
---|---|
void |
applyRenderState(RenderState state)
Applies the given RenderState , making the necessary
GL calls so that the state is applied. |
void |
cleanup()
Deletes all previously used Native Objects on this Renderer, and
then resets the native objects. |
void |
clearBuffers(boolean color,
boolean depth,
boolean stencil)
Clears certain channels of the currently bound framebuffer. |
void |
clearClipRect()
Clears the clipping rectangle set with Renderer.setClipRect(int, int, int, int) . |
void |
clearVertexAttribs()
|
void |
copyFrameBuffer(FrameBuffer src,
FrameBuffer dst)
Copies contents from src to dst, scaling if necessary. |
void |
copyFrameBuffer(FrameBuffer src,
FrameBuffer dst,
boolean copyDepth)
Copies contents from src to dst, scaling if necessary. |
void |
deleteBuffer(VertexBuffer vb)
Deletes a vertex buffer from the GPU. |
void |
deleteFrameBuffer(FrameBuffer fb)
Deletes a framebuffer and all attached renderbuffers |
void |
deleteImage(Image image)
Deletes a texture from the GPU. |
void |
deleteShader(Shader shader)
Deletes a shader. |
void |
deleteShaderSource(Shader.ShaderSource source)
Deletes the provided shader source. |
void |
drawTriangleArray(Mesh.Mode mode,
int count,
int vertCount)
|
void |
drawTriangleList(VertexBuffer indexBuf,
Mesh mesh,
int count)
|
java.util.EnumSet<Caps> |
getCaps()
Get the capabilities of the renderer. |
Statistics |
getStatistics()
The statistics allow tracking of how data per frame, such as number of objects rendered, number of triangles, etc. |
void |
initialize()
|
void |
invalidateState()
Invalidates the current rendering state. |
void |
onFrame()
Called when a new frame has been rendered. |
void |
readFrameBuffer(FrameBuffer fb,
java.nio.ByteBuffer byteBuf)
Reads the pixels currently stored in the specified framebuffer into the given ByteBuffer object. |
void |
renderMesh(Mesh mesh,
int lod,
int count)
Renders count meshes, with the geometry data supplied. |
void |
resetGLObjects()
Resets all previously used Native Objects on this Renderer. |
void |
setAlphaToCoverage(boolean value)
Sets the alpha to coverage state. |
void |
setBackgroundColor(ColorRGBA color)
Sets the background (aka clear) color. |
void |
setClipRect(int x,
int y,
int width,
int height)
Specifies a clipping rectangle. |
void |
setDepthRange(float start,
float end)
Set the range of the depth values for objects. |
void |
setFixedFuncBinding(FixedFuncBinding ffBinding,
java.lang.Object val)
Set the fixed functionality state. |
void |
setFrameBuffer(FrameBuffer fb)
Sets the framebuffer that will be drawn to. |
void |
setLighting(LightList list)
Set lighting state. |
void |
setMainFrameBufferOverride(FrameBuffer fb)
Set the framebuffer that will be set instead of the main framebuffer when a call to setFrameBuffer(null) is made. |
void |
setShader(Shader shader)
Sets the shader to use for rendering. |
void |
setTexture(int unit,
Texture tex)
Sets the texture to use for the given texture unit. |
void |
setVertexAttrib(VertexBuffer vb)
|
void |
setVertexAttrib(VertexBuffer vb,
VertexBuffer idb)
|
void |
setViewPort(int x,
int y,
int w,
int h)
Set the viewport location and resolution on the screen. |
void |
setViewProjectionMatrices(Matrix4f viewMatrix,
Matrix4f projMatrix)
Sets the view and projection matrices to use. |
void |
setWorldMatrix(Matrix4f worldMatrix)
Set the world matrix to use. |
void |
updateBufferData(VertexBuffer vb)
Uploads a vertex buffer to the GPU. |
protected void |
updateNameBuffer()
|
void |
updateTexImageData(Image img,
Texture.Type type,
boolean mips,
int unit)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public LwjglGL1Renderer()
Method Detail |
---|
protected void updateNameBuffer()
public Statistics getStatistics()
Renderer
Statistics.clearFrame()
at the appropriate time
to get accurate info per frame.
getStatistics
in interface Renderer
public java.util.EnumSet<Caps> getCaps()
Renderer
getCaps
in interface Renderer
public void initialize()
public void invalidateState()
Renderer
invalidateState
in interface Renderer
public void resetGLObjects()
Renderer
Native Objects
on this Renderer.
The state of the native objects is reset in such way, that using
them again will cause the renderer to reupload them.
Call this method when you know the GL context is going to shutdown.
resetGLObjects
in interface Renderer
NativeObject.resetObject()
public void cleanup()
Renderer
Native Objects
on this Renderer, and
then resets the native objects.
cleanup
in interface Renderer
Renderer.resetGLObjects()
,
NativeObject#deleteObject(com.jme3.renderer.Renderer)
public void setDepthRange(float start, float end)
Renderer
setDepthRange
in interface Renderer
start
- The range startend
- The range endpublic void clearBuffers(boolean color, boolean depth, boolean stencil)
Renderer
clearBuffers
in interface Renderer
color
- True if to clear colors (RGBA)depth
- True if to clear depth/zstencil
- True if to clear stencil buffer (if available, otherwise
ignored)public void setBackgroundColor(ColorRGBA color)
Renderer
setBackgroundColor
in interface Renderer
color
- The background color to setpublic void setFixedFuncBinding(FixedFuncBinding ffBinding, java.lang.Object val)
GL1Renderer
See FixedFuncBinding
for various values that
can be set.
setFixedFuncBinding
in interface GL1Renderer
ffBinding
- The binding to setval
- The valuepublic void applyRenderState(RenderState state)
Renderer
RenderState
, making the necessary
GL calls so that the state is applied.
applyRenderState
in interface Renderer
public void setViewPort(int x, int y, int w, int h)
Renderer
setViewPort
in interface Renderer
x
- The x coordinate of the viewporty
- The y coordinate of the viewportw
- Width of the viewporth
- Height of the viewportpublic void setClipRect(int x, int y, int width, int height)
Renderer
setClipRect
in interface Renderer
x
- The x coordinate of the clip recty
- The y coordinate of the clip rectwidth
- Width of the clip rectheight
- Height of the clip rectpublic void clearClipRect()
Renderer
Renderer.setClipRect(int, int, int, int)
.
clearClipRect
in interface Renderer
public void onFrame()
Renderer
onFrame
in interface Renderer
public void setWorldMatrix(Matrix4f worldMatrix)
Renderer
setWorldMatrix
in interface Renderer
worldMatrix
- World matrix to use.public void setViewProjectionMatrices(Matrix4f viewMatrix, Matrix4f projMatrix)
Renderer
setViewProjectionMatrices
in interface Renderer
viewMatrix
- The view matrix to use.projMatrix
- The projection matrix to use.public void setLighting(LightList list)
Renderer
null
to disable lighting.
setLighting
in interface Renderer
list
- The light list to set.public void updateTexImageData(Image img, Texture.Type type, boolean mips, int unit)
public void setTexture(int unit, Texture tex)
Renderer
setTexture
in interface Renderer
public void deleteImage(Image image)
Renderer
deleteImage
in interface Renderer
public void drawTriangleArray(Mesh.Mode mode, int count, int vertCount)
public void setVertexAttrib(VertexBuffer vb, VertexBuffer idb)
public void setVertexAttrib(VertexBuffer vb)
public void drawTriangleList(VertexBuffer indexBuf, Mesh mesh, int count)
public void clearVertexAttribs()
public void renderMesh(Mesh mesh, int lod, int count)
Renderer
count
meshes, with the geometry data supplied.
The shader which is currently set with setShader
is
responsible for transforming the input verticies into clip space
and shading it based on the given vertex attributes.
The int variable gl_InstanceID can be used to access the current
instance of the mesh being rendered inside the vertex shader.
renderMesh
in interface Renderer
mesh
- The mesh to renderlod
- The LOD level to use, see Mesh.setLodLevels(com.jme3.scene.VertexBuffer[])
.count
- Number of mesh instances to renderpublic void setAlphaToCoverage(boolean value)
Renderer
When alpha coverage and multi-sampling is enabled, each pixel will contain alpha coverage in all of its subsamples, which is then combined when other future alpha-blended objects are rendered.
Alpha-to-coverage is useful for rendering transparent objects without having to worry about sorting them.
setAlphaToCoverage
in interface Renderer
public void setShader(Shader shader)
Renderer
setShader
in interface Renderer
shader
- The shader to use for rendering.public void deleteShader(Shader shader)
Renderer
deleteShader
in interface Renderer
shader
- Shader to delete.public void deleteShaderSource(Shader.ShaderSource source)
Renderer
deleteShaderSource
in interface Renderer
source
- The ShaderSource to delete.public void copyFrameBuffer(FrameBuffer src, FrameBuffer dst)
Renderer
copyFrameBuffer
in interface Renderer
public void copyFrameBuffer(FrameBuffer src, FrameBuffer dst, boolean copyDepth)
Renderer
copyFrameBuffer
in interface Renderer
public void setMainFrameBufferOverride(FrameBuffer fb)
Renderer
setMainFrameBufferOverride
in interface Renderer
public void setFrameBuffer(FrameBuffer fb)
Renderer
setFrameBuffer
in interface Renderer
public void readFrameBuffer(FrameBuffer fb, java.nio.ByteBuffer byteBuf)
Renderer
readFrameBuffer
in interface Renderer
fb
- The framebuffer to read frombyteBuf
- The bytebuffer to transfer color data topublic void deleteFrameBuffer(FrameBuffer fb)
Renderer
deleteFrameBuffer
in interface Renderer
public void updateBufferData(VertexBuffer vb)
Renderer
updateBufferData
in interface Renderer
vb
- The vertex buffer to uploadpublic void deleteBuffer(VertexBuffer vb)
Renderer
deleteBuffer
in interface Renderer
vb
- The vertex buffer to delete
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |