OGRE: OgreRenderSystemCapabilities.h File Reference

| OGRE 14.5 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
OgreRenderSystemCapabilities.h File Reference
`#include "OgrePrerequisites.h"`
`#include "OgreStringVector.h"`
`#include "OgreStringConverter.h"`
`#include "OgreHeaderPrefix.h"`
`#include "OgreGpuProgram.h"`
`#include "OgreHeaderSuffix.h"`

## Classes
struct | Ogre::DriverVersion
| DriverVersion is used by RenderSystemCapabilities and both GL and D3D9 to store the version of the current GPU driver. More...
class | Ogre::RenderSystemCapabilities
| This class stores the capabilities of the graphics card. More...

## Namespaces
namespace | Ogre

## Macros
#define | CAPS_CATEGORY_MASK (((1 << CAPS_CATEGORY_SIZE) - 1) << OGRE_CAPS_BITSHIFT)
#define | CAPS_CATEGORY_SIZE 4
#define | OGRE_CAPS_BITSHIFT (32 - CAPS_CATEGORY_SIZE)
#define | OGRE_CAPS_VALUE(cat, val)

## Enumerations
enum | Ogre::Capabilities { Ogre::RSC_PRIMITIVE_RESTART = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 0) , Ogre::RSC_AUTOMIPMAP_COMPRESSED = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 1) , Ogre::RSC_ANISOTROPY = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 2) , Ogre::RSC_DEPTH_CLAMP = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 3) , Ogre::RSC_WIDE_LINES = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 4) , Ogre::RSC_HWSTENCIL = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 5) , Ogre::RSC_READ_WRITE_BUFFERS = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 6) , Ogre::RSC_TEXTURE_COMPRESSION_ASTC = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 7) , Ogre::RSC_32BIT_INDEX = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 8) , Ogre::RSC_VERTEX_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 9) , Ogre::RSC_TESSELLATION_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 10) , Ogre::RSC_TEXTURE_2D_ARRAY = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 11) , Ogre::RSC_TWO_SIDED_STENCIL = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 12) , Ogre::RSC_STENCIL_WRAP = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 13) , Ogre::RSC_HWOCCLUSION = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 14) , Ogre::RSC_USER_CLIP_PLANES = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 15) , Ogre::RSC_COMPUTE_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 16) , Ogre::RSC_TEXTURE_1D = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 17) , Ogre::RSC_HWRENDER_TO_TEXTURE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 18) , Ogre::RSC_TEXTURE_FLOAT = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 19) , Ogre::RSC_NON_POWER_OF_2_TEXTURES = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 20) , Ogre::RSC_TEXTURE_3D = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 21) , Ogre::RSC_POINT_SPRITES = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 22) , Ogre::RSC_POINT_EXTENDED_PARAMETERS = RSC_POINT_SPRITES , Ogre::RSC_HWRENDER_TO_VERTEX_BUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 23) , Ogre::RSC_VERTEX_TEXTURE_FETCH = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 24) , Ogre::RSC_MIPMAP_LOD_BIAS = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 25) , Ogre::RSC_GEOMETRY_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 26) , Ogre::RSC_VERTEX_FORMAT_16X3 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON, 27) , Ogre::RSC_TEXTURE_COMPRESSION = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 0) , Ogre::RSC_TEXTURE_COMPRESSION_DXT = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 1) , Ogre::RSC_TEXTURE_COMPRESSION_VTC = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 2) , Ogre::RSC_TEXTURE_COMPRESSION_PVRTC = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 3) , Ogre::RSC_TEXTURE_COMPRESSION_ATC = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 4) , Ogre::RSC_TEXTURE_COMPRESSION_ETC1 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 5) , Ogre::RSC_TEXTURE_COMPRESSION_ETC2 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 6) , Ogre::RSC_TEXTURE_COMPRESSION_BC4_BC5 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 7) , Ogre::RSC_TEXTURE_COMPRESSION_BC6H_BC7 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 8) , Ogre::RSC_FIXED_FUNCTION = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 9) , Ogre::RSC_VERTEX_FORMAT_INT_10_10_10_2 = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 10) , Ogre::RSC_ALPHA_TO_COVERAGE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 11) , Ogre::RSC_CAN_GET_COMPILED_SHADER_BUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 12) , Ogre::RSC_HW_GAMMA = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 13) , Ogre::RSC_RTT_MAIN_DEPTHBUFFER_ATTACHABLE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 14) , Ogre::RSC_RTT_INDEPENDENT_BUFFER_SIZE = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 15) , Ogre::RSC_RTT_DEPTHBUFFER_RESOLUTION_LESSEQUAL = RSC_RTT_INDEPENDENT_BUFFER_SIZE , Ogre::RSC_VERTEX_BUFFER_INSTANCE_DATA = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 16) , Ogre::RSC_MESH_PROGRAM = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 17) , Ogre::RSC_VP_RT_INDEX_ANY_SHADER = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 18) , Ogre::RSC_PERSTAGECONSTANT = OGRE_CAPS_VALUE(CAPS_CATEGORY_D3D9, 0) , Ogre::RSC_READ_BACK_AS_TEXTURE = OGRE_CAPS_VALUE(CAPS_CATEGORY_D3D9, 1) , Ogre::RSC_WBUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_D3D9, 2) , Ogre::RSC_HWOCCLUSION_ASYNCHRONOUS = OGRE_CAPS_VALUE(CAPS_CATEGORY_D3D9, 3) , Ogre::RSC_HWRENDER_TO_TEXTURE_3D = OGRE_CAPS_VALUE(CAPS_CATEGORY_D3D9, 4) , Ogre::RSC_MRT_SAME_BIT_DEPTHS = OGRE_CAPS_VALUE(CAPS_CATEGORY_D3D9, 5) , Ogre::RSC_PBUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 0) , Ogre::RSC_SEPARATE_SHADER_OBJECTS = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 1) , Ogre::RSC_VAO = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 2) , Ogre::RSC_GLSL_SSO_REDECLARE = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 3) , Ogre::RSC_DEBUG = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 4) , Ogre::RSC_MAPBUFFER = OGRE_CAPS_VALUE(CAPS_CATEGORY_GL, 5) , Ogre::RSC_INFINITE_FAR_PLANE = RSC_VERTEX_PROGRAM , Ogre::RSC_FRAGMENT_PROGRAM = RSC_VERTEX_PROGRAM , Ogre::RSC_TESSELLATION_DOMAIN_PROGRAM = RSC_TESSELLATION_PROGRAM , Ogre::RSC_TESSELLATION_HULL_PROGRAM = RSC_TESSELLATION_PROGRAM }
| Enum describing the different hardware capabilities we want to check for OGRE_CAPS_VALUE(a, b) defines each capability a is the category (which can be from 0 to 15) b is the value (from 0 to 27). More...
enum | Ogre::CapabilitiesCategory { Ogre::CAPS_CATEGORY_COMMON = 0 , Ogre::CAPS_CATEGORY_COMMON_2 = 1 , Ogre::CAPS_CATEGORY_D3D9 = 2 , Ogre::CAPS_CATEGORY_GL = 3 , Ogre::CAPS_CATEGORY_COMMON_3 = 4 , Ogre::CAPS_CATEGORY_COUNT = 5 }
| Enumerates the categories of capabilities. More...
enum | Ogre::GPUVendor { Ogre::GPU_UNKNOWN = 0 , Ogre::GPU_NVIDIA , Ogre::GPU_AMD , Ogre::GPU_INTEL , Ogre::GPU_IMAGINATION_TECHNOLOGIES , Ogre::GPU_APPLE , Ogre::GPU_NOKIA , Ogre::GPU_MS_SOFTWARE , Ogre::GPU_MS_WARP , Ogre::GPU_ARM , Ogre::GPU_QUALCOMM , Ogre::GPU_MOZILLA , Ogre::GPU_WEBKIT , Ogre::GPU_VENDOR_COUNT }
| Enumeration of GPU vendors. More...

## Functions
String | Ogre::to_string (const DriverVersion &v)
String | Ogre::to_string (GPUVendor v)

## Macro Definition Documentation

## ◆ CAPS_CATEGORY_SIZE

#define CAPS_CATEGORY_SIZE 4

## ◆ OGRE_CAPS_BITSHIFT

#define OGRE_CAPS_BITSHIFT (32 - CAPS_CATEGORY_SIZE)

Referenced by Ogre::RenderSystemCapabilities::hasCapability(), Ogre::RenderSystemCapabilities::isCapabilityRenderSystemSpecific(), Ogre::RenderSystemCapabilities::setCapability(), and Ogre::RenderSystemCapabilities::unsetCapability().

## ◆ CAPS_CATEGORY_MASK

#define CAPS_CATEGORY_MASK (((1 << CAPS_CATEGORY_SIZE) - 1) << OGRE_CAPS_BITSHIFT)

Referenced by Ogre::RenderSystemCapabilities::hasCapability(), Ogre::RenderSystemCapabilities::setCapability(), and Ogre::RenderSystemCapabilities::unsetCapability().

## ◆ OGRE_CAPS_VALUE

#define OGRE_CAPS_VALUE | ( |  | cat,
|  |  | val )

Value:
((cat << OGRE_CAPS_BITSHIFT) | (1 << val))
OGRE_CAPS_BITSHIFT
#define OGRE_CAPS_BITSHIFT
Definition OgreRenderSystemCapabilities.h:47