OGRE-Next
4.0.0unstable
Object-Oriented Graphics Rendering Engine
|
singleton class for storing the capabilities of the graphics card. More...
#include <OgreRenderSystemCapabilities.h>
Public Types | |
typedef set< String >::type | ShaderProfiles |
Public Member Functions | |
RenderSystemCapabilities () | |
virtual | ~RenderSystemCapabilities () |
void | addShaderProfile (const String &profile) |
Adds the profile to the list of supported profiles. More... | |
virtual size_t | calculateSize () const |
ushort | getComputeProgramConstantBoolCount () const |
The number of boolean constants fragment programs support. More... | |
ushort | getComputeProgramConstantFloatCount () const |
The number of floating-point constants fragment programs support. More... | |
ushort | getComputeProgramConstantIntCount () const |
The number of integer constants fragment programs support. More... | |
uint32 | getDeviceId () const |
String | getDeviceName () const |
gets the device name for render system More... | |
DriverVersion | getDriverVersion () const |
ushort | getFragmentProgramConstantBoolCount () const |
The number of boolean constants fragment programs support. More... | |
ushort | getFragmentProgramConstantFloatCount () const |
The number of floating-point constants fragment programs support. More... | |
ushort | getFragmentProgramConstantIntCount () const |
The number of integer constants fragment programs support. More... | |
ushort | getGeometryProgramConstantBoolCount () const |
The number of boolean constants geometry programs support. More... | |
ushort | getGeometryProgramConstantFloatCount () const |
The number of floating-point constants geometry programs support. More... | |
ushort | getGeometryProgramConstantIntCount () const |
The number of integer constants geometry programs support. More... | |
int | getGeometryProgramNumOutputVertices () const |
Get the number of vertices a single geometry program run can emit. More... | |
uint32 | getMaximumResolution2D () const |
Maximum resolution (width or height) More... | |
uint32 | getMaximumResolution3D () const |
Maximum resolution (width or height) More... | |
uint32 | getMaximumResolutionCubemap () const |
Maximum resolution (width or height) More... | |
Real | getMaxPointSize () const |
Maximum point screen size in pixels. More... | |
Real | getMaxSupportedAnisotropy () const |
Get the maximum supported anisotropic filtering. More... | |
uint32 | getMaxThreadsPerThreadgroup () const |
const uint32 * | getMaxThreadsPerThreadgroupAxis () const |
bool | getNonPOW2TexturesLimited () const |
Are non-power of two textures limited in features? More... | |
ushort | getNumMultiRenderTargets () const |
The number of simultaneous render targets supported. More... | |
uint32 | getNumTexturesInTextureDescriptor (ShaderType shaderType) const |
Max number of textures per shader stage that can be fit in DescriptorSetTexture and DescriptorSetTexture2. More... | |
ushort | getNumTextureUnits () const |
Returns the number of texture units the current output hardware supports. More... | |
ushort | getNumVertexBlendMatrices () const |
Returns the number of matrices available to hardware vertex blending for this rendering system. More... | |
ushort | getNumVertexTextureUnits () const |
Get the number of vertex texture units supported. More... | |
ushort | getNumWorldMatrices () const |
String | getRenderSystemName () const |
Get the identifier of the rendersystem from which these capabilities were generated. More... | |
ushort | getStencilBufferBitDepth () const |
Determines the bit depth of the hardware accelerated stencil buffer, if supported. More... | |
const ShaderProfiles & | getSupportedShaderProfiles () const |
Returns a set of all supported shader profiles. More... | |
ushort | getTessellationDomainProgramConstantBoolCount () const |
The number of boolean constants fragment programs support. More... | |
ushort | getTessellationDomainProgramConstantFloatCount () const |
The number of floating-point constants fragment programs support. More... | |
ushort | getTessellationDomainProgramConstantIntCount () const |
The number of integer constants fragment programs support. More... | |
ushort | getTessellationHullProgramConstantBoolCount () const |
The number of boolean constants fragment programs support. More... | |
ushort | getTessellationHullProgramConstantFloatCount () const |
The number of floating-point constants fragment programs support. More... | |
ushort | getTessellationHullProgramConstantIntCount () const |
The number of integer constants fragment programs support. More... | |
GPUVendor | getVendor () const |
ushort | getVertexProgramConstantBoolCount () const |
The number of boolean constants vertex programs support. More... | |
ushort | getVertexProgramConstantFloatCount () const |
The number of floating-point constants vertex programs support. More... | |
ushort | getVertexProgramConstantIntCount () const |
The number of integer constants vertex programs support. More... | |
bool | getVertexTextureUnitsShared () const |
Get whether the vertex texture units are shared with the fragment processor. More... | |
bool | hasCapability (const Capabilities c) const |
Checks for a capability. More... | |
bool | isCapabilityRenderSystemSpecific (const Capabilities c) const |
Returns true if capability is render system specific. More... | |
bool | isCategoryRelevant (CapabilitiesCategory cat) |
Return whether a category is 'relevant' or not, ie will it be reported. More... | |
bool | isDriverOlderThanVersion (const DriverVersion &v) const |
bool | isShaderProfileSupported (const String &profile) const |
Returns true if profile is in the list of supported profiles. More... | |
void | log (Log *pLog) |
Write the capabilities to the pass in Log. More... | |
void | parseDriverVersionFromString (const String &versionString) |
void | parseVendorFromString (const String &vendorString) |
Parse and set vendor. More... | |
void | removeShaderProfile (const String &profile) |
Remove a given shader profile, if present. More... | |
void | setCapability (const Capabilities c) |
Adds a capability flag. More... | |
void | setCategoryRelevant (CapabilitiesCategory cat, bool relevant) |
Mark a category as 'relevant' or not, ie will it be reported. More... | |
void | setComputeProgramConstantBoolCount (ushort c) |
The number of boolean constants compute programs support. More... | |
void | setComputeProgramConstantFloatCount (ushort c) |
The number of floating-point constants compute programs support. More... | |
void | setComputeProgramConstantIntCount (ushort c) |
The number of integer constants compute programs support. More... | |
void | setDeviceId (uint32 deviceId) |
void | setDeviceName (const String &name) |
sets the device name for Render system More... | |
void | setDriverVersion (const DriverVersion &version) |
Set the driver version. More... | |
void | setFragmentProgramConstantBoolCount (ushort c) |
The number of boolean constants fragment programs support. More... | |
void | setFragmentProgramConstantFloatCount (ushort c) |
The number of floating-point constants fragment programs support. More... | |
void | setFragmentProgramConstantIntCount (ushort c) |
The number of integer constants fragment programs support. More... | |
void | setGeometryProgramConstantBoolCount (ushort c) |
The number of boolean constants geometry programs support. More... | |
void | setGeometryProgramConstantFloatCount (ushort c) |
The number of floating-point constants geometry programs support. More... | |
void | setGeometryProgramConstantIntCount (ushort c) |
The number of integer constants geometry programs support. More... | |
void | setGeometryProgramNumOutputVertices (int numOutputVertices) |
Set the number of vertices a single geometry program run can emit. More... | |
void | setMaximumResolutions (uint32 res2d, uint32 res3d, uint32 resCube) |
Maximum resolution (width or height) More... | |
void | setMaxPointSize (Real s) |
Maximum point screen size in pixels. More... | |
void | setMaxSupportedAnisotropy (Real s) |
Set the maximum supported anisotropic filtering. More... | |
void | setMaxThreadsPerThreadgroup (uint32 value) |
void | setMaxThreadsPerThreadgroupAxis (const uint32 value[3]) |
void | setNonPOW2TexturesLimited (bool l) |
Non-POW2 textures limited. More... | |
void | setNumMultiRenderTargets (ushort num) |
The number of simultaneous render targets supported. More... | |
void | setNumTexturesInTextureDescriptor (uint32 values[NumShaderTypes+1]) |
void | setNumTextureUnits (ushort num) |
void | setNumVertexBlendMatrices (ushort num) |
void | setNumVertexTextureUnits (ushort n) |
Set the number of vertex texture units supported. More... | |
void | setNumWorldMatrices (ushort num) |
void | setRenderSystemName (const String &rs) |
Set the identifier of the rendersystem from which these capabilities were generated. More... | |
void | setStencilBufferBitDepth (ushort num) |
void | setTessellationDomainProgramConstantBoolCount (ushort c) |
The number of boolean constants tessellation Domain programs support. More... | |
void | setTessellationDomainProgramConstantFloatCount (ushort c) |
The number of floating-point constants tessellation Domain programs support. More... | |
void | setTessellationDomainProgramConstantIntCount (ushort c) |
The number of integer constants tessellation Domain programs support. More... | |
void | setTessellationHullProgramConstantBoolCount (ushort c) |
The number of boolean constants tessellation Domain programs support. More... | |
void | setTessellationHullProgramConstantFloatCount (ushort c) |
The number of floating-point constants tessellation Hull programs support. More... | |
void | setTessellationHullProgramConstantIntCount (ushort c) |
The number of integer constants tessellation Domain programs support. More... | |
void | setVendor (GPUVendor v) |
void | setVertexProgramConstantBoolCount (ushort c) |
The number of boolean constants vertex programs support. More... | |
void | setVertexProgramConstantFloatCount (ushort c) |
The number of floating-point constants vertex programs support. More... | |
void | setVertexProgramConstantIntCount (ushort c) |
The number of integer constants vertex programs support. More... | |
void | setVertexTextureUnitsShared (bool shared) |
Set whether the vertex texture units are shared with the fragment processor. More... | |
void | unsetCapability (const Capabilities c) |
Remove a capability flag. More... | |
Static Public Member Functions | |
static GPUVendor | vendorFromString (const String &vendorString) |
Convert a vendor string to an enum. More... | |
static String | vendorToString (GPUVendor v) |
Convert a vendor enum to a string. More... | |
singleton class for storing the capabilities of the graphics card.
typedef set<String>::type Ogre::RenderSystemCapabilities::ShaderProfiles |
Ogre::RenderSystemCapabilities::RenderSystemCapabilities | ( | ) |
|
virtual |
|
inline |
Adds the profile to the list of supported profiles.
|
inlinevirtual |
|
inline |
The number of boolean constants fragment programs support.
|
inline |
The number of floating-point constants fragment programs support.
|
inline |
The number of integer constants fragment programs support.
|
inline |
|
inline |
gets the device name for render system
|
inline |
|
inline |
The number of boolean constants fragment programs support.
|
inline |
The number of floating-point constants fragment programs support.
|
inline |
The number of integer constants fragment programs support.
|
inline |
The number of boolean constants geometry programs support.
|
inline |
The number of floating-point constants geometry programs support.
|
inline |
The number of integer constants geometry programs support.
|
inline |
Get the number of vertices a single geometry program run can emit.
|
inline |
Maximum resolution (width or height)
|
inline |
Maximum resolution (width or height)
|
inline |
Maximum resolution (width or height)
|
inline |
Maximum point screen size in pixels.
|
inline |
Get the maximum supported anisotropic filtering.
|
inline |
|
inline |
|
inline |
Are non-power of two textures limited in features?
|
inline |
The number of simultaneous render targets supported.
|
inline |
Max number of textures per shader stage that can be fit in DescriptorSetTexture and DescriptorSetTexture2.
mNumTexturesInTextureDescriptor[NumShaderTypes] is compute
|
inline |
Returns the number of texture units the current output hardware supports.
For use in rendering, this determines how many texture units the are available for multitexturing (i.e. rendering multiple textures in a single pass). Where a Material has multiple texture layers, it will try to use multitexturing where available, and where it is not available, will perform multipass rendering to achieve the same effect. This property only applies to the fixed-function pipeline, the number available to the programmable pipeline depends on the shader model in use.
|
inline |
Returns the number of matrices available to hardware vertex blending for this rendering system.
|
inline |
Get the number of vertex texture units supported.
|
inline |
|
inline |
Get the identifier of the rendersystem from which these capabilities were generated.
|
inline |
Determines the bit depth of the hardware accelerated stencil buffer, if supported.
|
inline |
Returns a set of all supported shader profiles.
|
inline |
The number of boolean constants fragment programs support.
|
inline |
The number of floating-point constants fragment programs support.
|
inline |
The number of integer constants fragment programs support.
|
inline |
The number of boolean constants fragment programs support.
|
inline |
The number of floating-point constants fragment programs support.
|
inline |
The number of integer constants fragment programs support.
|
inline |
|
inline |
The number of boolean constants vertex programs support.
|
inline |
The number of floating-point constants vertex programs support.
|
inline |
The number of integer constants vertex programs support.
|
inline |
Get whether the vertex texture units are shared with the fragment processor.
|
inline |
Checks for a capability.
References CAPS_CATEGORY_MASK, and OGRE_CAPS_BITSHIFT.
|
inline |
Returns true if capability is render system specific.
References Ogre::CAPS_CATEGORY_D3D9, Ogre::CAPS_CATEGORY_GL, and OGRE_CAPS_BITSHIFT.
|
inline |
Return whether a category is 'relevant' or not, ie will it be reported.
|
inline |
|
inline |
Returns true if profile is in the list of supported profiles.
|
inline |
References Ogre::DriverVersion::fromString().
|
inline |
Parse and set vendor.
|
inline |
Remove a given shader profile, if present.
|
inline |
Adds a capability flag.
References CAPS_CATEGORY_MASK, and OGRE_CAPS_BITSHIFT.
|
inline |
Mark a category as 'relevant' or not, ie will it be reported.
|
inline |
The number of boolean constants compute programs support.
|
inline |
The number of floating-point constants compute programs support.
|
inline |
The number of integer constants compute programs support.
|
inline |
|
inline |
sets the device name for Render system
|
inline |
Set the driver version.
|
inline |
The number of boolean constants fragment programs support.
|
inline |
The number of floating-point constants fragment programs support.
|
inline |
The number of integer constants fragment programs support.
|
inline |
The number of boolean constants geometry programs support.
|
inline |
The number of floating-point constants geometry programs support.
|
inline |
The number of integer constants geometry programs support.
|
inline |
Set the number of vertices a single geometry program run can emit.
|
inline |
Maximum resolution (width or height)
|
inline |
Maximum point screen size in pixels.
|
inline |
Set the maximum supported anisotropic filtering.
|
inline |
|
inline |
|
inline |
Non-POW2 textures limited.
|
inline |
The number of simultaneous render targets supported.
|
inline |
References Ogre::NumShaderTypes.
|
inline |
|
inline |
|
inline |
Set the number of vertex texture units supported.
|
inline |
|
inline |
Set the identifier of the rendersystem from which these capabilities were generated.
|
inline |
|
inline |
The number of boolean constants tessellation Domain programs support.
|
inline |
The number of floating-point constants tessellation Domain programs support.
|
inline |
The number of integer constants tessellation Domain programs support.
|
inline |
The number of boolean constants tessellation Domain programs support.
|
inline |
The number of floating-point constants tessellation Hull programs support.
|
inline |
The number of integer constants tessellation Domain programs support.
|
inline |
|
inline |
The number of boolean constants vertex programs support.
|
inline |
The number of floating-point constants vertex programs support.
|
inline |
The number of integer constants vertex programs support.
|
inline |
Set whether the vertex texture units are shared with the fragment processor.
|
inline |
Remove a capability flag.
References CAPS_CATEGORY_MASK, and OGRE_CAPS_BITSHIFT.
|
static |
Convert a vendor string to an enum.
Convert a vendor enum to a string.