panda3d.core.GraphicsStateGuardian

from panda3d.core import GraphicsStateGuardian
class GraphicsStateGuardian

Bases: GraphicsStateGuardianBase

Encapsulates all the communication with a particular instance of a given rendering backend. Tries to guarantee that redundant state-change requests are not issued (hence “state guardian”).

There will be one of these objects for each different graphics context active in the system.

Inheritance diagram

Inheritance diagram of GraphicsStateGuardian

releaseAll() → None

Releases all prepared objects.

releaseAllTextures() → int

Frees the resources for all textures associated with this GSG.

releaseAllSamplers() → int

Frees the resources for all samplers associated with this GSG.

releaseAllGeoms() → int

Frees the resources for all geoms associated with this GSG.

releaseAllVertexBuffers() → int

Frees the resources for all vertex buffers associated with this GSG.

releaseAllIndexBuffers() → int

Frees the resources for all index buffers associated with this GSG.

releaseAllShaderBuffers() → int

Frees the resources for all index buffers associated with this GSG.

setActive(active: bool) → None

Sets the active flag associated with the GraphicsStateGuardian. If the GraphicsStateGuardian is marked inactive, nothing is rendered. This is not normally turned off unless there is a problem with the rendering detected at a low level.

isActive() → bool

Returns the active flag associated with the GraphicsStateGuardian.

isValid() → bool

Returns true if the GSG has been correctly initialized within a graphics context, false if there has been some problem or it hasn’t been initialized yet.

needsReset() → bool

Returns true if the gsg is marked as needing a reset.

setIncompleteRender(incomplete_render: bool) → None

Sets the incomplete_render flag. When this is true, the frame will be rendered even if some of the geometry or textures in the scene are not available (e.g. they have been temporarily paged out). When this is false, the frame will be held up while this data is reloaded.

Setting this true allows for a smoother frame rate, but occasionally parts of the frame will be invisible or missing (they will generally come in within a second or two). Setting this false guarantees that every frame will be complete, but may cause more chugs as things are loaded up at runtime.

You may want to set this false during loading screens, to guarantee that all of your assets are available by the time you take the loading screen down.

This flag may also be set individually on each DisplayRegion. It will be considered true for a given DisplayRegion only if it is true on both the GSG and on the DisplayRegion.

setLoader(loader: Loader) → None

Sets the Loader object that will be used by this GSG to load textures when necessary, if getIncompleteRender() is true.

getLoader() → Loader

Returns the Loader object that will be used by this GSG to load textures when necessary, if getIncompleteRender() is true.

Return type

Loader

setShaderGenerator(shader_generator: ShaderGenerator) → None

Sets the ShaderGenerator object that will be used by this GSG to generate shaders when necessary.

getShaderGenerator() → ShaderGenerator

Returns the ShaderGenerator object that will be used by this GSG to generate shaders when necessary.

Return type

ShaderGenerator

getPipe() → GraphicsPipe

Returns the graphics pipe on which this GSG was created.

Return type

GraphicsPipe

getEngine() → GraphicsEngine
Return type

GraphicsEngine

getThreadingModel() → GraphicsThreadingModel

Returns the threading model that was used to create this GSG.

Return type

GraphicsThreadingModel

isHardware() → bool

Returns true if this GSG appears to be hardware-accelerated, or false if it is known to be software only.

getMaxTextureStages() → int

Returns the maximum number of simultaneous textures that may be applied to geometry with multitexturing, as supported by this particular GSG. If you exceed this number, the lowest-priority texture stages will not be applied. Use TextureStage.setPriority() to adjust the relative importance of the different texture stages.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

getMax3dTextureDimension() → int

Returns the largest possible texture size in any one dimension for a 3-d texture, or -1 if there is no particular limit. Returns 0 if 3-d textures are not supported.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

getMax2dTextureArrayLayers() → int

Returns the largest possible number of pages, or -1 if there is no particular limit. Returns 0 if 2-d texture arrays not supported.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

getMaxCubeMapDimension() → int

Returns the largest possible texture size in any one dimension for a cube map texture, or -1 if there is no particular limit. Returns 0 if cube map textures are not supported.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

getMaxBufferTextureSize() → int

Returns the largest possible buffer texture size, or -1 if there is no particular limit. Returns 0 if cube map textures are not supported.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

getSupportsTextureCombine() → bool

Returns true if this particular GSG can use the TextureStage::M_combine mode, which includes all of the texture blend modes specified by set_combine_rgb() and/or set_combine_alpha(). If this is false, you must limit yourself to using the simpler blend modes.

getSupportsTextureSavedResult() → bool

Returns true if this GSG can use the TextureStage::CS_last_saved_result source, which allows you to save the result of a TextureStage and re-use it for multiple inputs.

getSupportsTextureDot3() → bool

Returns true if this GSG can use the TextureStage::CM_dot3_rgb or CM_dot3_rgba combine modes.

getSupports3dTexture() → bool

Returns true if this GSG can render 3-d (volumetric) textures.

getSupports2dTextureArray() → bool

Returns true if this GSG can render 2-d textures array.

getSupportsCubeMap() → bool

Returns true if this GSG can render cube map textures.

getSupportsBufferTexture() → bool

Returns true if this GSG can render buffer textures.

getSupportsCubeMapArray() → bool

Returns true if this GSG can render cube map arrays.

getSupportsTexNonPow2() → bool

Returns true if this GSG can handle non power of two sized textures.

getSupportsCompressedTexture() → bool

Returns true if this GSG can compress textures as it loads them into texture memory, and/or accept pre-compressed textures for storing.

getMaxLights() → int

Returns the maximum number of simultaneous lights that may be rendered on geometry, or -1 if there is no particular limit.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

getMaxClipPlanes() → int

Returns the maximum number of simultaneous clip planes that may be applied to geometry, or -1 if there is no particular limit.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

getMaxVertexTransforms() → int

Returns the maximum number of transform matrices that may be simultaneously used to transform any one vertex by the graphics hardware. If this number is 0, then the hardware (or the graphics backend) doesn’t support soft- skinned vertices (in which case Panda will animate the vertices in software).

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

getMaxVertexTransformIndices() → int

Returns the maximum number of transforms there may be in a single TransformTable for this graphics hardware. If this number is 0 (but get_max_transforms() is nonzero), then the graphics hardware (or API) doesn’t support indexed transforms, but can support direct transform references.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

getCopyTextureInverted() → bool

Returns true if this particular GSG has the property that any framebuffer- to-texture copy results in a texture that is upside-down and backwards from Panda’s usual convention; that is, it copies into a texture from the bottom up instead of from the top down.

If this is true, then on offscreen GraphicsBuffer created for the purposes of rendering into a texture should be created with the invert flag set true, to compensate. Panda will do this automatically if you create an offscreen buffer using GraphicsOutput.makeTextureBuffer().

getSupportsGenerateMipmap() → bool

Returns true if this particular GSG can generate mipmaps for a texture automatically, or if they must be generated in software. If this is true, then mipmaps can safely be enabled for rendered textures (e.g. using the MultitexReducer).

getSupportsDepthTexture() → bool

Returns true if this particular GSG supports textures whose format is F_depth_stencil. This returns true if the GSG supports GL_DEPTH_COMPONENT textures, which are considered a limited but still valid case of F_depth_stencil.

getSupportsDepthStencil() → bool

Returns true if this particular GSG supports textures whose format is F_depth_stencil. This only returns true if the GSG supports the full packed depth-stencil functionality.

getSupportsLuminanceTexture() → bool

Returns true if this particular GSG supports luminance textures.

getSupportsSamplerObjects() → bool

Returns true if this particular GSG supports the use of sampler objects to record texture sampling parameters separately from the texture objects. This doesn’t really affect functionality, but if this is false, it may mean that using the same texture with different SamplerState objects will result in reduced performance.

getSupportsBasicShaders() → bool

Returns true if this particular GSG supports arbfp1+arbvp1 or above.

getSupportsGeometryShaders() → bool

Returns true if this particular GSG supports geometry shaders.

getSupportsTessellationShaders() → bool

Returns true if this particular GSG supports tesselation shaders.

getSupportsComputeShaders() → bool

Returns true if this particular GSG supports compute shaders.

getSupportsGlsl() → bool

Returns true if this particular GSG supports GLSL shaders.

getSupportsStencil() → bool

Returns true if this particular GSG supports stencil buffers at all.

getSupportsTwoSidedStencil() → bool

Returns true if this particular GSG supports two sided stencil: different stencil settings for the front and back side of the same polygon.

getSupportsGeometryInstancing() → bool

Returns true if this particular GSG supports hardware geometry instancing: the ability to render multiple copies of a model. In OpenGL, this is done using the EXT_draw_instanced extension.

getSupportsIndirectDraw() → bool

Returns true if this particular GSG supports draw calls for which the information comes from a buffer.

getSupportsOcclusionQuery() → bool

Returns true if this GSG supports an occlusion query. If this is true, then begin_occlusion_query() and end_occlusion_query() may be called to bracket a sequence of draw_triangles() (or whatever) calls to measure pixels that pass the depth test.

getSupportsTimerQuery() → bool

Returns true if this GSG supports a timer query.

getTimerQueriesActive() → bool

Returns true if timer queries are currently enabled on this GSG.

getMaxColorTargets() → int

Returns the maximum number of simultaneous color textures that may be attached for render-to-texture, as supported by this particular GSG. If you exceed this number, the lowest-priority render targets will not be applied. Use RenderTarget::set_priority() to adjust the relative importance of the different render targets.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

getMaximumSimultaneousRenderTargets() → int

Deprecated. Use getMaxColorTargets() instead, which returns the exact same value.

getSupportsDualSourceBlending() → bool

Returns true if dual source (incoming1_color and incoming1_alpha) blend operands are supported by this GSG.

getShaderModel() → ShaderModel

Returns the ShaderModel

Return type

ShaderModel

setShaderModel(shader_model: ShaderModel) → None

Sets the ShaderModel. This will override the auto- detected shader model during GSG reset. Useful for testing lower-end shaders.

getSupportsCgProfile(name: str) → bool
getColorScaleViaLighting() → bool

Returns true if this particular GSG can implement (or would prefer to implement) set color and/or color scale using materials and/or ambient lights, or false if we need to actually munge the color.

getAlphaScaleViaTexture() → bool

Returns true if this particular GSG can implement (or would prefer to implement) an alpha scale via an additional Texture layer, or false if we need to actually munge the alpha.

getAlphaScaleViaTexture(tex_attrib: TextureAttrib) → bool

This variant of getAlphaScaleViaTexture() answers the question of whether the GSG can implement an alpha scale via an additional Texture layer, considering the current TextureAttrib that will be in effect. This considers whether there is at least one additional texture slot available on the GSG.

getRuntimeColorScale() → bool

Returns true if this particular GSG can implement (or would prefer to implement) set color and/or color scale directly, without requiring any munging of vertices or tricks with lighting.

static getAlphaScaleTextureStage() → TextureStage

Returns the TextureStage that will be used to apply an alpha scale, if getAlphaScaleViaTexture() returns true.

Return type

TextureStage

setCoordinateSystem(cs: CoordinateSystem) → None
getCoordinateSystem() → CoordinateSystem

Returns the coordinate system in effect on this particular gsg. Normally, this will be the default coordinate system, but it might be set differently at runtime.

Return type

CoordinateSystem

getInternalCoordinateSystem() → CoordinateSystem
Return type

CoordinateSystem

getPreparedObjects() → PreparedGraphicsObjects
Return type

PreparedGraphicsObjects

setGamma(gamma: float) → bool
getGamma() → float
restoreGamma() → None
setTextureQualityOverride(quality_level: QualityLevel) → None

Specifies the global quality_level to be imposed for all Textures rendered by this GSG. This overrides the value set on individual textures via Texture.setQualityLevel(). Set this to Texture::QL_default in order to allow the individual texture quality levels to be respected.

This is mainly useful for the tinydisplay software renderer. See Texture.setQualityLevel().

getTextureQualityOverride() → QualityLevel

Returns the global quality_level override specified by set_texture_quality_override.

This is mainly useful for the tinydisplay software renderer. See Texture.setQualityLevel().

Return type

QualityLevel

getPreparedTextures() → object
setFlashTexture(tex: Texture) → None
clearFlashTexture() → None
getFlashTexture() → Texture
Return type

Texture

hasExtension(extension: str) → bool
getDriverVendor() → str
getDriverRenderer() → str
getDriverVersion() → str
getDriverVersionMajor() → int
getDriverVersionMinor() → int
getDriverShaderVersionMajor() → int
getDriverShaderVersionMinor() → int
setScene(scene_setup: SceneSetup) → bool
getScene() → SceneSetup
Return type

SceneSetup

beginScene() → bool
endScene() → None
static getClassType() → TypeHandle
Return type

TypeHandle

property active
Getter

Returns the active flag associated with the GraphicsStateGuardian.

Setter

Sets the active flag associated with the GraphicsStateGuardian. If the GraphicsStateGuardian is marked inactive, nothing is rendered. This is not normally turned off unless there is a problem with the rendering detected at a low level.

Return type

bool

property valid

Returns true if the GSG has been correctly initialized within a graphics context, false if there has been some problem or it hasn’t been initialized yet.

Return type

bool

property incomplete_render
Getter

Returns the incomplete_render flag. See setIncompleteRender().

Setter

Sets the incomplete_render flag. When this is true, the frame will be rendered even if some of the geometry or textures in the scene are not available (e.g. they have been temporarily paged out). When this is false, the frame will be held up while this data is reloaded.

Setting this true allows for a smoother frame rate, but occasionally parts of the frame will be invisible or missing (they will generally come in within a second or two). Setting this false guarantees that every frame will be complete, but may cause more chugs as things are loaded up at runtime.

You may want to set this false during loading screens, to guarantee that all of your assets are available by the time you take the loading screen down.

This flag may also be set individually on each DisplayRegion. It will be considered true for a given DisplayRegion only if it is true on both the GSG and on the DisplayRegion.

Return type

bool

property effective_incomplete_render

Returns true if the GSG is effectively in incomplete_render state, considering both the GSG’s incomplete_render and its current DisplayRegion’s incomplete_render flags. It only makes sense to call this during the draw traversal; at other times this return value will be meaningless.

See CullTraverser.getEffectiveIncompleteRender() for this same information during the cull traversal.

Return type

bool

property loader
Getter

Returns the Loader object that will be used by this GSG to load textures when necessary, if getIncompleteRender() is true.

Setter

Sets the Loader object that will be used by this GSG to load textures when necessary, if getIncompleteRender() is true.

Return type

Loader

property shader_generator
Getter

Returns the ShaderGenerator object that will be used by this GSG to generate shaders when necessary.

Setter

Sets the ShaderGenerator object that will be used by this GSG to generate shaders when necessary.

Return type

ShaderGenerator

property pipe

Returns the graphics pipe on which this GSG was created.

Return type

GraphicsPipe

property max_vertices_per_array

Returns the maximum number of vertices that should be put into any one GeomVertexData object for use with this GSG.

Return type

int

property max_vertices_per_primitive

Returns the maximum number of vertex indices that should be put into any one GeomPrimitive object for use with this GSG.

Return type

int

property max_texture_stages

Returns the maximum number of simultaneous textures that may be applied to geometry with multitexturing, as supported by this particular GSG. If you exceed this number, the lowest-priority texture stages will not be applied. Use TextureStage.setPriority() to adjust the relative importance of the different texture stages.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

Return type

int

property max_texture_dimension

Returns the largest possible texture size in any one dimension supported by the GSG, or -1 if there is no particular limit.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

Return type

int

property max_3d_texture_dimension

Returns the largest possible texture size in any one dimension for a 3-d texture, or -1 if there is no particular limit. Returns 0 if 3-d textures are not supported.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

Return type

int

property max_2d_texture_array_layers

//z axis

//z axis

//z axis

/**
  • Returns the largest possible number of pages, or -1 if there is no

  • particular limit. Returns 0 if 2-d texture arrays not supported.

  • The value returned may not be meaningful until after the graphics context

  • has been fully created (e.g. the window has been opened).

*/

Return type

int

property max_cube_map_dimension

//z axis

//z axis

//z axis

/**
  • Returns the largest possible texture size in any one dimension for a cube

  • map texture, or -1 if there is no particular limit. Returns 0 if cube map

  • textures are not supported.

  • The value returned may not be meaningful until after the graphics context

  • has been fully created (e.g. the window has been opened).

*/

Return type

int

property max_buffer_texture_size

Returns the largest possible buffer texture size, or -1 if there is no particular limit. Returns 0 if cube map textures are not supported.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

Return type

int

property supports_texture_combine

Returns true if this particular GSG can use the TextureStage::M_combine mode, which includes all of the texture blend modes specified by set_combine_rgb() and/or set_combine_alpha(). If this is false, you must limit yourself to using the simpler blend modes.

Return type

bool

property supports_texture_saved_result

Returns true if this GSG can use the TextureStage::CS_last_saved_result source, which allows you to save the result of a TextureStage and re-use it for multiple inputs.

Return type

bool

property supports_texture_dot3

Returns true if this GSG can use the TextureStage::CM_dot3_rgb or CM_dot3_rgba combine modes.

Return type

bool

property supports_3d_texture

Returns true if this GSG can render 3-d (volumetric) textures.

Return type

bool

property supports_2d_texture_array

Returns true if this GSG can render 2-d textures array.

Return type

bool

property supports_cube_map

Returns true if this GSG can render cube map textures.

Return type

bool

property supports_buffer_texture

Returns true if this GSG can render buffer textures.

Return type

bool

property supports_cube_map_array

Returns true if this GSG can render cube map arrays.

Return type

bool

property supports_tex_non_pow2

Returns true if this GSG can handle non power of two sized textures.

Return type

bool

property supports_texture_srgb

Returns true if this GSG can handle sRGB textures.

Return type

bool

property supports_compressed_texture

Returns true if this GSG can compress textures as it loads them into texture memory, and/or accept pre-compressed textures for storing.

Return type

bool

property max_lights

Returns the maximum number of simultaneous lights that may be rendered on geometry, or -1 if there is no particular limit.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

Return type

int

property max_clip_planes

Returns the maximum number of simultaneous clip planes that may be applied to geometry, or -1 if there is no particular limit.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

Return type

int

property max_vertex_transforms

Returns the maximum number of transform matrices that may be simultaneously used to transform any one vertex by the graphics hardware. If this number is 0, then the hardware (or the graphics backend) doesn’t support soft- skinned vertices (in which case Panda will animate the vertices in software).

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

Return type

int

property max_vertex_transform_indices

Returns the maximum number of transforms there may be in a single TransformTable for this graphics hardware. If this number is 0 (but get_max_transforms() is nonzero), then the graphics hardware (or API) doesn’t support indexed transforms, but can support direct transform references.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

Return type

int

property copy_texture_inverted

Returns true if this particular GSG has the property that any framebuffer- to-texture copy results in a texture that is upside-down and backwards from Panda’s usual convention; that is, it copies into a texture from the bottom up instead of from the top down.

If this is true, then on offscreen GraphicsBuffer created for the purposes of rendering into a texture should be created with the invert flag set true, to compensate. Panda will do this automatically if you create an offscreen buffer using GraphicsOutput.makeTextureBuffer().

Return type

bool

property supports_multisample
Return type

bool

property supports_generate_mipmap

Returns true if this particular GSG can generate mipmaps for a texture automatically, or if they must be generated in software. If this is true, then mipmaps can safely be enabled for rendered textures (e.g. using the MultitexReducer).

Return type

bool

property supports_depth_texture

Returns true if this particular GSG supports textures whose format is F_depth_stencil. This returns true if the GSG supports GL_DEPTH_COMPONENT textures, which are considered a limited but still valid case of F_depth_stencil.

Return type

bool

property supports_depth_stencil

Returns true if this particular GSG supports textures whose format is F_depth_stencil. This only returns true if the GSG supports the full packed depth-stencil functionality.

Return type

bool

property supports_luminance_texture

Returns true if this particular GSG supports luminance textures.

Return type

bool

property supports_shadow_filter

Returns true if this particular GSG supports the filter mode FT_shadow for depth textures.

Return type

bool

property supports_sampler_objects

Returns true if this particular GSG supports the use of sampler objects to record texture sampling parameters separately from the texture objects. This doesn’t really affect functionality, but if this is false, it may mean that using the same texture with different SamplerState objects will result in reduced performance.

Return type

bool

property supports_basic_shaders

Returns true if this particular GSG supports arbfp1+arbvp1 or above.

Return type

bool

property supports_geometry_shaders

Returns true if this particular GSG supports geometry shaders.

Return type

bool

property supports_tessellation_shaders

Returns true if this particular GSG supports tesselation shaders.

Return type

bool

property supports_compute_shaders

Returns true if this particular GSG supports compute shaders.

Return type

bool

property supports_glsl

Returns true if this particular GSG supports GLSL shaders.

Return type

bool

property supports_hlsl

Returns true if this particular GSG supports HLSL shaders.

Return type

bool

property supports_stencil

Returns true if this particular GSG supports stencil buffers at all.

Return type

bool

property supports_two_sided_stencil

Returns true if this particular GSG supports two sided stencil: different stencil settings for the front and back side of the same polygon.

Return type

bool

property supports_geometry_instancing

Returns true if this particular GSG supports hardware geometry instancing: the ability to render multiple copies of a model. In OpenGL, this is done using the EXT_draw_instanced extension.

Return type

bool

property supports_indirect_draw

Returns true if this particular GSG supports draw calls for which the information comes from a buffer.

Return type

bool

property supports_occlusion_query

Returns true if this GSG supports an occlusion query. If this is true, then begin_occlusion_query() and end_occlusion_query() may be called to bracket a sequence of draw_triangles() (or whatever) calls to measure pixels that pass the depth test.

Return type

bool

property supports_timer_query

Returns true if this GSG supports a timer query.

Return type

bool

property timer_queries_active

Returns true if timer queries are currently enabled on this GSG.

Return type

bool

property max_color_targets

Returns the maximum number of simultaneous color textures that may be attached for render-to-texture, as supported by this particular GSG. If you exceed this number, the lowest-priority render targets will not be applied. Use RenderTarget::set_priority() to adjust the relative importance of the different render targets.

The value returned may not be meaningful until after the graphics context has been fully created (e.g. the window has been opened).

Return type

int

property supports_dual_source_blending

Returns true if dual source (incoming1_color and incoming1_alpha) blend operands are supported by this GSG.

Return type

bool

property shader_model
Getter

Returns the ShaderModel

Setter

Sets the ShaderModel. This will override the auto- detected shader model during GSG reset. Useful for testing lower-end shaders.

Return type

ShaderModel

property coordinate_system

Returns the coordinate system in effect on this particular gsg. Normally, this will be the default coordinate system, but it might be set differently at runtime.

Return type

CoordinateSystem

property prepared_objects
Return type

PreparedGraphicsObjects

property gamma
Return type

float

property texture_quality_override
Getter

Returns the global quality_level override specified by set_texture_quality_override.

This is mainly useful for the tinydisplay software renderer. See Texture.setQualityLevel().

Setter

Specifies the global quality_level to be imposed for all Textures rendered by this GSG. This overrides the value set on individual textures via Texture.setQualityLevel(). Set this to Texture::QL_default in order to allow the individual texture quality levels to be respected.

This is mainly useful for the tinydisplay software renderer. See Texture.setQualityLevel().

Return type

QualityLevel

property flash_texture
Return type

Texture

property driver_vendor
Return type

string

property driver_renderer
Return type

string

property driver_version
Return type

string

property driver_version_major
Return type

int

property driver_version_minor
Return type

int

property driver_shader_version_major
Return type

int

property driver_shader_version_minor
Return type

int

property scene
Return type

SceneSetup

enum ShaderModel
enumerator SM_00 = 0
enumerator SM_11 = 1
enumerator SM_20 = 2
enumerator SM_2X = 3
enumerator SM_30 = 4
enumerator SM_40 = 5
enumerator SM_50 = 6
enumerator SM_51 = 7