com.jme3.renderer
Enum Caps

java.lang.Object
  extended by java.lang.Enum<Caps>
      extended by com.jme3.renderer.Caps
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable<Caps>

public enum Caps
extends java.lang.Enum<Caps>

Caps is an enum specifying a capability that the Renderer supports.


Enum Constant Summary
ARBprogram
          Supports OpenGL ARB program.
FloatColorBuffer
          Supports floating point FBO color buffers (Format.RGB16F)
FloatDepthBuffer
          Supports floating point depth buffer
FloatTexture
          Supports floating point textures (Format.RGB16F)
FrameBuffer
          Supports FrameBuffers.
FrameBufferMRT
          Supports framebuffer Multiple Render Targets (MRT)
FrameBufferMultisample
          Supports framebuffer multi-sampling
GeometryShader
          Supports geometry shader.
GLSL100
          Supports GLSL 1.0
GLSL110
          Supports GLSL 1.1
GLSL120
          Supports GLSL 1.2
GLSL130
          Supports GLSL 1.3
GLSL140
          Supports GLSL 1.4
GLSL150
          Supports GLSL 1.5
GLSL330
          Supports GLSL 3.3
MeshInstancing
           
Multisample
          Supports multisampling on the screen
NonPowerOfTwoTextures
          Supports Non-Power-Of-Two (NPOT) textures and framebuffers
OpenGL20
          Supports OpenGL 2.0 or OpenGL ES 2.0.
OpenGL21
          Supports OpenGL 2.1
OpenGL30
          Supports OpenGL 3.0
OpenGL31
          Supports OpenGL 3.1
OpenGL32
          Supports OpenGL 3.2
PackedDepthStencilBuffer
          Supports FBO with Depth24Stencil8 image format
PackedFloatColorBuffer
          Supports Format.RGB111110F for FBO color buffers
PackedFloatTexture
          Supports Format.RGB111110F for textures
SharedExponentColorBuffer
          Supports Format.RGB9E5 for FBO color buffers
SharedExponentTexture
          Supports Format.RGB9E5 for textures
TextureArray
          Supports texture arrays
TextureBuffer
          Supports texture buffers
TextureCompressionLATC
          Supports Format.LATC for textures, this includes support for ATI's 3Dc texture compression.
TextureMultisample
          Supports texture multi-sampling
VertexBufferArray
          Supports VAO, or vertex buffer arrays
VertexTextureFetch
          Supports reading from textures inside the vertex shader.
 
Method Summary
static boolean supports(java.util.Collection<Caps> caps, FrameBuffer fb)
          Returns true if given the renderer capabilities, the framebuffer can be supported by the renderer.
static boolean supports(java.util.Collection<Caps> caps, Shader shader)
          Returns true if given the renderer capabilities, the shader can be supported by the renderer.
static boolean supports(java.util.Collection<Caps> caps, Texture tex)
          Returns true if given the renderer capabilities, the texture can be supported by the renderer.
static Caps valueOf(java.lang.String name)
          Returns the enum constant of this type with the specified name.
static Caps[] values()
          Returns an array containing the constants of this enum type, in the order they are declared.
 
Methods inherited from class java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Enum Constant Detail

FrameBuffer

public static final Caps FrameBuffer
Supports FrameBuffers.

OpenGL: Renderer exposes the GL_EXT_framebuffer_object extension.
OpenGL ES: Renderer supports OpenGL ES 2.0.


FrameBufferMRT

public static final Caps FrameBufferMRT
Supports framebuffer Multiple Render Targets (MRT)

OpenGL: Renderer exposes the GL_ARB_draw_buffers extension


FrameBufferMultisample

public static final Caps FrameBufferMultisample
Supports framebuffer multi-sampling

OpenGL: Renderer exposes the GL EXT framebuffer multisample extension
OpenGL ES: Renderer exposes GL_APPLE_framebuffer_multisample or GL_ANGLE_framebuffer_multisample.


TextureMultisample

public static final Caps TextureMultisample
Supports texture multi-sampling

OpenGL: Renderer exposes the GL_ARB_texture_multisample extension
OpenGL ES: Renderer exposes the GL_IMG_multisampled_render_to_texture extension.


OpenGL20

public static final Caps OpenGL20
Supports OpenGL 2.0 or OpenGL ES 2.0.


OpenGL21

public static final Caps OpenGL21
Supports OpenGL 2.1


OpenGL30

public static final Caps OpenGL30
Supports OpenGL 3.0


OpenGL31

public static final Caps OpenGL31
Supports OpenGL 3.1


OpenGL32

public static final Caps OpenGL32
Supports OpenGL 3.2


ARBprogram

public static final Caps ARBprogram
Supports OpenGL ARB program.

OpenGL: Renderer exposes ARB_vertex_program and ARB_fragment_program extensions.


GLSL100

public static final Caps GLSL100
Supports GLSL 1.0


GLSL110

public static final Caps GLSL110
Supports GLSL 1.1


GLSL120

public static final Caps GLSL120
Supports GLSL 1.2


GLSL130

public static final Caps GLSL130
Supports GLSL 1.3


GLSL140

public static final Caps GLSL140
Supports GLSL 1.4


GLSL150

public static final Caps GLSL150
Supports GLSL 1.5


GLSL330

public static final Caps GLSL330
Supports GLSL 3.3


VertexTextureFetch

public static final Caps VertexTextureFetch
Supports reading from textures inside the vertex shader.


GeometryShader

public static final Caps GeometryShader
Supports geometry shader.


TextureArray

public static final Caps TextureArray
Supports texture arrays


TextureBuffer

public static final Caps TextureBuffer
Supports texture buffers


FloatTexture

public static final Caps FloatTexture
Supports floating point textures (Format.RGB16F)


FloatColorBuffer

public static final Caps FloatColorBuffer
Supports floating point FBO color buffers (Format.RGB16F)


FloatDepthBuffer

public static final Caps FloatDepthBuffer
Supports floating point depth buffer


PackedFloatTexture

public static final Caps PackedFloatTexture
Supports Format.RGB111110F for textures


SharedExponentTexture

public static final Caps SharedExponentTexture
Supports Format.RGB9E5 for textures


PackedFloatColorBuffer

public static final Caps PackedFloatColorBuffer
Supports Format.RGB111110F for FBO color buffers


SharedExponentColorBuffer

public static final Caps SharedExponentColorBuffer
Supports Format.RGB9E5 for FBO color buffers


TextureCompressionLATC

public static final Caps TextureCompressionLATC
Supports Format.LATC for textures, this includes support for ATI's 3Dc texture compression.


NonPowerOfTwoTextures

public static final Caps NonPowerOfTwoTextures
Supports Non-Power-Of-Two (NPOT) textures and framebuffers


MeshInstancing

public static final Caps MeshInstancing

VertexBufferArray

public static final Caps VertexBufferArray
Supports VAO, or vertex buffer arrays


Multisample

public static final Caps Multisample
Supports multisampling on the screen


PackedDepthStencilBuffer

public static final Caps PackedDepthStencilBuffer
Supports FBO with Depth24Stencil8 image format

Method Detail

values

public static Caps[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
for (Caps c : Caps.values())
    System.out.println(c);

Returns:
an array containing the constants of this enum type, in the order they are declared

valueOf

public static Caps valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
name - the name of the enum constant to be returned.
Returns:
the enum constant with the specified name
Throws:
java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
java.lang.NullPointerException - if the argument is null

supports

public static boolean supports(java.util.Collection<Caps> caps,
                               Texture tex)
Returns true if given the renderer capabilities, the texture can be supported by the renderer.

This only checks the format of the texture, non-power-of-2 textures are scaled automatically inside the renderer if are not supported natively.

Parameters:
caps - The collection of renderer capabilities Renderer.getCaps().
tex - The texture to check
Returns:
True if it is supported, false otherwise.

supports

public static boolean supports(java.util.Collection<Caps> caps,
                               FrameBuffer fb)
Returns true if given the renderer capabilities, the framebuffer can be supported by the renderer.

Parameters:
caps - The collection of renderer capabilities Renderer.getCaps().
fb - The framebuffer to check
Returns:
True if it is supported, false otherwise.

supports

public static boolean supports(java.util.Collection<Caps> caps,
                               Shader shader)
Returns true if given the renderer capabilities, the shader can be supported by the renderer.

Parameters:
caps - The collection of renderer capabilities Renderer.getCaps().
shader - The shader to check
Returns:
True if it is supported, false otherwise.