Monad Engine da02fba2
> Undercity Codex_
Loading...
Searching...
No Matches
eng::GraphicsAPI Class Reference

#include <GraphicsAPI.h>

Public Member Functions

bool Init ()
 
std::shared_ptr< ShaderProgramCreateShaderProgram (const std::string &vertexSource, const std::string &fragmentSource)
 
const std::shared_ptr< ShaderProgram > & GetDefaultShaderProgram ()
 
const std::shared_ptr< ShaderProgram > & GetDefault2DShaderProgram ()
 
GLuint CreateVertexBuffer (const std::vector< float > &vertices)
 
GLuint CreateIndexBuffer (const std::vector< uint32_t > &indices)
 
void SetClearColor (float r, float g, float b, float a)
 
void ClearBuffers ()
 
void SetDepthTestEnabled (bool enabled)
 
void SetBlendMode (BlendMode mode)
 
void BindShaderProgram (ShaderProgram *shaderProgram)
 
void BindMaterial (Material *material)
 
void BindMesh (Mesh *mesh)
 
void UnbindMesh (Mesh *mesh)
 
void DrawMesh (Mesh *mesh)
 

Detailed Description

Definition at line 21 of file GraphicsAPI.h.

Member Function Documentation

◆ BindMaterial()

void eng::GraphicsAPI::BindMaterial ( Material material)

Definition at line 282 of file GraphicsAPI.cpp.

Referenced by eng::RenderQueue::Draw().

◆ BindMesh()

void eng::GraphicsAPI::BindMesh ( Mesh mesh)

Definition at line 290 of file GraphicsAPI.cpp.

Referenced by eng::RenderQueue::Draw().

◆ BindShaderProgram()

void eng::GraphicsAPI::BindShaderProgram ( ShaderProgram shaderProgram)

Definition at line 274 of file GraphicsAPI.cpp.

◆ ClearBuffers()

void eng::GraphicsAPI::ClearBuffers ( )

Definition at line 222 of file GraphicsAPI.cpp.

Referenced by eng::Engine::Run().

◆ CreateIndexBuffer()

GLuint eng::GraphicsAPI::CreateIndexBuffer ( const std::vector< uint32_t > &  indices)

Definition at line 207 of file GraphicsAPI.cpp.

◆ CreateShaderProgram()

std::shared_ptr< ShaderProgram > eng::GraphicsAPI::CreateShaderProgram ( const std::string &  vertexSource,
const std::string &  fragmentSource 
)

◆ CreateVertexBuffer()

GLuint eng::GraphicsAPI::CreateVertexBuffer ( const std::vector< float > &  vertices)

Definition at line 197 of file GraphicsAPI.cpp.

◆ DrawMesh()

void eng::GraphicsAPI::DrawMesh ( Mesh mesh)

Definition at line 306 of file GraphicsAPI.cpp.

Referenced by eng::RenderQueue::Draw().

◆ GetDefault2DShaderProgram()

const std::shared_ptr< ShaderProgram > & eng::GraphicsAPI::GetDefault2DShaderProgram ( )

Definition at line 147 of file GraphicsAPI.cpp.

Referenced by eng::RenderQueue::Draw().

◆ GetDefaultShaderProgram()

const std::shared_ptr< ShaderProgram > & eng::GraphicsAPI::GetDefaultShaderProgram ( )

Definition at line 67 of file GraphicsAPI.cpp.

References CreateShaderProgram().

◆ Init()

bool eng::GraphicsAPI::Init ( )

Definition at line 9 of file GraphicsAPI.cpp.

Referenced by eng::Engine::Init().

◆ SetBlendMode()

void eng::GraphicsAPI::SetBlendMode ( BlendMode  mode)

Definition at line 239 of file GraphicsAPI.cpp.

Referenced by eng::RenderQueue::Draw().

◆ SetClearColor()

void eng::GraphicsAPI::SetClearColor ( float  r,
float  g,
float  b,
float  a 
)

Definition at line 217 of file GraphicsAPI.cpp.

Referenced by eng::Engine::Run().

◆ SetDepthTestEnabled()

void eng::GraphicsAPI::SetDepthTestEnabled ( bool  enabled)

Definition at line 227 of file GraphicsAPI.cpp.

Referenced by eng::RenderQueue::Draw().

◆ UnbindMesh()

void eng::GraphicsAPI::UnbindMesh ( Mesh mesh)

Definition at line 298 of file GraphicsAPI.cpp.

Referenced by eng::RenderQueue::Draw().


The documentation for this class was generated from the following files: