Class TGLVersion
Unit
Declaration
type TGLVersion = class(TGenericGLVersion)
Description
This item has no description. Showing description inherited from TGenericGLVersion.
OpenGL(ES) library version information. Determined looking at information from glGetString(GL_VERSION), glGetString(GL_VENDOR) and such.
User code should never create instances of this class. Only use the singleton GLVersion, already initialized for you.
Internally, this should be always created by GLInformationInitialize.
Hierarchy
- TObject
- TGenericGLVersion
- TGLVersion
Overview
Methods
constructor Create(const AVersionString, AVendor, ARenderer: string); |
Properties
property Vendor: string read FVendor; |
|
property VendorType: TGLVendorType read FVendorType; |
|
property Renderer: string read FRenderer; |
|
property Mesa: boolean read FMesa; |
|
property VendorMajor: Integer read FVendorMajor; |
|
property VendorMinor: Integer read FVendorMinor; |
|
property VendorRelease: Integer read FVendorRelease; |
|
property Fglrx: boolean read FFglrx; |
|
property BuggyFBOCubeMap: boolean read FBuggyFBOCubeMap; |
|
property BuggyGenerateCubeMap: boolean read FBuggyGenerateCubeMap; |
|
property BuggyVBO: boolean read FBuggyVBO; |
|
property BuggyFBOMultiSampling: boolean read FBuggyFBOMultiSampling; |
|
property BuggySwapNonStandardViewport: boolean
read FBuggySwapNonStandardViewport; |
|
property BuggyDepth32: boolean read FBuggyDepth32; |
|
property BuggyGLSLFrontFacing: boolean read FBuggyGLSLFrontFacing; |
|
property BuggyGLSLReadVarying: boolean read FBuggyGLSLReadVarying; |
|
property BuggyTextureSizeAbove2048: Boolean read FBuggyTextureSizeAbove2048; |
|
property BuggyGLSLBumpMappingNumSteps: Boolean read FBuggyGLSLBumpMappingNumSteps; |
Description
Methods
constructor Create(const AVersionString, AVendor, ARenderer: string); |
|
This item has no description. |
Properties
property Vendor: string read FVendor; |
|
Vendor that created the OpenGL implemenetation. This is just glGetString(GL_VENDOR). |
property VendorType: TGLVendorType read FVendorType; |
|
Vendor type, derived from Vendor string. |
property Renderer: string read FRenderer; |
|
Renderer (GPU model, or software method used for rendering) of the OpenGL. This is just glGetString(GL_RENDERER). |
property Mesa: boolean read FMesa; |
|
Are we using Mesa (http://mesa3d.org/). Note that this is detected using VendorVersion, not Vendor. |
property VendorMajor: Integer read FVendorMajor; |
|
Vendor-specific drivers version. Right now this is detected for Mesa and Intel. |
property VendorMinor: Integer read FVendorMinor; |
|
This item has no description. |
property VendorRelease: Integer read FVendorRelease; |
|
This item has no description. |
property Fglrx: boolean read FFglrx; |
|
ATI GPU with ATI drivers on Linux. |
property BuggyGenerateCubeMap: boolean read FBuggyGenerateCubeMap; |
|
Buggy generation of cube maps at all (Intel(Windows) bug). Symptoms: Parts of the cube map texture are uninitialized (left magenta). Reproducible with castle-model-viewer on demo_models/cube_environment_mapping/cubemap_generated_in_dynamic_world.x3dv . This is worse than BuggyFBOCubeMap, magenta is always seen at positiveX part of the cube map. Observed, and this workaround is needed, at least on:
|
property BuggyVBO: boolean read FBuggyVBO; |
|
Buggy VBO (Intel(Windows) bug). |
property BuggySwapNonStandardViewport: boolean
read FBuggySwapNonStandardViewport; |
|
Buggy swap buffers when glViewport does not contain whole window (ATI(Linux) bug). |
property BuggyDepth32: boolean read FBuggyDepth32; |
|
Buggy 32-bit depth buffer, 24-bit depth buffer works Ok (Mesa on ATI (Linux) bug). |
property BuggyGLSLReadVarying: boolean read FBuggyGLSLReadVarying; |
|
Do not read varying values in vertex shader, treat them as write-only. |
property BuggyTextureSizeAbove2048: Boolean read FBuggyTextureSizeAbove2048; |
|
MaxTextureSize above 2048 shall not be trusted. |
property BuggyGLSLBumpMappingNumSteps: Boolean read FBuggyGLSLBumpMappingNumSteps; |
|
Buggy num_steps value in bmSteepParallax and bmSteepParallaxShadowing BumpMapping modes on Adreno mobile GPU's (random crashes, sometimes variable in shader has wrong value. Observed on: - Xiaomi Mi 10 Lite (M2002J9G), Snapdragon 765G, Adreno 620: - Motorola Moto G8 (XT2045-2), Snapdragon 665, Adreno 610 - Motorola Moto G7 Plus (XT2081-2), Snapdragon 460, Adreno 610 - Xiaomi Redmi Note 8, Snapdragon 665, Adreno 610 - Xiaomi Redmi Note 7A Snapdragon 439, Adreno 505 More info in comment TGLVersion.Create(). It can be tested by https://github.com/and3md/castle-adreno-tests |
Generated by PasDoc 0.16.0-snapshot.