DDraceNetwork Documentation
Loading...
Searching...
No Matches
graphics.h File Reference
#include "image.h"
#include "kernel.h"
#include "warning.h"
#include <base/color.h>
#include <base/system.h>
#include <cstddef>
#include <cstdint>
#include <functional>
#include <optional>
#include <vector>
Include dependency graph for graphics.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  SBufferContainerInfo
 
struct  SBufferContainerInfo::SAttribute
 
struct  SQuadRenderInfo
 
class  CGraphicTile
 
class  CGraphicTileTextureCoords
 
class  CVideoMode
 
struct  GL_STexCoord3D
 
struct  GL_SVertex
 
struct  GL_SVertexTex3D
 
struct  GL_SVertexTex3DStream
 
struct  STWGraphicGpu
 
struct  STWGraphicGpu::STWGraphicGpuItem
 
class  IGraphics
 
class  IGraphics::CTextureHandle
 
class  IGraphics::CLineItem
 
class  IGraphics::CLineItemBatch
 
struct  IGraphics::CFreeformItem
 
struct  IGraphics::CQuadItem
 
struct  IGraphics::SRenderSpriteInfo
 
struct  IGraphics::CColorVertex
 
class  IGraphics::CMessageBoxButton
 
class  IGraphics::CMessageBox
 
class  IEngineGraphics
 

Macros

#define GRAPHICS_TYPE_UNSIGNED_BYTE   0x1401
 
#define GRAPHICS_TYPE_UNSIGNED_SHORT   0x1403
 
#define GRAPHICS_TYPE_INT   0x1404
 
#define GRAPHICS_TYPE_UNSIGNED_INT   0x1405
 
#define GRAPHICS_TYPE_FLOAT   0x1406
 

Typedefs

typedef vec2 GL_SPoint
 
typedef vec2 GL_STexCoord
 
typedef ColorRGBA GL_SColorf
 
typedef vector4_base< unsigned charGL_SColor
 
typedef STWGraphicGpu TTwGraphicsGpuList
 
typedef std::function< void()> WINDOW_RESIZE_FUNC
 
typedef std::function< void()> WINDOW_PROPS_CHANGED_FUNC
 
typedef std::function< bool(uint32_t &Width, uint32_t &Height, CImageInfo::EImageFormat &Format, std::vector< uint8_t > &vDstData)> TGLBackendReadPresentedImageData
 

Enumerations

enum  EGraphicsDriverAgeType { GRAPHICS_DRIVER_AGE_TYPE_LEGACY = 0 , GRAPHICS_DRIVER_AGE_TYPE_DEFAULT , GRAPHICS_DRIVER_AGE_TYPE_MODERN , GRAPHICS_DRIVER_AGE_TYPE_COUNT }
 
enum  EBackendType {
  BACKEND_TYPE_OPENGL = 0 , BACKEND_TYPE_OPENGL_ES , BACKEND_TYPE_VULKAN , BACKEND_TYPE_AUTO ,
  BACKEND_TYPE_COUNT
}
 

Functions

IEngineGraphicsCreateEngineGraphicsThreaded ()
 
std::optional< intShowMessageBoxWithoutGraphics (const IGraphics::CMessageBox &MessageBox)
 

Variables

static constexpr size_t gs_GraphicsMaxQuadsRenderCount = 256
 
static constexpr size_t gs_GraphicsMaxParticlesRenderCount = 512
 

Macro Definition Documentation

◆ GRAPHICS_TYPE_FLOAT

#define GRAPHICS_TYPE_FLOAT   0x1406

◆ GRAPHICS_TYPE_INT

#define GRAPHICS_TYPE_INT   0x1404

◆ GRAPHICS_TYPE_UNSIGNED_BYTE

#define GRAPHICS_TYPE_UNSIGNED_BYTE   0x1401

◆ GRAPHICS_TYPE_UNSIGNED_INT

#define GRAPHICS_TYPE_UNSIGNED_INT   0x1405

◆ GRAPHICS_TYPE_UNSIGNED_SHORT

#define GRAPHICS_TYPE_UNSIGNED_SHORT   0x1403

Typedef Documentation

◆ GL_SColor

◆ GL_SColorf

◆ GL_SPoint

◆ GL_STexCoord

◆ TGLBackendReadPresentedImageData

◆ TTwGraphicsGpuList

◆ WINDOW_PROPS_CHANGED_FUNC

◆ WINDOW_RESIZE_FUNC

typedef std::function<void()> WINDOW_RESIZE_FUNC

Enumeration Type Documentation

◆ EBackendType

Enumerator
BACKEND_TYPE_OPENGL 
BACKEND_TYPE_OPENGL_ES 
BACKEND_TYPE_VULKAN 
BACKEND_TYPE_AUTO 
BACKEND_TYPE_COUNT 

◆ EGraphicsDriverAgeType

Enumerator
GRAPHICS_DRIVER_AGE_TYPE_LEGACY 
GRAPHICS_DRIVER_AGE_TYPE_DEFAULT 
GRAPHICS_DRIVER_AGE_TYPE_MODERN 
GRAPHICS_DRIVER_AGE_TYPE_COUNT 

Function Documentation

◆ CreateEngineGraphicsThreaded()

IEngineGraphics * CreateEngineGraphicsThreaded ( )
extern

◆ ShowMessageBoxWithoutGraphics()

std::optional< int > ShowMessageBoxWithoutGraphics ( const IGraphics::CMessageBox MessageBox)
extern

This function should only be used when the graphics are not initialized or when IGraphics::ShowMessageBox failed.

See also
IGraphics::ShowMessageBox

Variable Documentation

◆ gs_GraphicsMaxParticlesRenderCount

constexpr size_t gs_GraphicsMaxParticlesRenderCount = 512
staticconstexpr

◆ gs_GraphicsMaxQuadsRenderCount

constexpr size_t gs_GraphicsMaxQuadsRenderCount = 256
staticconstexpr