35 inline static bool GetVSync() {
return RenderContext->GetVSync(); }
38 inline static void SetClearColor(
const vec4 &ClearColor) { RenderContext->SetClearColor(ClearColor); }
40 inline static void SetWireframeMode(
bool IsWireframe) { RenderContext->SetWireframeMode(IsWireframe); }
44 inline static void SetVSync(
bool VSync) { RenderContext->SetVSync(VSync); }
71 RenderContext->SwapBuffers();
82 RenderContext->DrawIndices(VertexArray);
94 RenderContext->DrawIndicesInstanced(VertexArray, InstanceCount);
101 return RenderContext->GetSingleColorMaterialShader();
107 return RenderContext->GetPhongGeometryShader();
113 return RenderContext->GetPhongLightingShader();
119 return RenderContext->GetShadowPassShader();
125 return RenderContext->GetToneMappingPassShader();
131 return RenderContext->GetGaussianBlurPassShader();
137 return RenderContext->GetTextureAddPassShader();
static void DrawIndicesInstanced(const shared< vertex_array > &VertexArray, int InstanceCount)
static void CloseContext()
static shared< shader_program > GetGaussianBlurPassShader()
static shared< shader_program > GetTextureAddPassShader()
static void SetVSync(bool VSync)
static void SetClearColor(const vec4 &ClearColor)
static void SetWireframeMode(bool IsWireframe)
static shared< shader_program > GetPhongLightingShader()
static shared< shader_program > GetShadowPassShader()
static render_cull_face_mode GetCullingMode()
static void SwapBuffers()
static shared< shader_program > GetToneMappingPassShader()
static const vec4 & GetClearColor()
static void DrawIndices(const shared< vertex_array > &VertexArray)
static shared< shader_program > GetPhongGeometryShader()
static void SetCullingMode(render_cull_face_mode CullingMode)
static shared< shader_program > GetSingleColorMaterialShader()
static void InitContext()
static bool GetWireframeMode()
std::shared_ptr< T > shared
Base, abstract, backend render api independent render context class implementation module.