com.jme3.renderer
Class Statistics

java.lang.Object
  extended by com.jme3.renderer.Statistics

public class Statistics
extends java.lang.Object

The statistics class allows tracking of real-time rendering statistics.

The Statistics can be retrieved by using Renderer.getStatistics().


Field Summary
protected  java.util.HashSet<java.lang.Integer> fbosUsed
           
protected  int memoryFrameBuffers
           
protected  int memoryShaders
           
protected  int memoryTextures
           
protected  int numFboSwitches
           
protected  int numObjects
           
protected  int numShaderSwitches
           
protected  int numTextureBinds
           
protected  int numTriangles
           
protected  int numUniformsSet
           
protected  int numVertices
           
protected  java.util.HashSet<java.lang.Integer> shadersUsed
           
protected  java.util.HashSet<java.lang.Integer> texturesUsed
           
 
Constructor Summary
Statistics()
           
 
Method Summary
 void clearFrame()
          Clears all frame-specific statistics such as objects used per frame.
 void clearMemory()
          Called when video memory is cleared.
 void getData(int[] data)
          Retrieves the statistics data into the given array.
 java.lang.String[] getLabels()
          Returns a list of labels corresponding to each statistic.
 void onDeleteFrameBuffer()
          Called by the Renderer when it deletes a framebuffer
 void onDeleteShader()
          Called by the Renderer when it deletes a shader
 void onDeleteTexture()
          Called by the Renderer when it deletes a texture
 void onFrameBufferUse(FrameBuffer fb, boolean wasSwitched)
          Called by the Renderer when a framebuffer has been set.
 void onMeshDrawn(Mesh mesh, int lod)
          Called by the Renderer when a mesh has been drawn.
 void onNewFrameBuffer()
          Called by the Renderer when it creates a new framebuffer
 void onNewShader()
          Called by the Renderer when it creates a new shader
 void onNewTexture()
          Called by the Renderer when it creates a new texture
 void onShaderUse(Shader shader, boolean wasSwitched)
          Called by the Renderer when a shader has been utilized.
 void onTextureUse(Image image, boolean wasSwitched)
          Called by the Renderer when a texture has been set.
 void onUniformSet()
          Called by the Renderer when a uniform was set.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

numObjects

protected int numObjects

numTriangles

protected int numTriangles

numVertices

protected int numVertices

numShaderSwitches

protected int numShaderSwitches

numTextureBinds

protected int numTextureBinds

numFboSwitches

protected int numFboSwitches

numUniformsSet

protected int numUniformsSet

memoryShaders

protected int memoryShaders

memoryFrameBuffers

protected int memoryFrameBuffers

memoryTextures

protected int memoryTextures

shadersUsed

protected java.util.HashSet<java.lang.Integer> shadersUsed

texturesUsed

protected java.util.HashSet<java.lang.Integer> texturesUsed

fbosUsed

protected java.util.HashSet<java.lang.Integer> fbosUsed
Constructor Detail

Statistics

public Statistics()
Method Detail

getLabels

public java.lang.String[] getLabels()
Returns a list of labels corresponding to each statistic.

Returns:
a list of labels corresponding to each statistic.
See Also:
getData(int[])

getData

public void getData(int[] data)
Retrieves the statistics data into the given array. The array should be as large as the array given in getLabels().

Parameters:
data - The data array to write to

onMeshDrawn

public void onMeshDrawn(Mesh mesh,
                        int lod)
Called by the Renderer when a mesh has been drawn.


onShaderUse

public void onShaderUse(Shader shader,
                        boolean wasSwitched)
Called by the Renderer when a shader has been utilized.

Parameters:
shader - The shader that was used
wasSwitched - If true, the shader has required a state switch

onUniformSet

public void onUniformSet()
Called by the Renderer when a uniform was set.


onTextureUse

public void onTextureUse(Image image,
                         boolean wasSwitched)
Called by the Renderer when a texture has been set.

Parameters:
image - The image that was set
wasSwitched - If true, the texture has required a state switch

onFrameBufferUse

public void onFrameBufferUse(FrameBuffer fb,
                             boolean wasSwitched)
Called by the Renderer when a framebuffer has been set.

Parameters:
fb - The framebuffer that was set
wasSwitched - If true, the framebuffer required a state switch

clearFrame

public void clearFrame()
Clears all frame-specific statistics such as objects used per frame.


onNewShader

public void onNewShader()
Called by the Renderer when it creates a new shader


onNewTexture

public void onNewTexture()
Called by the Renderer when it creates a new texture


onNewFrameBuffer

public void onNewFrameBuffer()
Called by the Renderer when it creates a new framebuffer


onDeleteShader

public void onDeleteShader()
Called by the Renderer when it deletes a shader


onDeleteTexture

public void onDeleteTexture()
Called by the Renderer when it deletes a texture


onDeleteFrameBuffer

public void onDeleteFrameBuffer()
Called by the Renderer when it deletes a framebuffer


clearMemory

public void clearMemory()
Called when video memory is cleared.