U3D
Open-source, cross-platform 2D and 3D game engine built in C++
Loading...
Searching...
No Matches
GraphicsDefs.h File Reference
#include "../Container/FlagSet.h"
#include "../Container/HashBase.h"
#include "../Math/StringHash.h"
This graph shows which files directly or indirectly include this file:

Classes

struct  Urho3D::VertexElement
 Vertex element description for arbitrary vertex declarations. More...
 

Enumerations

enum  Urho3D::PrimitiveType {
  TRIANGLE_LIST = 0 , LINE_LIST , POINT_LIST , TRIANGLE_STRIP ,
  LINE_STRIP , TRIANGLE_FAN
}
 Primitive type.
 
enum  Urho3D::GeometryType {
  GEOM_STATIC = 0 , GEOM_SKINNED = 1 , GEOM_INSTANCED = 2 , GEOM_BILLBOARD = 3 ,
  GEOM_DIRBILLBOARD = 4 , GEOM_TRAIL_FACE_CAMERA = 5 , GEOM_TRAIL_BONE = 6 , MAX_GEOMETRYTYPES = 7 ,
  GEOM_STATIC_NOINSTANCING = 7
}
 Geometry type for vertex shader geometry variations.
 
enum  Urho3D::BlendMode {
  BLEND_REPLACE = 0 , BLEND_ADD , BLEND_MULTIPLY , BLEND_ALPHA ,
  BLEND_ADDALPHA , BLEND_PREMULALPHA , BLEND_INVDESTALPHA , BLEND_SUBTRACT ,
  BLEND_SUBTRACTALPHA , MAX_BLENDMODES
}
 Blending mode.
 
enum  Urho3D::CompareMode {
  CMP_ALWAYS = 0 , CMP_EQUAL , CMP_NOTEQUAL , CMP_LESS ,
  CMP_LESSEQUAL , CMP_GREATER , CMP_GREATEREQUAL , MAX_COMPAREMODES
}
 Depth or stencil compare mode.
 
enum  Urho3D::CullMode { CULL_NONE = 0 , CULL_CCW , CULL_CW , MAX_CULLMODES }
 Culling mode.
 
enum  Urho3D::FillMode { FILL_SOLID = 0 , FILL_WIREFRAME , FILL_POINT }
 Fill mode.
 
enum  Urho3D::StencilOp {
  OP_KEEP = 0 , OP_ZERO , OP_REF , OP_INCR ,
  OP_DECR
}
 Stencil operation.
 
enum  Urho3D::LockState { LOCK_NONE = 0 , LOCK_HARDWARE , LOCK_SHADOW , LOCK_SCRATCH }
 Vertex/index buffer lock state.
 
enum  Urho3D::LegacyVertexElement {
  ELEMENT_POSITION = 0 , ELEMENT_NORMAL , ELEMENT_COLOR , ELEMENT_TEXCOORD1 ,
  ELEMENT_TEXCOORD2 , ELEMENT_CUBETEXCOORD1 , ELEMENT_CUBETEXCOORD2 , ELEMENT_TANGENT ,
  ELEMENT_BLENDWEIGHTS , ELEMENT_BLENDINDICES , ELEMENT_INSTANCEMATRIX1 , ELEMENT_INSTANCEMATRIX2 ,
  ELEMENT_INSTANCEMATRIX3 , ELEMENT_OBJECTINDEX , MAX_LEGACY_VERTEX_ELEMENTS
}
 Hardcoded legacy vertex elements.
 
enum  Urho3D::VertexElementType {
  TYPE_INT = 0 , TYPE_FLOAT , TYPE_VECTOR2 , TYPE_VECTOR3 ,
  TYPE_VECTOR4 , TYPE_UBYTE4 , TYPE_UBYTE4_NORM , MAX_VERTEX_ELEMENT_TYPES
}
 Arbitrary vertex declaration element datatypes.
 
enum  Urho3D::VertexElementSemantic {
  SEM_POSITION = 0 , SEM_NORMAL , SEM_BINORMAL , SEM_TANGENT ,
  SEM_TEXCOORD , SEM_COLOR , SEM_BLENDWEIGHTS , SEM_BLENDINDICES ,
  SEM_OBJECTINDEX , MAX_VERTEX_ELEMENT_SEMANTICS
}
 Arbitrary vertex declaration element semantics.
 
enum  Urho3D::TextureFilterMode {
  FILTER_NEAREST = 0 , FILTER_BILINEAR , FILTER_TRILINEAR , FILTER_ANISOTROPIC ,
  FILTER_NEAREST_ANISOTROPIC , FILTER_DEFAULT , MAX_FILTERMODES
}
 Texture filtering mode.
 
enum  Urho3D::TextureAddressMode {
  ADDRESS_WRAP = 0 , ADDRESS_MIRROR , ADDRESS_CLAMP , ADDRESS_BORDER ,
  MAX_ADDRESSMODES
}
 Texture addressing mode.
 
enum  Urho3D::TextureCoordinate { COORD_U = 0 , COORD_V , COORD_W , MAX_COORDS }
 Texture coordinates.
 
enum  Urho3D::TextureUsage { TEXTURE_STATIC = 0 , TEXTURE_DYNAMIC , TEXTURE_RENDERTARGET , TEXTURE_DEPTHSTENCIL }
 Texture usage types.
 
enum  Urho3D::CubeMapFace {
  FACE_POSITIVE_X = 0 , FACE_NEGATIVE_X , FACE_POSITIVE_Y , FACE_NEGATIVE_Y ,
  FACE_POSITIVE_Z , FACE_NEGATIVE_Z , MAX_CUBEMAP_FACES
}
 Cube map faces.
 
enum  Urho3D::CubeMapLayout {
  CML_HORIZONTAL = 0 , CML_HORIZONTALNVIDIA , CML_HORIZONTALCROSS , CML_VERTICALCROSS ,
  CML_BLENDER
}
 Cubemap single image layout modes.
 
enum  Urho3D::RenderSurfaceUpdateMode { SURFACE_MANUALUPDATE = 0 , SURFACE_UPDATEVISIBLE , SURFACE_UPDATEALWAYS }
 Update mode for render surface viewports.
 
enum  Urho3D::ShaderType { VS = 0 , PS }
 Shader types.
 
enum  Urho3D::ShaderParameterGroup {
  SP_FRAME = 0 , SP_CAMERA , SP_ZONE , SP_LIGHT ,
  SP_MATERIAL , SP_OBJECT , SP_CUSTOM , MAX_SHADER_PARAMETER_GROUPS
}
 Shader parameter groups for determining need to update. On APIs that support constant buffers, these correspond to different constant buffers.
 
enum  Urho3D::TextureUnit {
  TU_DIFFUSE = 0 , TU_ALBEDOBUFFER = 0 , TU_NORMAL = 1 , TU_NORMALBUFFER = 1 ,
  TU_SPECULAR = 2 , TU_EMISSIVE = 3 , TU_ENVIRONMENT = 4 , TU_VOLUMEMAP = 5 ,
  TU_CUSTOM1 = 6 , TU_CUSTOM2 = 7 , TU_LIGHTRAMP = 8 , TU_LIGHTSHAPE = 9 ,
  TU_SHADOWMAP = 10 , TU_FACESELECT = 11 , TU_INDIRECTION = 12 , TU_DEPTHBUFFER = 13 ,
  TU_LIGHTBUFFER = 14 , TU_ZONE = 15 , MAX_MATERIAL_TEXTURE_UNITS = 8 , MAX_TEXTURE_UNITS = 16
}
 
enum  Urho3D::FaceCameraMode {
  FC_NONE = 0 , FC_ROTATE_XYZ , FC_ROTATE_Y , FC_LOOKAT_XYZ ,
  FC_LOOKAT_Y , FC_LOOKAT_MIXED , FC_DIRECTION
}
 Billboard camera facing modes.
 
enum  Urho3D::ShadowQuality {
  SHADOWQUALITY_SIMPLE_16BIT = 0 , SHADOWQUALITY_SIMPLE_24BIT , SHADOWQUALITY_PCF_16BIT , SHADOWQUALITY_PCF_24BIT ,
  SHADOWQUALITY_VSM , SHADOWQUALITY_BLUR_VSM
}
 Shadow type.
 
enum  MaterialQuality : unsigned { QUALITY_LOW = 0 , QUALITY_MEDIUM = 1 , QUALITY_HIGH = 2 , QUALITY_MAX = 15 }
 
enum  ClearTarget : unsigned { CLEAR_COLOR = 0x1 , CLEAR_DEPTH = 0x2 , CLEAR_STENCIL = 0x4 }
 
enum  VertexMask : unsigned {
  MASK_NONE = 0x0 , MASK_POSITION = 0x1 , MASK_NORMAL = 0x2 , MASK_COLOR = 0x4 ,
  MASK_TEXCOORD1 = 0x8 , MASK_TEXCOORD2 = 0x10 , MASK_CUBETEXCOORD1 = 0x20 , MASK_CUBETEXCOORD2 = 0x40 ,
  MASK_TANGENT = 0x80 , MASK_BLENDWEIGHTS = 0x100 , MASK_BLENDINDICES = 0x200 , MASK_INSTANCEMATRIX1 = 0x400 ,
  MASK_INSTANCEMATRIX2 = 0x800 , MASK_INSTANCEMATRIX3 = 0x1000 , MASK_OBJECTINDEX = 0x2000
}
 

Functions

 Urho3D::URHO3D_FLAGSET (ClearTarget, ClearTargetFlags)
 
 Urho3D::URHO3D_FLAGSET (VertexMask, VertexMaskFlags)
 

Variables

URHO3D_API const StringHash Urho3D::VSP_AMBIENTSTARTCOLOR
 
URHO3D_API const StringHash Urho3D::VSP_AMBIENTENDCOLOR
 
URHO3D_API const StringHash Urho3D::VSP_BILLBOARDROT
 
URHO3D_API const StringHash Urho3D::VSP_CAMERAPOS
 
URHO3D_API const StringHash Urho3D::VSP_CLIPPLANE
 
URHO3D_API const StringHash Urho3D::VSP_NEARCLIP
 
URHO3D_API const StringHash Urho3D::VSP_FARCLIP
 
URHO3D_API const StringHash Urho3D::VSP_DEPTHMODE
 
URHO3D_API const StringHash Urho3D::VSP_DELTATIME
 
URHO3D_API const StringHash Urho3D::VSP_ELAPSEDTIME
 
URHO3D_API const StringHash Urho3D::VSP_FRUSTUMSIZE
 
URHO3D_API const StringHash Urho3D::VSP_GBUFFEROFFSETS
 
URHO3D_API const StringHash Urho3D::VSP_LIGHTDIR
 
URHO3D_API const StringHash Urho3D::VSP_LIGHTPOS
 
URHO3D_API const StringHash Urho3D::VSP_NORMALOFFSETSCALE
 
URHO3D_API const StringHash Urho3D::VSP_MODEL
 
URHO3D_API const StringHash Urho3D::VSP_VIEW
 
URHO3D_API const StringHash Urho3D::VSP_VIEWINV
 
URHO3D_API const StringHash Urho3D::VSP_VIEWPROJ
 
URHO3D_API const StringHash Urho3D::VSP_UOFFSET
 
URHO3D_API const StringHash Urho3D::VSP_VOFFSET
 
URHO3D_API const StringHash Urho3D::VSP_ZONE
 
URHO3D_API const StringHash Urho3D::VSP_LIGHTMATRICES
 
URHO3D_API const StringHash Urho3D::VSP_SKINMATRICES
 
URHO3D_API const StringHash Urho3D::VSP_VERTEXLIGHTS
 
URHO3D_API const StringHash Urho3D::PSP_AMBIENTCOLOR
 
URHO3D_API const StringHash Urho3D::PSP_CAMERAPOS
 
URHO3D_API const StringHash Urho3D::PSP_DELTATIME
 
URHO3D_API const StringHash Urho3D::PSP_DEPTHRECONSTRUCT
 
URHO3D_API const StringHash Urho3D::PSP_ELAPSEDTIME
 
URHO3D_API const StringHash Urho3D::PSP_FOGCOLOR
 
URHO3D_API const StringHash Urho3D::PSP_FOGPARAMS
 
URHO3D_API const StringHash Urho3D::PSP_GBUFFERINVSIZE
 
URHO3D_API const StringHash Urho3D::PSP_LIGHTCOLOR
 
URHO3D_API const StringHash Urho3D::PSP_LIGHTDIR
 
URHO3D_API const StringHash Urho3D::PSP_LIGHTPOS
 
URHO3D_API const StringHash Urho3D::PSP_NORMALOFFSETSCALE
 
URHO3D_API const StringHash Urho3D::PSP_MATDIFFCOLOR
 
URHO3D_API const StringHash Urho3D::PSP_MATEMISSIVECOLOR
 
URHO3D_API const StringHash Urho3D::PSP_MATENVMAPCOLOR
 
URHO3D_API const StringHash Urho3D::PSP_MATSPECCOLOR
 
URHO3D_API const StringHash Urho3D::PSP_NEARCLIP
 
URHO3D_API const StringHash Urho3D::PSP_FARCLIP
 
URHO3D_API const StringHash Urho3D::PSP_SHADOWCUBEADJUST
 
URHO3D_API const StringHash Urho3D::PSP_SHADOWDEPTHFADE
 
URHO3D_API const StringHash Urho3D::PSP_SHADOWINTENSITY
 
URHO3D_API const StringHash Urho3D::PSP_SHADOWMAPINVSIZE
 
URHO3D_API const StringHash Urho3D::PSP_SHADOWSPLITS
 
URHO3D_API const StringHash Urho3D::PSP_LIGHTMATRICES
 
URHO3D_API const StringHash Urho3D::PSP_VSMSHADOWPARAMS
 
URHO3D_API const StringHash Urho3D::PSP_ROUGHNESS
 
URHO3D_API const StringHash Urho3D::PSP_METALLIC
 
URHO3D_API const StringHash Urho3D::PSP_LIGHTRAD
 
URHO3D_API const StringHash Urho3D::PSP_LIGHTLENGTH
 
URHO3D_API const StringHash Urho3D::PSP_ZONEMIN
 
URHO3D_API const StringHash Urho3D::PSP_ZONEMAX
 
URHO3D_API const Vector3 Urho3D::DOT_SCALE
 
static const int Urho3D::MAX_RENDERTARGETS = 4
 
static const int Urho3D::MAX_VERTEX_STREAMS = 4
 
static const int Urho3D::MAX_CONSTANT_REGISTERS = 256
 
static const int Urho3D::BITS_PER_COMPONENT = 8
 

Enumeration Type Documentation

◆ TextureUnit

Texture units.