DGLE2   Young, strong and crazy!
Classes | Typedefs | Enumerations | Functions | Variables
DGLE Namespace Reference

Engines main namespace. More...

Classes

class  IDGLE_Base
 Engine base fundamental interface. More...
 
class  IEngineSubSystem
 Base interface of any engine subsystem. More...
 
class  IPlugin
 Base interface of any engine plugin. More...
 
class  ISubSystemPlugin
 Base interface of any engine core subsystem plugin. More...
 
class  IEngineBaseObject
 Base interface of any engine object. More...
 
class  IBaseEvent
 Base interface of any engine event. More...
 
class  IEvBeforeInitialization
 Event occurs just before engine will call its initialization routines. More...
 
class  IEvConsoleWrite
 Event occurs when some text is being added to the engine console. More...
 
class  IEvFatalMessage
 Event occurs on engine fatal error. More...
 
class  IEvWindowMessage
 Event occurs every time when window receives message. More...
 
class  IEvGetSubSystem
 Event occurs when someone calls IEngineCore::GetSubSystem method. More...
 
class  IEvGoFullScreen
 Event occurs when engine is going fullscreen or go back to windowed mode from fullscreen mode. More...
 
class  IEngineCallback
 
class  IEngineCore
 Main engine interface. More...
 
class  IResourceManager
 
class  IRender
 
class  IRender2D
 
class  IRender3D
 
class  ILight
 
class  ITexture
 
class  IMaterial
 
class  IBitmapFont
 
class  IMesh
 
class  IModel
 
class  IInput
 
class  ISound
 
class  ISoundChannel
 
class  ISoundSample
 
class  IMusic
 
class  IMainFileSystem
 
class  IFile
 
class  IFileIterator
 
class  IFileSystem
 
struct  TBlendStateDesc
 
struct  TDepthStencilDesc
 
struct  TRasterizerStateDesc
 
struct  TDrawDataAttributes
 
struct  TDrawDataDesc
 
class  IBaseRenderObjectContainer
 
class  ICoreTexture
 
class  ICoreGeometryBuffer
 
class  ICoreRenderer
 
class  IFixedFunctionPipeline
 
struct  TVariant
 
struct  TWindowMessage
 Structure with window event message information. More...
 
struct  TEngineWindow
 Describes the parameters of the main engine window and its behavior. More...
 
struct  TSystemInfo
 Describes user hardware and operating system. More...
 
struct  TPluginInfo
 Describes engine plugin information. More...
 
struct  TColor4
 Describes color in engine. More...
 
struct  TPoint2
 Describes point coordinates in 2D space. More...
 
struct  TPoint3
 Describes point coordinates in 3D space. More...
 
struct  TVertex2
 Describes graphical point coordinates, color and its texture coordinates in 2D space. More...
 
struct  TRectF
 Describes 2D rectangle by float values. More...
 
struct  TMatrix4x4
 Describes 4x4 matrix and some math routines used in 3D graphics computes. More...
 
class  TTransformStack
 Template for multiplication stacks. More...
 
struct  TMouseStates
 Describes the state of the mouse. More...
 
struct  TKeyboardStates
 Describes the state of the keyboard. More...
 
struct  TJoystickStates
 Describes the state of the joystick or gamepad. More...
 

Typedefs

typedef short int int16
 
typedef long int int32
 
typedef signed char int8
 
typedef wchar_t wchar
 
typedef unsigned int uint
 
typedef unsigned short int uint16
 
typedef unsigned long int uint32
 
typedef unsigned char uint8
 
typedef uint8 uchar
 
typedef signed long long int64
 
typedef unsigned long long uint64
 
typedef TColor4 TColor
 
typedef TPoint2 TVec2
 
typedef TPoint2 TVector2
 
typedef TPoint3 TVec3
 
typedef TPoint3 TVector3
 
typedef TMatrix4x4 TMat4
 
typedef TMatrix4x4 TMatrix4
 
typedef TTransformStack
< TMatrix4x4
TMatrix4x4Stack
 Stack of matrix 4x4 multiplication operations.
 

Enumerations

enum  E_ENGINE_SUB_SYSTEM {
  ESS_RENDER = 0, ESS_INPUT, ESS_SOUND, ESS_RESOURCE_MANAGER,
  ESS_FILE_SYSTEM, ESS_CORE_RENDERER
}
 Engine subsystems types. More...
 
enum  E_ENGINE_OBJECT_TYPE {
  EOT_UNKNOWN = 0, EOT_TEXTURE, EOT_MATERIAL, EOT_LIGHT,
  EOT_MESH, EOT_MODEL, EOT_BITMAP_FONT, EOT_SOUND_SAMPLE,
  EOT_MUSIC, EOT_EMPTY
}
 Types of engine objects. More...
 
enum  E_EVENT_TYPE {
  ET_UNKNOWN = 0, ET_BEFORE_INITIALIZATION, ET_BEFORE_RENDER, ET_AFTER_RENDER,
  ET_ON_PROFILER_DRAW, ET_ON_WINDOW_MESSAGE, ET_ON_GET_SUBSYSTEM, ET_ON_ENGINE_FATAL_MESSAGE,
  ET_ON_CONSOLE_WRITE, ET_ON_FULLSCREEN, ET_ON_PER_SECOND_TIMER
}
 Types of engine events. More...
 
enum  E_ENGINE_PROCEDURE_TYPE { EPT_UPDATE = 0, EPT_RENDER, EPT_INIT, EPT_FREE }
 Type of engine callbacks. More...
 
enum  E_LOG_TYPE { LT_INFO = 0, LT_WARNING, LT_ERROR, LT_FATAL }
 Type of engine log message. More...
 
enum  E_TEXTURE_DATA_FORMAT {
  TDF_RGB8 = 0, TDF_RGBA8, TDF_ALPHA8, TDF_BGR8,
  TDF_BGRA8, TDF_DXT1, TDF_DXT5, TDF_DEPTH_COMPONENT24,
  TDF_DEPTH_COMPONENT32
}
 
enum  E_TEXTURE_CREATE_FLAGS { TCF_DEFAULT = 0x00000000, TCF_PIXEL_ALIGNMENT_1 = 0x00000001, TCF_MIPMAPS_PRESENTED = 0x00000002 }
 
enum  E_TEXTURE_LOAD_FLAGS {
  TLF_FILTERING_NONE = 0x00000001, TLF_FILTERING_BILINEAR = 0x00000002, TLF_FILTERING_TRILINEAR = 0x00000004, TLF_FILTERING_ANISOTROPIC = 0x00000008,
  TLF_DECREASE_QUALITY_MEDIUM = 0x00000020, TLF_DECREASE_QUALITY_HIGH = 0x00000040, TLF_COMPRESS = 0x00000100, TLF_COORDS_REPEAT = 0x00001000,
  TLF_COORDS_CLAMP = 0x00002000, TLF_COORDS_MIRROR_REPEAT = 0x00004000, TLF_COORDS_MIRROR_CLAMP = 0x00008000, TLF_GENERATE_MIPMAPS = 0x00040000,
  TLF_ANISOTROPY_2X = 0x00100000, TLF_ANISOTROPY_4X = 0x00200000, TLF_ANISOTROPY_8X = 0x00400000, TLF_ANISOTROPY_16X = 0x00800000
}
 
enum  E_BITMAP_FONT_LOAD_FLAGS { BFLF_FILTERING_NONE = 0x00000001, BFLF_GENERATE_MIPMAPS = 0x00000002, BFLF_FORCE_ALPHA_TEST_2D = 0x00000004 }
 
enum  E_MESH_CREATE_FLAGS {
  MCF_ONLY_DEFAULT_DATA = 0x00000000, MCF_NORMALS_PRESENTED = 0x00000001, MCF_TEXTURE_COORDS_PRESENTED = 0x00000002, MCF_TANGENT_SPACE_PRESENTED = 0x00000004,
  MCF_VERTEX_DATA_INTERLEAVED = 0x00000008
}
 
enum  E_MESH_MODEL_LOAD_FLAGS { MMLF_FORCE_SOFTWARE_BUFFER = 0x00000001, MMLF_DYNAMIC_BUFFER = 0x00000002, MMLF_FORCE_MODEL_TO_MESH = 0x00000004 }
 
enum  E_SOUND_SAMPLE_LOAD_FLAGS { SSLF_LOAD_AS_MUSIC = 0x00000001 }
 
enum  E_GET_POINT3_MODE { GP3M_FROM_DEPTH_BUFFER = 0, GP3M_FROM_FAR_PLANE, GP3M_FROM_NEAR_PLANE }
 
enum  E_BLENDING_EFFECT {
  BE_NORMAL = 0, BE_ADD, BE_MULT, BE_BLACK,
  BE_WHITE, BE_MASK
}
 
enum  E_PRIMITIVE2D_FLAGS { PF_DEFAULT = 0x00000000, PF_LINE = 0x00000000, PF_FILL = 0x00000001, PF_VERTICES_COLORS = 0x00000002 }
 
enum  E_EFFECT2D_FLAGS {
  EF_DEFAULT = 0x00000000, EF_NONE = 0x00000001, EF_ALPHA_TEST = 0x00000002, EF_BLEND = 0x00000004,
  EF_FLIP_HORIZONTALLY = 0x00000008, EF_FLIP_VERTICALLY = 0x00000010, EF_COLOR_MIX = 0x00000020, EF_SCALE = 0x00000040,
  EF_VERTICES_OFFSETS = 0x00000080, EF_VERTICES_COLORS = 0x00000100, EF_ROTATION_POINT = 0x00000200, EF_TILE_TEXTURE = 0x00000400
}
 
enum  E_BATCH_MODE2D { BM_AUTO = 0, BM_DISABLED, BM_ENABLED_UPDATE_EVERY_TICK, BM_ENABLED_UPDATE_EVERY_FRAME }
 
enum  E_LIGHT_TYPE { LT_DIRECTIONAL = 0, LT_POINT, LT_SPOT }
 
enum  E_INPUT_CONFIGURATION_FLAGS { ICF_DEFAULT = 0x00000000, ICF_EXCLUSIVE = 0x00000001, ICF_HIDE_CURSOR = 0x00000002, ICF_CURSOR_BEYOND_SCREEN = 0x00000004 }
 
enum  E_SOUND_SAMPLE_PARAMS { SSP_NONE = 0x00000000, SSP_LOOPED = 0x00000001 }
 
enum  E_FIND_FLAGS { FF_RECURSIVE = 1 }
 
enum  E_FILE_SYSTEM_OPEN_FLAGS { FSOF_READ = 0x00000001, FSOF_WRITE = 0x00000002, FSOF_TRUNC = 0x00000004, FSOF_BINARY = 0x00000008 }
 
enum  E_FILE_SYSTEM_SEEK_FLAG { FSSF_BEGIN = 0, FSSF_CURRENT, FSSF_END }
 
enum  E_GET_ENGINE_FLAGS { GEF_DEFAULT = 0x00000000, GEF_FORCE_SINGLE_THREAD = 0x00000001, GEF_FORCE_NO_LOG_FILE = 0x00000002, GEF_FORCE_QUIT = 0x00000004 }
 
enum  E_CORE_RENDERER_TYPE { CRT_UNKNOWN = 0, CRT_OPENGL_LEGACY }
 
enum  E_CORE_RENDERER_FEATURE_TYPE {
  CRFT_BUILTIN_FULLSCREEN_MODE = 0, CRFT_BUILTIN_STATE_FILTER, CRFT_MULTISAMPLING, CRFT_VSYNC,
  CRFT_PROGRAMMABLE_PIPELINE, CRFT_LEGACY_FIXED_FUNCTION_PIPELINE_API, CRFT_BGRA_DATA_FORMAT, CRFT_TEXTURE_COMPRESSION,
  CRFT_NON_POWER_OF_TWO_TEXTURES, CRFT_DEPTH_TEXTURES, CRFT_TEXTURE_ANISOTROPY, CRFT_TEXTURE_MIPMAP_GENERATION,
  CRFT_TEXTURE_MIRRORED_REPEAT, CRFT_TEXTURE_MIRROR_CLAMP, CRFT_GEOMETRY_BUFFER, CRFT_FRAME_BUFFER
}
 
enum  E_MATRIX_TYPE { MT_PROJECTION = 0, MT_MODELVIEW, MT_TEXTURE }
 
enum  E_TEXTURE_TYPE { TT_2D = 0, TT_3D }
 
enum  E_CORE_RENDERER_METRIC_TYPE { CRMT_MAX_TEXTURE_RESOLUTION = 0, CRMT_MAX_TEXTURE_LAYERS, CRMT_MAX_ANISOTROPY_LEVEL }
 
enum  E_COMPARISON_FUNC {
  CF_NEVER = 0, CF_LESS, CF_EQUAL, CF_LESS_EQUAL,
  CF_GREATER, CF_NOT_EQUAL, CF_GREATER_EQUAL, CF_ALWAYS
}
 
enum  E_POLYGON_CULL_MODE { PCM_NONE = 0, PCM_FRONT, PCM_BACK }
 
enum  E_BLEND_FACTOR {
  BF_ZERO = 0, BF_ONE, BF_SRC_COLOR, BF_SRC_ALPHA,
  BF_DST_COLOR, BF_DST_ALPHA, BF_ONE_MINUS_SRC_COLOR, BF_ONE_MINUS_SRC_ALPHA
}
 
enum  E_CORE_RENDERER_DATA_ALIGNMENT { CRDA_ALIGNED_BY_4 = 0, CRDA_ALIGNED_BY_1 }
 
enum  E_CORE_RENDERER_BUFFER_TYPE { CRBT_SOFTWARE = 0, CRBT_HARDWARE_STATIC, CRBT_HARDWARE_DYNAMIC }
 
enum  E_ATTRIBUTE_DATA_TYPE {
  ADT_FLOAT = 0, ADT_BYTE, ADT_UBYTE, ADT_SHORT,
  ADT_USHORT, ADT_INT, ADT_UINT
}
 
enum  E_ATTRIBUTE_COMPONENTS_COUNT { ACC_ONE = 0, ACC_TWO, ACC_THREE, ACC_FOUR }
 
enum  E_DGLE_VARIANT_TYPE {
  DVT_UNKNOWN = 0, DVT_INT, DVT_FLOAT, DVT_BOOL,
  DVT_POINTER, DVT_DATA
}
 
enum  E_WINDOW_MESSAGE_TYPE {
  WMT_UNKNOWN = 0, WMT_REDRAW, WMT_PRESENT, WMT_CLOSE,
  WMT_CREATE, WMT_DESTROY, WMT_RELEASED, WMT_ACTIVATED,
  WMT_DEACTIVATED, WMT_MINIMIZED, WMT_RESTORED, WMT_MOVE,
  WMT_SIZE, WMT_KEY_UP, WMT_KEY_DOWN, WMT_ENTER_CHAR,
  WMT_MOUSE_LEAVE, WMT_MOUSE_MOVE, WMT_MOUSE_DOWN, WMT_MOUSE_UP,
  WMT_MOUSE_WHEEL
}
 Flags of TWindowMessage structure that determines type of the message. More...
 
enum  E_ENGINE_WINDOW_FLAGS {
  EWF_DEFAULT = 0x00000000, EWF_ALLOW_SIZEING = 0x00000001, EWF_TOPMOST = 0x00000002, EWF_DONT_HOOK_MAIN_LOOP = 0x00000004,
  EWF_DONT_HOOK_ROOT_WINDOW = 0x00000008, EWF_RESTRICT_FULLSCREEN_HOTKEY = 0x00000010, EWF_RESTRICT_CONSOLE_HOTKEY = 0x00000020
}
 Flags of TEngineWindow structure that determines the behavior of main engine window. More...
 
enum  E_MULTISAMPLING_MODE {
  MM_NONE = 0x00000000, MM_2X = 0x00000001, MM_4X = 0x00000002, MM_8X = 0x00000004,
  MM_16X = 0x00000008
}
 Flags of TEngineWindow structure that determines antialiasing samples count. More...
 
enum  E_KEYBOARD_KEY_CODES {
  KEY_ESCAPE = 0x01, KEY_TAB = 0x0F, KEY_GRAVE = 0x29, KEY_CAPSLOCK = 0x3A,
  KEY_BACKSPACE = 0x0E, KEY_RETURN = 0x1C, KEY_SPACE = 0x39, KEY_SLASH = 0x35,
  KEY_BACKSLASH = 0x2B, KEY_SYSRQ = 0xB7, KEY_SCROLL = 0x46, KEY_PAUSE = 0xC5,
  KEY_INSERT = 0xD2, KEY_DELETE = 0xD3, KEY_HOME = 0xC7, KEY_END = 0xCF,
  KEY_PGUP = 0xC9, KEY_PGDN = 0xD1, KEY_LSHIFT = 0x2A, KEY_RSHIFT = 0x36,
  KEY_LALT = 0x38, KEY_RALT = 0xB8, KEY_LWIN_OR_CMD = 0xDB, KEY_RWIN_OR_CMD = 0xDC,
  KEY_LCONTROL = 0x1D, KEY_RCONTROL = 0x9D, KEY_UP = 0xC8, KEY_RIGHT = 0xCD,
  KEY_LEFT = 0xCB, KEY_DOWN = 0xD0, KEY_1 = 0x02, KEY_2 = 0x03,
  KEY_3 = 0x04, KEY_4 = 0x05, KEY_5 = 0x06, KEY_6 = 0x07,
  KEY_7 = 0x08, KEY_8 = 0x09, KEY_9 = 0x0A, KEY_0 = 0x0B,
  KEY_F1 = 0x3B, KEY_F2 = 0x3C, KEY_F3 = 0x3D, KEY_F4 = 0x3E,
  KEY_F5 = 0x3F, KEY_F6 = 0x40, KEY_F7 = 0x41, KEY_F8 = 0x42,
  KEY_F9 = 0x43, KEY_F10 = 0x44, KEY_F11 = 0x57, KEY_F12 = 0x58,
  KEY_Q = 0x10, KEY_W = 0x11, KEY_E = 0x12, KEY_R = 0x13,
  KEY_T = 0x14, KEY_Y = 0x15, KEY_U = 0x16, KEY_I = 0x17,
  KEY_O = 0x18, KEY_P = 0x19, KEY_A = 0x1E, KEY_S = 0x1F,
  KEY_D = 0x20, KEY_F = 0x21, KEY_G = 0x22, KEY_H = 0x23,
  KEY_J = 0x24, KEY_K = 0x25, KEY_L = 0x26, KEY_Z = 0x2C,
  KEY_X = 0x2D, KEY_C = 0x2E, KEY_V = 0x2F, KEY_B = 0x30,
  KEY_N = 0x31, KEY_M = 0x32, KEY_MINUS = 0x0C, KEY_PLUS = 0x0D,
  KEY_LBRACKET = 0x1A, KEY_RBRACKET = 0x1B, KEY_SEMICOLON = 0x27, KEY_APOSTROPHE = 0x28,
  KEY_COMMA = 0x33, KEY_PERIOD = 0x34, KEY_NUMPAD0 = 0x52, KEY_NUMPAD1 = 0x4F,
  KEY_NUMPAD2 = 0x50, KEY_NUMPAD3 = 0x51, KEY_NUMPAD4 = 0x4B, KEY_NUMPAD5 = 0x4C,
  KEY_NUMPAD6 = 0x4D, KEY_NUMPAD7 = 0x47, KEY_NUMPAD8 = 0x48, KEY_NUMPAD9 = 0x49,
  KEY_NUMPADPERIOD = 0x53, KEY_NUMPADENTER = 0x9C, KEY_NUMPADSTAR = 0x37, KEY_NUMPADPLUS = 0x4E,
  KEY_NUMPADMINUS = 0x4A, KEY_NUMPADSLASH = 0xB5, KEY_NUMLOCK = 0x45
}
 Describes all keyboard key codes. More...
 

Functions

enum ENUM_FORWARD_DECLARATION (E_ENGINE_INIT_FLAGS)
 Engine initialization flags.
 
enum ENUM_FORWARD_DECLARATION (E_CORE_RENDERER_DRAW_MODE)
 
float signf (float f)
 
TColor4 ColorClear ()
 
TColor4 ColorWhite (uint8 alpha=255)
 
TColor4 ColorBlack (uint8 alpha=255)
 
TColor4 ColorRed (uint8 alpha=255)
 
TColor4 ColorGreen (uint8 alpha=255)
 
TColor4 ColorBlue (uint8 alpha=255)
 
TColor4 ColorAqua (uint8 alpha=255)
 
TColor4 ColorBrown (uint8 alpha=255)
 
TColor4 ColorCyan (uint8 alpha=255)
 
TColor4 ColorFuchsia (uint8 alpha=255)
 
TColor4 ColorGray (uint8 alpha=255)
 
TColor4 ColorGrey (uint8 alpha=255)
 
TColor4 ColorMagenta (uint8 alpha=255)
 
TColor4 ColorMaroon (uint8 alpha=255)
 
TColor4 ColorNavy (uint8 alpha=255)
 
TColor4 ColorOlive (uint8 alpha=255)
 
TColor4 ColorOrange (uint8 alpha=255)
 
TColor4 ColorPink (uint8 alpha=255)
 
TColor4 ColorPurple (uint8 alpha=255)
 
TColor4 ColorSilver (uint8 alpha=255)
 
TColor4 ColorTeal (uint8 alpha=255)
 
TColor4 ColorViolet (uint8 alpha=255)
 
TColor4 ColorYellow (uint8 alpha=255)
 
TColor4 ColorOfficialOrange (uint8 alpha=255)
 
TColor4 ColorOfficialBlack (uint8 alpha=255)
 
TMatrix4x4 MatrixIdentity ()
 Returns identity matrix.
 
TMatrix4x4 MatrixInverse (const TMatrix4x4 &stMatrix)
 Returns inverse matrix.
 
TMatrix4x4 MatrixTranspose (const TMatrix4x4 &stMatrix)
 Returns transpose matrix.
 
TMatrix4x4 MatrixScale (const TVector3 &stVec)
 Returns scaled matrix by a given vector.
 
TMatrix4x4 MatrixTranslate (const TVector3 &stVec)
 Returns translated matrix by a given vector.
 
TMatrix4x4 MatrixRotate (float fAngle, const TVector3 &stAxis)
 Returns rotated matrix by a given axis vector and angle.
 
TMatrix4x4 MatrixBillboard (const TMatrix4x4 &stMatrix)
 Returns billboarded matrix.
 

Variables

const uint TEXTURE_LOAD_DEFAULT_2D = (uint)(TLF_FILTERING_BILINEAR | TLF_COORDS_CLAMP)
 
const uint TEXTURE_LOAD_DEFAULT_3D = (uint)(TLF_FILTERING_TRILINEAR | TLF_GENERATE_MIPMAPS | TLF_COORDS_REPEAT)
 
const uint RES_LOAD_DEFAULT = 0x00000000
 

Detailed Description

Engines main namespace.

Typedef Documentation

typedef short int int16
typedef long int int32
typedef signed long long int64
typedef signed char int8
typedef TColor4 TColor
typedef TMatrix4x4 TMat4

Stack of matrix 4x4 multiplication operations.

typedef TPoint2 TVec2
typedef TPoint3 TVec3
typedef TPoint2 TVector2
typedef TPoint3 TVector3
typedef uint8 uchar
typedef unsigned int uint
typedef unsigned short int uint16
typedef unsigned long int uint32
typedef unsigned long long uint64
typedef unsigned char uint8
typedef wchar_t wchar

Enumeration Type Documentation

Enumerator:
ACC_ONE 
ACC_TWO 
ACC_THREE 
ACC_FOUR 
Enumerator:
ADT_FLOAT 
ADT_BYTE 
ADT_UBYTE 
ADT_SHORT 
ADT_USHORT 
ADT_INT 
ADT_UINT 
Enumerator:
BM_AUTO 
BM_DISABLED 
BM_ENABLED_UPDATE_EVERY_TICK 
BM_ENABLED_UPDATE_EVERY_FRAME 
Enumerator:
BFLF_FILTERING_NONE 
BFLF_GENERATE_MIPMAPS 
BFLF_FORCE_ALPHA_TEST_2D 
Enumerator:
BF_ZERO 
BF_ONE 
BF_SRC_COLOR 
BF_SRC_ALPHA 
BF_DST_COLOR 
BF_DST_ALPHA 
BF_ONE_MINUS_SRC_COLOR 
BF_ONE_MINUS_SRC_ALPHA 
Enumerator:
BE_NORMAL 
BE_ADD 
BE_MULT 
BE_BLACK 
BE_WHITE 
BE_MASK 
Enumerator:
CF_NEVER 
CF_LESS 
CF_EQUAL 
CF_LESS_EQUAL 
CF_GREATER 
CF_NOT_EQUAL 
CF_GREATER_EQUAL 
CF_ALWAYS 
Enumerator:
CRBT_SOFTWARE 
CRBT_HARDWARE_STATIC 
CRBT_HARDWARE_DYNAMIC 
Enumerator:
CRDA_ALIGNED_BY_4 
CRDA_ALIGNED_BY_1 
Enumerator:
CRFT_BUILTIN_FULLSCREEN_MODE 
CRFT_BUILTIN_STATE_FILTER 
CRFT_MULTISAMPLING 
CRFT_VSYNC 
CRFT_PROGRAMMABLE_PIPELINE 
CRFT_LEGACY_FIXED_FUNCTION_PIPELINE_API 
CRFT_BGRA_DATA_FORMAT 
CRFT_TEXTURE_COMPRESSION 
CRFT_NON_POWER_OF_TWO_TEXTURES 
CRFT_DEPTH_TEXTURES 
CRFT_TEXTURE_ANISOTROPY 
CRFT_TEXTURE_MIPMAP_GENERATION 
CRFT_TEXTURE_MIRRORED_REPEAT 
CRFT_TEXTURE_MIRROR_CLAMP 
CRFT_GEOMETRY_BUFFER 
CRFT_FRAME_BUFFER 
Enumerator:
CRMT_MAX_TEXTURE_RESOLUTION 
CRMT_MAX_TEXTURE_LAYERS 
CRMT_MAX_ANISOTROPY_LEVEL 
Enumerator:
CRT_UNKNOWN 
CRT_OPENGL_LEGACY 
Enumerator:
DVT_UNKNOWN 
DVT_INT 
DVT_FLOAT 
DVT_BOOL 
DVT_POINTER 
DVT_DATA 
Enumerator:
EF_DEFAULT 
EF_NONE 
EF_ALPHA_TEST 
EF_BLEND 
EF_FLIP_HORIZONTALLY 
EF_FLIP_VERTICALLY 
EF_COLOR_MIX 
EF_SCALE 
EF_VERTICES_OFFSETS 
EF_VERTICES_COLORS 
EF_ROTATION_POINT 
EF_TILE_TEXTURE 

Types of engine objects.

Enumerator:
EOT_UNKNOWN 

Undefined or custom object type.

EOT_TEXTURE 

Texture represents any basic raster data.

See Also
ITexture
EOT_MATERIAL 

Material is a combination of textures, colors and other settings of how 3D object will be rendered in scene.

See Also
IMaterial
EOT_LIGHT 

Light is source of lighting for 3D.

See Also
ILight
EOT_MESH 

Mesh is an atomic basic geometry unit.

See Also
IMesh
EOT_MODEL 

Model is a composition of meshes with materials.

Could contain animation and levels of detail.

See Also
IModel
EOT_BITMAP_FONT 

Bitmap font is a simple 2D raster font for common purpose.

See Also
IBitmapFont
EOT_SOUND_SAMPLE 

Sound sample is a container of sound wave which could be streamed to sound device.

See Also
ISoundSample
EOT_MUSIC 

Music is some kind of large streamable sound sample with runtime hardware decoding.

See Also
IMusic
EOT_EMPTY 

For empty or dummy objects.

Note
This enum must be always last in the list.

Type of engine callbacks.

IEngineCore can register callbacks of these types.

See Also
IEngineCore::AddProcedure, IEngineCore::RemoveProcedure
Enumerator:
EPT_UPDATE 

Procedure is called periodically(like on timer event).

Interval of calling is set on engine initialization. In this procedure you should do any application computes.

See Also
IEngineCore::InitializeEngine
EPT_RENDER 

Procedure is called when engine decides to draw new frame.

In this procedure you can call any rendering routines.

EPT_INIT 

Procedure is called before engine will start its main loop.

In this procedure you should load all resources needed by your application.

EPT_FREE 

Procedure is called before engine quits.

In this procedure you should release all resources and free memory.

Engine subsystems types.

Enumerator:
ESS_RENDER 

Main rendering subsystem.

See Also
IRender
ESS_INPUT 

Input subsystem.

See Also
IInput
ESS_SOUND 

Sound subsystem.

See Also
ISound
ESS_RESOURCE_MANAGER 

Resource manager subsystem.

See Also
IResourceManager
ESS_FILE_SYSTEM 

Main file system(manager of virtual file systems).

See Also
IMainFileSystem
ESS_CORE_RENDERER 

Low-level base rendering interface.

See Also
ICoreRenderer

Flags of TEngineWindow structure that determines the behavior of main engine window.

Enumerator:
EWF_DEFAULT 

This flag is suitable in most cases.

EWF_ALLOW_SIZEING 

User can resize engine window arbitrarily.

EWF_TOPMOST 

Engine window will be always on top.

EWF_DONT_HOOK_MAIN_LOOP 

If flag set and engine doesn't owns window, host applications main loop will not be hooked.

User must call window repaint manually.

EWF_DONT_HOOK_ROOT_WINDOW 

If flag set and engine doesn't owns window, main host application window will not be hooked.

User must redirect windows messages manually.

EWF_RESTRICT_FULLSCREEN_HOTKEY 

Switching between fullscreen and windowed modes by pressing platform specific hotkey combination will be restricted.

EWF_RESTRICT_CONSOLE_HOTKEY 

Restricts calling engine console window by pressing "~" or "" key.

Types of engine events.

See Also
IBaseEvent
Enumerator:
ET_UNKNOWN 

Undefined or custom event type.

ET_BEFORE_INITIALIZATION 

Event occurs just before engine will call its initialization routines.

See Also
IEvBeforeInitialization
ET_BEFORE_RENDER 

Event occurs before every frame.

ET_AFTER_RENDER 

Event occurs after every frame.

ET_ON_PROFILER_DRAW 

It is a special event on which you can render some text information on screen.

Note
If you want to output some statistic or profiling information use this event and special RenderProfilerText method.
See Also
IEngineCore::RenderProfilerText
ET_ON_WINDOW_MESSAGE 

Event occurs every time when window receives message.

Use this event to hook engine window messages.

See Also
IEvWindowMessage
ET_ON_GET_SUBSYSTEM 

Event occurs when someone calls IEngineCore::GetSubSystem method and you can substitute any subsystem by your own realization.

See Also
IEvGetSubSystem
ET_ON_ENGINE_FATAL_MESSAGE 

Event occurs on engine fatal error.

See Also
IEvFatalMessage
ET_ON_CONSOLE_WRITE 

Event occurs when some text is being outputted to the engine console.

See Also
IEvConsoleWrite
ET_ON_FULLSCREEN 

Event occurs when engine is switching to fullscreen mode or back to windowed from fullscreen.

See Also
IEvGoFullScreen
ET_ON_PER_SECOND_TIMER 

Event occurs every second, just before engine recalculates its current per second metrics.

Enumerator:
FSOF_READ 
FSOF_WRITE 
FSOF_TRUNC 
FSOF_BINARY 
Enumerator:
FSSF_BEGIN 
FSSF_CURRENT 
FSSF_END 
Enumerator:
FF_RECURSIVE 
Enumerator:
GEF_DEFAULT 
GEF_FORCE_SINGLE_THREAD 
GEF_FORCE_NO_LOG_FILE 
GEF_FORCE_QUIT 
Enumerator:
GP3M_FROM_DEPTH_BUFFER 
GP3M_FROM_FAR_PLANE 
GP3M_FROM_NEAR_PLANE 
Enumerator:
ICF_DEFAULT 
ICF_EXCLUSIVE 
ICF_HIDE_CURSOR 
ICF_CURSOR_BEYOND_SCREEN 

Describes all keyboard key codes.

Warning
This is not common ASCII key codes!
See Also
IInput
Enumerator:
KEY_ESCAPE 
KEY_TAB 
KEY_GRAVE 
KEY_CAPSLOCK 
KEY_BACKSPACE 
KEY_RETURN 
KEY_SPACE 
KEY_SLASH 
KEY_BACKSLASH 
KEY_SYSRQ 
KEY_SCROLL 
KEY_PAUSE 
KEY_INSERT 
KEY_DELETE 
KEY_HOME 
KEY_END 
KEY_PGUP 
KEY_PGDN 
KEY_LSHIFT 
KEY_RSHIFT 
KEY_LALT 
KEY_RALT 
KEY_LWIN_OR_CMD 
KEY_RWIN_OR_CMD 
KEY_LCONTROL 
KEY_RCONTROL 
KEY_UP 
KEY_RIGHT 
KEY_LEFT 
KEY_DOWN 
KEY_1 
KEY_2 
KEY_3 
KEY_4 
KEY_5 
KEY_6 
KEY_7 
KEY_8 
KEY_9 
KEY_0 
KEY_F1 
KEY_F2 
KEY_F3 
KEY_F4 
KEY_F5 
KEY_F6 
KEY_F7 
KEY_F8 
KEY_F9 
KEY_F10 
KEY_F11 
KEY_F12 
KEY_Q 
KEY_W 
KEY_E 
KEY_R 
KEY_T 
KEY_Y 
KEY_U 
KEY_I 
KEY_O 
KEY_P 
KEY_A 
KEY_S 
KEY_D 
KEY_F 
KEY_G 
KEY_H 
KEY_J 
KEY_K 
KEY_L 
KEY_Z 
KEY_X 
KEY_C 
KEY_V 
KEY_B 
KEY_N 
KEY_M 
KEY_MINUS 
KEY_PLUS 
KEY_LBRACKET 
KEY_RBRACKET 
KEY_SEMICOLON 
KEY_APOSTROPHE 
KEY_COMMA 
KEY_PERIOD 
KEY_NUMPAD0 
KEY_NUMPAD1 
KEY_NUMPAD2 
KEY_NUMPAD3 
KEY_NUMPAD4 
KEY_NUMPAD5 
KEY_NUMPAD6 
KEY_NUMPAD7 
KEY_NUMPAD8 
KEY_NUMPAD9 
KEY_NUMPADPERIOD 
KEY_NUMPADENTER 
KEY_NUMPADSTAR 
KEY_NUMPADPLUS 
KEY_NUMPADMINUS 
KEY_NUMPADSLASH 
KEY_NUMLOCK 
Enumerator:
LT_DIRECTIONAL 
LT_POINT 
LT_SPOT 
enum E_LOG_TYPE

Type of engine log message.

See Also
IEngineCore::WriteToLogEx
Enumerator:
LT_INFO 

Information message do not need user attention.

LT_WARNING 

Information message do not need user attention but marks in engine log as warning and increments warnings counter.

LT_ERROR 

Error message do not need user attention but marks in engine log as error and increments errors counter.

Error message also includes information about source file and line.

LT_FATAL 

Fatal message displays user error message and then terminates engine with exit code 2.

Also ET_ON_ENGINE_FATAL_MESSAGE event is generated.

Enumerator:
MT_PROJECTION 
MT_MODELVIEW 
MT_TEXTURE 
Enumerator:
MCF_ONLY_DEFAULT_DATA 
MCF_NORMALS_PRESENTED 
MCF_TEXTURE_COORDS_PRESENTED 
MCF_TANGENT_SPACE_PRESENTED 
MCF_VERTEX_DATA_INTERLEAVED 
Enumerator:
MMLF_FORCE_SOFTWARE_BUFFER 
MMLF_DYNAMIC_BUFFER 
MMLF_FORCE_MODEL_TO_MESH 

Flags of TEngineWindow structure that determines antialiasing samples count.

Enumerator:
MM_NONE 

Multisampling is off.

MM_2X 

2xMSAA

MM_4X 

4xMSAA

Note
This value is recommended.
MM_8X 

8xMSAA

MM_16X 

16xMSAA

Enumerator:
PCM_NONE 
PCM_FRONT 
PCM_BACK 
Enumerator:
PF_DEFAULT 
PF_LINE 
PF_FILL 
PF_VERTICES_COLORS 
Enumerator:
SSLF_LOAD_AS_MUSIC 
Enumerator:
SSP_NONE 
SSP_LOOPED 
Enumerator:
TCF_DEFAULT 
TCF_PIXEL_ALIGNMENT_1 
TCF_MIPMAPS_PRESENTED 
Enumerator:
TDF_RGB8 
TDF_RGBA8 
TDF_ALPHA8 
TDF_BGR8 
TDF_BGRA8 
TDF_DXT1 
TDF_DXT5 
TDF_DEPTH_COMPONENT24 
TDF_DEPTH_COMPONENT32 
Enumerator:
TLF_FILTERING_NONE 
TLF_FILTERING_BILINEAR 
TLF_FILTERING_TRILINEAR 
TLF_FILTERING_ANISOTROPIC 
TLF_DECREASE_QUALITY_MEDIUM 
TLF_DECREASE_QUALITY_HIGH 
TLF_COMPRESS 
TLF_COORDS_REPEAT 
TLF_COORDS_CLAMP 
TLF_COORDS_MIRROR_REPEAT 
TLF_COORDS_MIRROR_CLAMP 
TLF_GENERATE_MIPMAPS 
TLF_ANISOTROPY_2X 
TLF_ANISOTROPY_4X 
TLF_ANISOTROPY_8X 
TLF_ANISOTROPY_16X 
Enumerator:
TT_2D 
TT_3D 

Flags of TWindowMessage structure that determines type of the message.

See Also
TWindowMessage
Enumerator:
WMT_UNKNOWN 

This type will be returned if there is no proper conversion from platform specific window event to engine window message.

Message parameters have platform specific usage.

Note
For Windows pParam3 of TWindowMessage structure will point to the MSG structure.
WMT_REDRAW 

Message indicates that window must redraw itself.

Message parameters are not used.

WMT_PRESENT 

Message indicates that window is ready and now will be displayed to the user for the first time.

Message parameters are not used.

WMT_CLOSE 

Message indicates that window is ready to be destroyed and now will disappear from the screen.

Message parameters are not used.

WMT_CREATE 

Message indicates that window is being created.

Message parameters are not used.

WMT_DESTROY 

Message indicates that window is ready to be destroyed.

Message parameters are not used.

WMT_RELEASED 

Message indicates that window was destroyed and released successfully.

Message parameters are not used.

WMT_ACTIVATED 

Message indicates that window became a foreground window and get user input focus.

If ui32Param1 value is TWindowHandle of the window which loses focus.

WMT_DEACTIVATED 

Message indicates that window became a background window and lost user input focus.

If ui32Param1 value is TWindowHandle of the window which gets focus.

WMT_MINIMIZED 

Message indicates that window was minimized.

Message parameter ui32Param1 stores width of the window and ui32Param2 stores height.

Note
Under Windows pParam3 points to RECT structure with window size.
WMT_RESTORED 

Message indicates that window was restored to its normal state.

Message parameter ui32Param1 stores width of the window and ui32Param2 stores height.

Note
Under Windows pParam3 points to RECT structure with window size.
WMT_MOVE 

Message indicates that window is being moved.

Message parameter ui32Param1 stores x coordinate of upper left window corner and ui32Param2 stores y coordinate.

Note
Under Windows pParam3 points to RECT structure with window size.
WMT_SIZE 

Message indicates that window is being sized.

Message parameter ui32Param1 stores width of the window and ui32Param2 stores height.

Note
Under Windows pParam3 points to RECT structure with window size.
WMT_KEY_UP 

Message indicates that the user has released some keyboard key.

Message parameter ui32Param1 is the engine code of the key being released.

See Also
E_KEYBOARD_KEY_CODES
WMT_KEY_DOWN 

Message indicates that the user has pressed some keyboard key.

Message parameter ui32Param1 is the engine code of the key being pressed.

See Also
E_KEYBOARD_KEY_CODES
WMT_ENTER_CHAR 

Message indicates that the user has pressed some keyboard key.

Message parameter ui32Param1 is the ASCII code of the key being pressed.

WMT_MOUSE_LEAVE 

Message indicates that cursor is leaving window area.

Message parameters are not used.

WMT_MOUSE_MOVE 

Message indicates that cursor is being moved within the window.

Message parameter ui32Param1 stores x coordinate of cursor and ui32Param1 stores y coordinate.

WMT_MOUSE_DOWN 

Message indicates that the user has pressed mouse button.

Message parameter ui32Param1 indicates what button was pressed: 0 - Left, 1 - Right, 2 - Middle

WMT_MOUSE_UP 

Message indicates that the user has released mouse button.

Message parameter ui32Param1 indicates what button was released: 0 - Left, 1 - Right, 2 - Middle

WMT_MOUSE_WHEEL 

Message indicates that the user has rolled mouse wheel.

Message parameter pParam3 points to integer (int) with mouse wheel delta value.

Function Documentation

TColor4 DGLE::ColorAqua ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorBlack ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorBlue ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorBrown ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorClear ( )
inline
TColor4 DGLE::ColorCyan ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorFuchsia ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorGray ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorGreen ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorGrey ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorMagenta ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorMaroon ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorNavy ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorOfficialBlack ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorOfficialOrange ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorOlive ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorOrange ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorPink ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorPurple ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorRed ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorSilver ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorTeal ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorViolet ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorWhite ( uint8  alpha = 255)
inline
TColor4 DGLE::ColorYellow ( uint8  alpha = 255)
inline
enum ENUM_FORWARD_DECLARATION ( E_ENGINE_INIT_FLAGS  )

Engine initialization flags.

See Also
IEngineCore::InitializeEngine

< Use default settings.

< All user callbacks will be executed in safe mode and engine will catch any unhandled errors. Engine will convert cached errors to engine fatal errors. Also ET_ON_ENGINE_FATAL_MESSAGE event will be generated.

< Sound subsystem will not be initialized.

< Engine will try to connect any found plugin files found in "plugins" folder near it.

Note
Ext plugin is connected automatically without this flag as well.

< Engine will limit its FPS (frames per second) not to overload CPU and overheat GPU.

Note
Recommended for casual games, 2D and simple 3D games and desktop applications.

< Forces engine to use 16 bit color depth instead of 32 bit by default.

Note
Not recommended.

< By default engine uses fixed update mechanism, this means that engine will try to keep fixed update time interval, whenever it's possible. When this flag is set the update routine simply will be called once when delta time between updates is greater than update interval (for example, even if delta time is twice greater than update interval), so you should use delta time value.

See Also
EPT_UPDATE, IEngineCore::GetLastUpdateDeltaTime, EIF_ENABLE_PER_FRAME_UPDATE

< By default engine uses fixed update mechanism, this means that engine will try to keep fixed update time interval, whenever it's possible. When this flag is set the update routine simply will be called once before rendering of every frame, so you should use IEngineCore::GetElapsedTime and IEngineCore::GetTimer to manage application logic by yourself.

Note
In this case IEngineCore::GetLastUpdateDeltaTime will always return zero values on high FPS rates, so it is recommended to turn VSync on.
See Also
TEngineWindow, EPT_UPDATE, EIF_ENABLE_FLOATING_UPDATE

< Engine will be initialized without window. There will be no rendering, input and update routines. Useful for tools and utilities.

Warning
You must call IEngineCore::StartEngine and IEngineCore::QuitEngine routines for correct engine initialization and finalization.

< This flag will disable engine splash screen. Splash screen is displayed to the user while engine prepare itself and while user initialization procedure is being processed.

Note
Turning off splash screen is not recommended because the user could be confused while being waiting application execution.

< Use default settings.

< All user callbacks will be executed in safe mode and engine will catch any unhandled errors. Engine will convert cached errors to engine fatal errors. Also ET_ON_ENGINE_FATAL_MESSAGE event will be generated.

< Sound subsystem will not be initialized.

< Engine will try to connect any found plugin files found in "plugins" folder near it.

Note
Ext plugin is connected automatically without this flag as well.

< Engine will limit its FPS (frames per second) not to overload CPU and overheat GPU.

Note
Recommended for casual games, 2D and simple 3D games and desktop applications.

< Forces engine to use 16 bit color depth instead of 32 bit by default.

Note
Not recommended.

< By default engine uses fixed update mechanism, this means that engine will try to keep fixed update time interval, whenever it's possible. When this flag is set the update routine simply will be called once when delta time between updates is greater than update interval (for example, even if delta time is twice greater than update interval), so you should use delta time value.

See Also
EPT_UPDATE, IEngineCore::GetLastUpdateDeltaTime, EIF_ENABLE_PER_FRAME_UPDATE

< By default engine uses fixed update mechanism, this means that engine will try to keep fixed update time interval, whenever it's possible. When this flag is set the update routine simply will be called once before rendering of every frame, so you should use IEngineCore::GetElapsedTime and IEngineCore::GetTimer to manage application logic by yourself.

Note
In this case IEngineCore::GetLastUpdateDeltaTime will always return zero values on high FPS rates, so it is recommended to turn VSync on.
See Also
TEngineWindow, EPT_UPDATE, EIF_ENABLE_FLOATING_UPDATE

< Engine will be initialized without window. There will be no rendering, input and update routines. Useful for tools and utilities.

Warning
You must call IEngineCore::StartEngine and IEngineCore::QuitEngine routines for correct engine initialization and finalization.

< This flag will disable engine splash screen. Splash screen is displayed to the user while engine prepare itself and while user initialization procedure is being processed.

Note
Turning off splash screen is not recommended because the user could be confused while being waiting application execution.
enum ENUM_FORWARD_DECLARATION ( E_CORE_RENDERER_DRAW_MODE  )
TMatrix4x4 DGLE::MatrixBillboard ( const TMatrix4x4 &  stMatrix)
inline

Returns billboarded matrix.

Removes rotation information from the matrix.

TMatrix4x4 DGLE::MatrixIdentity ( )
inline

Returns identity matrix.

TMatrix4x4 DGLE::MatrixInverse ( const TMatrix4x4 &  stMatrix)
inline

Returns inverse matrix.

TMatrix4x4 DGLE::MatrixRotate ( float  fAngle,
const TVector3 &  stAxis 
)
inline

Returns rotated matrix by a given axis vector and angle.

TMatrix4x4 DGLE::MatrixScale ( const TVector3 &  stVec)
inline

Returns scaled matrix by a given vector.

TMatrix4x4 DGLE::MatrixTranslate ( const TVector3 &  stVec)
inline

Returns translated matrix by a given vector.

TMatrix4x4 DGLE::MatrixTranspose ( const TMatrix4x4 &  stMatrix)
inline

Returns transpose matrix.

float DGLE::signf ( float  f)
inline

Variable Documentation

const uint RES_LOAD_DEFAULT = 0x00000000
const uint TEXTURE_LOAD_DEFAULT_2D = (uint)(TLF_FILTERING_BILINEAR | TLF_COORDS_CLAMP)

Sun Nov 16 2014 09:47:29   Generated by   doxygen   Content copyrighted to DGLE Team