Class OGLGraphics.Info

java.lang.Object
com.blackrook.gloop.opengl.OGLGraphics.Info
Direct Known Subclasses:
OGL11Graphics.Info11
Enclosing class:
OGLGraphics

public abstract class OGLGraphics.Info extends Object
Information about this context implementation.
Author:
Matthew Tropiano
  • Field Details

    • renderer

      protected String renderer
      OpenGL renderer name.
    • version

      protected String version
      OpenGL version name.
    • shaderVersion

      protected String shaderVersion
      OpenGL shader version name.
    • vendor

      protected String vendor
      OpenGL vendor name.
    • extensions

      protected Set<String> extensions
      OpenGL list of extensions.
    • isNVidia

      protected boolean isNVidia
      Are we running NVidia architecture?
    • isAMD

      protected boolean isAMD
      Are we running AMD architecture?
    • isATi

      protected boolean isATi
      Are we running ATi architecture?
    • isS3

      protected boolean isS3
      Are we running S3 architecture, and if so, WHY?
    • isMatrox

      protected boolean isMatrox
      Are we running Matrox architecture?
    • isIntel

      protected boolean isIntel
      Are we running Intel architecture?
    • occlusionQueryExtensionPresent

      protected boolean occlusionQueryExtensionPresent
      Flag for presence of occlusion query extension.
    • vertexShaderExtensionPresent

      protected boolean vertexShaderExtensionPresent
      Flag for presence of vertex shader extension.
    • fragmentShaderExtensionPresent

      protected boolean fragmentShaderExtensionPresent
      Flag for presence of fragment shader extension.
    • geometryShaderExtensionPresent

      protected boolean geometryShaderExtensionPresent
      Flag for presence of geometry shader extension.
    • renderBufferExtensionPresent

      protected boolean renderBufferExtensionPresent
      Flag for presence of render buffer extension.
    • vertexBufferExtensionPresent

      protected boolean vertexBufferExtensionPresent
      Flag for presence of vertex buffer extension.
    • nonPowerOfTwoTextures

      protected boolean nonPowerOfTwoTextures
      Flag for presence of non-power-of-two texture support.
    • pointSmoothingPresent

      protected boolean pointSmoothingPresent
      Flag for presence of point smoothing ability.
    • pointSpritesPresent

      protected boolean pointSpritesPresent
      Flag for presence of point sprite extension.
    • textureAnisotropyPresent

      protected boolean textureAnisotropyPresent
      Flag for presence of texture anisotropy extension.
    • maxLights

      protected Integer maxLights
      Maximum bindable lights.
    • maxTextureSize

      protected Integer maxTextureSize
      Maximum texture size.
    • minPointSize

      protected Float minPointSize
      Minimum point size range.
    • maxPointSize

      protected Float maxPointSize
      Maximum point size range.
    • minLineWidth

      protected Float minLineWidth
      Minimum line width range.
    • maxLineWidth

      protected Float maxLineWidth
      Maximum line width range.
    • maxTextureUnits

      protected Integer maxTextureUnits
      Maximum texture units.
    • maxTextureAnisotropy

      protected Float maxTextureAnisotropy
      Maximum texture anisotropy.
    • maxRenderBufferSize

      protected Integer maxRenderBufferSize
      Maximum renderbuffer size.
    • maxDrawBuffers

      protected Integer maxDrawBuffers
      Maximum draw buffers.
    • maxVertexAttribs

      protected Integer maxVertexAttribs
      Maximum vertex attributes.
    • maxRenderBufferColorAttachments

      protected Integer maxRenderBufferColorAttachments
      Maximum renderbuffer color attachments.
    • maxSamples

      protected Integer maxSamples
      Maximum multisample samples.
    • maxTextureBufferSize

      protected Integer maxTextureBufferSize
    • maxVertexUniformBlocks

      protected Integer maxVertexUniformBlocks
    • maxGeometryUniformBlocks

      protected Integer maxGeometryUniformBlocks
    • maxFragmentUniformBlocks

      protected Integer maxFragmentUniformBlocks
    • maxCombinedUniformBlocks

      protected Integer maxCombinedUniformBlocks
    • maxUniformBufferBindings

      protected Integer maxUniformBufferBindings
    • maxUniformBlockSize

      protected Integer maxUniformBlockSize
    • maxCombinedVertexUniformComponents

      protected Integer maxCombinedVertexUniformComponents
    • maxCombinedGeometryUniformComponents

      protected Integer maxCombinedGeometryUniformComponents
    • maxCombinedFragmentUniformComponents

      protected Integer maxCombinedFragmentUniformComponents
    • maxVertexOutputComponents

      protected Integer maxVertexOutputComponents
    • maxGeometryInputComponents

      protected Integer maxGeometryInputComponents
    • maxGeometryOutputComponents

      protected Integer maxGeometryOutputComponents
    • maxFragmentInputComponents

      protected Integer maxFragmentInputComponents
    • maxGeometryShaderInvocations

      protected Integer maxGeometryShaderInvocations
    • minFragmentInterpolationOffset

      protected Integer minFragmentInterpolationOffset
    • maxFragmentInterpolationOffset

      protected Integer maxFragmentInterpolationOffset
    • maxSubroutines

      protected Integer maxSubroutines
    • maxSubroutineUniformLocations

      protected Integer maxSubroutineUniformLocations
    • maxPatchVertices

      protected Integer maxPatchVertices
    • maxTesselationGenLevel

      protected Integer maxTesselationGenLevel
    • maxTesselationControlUniformComponents

      protected Integer maxTesselationControlUniformComponents
    • maxTesselationEvaluationUniformComponents

      protected Integer maxTesselationEvaluationUniformComponents
    • maxTesselationControlTextureImageUnits

      protected Integer maxTesselationControlTextureImageUnits
    • maxTesselationEvaluationTextureImageUnits

      protected Integer maxTesselationEvaluationTextureImageUnits
    • maxTesselationControlOutputComponents

      protected Integer maxTesselationControlOutputComponents
    • maxTesselationPatchComponents

      protected Integer maxTesselationPatchComponents
    • maxTesselationControlTotalOutputComponents

      protected Integer maxTesselationControlTotalOutputComponents
    • maxTesselationEvaluationOutputComponents

      protected Integer maxTesselationEvaluationOutputComponents
    • maxTesselationControlUniformBlocks

      protected Integer maxTesselationControlUniformBlocks
    • maxTesselationEvaluationUniformBlocks

      protected Integer maxTesselationEvaluationUniformBlocks
    • maxTesselationControlInputComponents

      protected Integer maxTesselationControlInputComponents
    • maxTesselationEvaluationInputComponents

      protected Integer maxTesselationEvaluationInputComponents
    • maxCombinedTesselationControlUniformComponents

      protected Integer maxCombinedTesselationControlUniformComponents
    • maxCombinedTesselationEvaluationUniformComponents

      protected Integer maxCombinedTesselationEvaluationUniformComponents
    • maxVertexUniformVectors

      protected Integer maxVertexUniformVectors
    • maxVaryingVectors

      protected Integer maxVaryingVectors
    • maxFragmentUniformVectors

      protected Integer maxFragmentUniformVectors
    • maxViewports

      protected Integer maxViewports
    • maxVertexAtomicCounterBuffers

      protected Integer maxVertexAtomicCounterBuffers
    • maxTesselationControlAtomicCounterBuffers

      protected Integer maxTesselationControlAtomicCounterBuffers
    • maxTesselationEvaluationAtomicCounterBuffers

      protected Integer maxTesselationEvaluationAtomicCounterBuffers
    • maxGeometryAtomicCounterBuffers

      protected Integer maxGeometryAtomicCounterBuffers
    • maxFragmentAtomicCounterBuffers

      protected Integer maxFragmentAtomicCounterBuffers
    • maxCombinedAtomicCounterBuffers

      protected Integer maxCombinedAtomicCounterBuffers
    • maxVertexAtomicCounters

      protected Integer maxVertexAtomicCounters
    • maxTesselationControlAtomicCounters

      protected Integer maxTesselationControlAtomicCounters
    • maxTesselationEvaluationAtomicCounters

      protected Integer maxTesselationEvaluationAtomicCounters
    • maxGeometryAtomicCounters

      protected Integer maxGeometryAtomicCounters
    • maxFragmentAtomicCounters

      protected Integer maxFragmentAtomicCounters
    • maxCombinedAtomicCounters

      protected Integer maxCombinedAtomicCounters
    • maxAtomicCounterBufferSize

      protected Integer maxAtomicCounterBufferSize
    • maxAtomicCounterBufferBindings

      protected Integer maxAtomicCounterBufferBindings
    • maxComputeUniformBlocks

      protected Integer maxComputeUniformBlocks
    • maxComputeTextureImageUnits

      protected Integer maxComputeTextureImageUnits
    • maxComputeImageUniforms

      protected Integer maxComputeImageUniforms
    • maxComputeSharedMemorySize

      protected Integer maxComputeSharedMemorySize
    • maxComputeUniformComponents

      protected Integer maxComputeUniformComponents
    • maxComputeAtomicCounterBuffers

      protected Integer maxComputeAtomicCounterBuffers
    • maxComputeAtomicCounters

      protected Integer maxComputeAtomicCounters
    • maxCombinedComputeUniformComponents

      protected Integer maxCombinedComputeUniformComponents
    • maxComputeWorkGroupInvocations

      protected Integer maxComputeWorkGroupInvocations
    • maxDebugMessageLength

      protected Integer maxDebugMessageLength
    • maxDebugLoggedMessages

      protected Integer maxDebugLoggedMessages
    • maxDebugGroupStackDepth

      protected Integer maxDebugGroupStackDepth
    • maxLabelLength

      protected Integer maxLabelLength
    • maxVertexShaderStorageBlocks

      protected Integer maxVertexShaderStorageBlocks
    • maxGeometryShaderStorageBlocks

      protected Integer maxGeometryShaderStorageBlocks
    • maxTesselationControlShaderStorageBlocks

      protected Integer maxTesselationControlShaderStorageBlocks
    • maxTesselationEvaluationShaderStorageBlocks

      protected Integer maxTesselationEvaluationShaderStorageBlocks
    • maxFragmentShaderStorageBlocks

      protected Integer maxFragmentShaderStorageBlocks
    • maxComputeShaderStorageBlocks

      protected Integer maxComputeShaderStorageBlocks
    • maxCombinedShaderStorageBlocks

      protected Integer maxCombinedShaderStorageBlocks
    • maxShaderStorageBufferBindings

      protected Integer maxShaderStorageBufferBindings
    • maxShaderStorageBlockSize

      protected Integer maxShaderStorageBlockSize
    • shaderStorageBufferOffsetAlignment

      protected Integer shaderStorageBufferOffsetAlignment
    • maxVertexAttribStride

      protected Integer maxVertexAttribStride
    • maxCullDistances

      protected Integer maxCullDistances
    • maxCombinedClipAndCullDistances

      protected Integer maxCombinedClipAndCullDistances
    • maxTextureMaxAnisotropy

      protected Float maxTextureMaxAnisotropy
  • Constructor Details

    • Info

      protected Info()
  • Method Details

    • extensionIsPresent

      public boolean extensionIsPresent(String extensionName)
      Checks if an OpenGL extension is present. If you keep calling this method for the same extension, you are better off saving the results of the first call and using that, since the list of present extensions never change during runtime.
      Parameters:
      extensionName - the extension name.
      Returns:
      true if so, false if not.
    • getMaxLights

      public Integer getMaxLights()
      Returns:
      the maximum amount of lights. Null if not available.
    • getMaxTextureUnits

      public Integer getMaxTextureUnits()
      Returns:
      the maximum amount of bindable texture units. Null if not available.
    • getMaxTextureSize

      public Integer getMaxTextureSize()
      Returns:
      max texture size in pixels. Null if not available.
    • getMaxDrawBuffers

      public Integer getMaxDrawBuffers()
      Returns:
      max draw buffers. Null if not available.
    • getMaxVertexAttribs

      public Integer getMaxVertexAttribs()
      Returns:
      the maximum amount of bindable vertex attributes. Null if not available.
    • getMaxRenderBufferSize

      public Integer getMaxRenderBufferSize()
      Returns:
      the maximum size of a render buffer object in pixels. Null if not available.
    • getMaxRenderBufferColorAttachments

      public Integer getMaxRenderBufferColorAttachments()
      Returns:
      the maximum amount of color buffer attachments for a render buffer. Null if not available.
    • getMinPointSize

      public Float getMinPointSize()
      Returns:
      the minimum size a point can be rendered. Null if not available.
    • getMaxPointSize

      public Float getMaxPointSize()
      Returns:
      the maximum size a point can be rendered. Null if not available.
    • getMinLineWidth

      public Float getMinLineWidth()
      Returns:
      the minimum width for line geometry. Null if not available.
    • getMaxLineWidth

      public Float getMaxLineWidth()
      Returns:
      the maximum width for line geometry. Null if not available.
    • getMaxTextureAnisotropy

      public Float getMaxTextureAnisotropy()
      Returns:
      the maximum texture anisotropy factor for mipmap generation. Null if not available.
    • getMaxSamples

      public Integer getMaxSamples()
      Returns:
      the maximum amount of samples for multisampling. Null if not available.
    • getRenderer

      public String getRenderer()
      Returns:
      the rendering device of this GL system. Null if not available.
    • getVersion

      public String getVersion()
      Returns:
      the version of this GL system. Null if not available.
    • getVendor

      public String getVendor()
      Returns:
      the vendor name of this GL system. Null if not available.
    • getShaderVersion

      public String getShaderVersion()
      Returns:
      the shader version of this GL system.
    • getMaxTextureBufferSize

      public Integer getMaxTextureBufferSize()
    • getMaxVertexUniformBlocks

      public Integer getMaxVertexUniformBlocks()
    • getMaxGeometryUniformBlocks

      public Integer getMaxGeometryUniformBlocks()
    • getMaxFragmentUniformBlocks

      public Integer getMaxFragmentUniformBlocks()
    • getMaxCombinedUniformBlocks

      public Integer getMaxCombinedUniformBlocks()
    • getMaxUniformBufferBindings

      public Integer getMaxUniformBufferBindings()
    • getMaxUniformBlockSize

      public Integer getMaxUniformBlockSize()
    • getMaxCombinedVertexUniformComponents

      public Integer getMaxCombinedVertexUniformComponents()
    • getMaxCombinedGeometryUniformComponents

      public Integer getMaxCombinedGeometryUniformComponents()
    • getMaxCombinedFragmentUniformComponents

      public Integer getMaxCombinedFragmentUniformComponents()
    • getMaxVertexOutputComponents

      public Integer getMaxVertexOutputComponents()
    • getMaxGeometryInputComponents

      public Integer getMaxGeometryInputComponents()
    • getMaxGeometryOutputComponents

      public Integer getMaxGeometryOutputComponents()
    • getMaxFragmentInputComponents

      public Integer getMaxFragmentInputComponents()
    • getMaxGeometryShaderInvocations

      public Integer getMaxGeometryShaderInvocations()
    • getMinFragmentInterpolationOffset

      public Integer getMinFragmentInterpolationOffset()
    • getMaxFragmentInterpolationOffset

      public Integer getMaxFragmentInterpolationOffset()
    • getMaxSubroutines

      public Integer getMaxSubroutines()
    • getMaxSubroutineUniformLocations

      public Integer getMaxSubroutineUniformLocations()
    • getMaxPatchVertices

      public Integer getMaxPatchVertices()
    • getMaxTesselationGenLevel

      public Integer getMaxTesselationGenLevel()
    • getMaxTesselationControlUniformComponents

      public Integer getMaxTesselationControlUniformComponents()
    • getMaxTesselationEvaluationUniformComponents

      public Integer getMaxTesselationEvaluationUniformComponents()
    • getMaxTesselationControlTextureImageUnits

      public Integer getMaxTesselationControlTextureImageUnits()
    • getMaxTesselationEvaluationTextureImageUnits

      public Integer getMaxTesselationEvaluationTextureImageUnits()
    • getMaxTesselationControlOutputComponents

      public Integer getMaxTesselationControlOutputComponents()
    • getMaxTesselationPatchComponents

      public Integer getMaxTesselationPatchComponents()
    • getMaxTesselationControlTotalOutputComponents

      public Integer getMaxTesselationControlTotalOutputComponents()
    • getMaxTesselationEvaluationOutputComponents

      public Integer getMaxTesselationEvaluationOutputComponents()
    • getMaxTesselationControlUniformBlocks

      public Integer getMaxTesselationControlUniformBlocks()
    • getMaxTesselationEvaluationUniformBlocks

      public Integer getMaxTesselationEvaluationUniformBlocks()
    • getMaxTesselationControlInputComponents

      public Integer getMaxTesselationControlInputComponents()
    • getMaxTesselationEvaluationInputComponents

      public Integer getMaxTesselationEvaluationInputComponents()
    • getMaxCombinedTesselationControlUniformComponents

      public Integer getMaxCombinedTesselationControlUniformComponents()
    • getMaxCombinedTesselationEvaluationUniformComponents

      public Integer getMaxCombinedTesselationEvaluationUniformComponents()
    • getMaxVertexUniformVectors

      public Integer getMaxVertexUniformVectors()
    • getMaxVaryingVectors

      public Integer getMaxVaryingVectors()
    • getMaxFragmentUniformVectors

      public Integer getMaxFragmentUniformVectors()
    • getMaxViewports

      public Integer getMaxViewports()
    • getMaxVertexAtomicCounterBuffers

      public Integer getMaxVertexAtomicCounterBuffers()
    • getMaxTesselationControlAtomicCounterBuffers

      public Integer getMaxTesselationControlAtomicCounterBuffers()
    • getMaxTesselationEvaluationAtomicCounterBuffers

      public Integer getMaxTesselationEvaluationAtomicCounterBuffers()
    • getMaxGeometryAtomicCounterBuffers

      public Integer getMaxGeometryAtomicCounterBuffers()
    • getMaxFragmentAtomicCounterBuffers

      public Integer getMaxFragmentAtomicCounterBuffers()
    • getMaxCombinedAtomicCounterBuffers

      public Integer getMaxCombinedAtomicCounterBuffers()
    • getMaxVertexAtomicCounters

      public Integer getMaxVertexAtomicCounters()
    • getMaxTesselationControlAtomicCounters

      public Integer getMaxTesselationControlAtomicCounters()
    • getMaxTesselationEvaluationAtomicCounters

      public Integer getMaxTesselationEvaluationAtomicCounters()
    • getMaxGeometryAtomicCounters

      public Integer getMaxGeometryAtomicCounters()
    • getMaxFragmentAtomicCounters

      public Integer getMaxFragmentAtomicCounters()
    • getMaxCombinedAtomicCounters

      public Integer getMaxCombinedAtomicCounters()
    • getMaxAtomicCounterBufferSize

      public Integer getMaxAtomicCounterBufferSize()
    • getMaxAtomicCounterBufferBindings

      public Integer getMaxAtomicCounterBufferBindings()
    • getMaxComputeUniformBlocks

      public Integer getMaxComputeUniformBlocks()
    • getMaxComputeTextureImageUnits

      public Integer getMaxComputeTextureImageUnits()
    • getMaxComputeImageUniforms

      public Integer getMaxComputeImageUniforms()
    • getMaxComputeSharedMemorySize

      public Integer getMaxComputeSharedMemorySize()
    • getMaxComputeUniformComponents

      public Integer getMaxComputeUniformComponents()
    • getMaxComputeAtomicCounterBuffers

      public Integer getMaxComputeAtomicCounterBuffers()
    • getMaxComputeAtomicCounters

      public Integer getMaxComputeAtomicCounters()
    • getMaxCombinedComputeUniformComponents

      public Integer getMaxCombinedComputeUniformComponents()
    • getMaxComputeWorkGroupInvocations

      public Integer getMaxComputeWorkGroupInvocations()
    • getMaxDebugMessageLength

      public Integer getMaxDebugMessageLength()
    • getMaxDebugLoggesMessages

      public Integer getMaxDebugLoggesMessages()
    • getMaxDebugGroupStackDepth

      public Integer getMaxDebugGroupStackDepth()
    • getMaxLabelLength

      public Integer getMaxLabelLength()
    • getMaxVertexShaderStorageBlocks

      public Integer getMaxVertexShaderStorageBlocks()
    • getMaxGeometryShaderStorageBlocks

      public Integer getMaxGeometryShaderStorageBlocks()
    • getMaxTesselationControlShaderStorageBlocks

      public Integer getMaxTesselationControlShaderStorageBlocks()
    • getMaxTesselationEvaluationShaderStorageBlocks

      public Integer getMaxTesselationEvaluationShaderStorageBlocks()
    • getMaxFragmentShaderStorageBlocks

      public Integer getMaxFragmentShaderStorageBlocks()
    • getMaxComputeShaderStorageBlocks

      public Integer getMaxComputeShaderStorageBlocks()
    • getMaxCombinedShaderStorageBlocks

      public Integer getMaxCombinedShaderStorageBlocks()
    • getMaxShaderStorageBufferBindings

      public Integer getMaxShaderStorageBufferBindings()
    • getMaxShaderStorageBlockSize

      public Integer getMaxShaderStorageBlockSize()
    • getShaderStorageBufferOffsetAlignment

      public Integer getShaderStorageBufferOffsetAlignment()
    • getMaxVertexAttribStride

      public Integer getMaxVertexAttribStride()
    • getMaxCullDistances

      public Integer getMaxCullDistances()
    • getMaxCombinedClipAndCullDistances

      public Integer getMaxCombinedClipAndCullDistances()
    • getMaxTextureMaxAnisotropy

      public Float getMaxTextureMaxAnisotropy()
    • supportsOcclusionQueries

      public boolean supportsOcclusionQueries()
      Returns:
      true if occlusion query extensions are present for the video device, false otherwise.
    • supportsVertexShaders

      public boolean supportsVertexShaders()
      Returns:
      true if vertex shader extensions are present for the video device, false otherwise.
    • supportsFragmentShaders

      public boolean supportsFragmentShaders()
      Returns:
      true if fragment shader extensions are present for the video device, false otherwise.
    • supportsGeometryShaders

      public boolean supportsGeometryShaders()
      Returns:
      true if geometry shader extensions are present for the video device, false otherwise.
    • supportsRenderBuffers

      public boolean supportsRenderBuffers()
      Returns:
      true if render buffer extensions are present for the video device, false otherwise.
    • supportsVertexBuffers

      public boolean supportsVertexBuffers()
      Returns:
      true if vertex buffer extensions are present for the video device, false otherwise.
    • supportsNonPowerOfTwoTextures

      public boolean supportsNonPowerOfTwoTextures()
      Returns:
      true if this device supports non-power-of-two textures, false otherwise.
    • supportsPointSmoothing

      public boolean supportsPointSmoothing()
      Returns:
      true if this device supports smooth points, false otherwise.
    • supportsPointSprites

      public boolean supportsPointSprites()
      Returns:
      true if this device supports point sprites, false otherwise.
    • supportsTextureAnisotropy

      public boolean supportsTextureAnisotropy()
      Returns:
      true if this device supports texture mipmap anisotropy, false otherwise.
    • isNVidia

      public boolean isNVidia()
      Returns:
      true if this is running NVidia architecture.
    • isATi

      public boolean isATi()
      Returns:
      true if this is running ATi architecture.
    • isAMD

      public boolean isAMD()
      Returns:
      true if this is running AMD architecture.
    • isS3

      public boolean isS3()
      Returns:
      true if this is running S3 architecture.
    • isMatrox

      public boolean isMatrox()
      Returns:
      true if this is running Matrox architecture.
    • isIntel

      public boolean isIntel()
      Returns:
      true if this is running Intel architecture.