Grindstone Game Engine
v0.2.0
An open source game engine and toolkit.
Toggle main menu visibility
Loading...
Searching...
No Matches
GLGraphicsPipeline.hpp
1
#pragma once
2
3
#include <Common/Graphics/GraphicsPipeline.hpp>
4
5
namespace
Grindstone::GraphicsAPI::OpenGL
{
6
class
GraphicsPipeline :
public
Grindstone::GraphicsAPI::GraphicsPipeline
{
7
public
:
8
GraphicsPipeline(
const
CreateInfo
& createInfo);
9
void
Bind();
10
GLuint GetPrimitiveType();
11
~GraphicsPipeline();
12
private
:
13
void
CreatePipeline(
const
CreateInfo
& createInfo);
14
GLuint CreateShaderModule(
const
ShaderStageData
& shaderStageCreateInfo);
15
16
GLuint program;
17
18
GLsizei width, height;
19
GLint scissorX, scissorY;
20
GLsizei scissorWidth, scissorHeight;
21
22
GLboolean colorMaskRed = GL_TRUE;
23
GLboolean colorMaskBlue = GL_TRUE;
24
GLboolean colorMaskGreen = GL_TRUE;
25
GLboolean colorMaskAlpha = GL_TRUE;
26
GLuint primitiveType;
27
GLenum polygonFillMode;
28
GLenum depthCompareOp;
29
bool
isDepthTestEnabled =
true
;
30
GLboolean isDepthWriteEnabled = GL_TRUE;
31
bool
isStencilEnabled =
false
;
32
bool
isDepthBiasEnabled =
false
;
33
bool
isDepthClampEnabled =
false
;
34
35
float
depthBiasConstantFactor = 1.25f;
36
float
depthBiasSlopeFactor = 1.75f;
37
float
depthBiasClamp = 0.0f;
38
39
GLenum cullMode;
40
GLenum blendColorOp;
41
GLenum blendColorSrc;
42
GLenum blendColorDst;
43
GLenum blendAlphaOp;
44
GLenum blendAlphaSrc;
45
GLenum blendAlphaDst;
46
};
47
}
Grindstone::GraphicsAPI::GraphicsPipeline
Definition
GraphicsPipeline.hpp:20
Grindstone::GraphicsAPI::OpenGL
Definition
GLBuffer.hpp:5
Grindstone::GraphicsAPI::GraphicsPipeline::CreateInfo
Definition
GraphicsPipeline.hpp:132
Grindstone::GraphicsAPI::GraphicsPipeline::ShaderStageData
Definition
GraphicsPipeline.hpp:22
plugins
Grindstone.RHI.OpenGL
include
GLGraphicsPipeline.hpp
Generated by
1.17.0