OGRE 14.3
Object-Oriented Graphics Rendering Engine
|
Classes | |
struct | Ogre::ConfigOption |
Packages the details of a configuration option. More... | |
class | Ogre::DefaultHardwareBuffer |
Specialisation of HardwareBuffer for emulation. More... | |
class | Ogre::DefaultHardwareBufferManager |
DefaultHardwareBufferManager as a Singleton. More... | |
class | Ogre::DefaultHardwareBufferManagerBase |
Specialisation of HardwareBufferManagerBase to emulate hardware buffers. More... | |
class | Ogre::DepthBuffer |
An abstract class that contains a depth/stencil buffer. More... | |
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::HardwareBuffer |
Abstract class defining common features of hardware buffers. More... | |
class | Ogre::HardwareBufferLicensee |
Abstract interface representing a 'licensee' of a hardware buffer copy. More... | |
struct | Ogre::HardwareBufferLockGuard |
Locking helper. More... | |
class | Ogre::HardwareBufferManager |
Singleton wrapper for hardware buffer manager. More... | |
class | Ogre::HardwareBufferManagerBase |
Base definition of a hardware buffer manager. More... | |
class | Ogre::HardwareIndexBuffer |
Specialisation of HardwareBuffer for vertex index buffers, still abstract. More... | |
class | Ogre::HardwareOcclusionQuery |
Query how many pixels have passed the per-fragment tests. More... | |
class | Ogre::HardwarePixelBuffer |
Specialisation of HardwareBuffer for a pixel buffer. More... | |
class | Ogre::HardwareVertexBuffer |
Specialisation of HardwareBuffer for a vertex buffer. More... | |
class | Ogre::IndexData |
Summary class collecting together index data source information. More... | |
class | Ogre::MultiRenderTarget |
This class represents a render target that renders to multiple RenderTextures at once. More... | |
class | Ogre::QueuedRenderableCollection |
Lowest level collection of renderables. More... | |
class | Ogre::QueuedRenderableVisitor |
Visitor interface for items in a QueuedRenderableCollection. More... | |
struct | Ogre::RenderablePass |
Struct associating a single Pass with a single Renderable. More... | |
class | Ogre::RenderOperation |
'New' rendering operation using vertex buffers. More... | |
class | Ogre::RenderPriorityGroup |
Collection of renderables by priority. More... | |
class | Ogre::RenderQueue |
Class to manage the scene object rendering queue. More... | |
class | Ogre::RenderQueueGroup |
A grouping level underneath RenderQueue which groups renderables to be issued at coarsely the same time to the renderer. More... | |
class | Ogre::RenderQueueListener |
Abstract interface which classes must implement if they wish to receive events from the render queue. More... | |
class | Ogre::RenderSystem |
Defines the functionality of a 3D API. More... | |
class | Ogre::RenderSystemCapabilities |
This class stores the capabilities of the graphics card. More... | |
class | Ogre::RenderSystemCapabilitiesManager |
Class for managing RenderSystemCapabilities database for Ogre. More... | |
class | Ogre::RenderSystemCapabilitiesSerializer |
Class for serializing RenderSystemCapabilities to / from a .rendercaps script. More... | |
class | Ogre::RenderTarget |
A 'canvas' which can receive the results of a rendering operation. More... | |
struct | Ogre::RenderTargetEvent |
Struct containing information about a RenderTarget event. More... | |
class | Ogre::RenderTargetListener |
A interface class defining a listener which can be used to receive notifications of RenderTarget events. More... | |
struct | Ogre::RenderTargetViewportEvent |
Struct containing information about a RenderTarget Viewport-specific event. More... | |
class | Ogre::RenderTexture |
This class represents a RenderTarget that renders to a Texture. More... | |
class | Ogre::RenderToVertexBuffer |
An object which renders geometry to a vertex. More... | |
class | Ogre::RenderWindow |
Manages the target rendering window. More... | |
struct | Ogre::StencilState |
Describes the stencil buffer operation. More... | |
class | Ogre::VertexBufferBinding |
Records the state of all the vertex buffer bindings required to provide a vertex declaration with the input data it needs for the vertex elements. More... | |
class | Ogre::VertexCacheProfiler |
Vertex cache profiler. More... | |
class | Ogre::VertexData |
collects together all the vertex-related information used to render geometry. More... | |
class | Ogre::VertexDeclaration |
This class declares the format of a set of vertex inputs, which can be issued to the rendering API through a RenderOperation. More... | |
class | Ogre::VertexElement |
This class declares the usage of a single vertex buffer as a component of a complete VertexDeclaration. More... | |
class | Ogre::Viewport |
An abstraction of a viewport, i.e., a rendering region on a render target. More... | |
Macros | |
#define | OGRE_RENDERABLE_DEFAULT_PRIORITY Ogre::Renderable::DEFAULT_PRIORITY |
Typedefs | |
typedef std::map< String, ConfigOption > | Ogre::ConfigOptionMap |
typedef DefaultHardwareBuffer | Ogre::DefaultHardwareUniformBuffer |
typedef std::map< uint16, DepthBufferVec > | Ogre::DepthBufferMap |
typedef std::vector< DepthBuffer * > | Ogre::DepthBufferVec |
typedef HardwareBuffer | Ogre::HardwareCounterBuffer |
typedef HardwareBufferLockGuard | Ogre::HardwareIndexBufferLockGuard |
typedef HardwareBuffer | Ogre::HardwareUniformBuffer |
typedef HardwareBufferLockGuard | Ogre::HardwareVertexBufferLockGuard |
typedef std::vector< Renderable * > | Ogre::RenderableList |
typedef std::map< String, RenderTarget * > | Ogre::RenderTargetMap |
typedef std::multimap< uchar, RenderTarget * > | Ogre::RenderTargetPriorityMap |
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_DEPTHBUFFER_RESOLUTION_LESSEQUAL = OGRE_CAPS_VALUE(CAPS_CATEGORY_COMMON_2, 15) , 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_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... | |
enum | Ogre::HardwareBufferUsage : uint8 { Ogre::HBU_GPU_TO_CPU = 1 , Ogre::HBU_CPU_ONLY = 2 , Ogre::HBU_DETAIL_WRITE_ONLY = 4 , Ogre::HBU_GPU_ONLY = HBU_GPU_TO_CPU | HBU_DETAIL_WRITE_ONLY , Ogre::HBU_CPU_TO_GPU = HBU_CPU_ONLY | HBU_DETAIL_WRITE_ONLY } |
Enums describing buffer usage. More... | |
enum | Ogre::DepthBuffer::PoolId { Ogre::DepthBuffer::POOL_NO_DEPTH = 0 , Ogre::DepthBuffer::POOL_MANUAL_USAGE = 0 , Ogre::DepthBuffer::POOL_DEFAULT = 1 } |
enum | Ogre::RenderQueueGroupID { Ogre::RENDER_QUEUE_BACKGROUND = 0 , Ogre::RENDER_QUEUE_SKIES_EARLY = 5 , Ogre::RENDER_QUEUE_1 = 10 , Ogre::RENDER_QUEUE_2 = 20 , Ogre::RENDER_QUEUE_WORLD_GEOMETRY_1 = 25 , Ogre::RENDER_QUEUE_3 = 30 , Ogre::RENDER_QUEUE_4 = 40 , Ogre::RENDER_QUEUE_MAIN = 50 , Ogre::RENDER_QUEUE_6 = 60 , Ogre::RENDER_QUEUE_7 = 70 , Ogre::RENDER_QUEUE_WORLD_GEOMETRY_2 = 75 , Ogre::RENDER_QUEUE_8 = 80 , Ogre::RENDER_QUEUE_SKIES_LATE = 90 , Ogre::RENDER_QUEUE_TRANSPARENTS = 95 , Ogre::RENDER_QUEUE_OVERLAY = 100 , Ogre::RENDER_QUEUE_MAX = 105 , Ogre::RENDER_QUEUE_COUNT } |
Enumeration of queue groups, by which the application may group queued renderables so that they are rendered together with events in between. More... | |
enum | Ogre::StencilOperation { Ogre::SOP_KEEP , Ogre::SOP_ZERO , Ogre::SOP_REPLACE , Ogre::SOP_INCREMENT , Ogre::SOP_DECREMENT , Ogre::SOP_INCREMENT_WRAP , Ogre::SOP_DECREMENT_WRAP , Ogre::SOP_INVERT } |
Enum describing the various actions which can be taken on the stencil buffer. More... | |
enum | Ogre::TexCoordCalcMethod : uint8 { Ogre::TEXCALC_NONE , Ogre::TEXCALC_ENVIRONMENT_MAP , Ogre::TEXCALC_ENVIRONMENT_MAP_PLANAR , Ogre::TEXCALC_ENVIRONMENT_MAP_REFLECTION , Ogre::TEXCALC_ENVIRONMENT_MAP_NORMAL , Ogre::TEXCALC_PROJECTIVE_TEXTURE } |
Enum describing the ways to generate texture coordinates. More... | |
enum | Ogre::VertexElementSemantic : uint8 { Ogre::VES_POSITION = 1 , Ogre::VES_BLEND_WEIGHTS = 2 , Ogre::VES_BLEND_INDICES = 3 , Ogre::VES_NORMAL = 4 , Ogre::VES_COLOUR = 5 , Ogre::VES_COLOUR2 = 6 , Ogre::VES_TEXTURE_COORDINATES = 7 , Ogre::VES_BINORMAL = 8 , Ogre::VES_TANGENT = 9 , Ogre::VES_COUNT = 9 , Ogre::VES_DIFFUSE = VES_COLOUR , Ogre::VES_SPECULAR = VES_COLOUR2 } |
Vertex element semantics, used to identify the meaning of vertex buffer contents. More... | |
enum | Ogre::VertexElementType : uint8 { Ogre::VET_FLOAT1 = 0 , Ogre::VET_FLOAT2 = 1 , Ogre::VET_FLOAT3 = 2 , Ogre::VET_FLOAT4 = 3 , Ogre::VET_SHORT1 = 5 , Ogre::VET_SHORT2 = 6 , Ogre::VET_SHORT3 = 7 , Ogre::VET_SHORT4 = 8 , Ogre::VET_UBYTE4 = 9 , Ogre::_DETAIL_SWAP_RB = 10 , Ogre::VET_DOUBLE1 = 12 , Ogre::VET_DOUBLE2 = 13 , Ogre::VET_DOUBLE3 = 14 , Ogre::VET_DOUBLE4 = 15 , Ogre::VET_USHORT1 = 16 , Ogre::VET_USHORT2 = 17 , Ogre::VET_USHORT3 = 18 , Ogre::VET_USHORT4 = 19 , Ogre::VET_INT1 = 20 , Ogre::VET_INT2 = 21 , Ogre::VET_INT3 = 22 , Ogre::VET_INT4 = 23 , Ogre::VET_UINT1 = 24 , Ogre::VET_UINT2 = 25 , Ogre::VET_UINT3 = 26 , Ogre::VET_UINT4 = 27 , Ogre::VET_BYTE4 = 28 , Ogre::VET_BYTE4_NORM = 29 , Ogre::VET_UBYTE4_NORM = 30 , Ogre::VET_SHORT2_NORM = 31 , Ogre::VET_SHORT4_NORM = 32 , Ogre::VET_USHORT2_NORM = 33 , Ogre::VET_USHORT4_NORM = 34 , Ogre::VET_INT_10_10_10_2_NORM = 35 , Ogre::VET_HALF1 = 36 , Ogre::VET_HALF2 = 37 , Ogre::VET_HALF3 = 38 , Ogre::VET_HALF4 = 39 , Ogre::VET_COLOUR = VET_UBYTE4_NORM , Ogre::VET_COLOUR_ARGB = VET_UBYTE4_NORM , Ogre::VET_COLOUR_ABGR = VET_UBYTE4_NORM } |
Vertex element type, used to identify the base types of the vertex contents. More... | |
#define OGRE_RENDERABLE_DEFAULT_PRIORITY Ogre::Renderable::DEFAULT_PRIORITY |
typedef std::map< String, ConfigOption > Ogre::ConfigOptionMap |
typedef std::vector<Renderable*> Ogre::RenderableList |
typedef std::vector<DepthBuffer*> Ogre::DepthBufferVec |
typedef std::map< uint16, DepthBufferVec > Ogre::DepthBufferMap |
typedef std::map< String, RenderTarget * > Ogre::RenderTargetMap |
typedef std::multimap<uchar, RenderTarget * > Ogre::RenderTargetPriorityMap |
Enums describing buffer usage.
Vertex element semantics, used to identify the meaning of vertex buffer contents.
Enumerator | |
---|---|
VES_POSITION | Position, typically VET_FLOAT3. |
VES_BLEND_WEIGHTS | Blending weights. |
VES_BLEND_INDICES | Blending indices. |
VES_NORMAL | Normal, typically VET_FLOAT3. |
VES_COLOUR | Colour, typically VET_UBYTE4. |
VES_COLOUR2 | Secondary colour. Generally free for custom data. Means specular with OpenGL FFP. |
VES_TEXTURE_COORDINATES | Texture coordinates, typically VET_FLOAT2. |
VES_BINORMAL | Binormal (Y axis if normal is Z) |
VES_TANGENT | Tangent (X axis if normal is Z) |
VES_COUNT | The number of VertexElementSemantic elements (note - the first value VES_POSITION is 1) |
VES_DIFFUSE |
|
VES_SPECULAR |
|
Vertex element type, used to identify the base types of the vertex contents.
VET_SHORT1, VET_SHORT3, VET_USHORT1 and VET_USHORT3 should be used with caution because they aren't supported on D3D9 and D3D11 - they are unaligned as their size is not a multiple of 4 bytes. Therefore drivers usually add padding on upload.
Enumerator | |
---|---|
VET_FLOAT1 | |
VET_FLOAT2 | |
VET_FLOAT3 | |
VET_FLOAT4 | |
VET_SHORT1 | not supported on D3D9 |
VET_SHORT2 | |
VET_SHORT3 | not supported on D3D9 and D3D11 |
VET_SHORT4 | |
VET_UBYTE4 | |
_DETAIL_SWAP_RB | |
VET_DOUBLE1 | |
VET_DOUBLE2 | |
VET_DOUBLE3 | |
VET_DOUBLE4 | |
VET_USHORT1 | not supported on D3D9 |
VET_USHORT2 | |
VET_USHORT3 | not supported on D3D9 and D3D11 |
VET_USHORT4 | |
VET_INT1 | |
VET_INT2 | |
VET_INT3 | |
VET_INT4 | |
VET_UINT1 | |
VET_UINT2 | |
VET_UINT3 | |
VET_UINT4 | |
VET_BYTE4 | signed bytes |
VET_BYTE4_NORM | signed bytes (normalized to -1..1) |
VET_UBYTE4_NORM | unsigned bytes (normalized to 0..1) |
VET_SHORT2_NORM | signed shorts (normalized to -1..1) |
VET_SHORT4_NORM | |
VET_USHORT2_NORM | unsigned shorts (normalized to 0..1) |
VET_USHORT4_NORM | |
VET_INT_10_10_10_2_NORM | signed int (normalized to 0..1) |
VET_HALF1 | not supported on D3D9 |
VET_HALF2 | |
VET_HALF3 | not supported on D3D9 and D3D11 |
VET_HALF4 | |
VET_COLOUR |
|
VET_COLOUR_ARGB |
|
VET_COLOUR_ABGR |
|
Enumeration of queue groups, by which the application may group queued renderables so that they are rendered together with events in between.
When passed into methods these are actually passed as a uint8 to allow you to use values in between if you want to.
Enum describing the ways to generate texture coordinates.
Enumerator | |
---|---|
TEXCALC_NONE | No calculated texture coordinates. |
TEXCALC_ENVIRONMENT_MAP | 2D texture coordinates using spherical reflection mapping based on vertex normals. |
TEXCALC_ENVIRONMENT_MAP_PLANAR | 2D texture coordinates using view space position. Same as TEXCALC_ENVIRONMENT_MAP on all backends. |
TEXCALC_ENVIRONMENT_MAP_REFLECTION | 3D texture coordinates using the reflection vector. |
TEXCALC_ENVIRONMENT_MAP_NORMAL | 3D texture coordinates using the normal vector. |
TEXCALC_PROJECTIVE_TEXTURE | Projective texture. |
Enum describing the various actions which can be taken on the stencil buffer.
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)
Enumerator | |
---|---|
RSC_PRIMITIVE_RESTART | specifying a "-1" in the index buffer starts a new draw command. |
RSC_AUTOMIPMAP_COMPRESSED | GL ES2/ES3 does not support generating mipmaps for compressed formats in hardware. |
RSC_ANISOTROPY | Supports anisotropic texture filtering. |
RSC_DEPTH_CLAMP | Supports depth clamping. |
RSC_WIDE_LINES | Supports linewidth != 1.0. |
RSC_HWSTENCIL | Supports hardware stencil buffer. |
RSC_READ_WRITE_BUFFERS | Supports read/write buffers with atomic counters (e.g. RWStructuredBuffer or SSBO) |
RSC_TEXTURE_COMPRESSION_ASTC | Supports compressed textures in the ASTC format. |
RSC_32BIT_INDEX | Supports 32bit hardware index buffers. |
RSC_VERTEX_PROGRAM | Supports vertex programs (vertex shaders)
|
RSC_TESSELLATION_PROGRAM | Supports tessellation domain and hull programs. |
RSC_TEXTURE_2D_ARRAY | Supports 2D Texture Arrays. |
RSC_TWO_SIDED_STENCIL | Supports separate stencil updates for both front and back faces. |
RSC_STENCIL_WRAP | Supports wrapping the stencil value at the range extremeties. |
RSC_HWOCCLUSION | Supports hardware occlusion queries. |
RSC_USER_CLIP_PLANES | Supports user clipping planes. |
RSC_COMPUTE_PROGRAM | Supports hardware compute programs. |
RSC_TEXTURE_1D | Supports 1d textures. |
RSC_HWRENDER_TO_TEXTURE | Supports hardware render-to-texture (bigger than framebuffer) |
RSC_TEXTURE_FLOAT | Supports float textures and render targets. |
RSC_NON_POWER_OF_2_TEXTURES | Supports non-power of two textures. |
RSC_TEXTURE_3D | Supports 3d (volume) textures. |
RSC_POINT_SPRITES | Supports basic point sprite rendering. |
RSC_POINT_EXTENDED_PARAMETERS |
|
RSC_HWRENDER_TO_VERTEX_BUFFER | Supports rendering to vertex buffers. |
RSC_VERTEX_TEXTURE_FETCH |
|
RSC_MIPMAP_LOD_BIAS | Supports mipmap LOD biasing. |
RSC_GEOMETRY_PROGRAM | Supports hardware geometry programs. |
RSC_VERTEX_FORMAT_16X3 | Supports unaligned VET_HALF3, VET_SHORT3, VET_USHORT3 formats. |
RSC_TEXTURE_COMPRESSION | Supports compressed textures. |
RSC_TEXTURE_COMPRESSION_DXT | Supports compressed textures in the DXT/ST3C formats. |
RSC_TEXTURE_COMPRESSION_VTC | Supports compressed textures in the VTC format. |
RSC_TEXTURE_COMPRESSION_PVRTC | Supports compressed textures in the PVRTC format. |
RSC_TEXTURE_COMPRESSION_ATC | Supports compressed textures in the ATC format. |
RSC_TEXTURE_COMPRESSION_ETC1 | Supports compressed textures in the ETC1 format. |
RSC_TEXTURE_COMPRESSION_ETC2 | Supports compressed textures in the ETC2 format. |
RSC_TEXTURE_COMPRESSION_BC4_BC5 | Supports compressed textures in BC4 and BC5 format (DirectX feature level 10_0) |
RSC_TEXTURE_COMPRESSION_BC6H_BC7 | Supports compressed textures in BC6H and BC7 format (DirectX feature level 11_0) |
RSC_FIXED_FUNCTION | Supports fixed-function pipeline. |
RSC_VERTEX_FORMAT_INT_10_10_10_2 | Supports VET_INT_10_10_10_2_NORM. |
RSC_ALPHA_TO_COVERAGE | Supports Alpha to Coverage (A2C) |
RSC_CAN_GET_COMPILED_SHADER_BUFFER | Supports reading back compiled shaders. |
RSC_HW_GAMMA | Supports HW gamma, both in the framebuffer and as texture. |
RSC_RTT_MAIN_DEPTHBUFFER_ATTACHABLE | Supports using the MAIN depth buffer for RTTs. D3D 9&10, OGL w/FBO support unknown (undefined behavior?), OGL w/ copy supports it |
RSC_RTT_DEPTHBUFFER_RESOLUTION_LESSEQUAL | Supports attaching a depth buffer to an RTT that has width & height less or equal than RTT's. Otherwise must be of exact same resolution. D3D 9, OGL 3.0 (not 2.0, not D3D10) |
RSC_VERTEX_BUFFER_INSTANCE_DATA | Supports using vertex buffers for instance data. |
RSC_MESH_PROGRAM | Supports mesh and task programs. |
RSC_PERSTAGECONSTANT | Is DirectX feature "per stage constants" supported. |
RSC_READ_BACK_AS_TEXTURE | D3D11: supports reading back the inactive depth-stencil buffer as texture. |
RSC_WBUFFER | the renderer will try to use W-buffers when available W-buffers are enabled by default for 16bit depth buffers and disabled for all other depths. |
RSC_HWOCCLUSION_ASYNCHRONOUS | D3D11: Supports asynchronous hardware occlusion queries. |
RSC_HWRENDER_TO_TEXTURE_3D | |
RSC_MRT_SAME_BIT_DEPTHS | All MRTs must have same bit depths. |
RSC_PBUFFER | Support for PBuffer. |
RSC_SEPARATE_SHADER_OBJECTS | Support for Separate Shader Objects. |
RSC_VAO | Support for Vertex Array Objects (VAOs) |
RSC_GLSL_SSO_REDECLARE | with Separate Shader Objects the gl_PerVertex interface block must be redeclared but some drivers misbehave and do not compile if we do so |
RSC_DEBUG | Supports debugging/ profiling events. |
RSC_MAPBUFFER | RS can map driver buffer storage directly instead of using a shadow buffer. |
RSC_INFINITE_FAR_PLANE |
|
RSC_FRAGMENT_PROGRAM |
|
RSC_TESSELLATION_DOMAIN_PROGRAM | |
RSC_TESSELLATION_HULL_PROGRAM |
Enumeration of GPU vendors.
Enumerator | |
---|---|
GPU_UNKNOWN | |
GPU_NVIDIA | |
GPU_AMD | |
GPU_INTEL | |
GPU_IMAGINATION_TECHNOLOGIES | |
GPU_APPLE | Apple Software Renderer. |
GPU_NOKIA | |
GPU_MS_SOFTWARE | Microsoft software device. |
GPU_MS_WARP | Microsoft WARP (Windows Advanced Rasterization Platform) software device - http://msdn.microsoft.com/en-us/library/dd285359.aspx. |
GPU_ARM | For the Mali chipsets. |
GPU_QUALCOMM | |
GPU_MOZILLA | WebGL on Mozilla/Firefox based browser. |
GPU_WEBKIT | WebGL on WebKit/Chrome base browser. |
GPU_VENDOR_COUNT | placeholder |
Ogre::DepthBuffer::DepthBuffer | ( | uint16 | poolId, |
uint32 | width, | ||
uint32 | height, | ||
uint32 | fsaa, | ||
bool | manual | ||
) |
|
virtual |
Sets the pool id in which this DepthBuffer lives.
Note this will detach any render target from this depth buffer
Gets the pool id in which this DepthBuffer lives.
|
inline |
bool Ogre::DepthBuffer::isManual | ( | ) | const |
Manual DepthBuffers are cleared in RenderSystem's destructor.
Non-manual ones are released with it's render target (aka, a backbuffer or similar)
|
virtual |
Returns whether the specified RenderTarget is compatible with this DepthBuffer That is, this DepthBuffer can be attached to that RenderTarget.
Most APIs impose the following restrictions:
renderTarget | The render target to test against |
|
virtual |
Called when a RenderTarget is attaches this DepthBuffer.
This function doesn't actually attach. It merely informs the DepthBuffer which RenderTarget did attach. The real attachment happens in RenderTarget::attachDepthBuffer()
renderTarget | The RenderTarget that has just been attached |
|
virtual |
Called when a RenderTarget is detaches from this DepthBuffer.
Same as DepthBuffer::_notifyRenderTargetAttached()
renderTarget | The RenderTarget that has just been detached |
References Ogre::RenderSystemCapabilities::vendorToString().
|
inline |
References Ogre::DriverVersion::toString().