OGRE 14.3
Object-Oriented Graphics Rendering Engine
|
This class stores the capabilities of the graphics card. More...
#include <OgreRenderSystemCapabilities.h>
Public Types | |
typedef std::set< String > | ShaderProfiles |
Public Member Functions | |
RenderSystemCapabilities () | |
void | addShaderProfile (const String &profile) |
Adds the profile to the list of supported profiles. | |
ushort | getConstantFloatCount (GpuProgramType programType) const |
The number of floating-point 4-vector constants vertex programs support. | |
String | getDeviceName () const |
gets the device name for render system | |
DriverVersion | getDriverVersion () const |
int | getGeometryProgramNumOutputVertices (void) const |
Get the number of vertices a single geometry program run can emit. | |
Real | getMaxPointSize (void) const |
Maximum point screen size in pixels. | |
Real | getMaxSupportedAnisotropy () const |
Get the maximum supported anisotropic filtering. | |
bool | getNonPOW2TexturesLimited (void) const |
Are non-power of two textures limited in features? | |
ushort | getNumMultiRenderTargets (void) const |
The number of simultaneous render targets supported. | |
ushort | getNumTextureUnits (void) const |
Returns the number of texture units the current output hardware supports. | |
ushort | getNumVertexAttributes (void) const |
ushort | getNumVertexTextureUnits (void) const |
Get the number of vertex texture units supported. | |
const String & | getRenderSystemName (void) const |
Get the identifier of the rendersystem from which these capabilities were generated. | |
ushort | getStencilBufferBitDepth (void) const |
const ShaderProfiles & | getSupportedShaderProfiles () const |
Returns a set of all supported shader profiles. | |
GPUVendor | getVendor () const |
bool | hasCapability (const Capabilities c) const |
Checks for a capability. | |
bool | isCapabilityRenderSystemSpecific (const Capabilities c) const |
Returns true if capability is render system specific. | |
bool | isCategoryRelevant (CapabilitiesCategory cat) |
Return whether a category is 'relevant' or not, ie will it be reported. | |
bool | isDriverOlderThanVersion (const DriverVersion &v) const |
bool | isShaderProfileSupported (const String &profile) const |
Returns true if profile is in the list of supported profiles. | |
void | log (Log *pLog) const |
Write the capabilities to the pass in Log. | |
void | parseDriverVersionFromString (const String &versionString) |
void | parseVendorFromString (const String &vendorString) |
Parse and set vendor. | |
void | removeShaderProfile (const String &profile) |
Remove a given shader profile, if present. | |
void | setCapability (const Capabilities c) |
Adds a capability flag. | |
void | setCategoryRelevant (CapabilitiesCategory cat, bool relevant) |
Mark a category as 'relevant' or not, ie will it be reported. | |
void | setComputeProgramConstantFloatCount (ushort c) |
The number of floating-point 4-vector constants compute programs support. | |
void | setDeviceName (const String &name) |
sets the device name for Render system | |
void | setDriverVersion (const DriverVersion &version) |
Set the driver version. | |
void | setFragmentProgramConstantFloatCount (ushort c) |
The number of floating-point 4-vector constants fragment programs support. | |
void | setGeometryProgramConstantFloatCount (ushort c) |
The number of floating-point 4-vector constants geometry programs support. | |
void | setGeometryProgramNumOutputVertices (int numOutputVertices) |
Set the number of vertices a single geometry program run can emit. | |
void | setMaxPointSize (Real s) |
Maximum point screen size in pixels. | |
void | setMaxSupportedAnisotropy (Real s) |
Set the maximum supported anisotropic filtering. | |
void | setNonPOW2TexturesLimited (bool l) |
Non-POW2 textures limited. | |
void | setNumMultiRenderTargets (ushort num) |
The number of simultaneous render targets supported. | |
void | setNumTextureUnits (ushort num) |
void | setNumVertexAttributes (ushort num) |
void | setNumVertexTextureUnits (ushort n) |
Set the number of vertex texture units supported. | |
void | setRenderSystemName (const String &rs) |
Set the identifier of the rendersystem from which these capabilities were generated. | |
void | setStencilBufferBitDepth (ushort num) |
void | setTessellationDomainProgramConstantFloatCount (ushort c) |
The number of floating-point 4-vector constants tessellation Domain programs support. | |
void | setTessellationHullProgramConstantFloatCount (ushort c) |
The number of floating-point 4-vector constants tessellation Hull programs support. | |
void | setVendor (GPUVendor v) |
void | setVertexProgramConstantFloatCount (ushort c) |
The number of floating-point 4-vector constants vertex programs support. | |
void | unsetCapability (const Capabilities c) |
Remove a capability flag. | |
Static Public Member Functions | |
static GPUVendor | vendorFromString (const String &vendorString) |
Convert a vendor string to an enum. | |
static const String & | vendorToString (GPUVendor v) |
Convert a vendor enum to a string. | |
This class stores the capabilities of the graphics card.
This information is set by the individual render systems.
Ogre::RenderSystemCapabilities::RenderSystemCapabilities | ( | ) |
|
inline |
Set the driver version.
|
inline |
References Ogre::DriverVersion::fromString().
|
inline |
|
inline |
Parse and set vendor.
|
static |
Convert a vendor string to an enum.
Convert a vendor enum to a string.
Referenced by Ogre::to_string().
|
inline |
The number of simultaneous render targets supported.
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.
The number of simultaneous render targets supported.
|
inline |
Returns true if capability is render system specific.
References Ogre::CAPS_CATEGORY_D3D9, Ogre::CAPS_CATEGORY_GL, and OGRE_CAPS_BITSHIFT.
|
inline |
Adds a capability flag.
References CAPS_CATEGORY_MASK, and OGRE_CAPS_BITSHIFT.
|
inline |
Remove a capability flag.
References CAPS_CATEGORY_MASK, and OGRE_CAPS_BITSHIFT.
|
inline |
Checks for a capability.
References CAPS_CATEGORY_MASK, and OGRE_CAPS_BITSHIFT.
Adds the profile to the list of supported profiles.
Remove a given shader profile, if present.
Returns true if profile is in the list of supported profiles.
|
inline |
Returns a set of all supported shader profiles.
|
inline |
The number of floating-point 4-vector constants vertex programs support.
sets the device name for Render system
|
inline |
gets the device name for render system
The number of floating-point 4-vector constants vertex programs support.
References Ogre::GPT_VERTEX_PROGRAM.
The number of floating-point 4-vector constants geometry programs support.
References Ogre::GPT_GEOMETRY_PROGRAM.
The number of floating-point 4-vector constants fragment programs support.
References Ogre::GPT_FRAGMENT_PROGRAM.
Maximum point screen size in pixels.
Maximum point screen size in pixels.
Non-POW2 textures limited.
Are non-power of two textures limited in features?
If the RSC_NON_POWER_OF_2_TEXTURES capability is set, but this method returns true, you can use non power of 2 textures only if:
Set the maximum supported anisotropic filtering.
|
inline |
Get the maximum supported anisotropic filtering.
Set the number of vertex texture units supported.
Get the number of vertex texture units supported.
|
inline |
Set the number of vertices a single geometry program run can emit.
Get the number of vertices a single geometry program run can emit.
Get the identifier of the rendersystem from which these capabilities were generated.
Set the identifier of the rendersystem from which these capabilities were generated.
|
inline |
Mark a category as 'relevant' or not, ie will it be reported.
|
inline |
Return whether a category is 'relevant' or not, ie will it be reported.
Write the capabilities to the pass in Log.
The number of floating-point 4-vector constants compute programs support.
References Ogre::GPT_COMPUTE_PROGRAM.
|
inline |
The number of floating-point 4-vector constants tessellation Domain programs support.
References Ogre::GPT_DOMAIN_PROGRAM.
|
inline |
The number of floating-point 4-vector constants tessellation Hull programs support.
References Ogre::GPT_HULL_PROGRAM.