TDME2 1.9.121
Classes | Public Types | Public Member Functions | Public Attributes | Protected Attributes | List of all members
Renderer Class Referenceabstract

Renderer interface. More...

#include <tdme/engine/subsystems/renderer/Renderer.h>

Inheritance diagram for Renderer:
Inheritance graph
Collaboration diagram for Renderer:
Collaboration graph

Classes

struct  Renderer_Context
 
struct  Renderer_Light
 Bean holding light properties. More...
 
struct  Renderer_PBRMaterial
 Bean holding PBR material properties. More...
 
struct  Renderer_SpecularMaterial
 Bean holding specular material properties. More...
 
struct  Renderer_Statistics
 Bean holding light properties. More...
 

Public Types

enum  RendererType { RENDERERTYPE_NONE , RENDERERTYPE_OPENGLES , RENDERERTYPE_OPENGL , RENDERERTYPE_VULKAN }
 

Public Member Functions

 Renderer ()
 Public constructor. More...
 
virtual ~Renderer ()
 Destructor. More...
 
RendererType getRendererType ()
 
virtual bool prepareWindowSystemRendererContext (int tryIdx)=0
 Prepare window system renderer context. More...
 
virtual bool initializeWindowSystemRendererContext (GLFWwindow *glfwWindow)=0
 Initialize window system renderer context. More...
 
virtual void initialize ()=0
 Initialize renderer. More...
 
virtual void initializeFrame ()=0
 Pre Frame Initialization. More...
 
virtual void finishFrame ()=0
 Finish frame. More...
 
virtual const string getVendor ()=0
 
virtual const string getRenderer ()=0
 
virtual const string getShaderVersion ()=0
 
virtual bool isSupportingMultithreadedRendering ()=0
 
virtual bool isBufferObjectsAvailable ()=0
 Checks if buffer objects is available. More...
 
virtual bool isDepthTextureAvailable ()=0
 Checks if depth texture is available. More...
 
virtual bool isUsingProgramAttributeLocation ()=0
 
virtual bool isSupportingIntegerProgramAttributes ()=0
 
virtual bool isSpecularMappingAvailable ()=0
 
virtual bool isNormalMappingAvailable ()=0
 
virtual bool isInstancedRenderingAvailable ()=0
 Checks if instanced rendering is available. More...
 
virtual bool isPBRAvailable ()=0
 
virtual bool isComputeShaderAvailable ()=0
 
virtual bool isGLCLAvailable ()=0
 
virtual bool isUsingShortIndices ()=0
 
virtual bool isDeferredShadingAvailable ()=0
 
virtual int32_t getTextureUnits ()=0
 
int32_t getViewPortWidth ()
 
int32_t getViewPortHeight ()
 
virtual int32_t loadShader (int32_t type, const string &pathName, const string &fileName, const string &definitions=string(), const string &functions=string())=0
 Loads a shader. More...
 
virtual void useProgram (int contextIdx, int32_t programId)=0
 Use shader program. More...
 
virtual int32_t createProgram (int type)=0
 Creates a shader program. More...
 
virtual void attachShaderToProgram (int32_t programId, int32_t shaderId)=0
 Attaches a shader to a program. More...
 
virtual bool linkProgram (int32_t programId)=0
 Links attached shaders to a program. More...
 
virtual int32_t getProgramUniformLocation (int32_t programId, const string &name)=0
 Returns location of given uniform variable. More...
 
virtual void setProgramUniformInteger (int contextIdx, int32_t uniformId, int32_t value)=0
 Set up a integer uniform value. More...
 
virtual void setProgramUniformFloat (int contextIdx, int32_t uniformId, float value)=0
 Set up a float uniform value. More...
 
virtual void setProgramUniformFloatMatrix3x3 (int contextIdx, int32_t uniformId, const array< float, 9 > &value)=0
 Set up a float matrix 3x3 uniform value. More...
 
virtual void setProgramUniformFloatMatrix4x4 (int contextIdx, int32_t uniformId, const array< float, 16 > &value)=0
 Set up a float matrix 4x4 uniform value. More...
 
virtual void setProgramUniformFloatMatrices4x4 (int contextIdx, int32_t uniformId, int32_t count, FloatBuffer *data)=0
 Set up a float matrices 4x4 uniform values. More...
 
virtual void setProgramUniformFloatVec4 (int contextIdx, int32_t uniformId, const array< float, 4 > &data)=0
 Set up a float vec4 uniform value. More...
 
virtual void setProgramUniformFloatVec3 (int contextIdx, int32_t uniformId, const array< float, 3 > &data)=0
 Set up a float vec3 uniform value. More...
 
virtual void setProgramUniformFloatVec2 (int contextIdx, int32_t uniformId, const array< float, 2 > &data)=0
 Set up a float vec2 uniform value. More...
 
virtual void setProgramAttributeLocation (int32_t programId, int32_t location, const string &name)=0
 Bind attribute to a input location. More...
 
int32_t getEffectPass ()
 Get effect pass. More...
 
void setEffectPass (int32_t effectPass)
 Set effect pass. More...
 
const string & getShaderPrefix ()
 Get shader prefix. More...
 
void setShaderPrefix (const string &shaderPrefix)
 Set shader prefix. More...
 
int32_t getLighting (int contextIdx)
 Get current lighting model. More...
 
void setLighting (int contextIdx, int32_t lighting)
 Set current lighting model. More...
 
Vector3getCameraPosition ()
 
virtual void setViewPort (int32_t width, int32_t height)=0
 Set up viewport parameter. More...
 
virtual void updateViewPort ()=0
 Update viewport. More...
 
Matrix4x4getProjectionMatrix ()
 
virtual void onUpdateProjectionMatrix (int contextIdx)=0
 Update projection matrix event. More...
 
Matrix4x4getCameraMatrix ()
 
virtual void onUpdateCameraMatrix (int contextIdx)=0
 Update camera matrix event. More...
 
Matrix4x4getModelViewMatrix ()
 
virtual void onUpdateModelViewMatrix (int contextIdx)=0
 Update model view matrix event. More...
 
Matrix4x4getViewportMatrix ()
 
Matrix2D3x3getTextureMatrix (int contextIdx)
 Get texture matrix. More...
 
virtual void onUpdateTextureMatrix (int contextIdx)=0
 Update texture matrix for active texture unit event. More...
 
virtual void setClearColor (float red, float green, float blue, float alpha)=0
 Set up clear color. More...
 
virtual void enableCulling (int contextIdx)=0
 Enable culling. More...
 
virtual void disableCulling (int contextIdx)=0
 Disable culling. More...
 
virtual void setFrontFace (int contextIdx, int32_t frontFace)=0
 Set up clock wise or counter clock wise faces as front face. More...
 
virtual void setCullFace (int32_t cullFace)=0
 Sets up which face will be culled. More...
 
virtual void enableBlending ()=0
 Enables blending. More...
 
virtual void enableAdditionBlending ()=0
 Enable blending with c = a + b. More...
 
virtual void disableBlending ()=0
 Disables blending. More...
 
virtual void enableDepthBufferWriting ()=0
 Enable depth buffer writing. More...
 
virtual void disableDepthBufferWriting ()=0
 Disable depth buffer writing. More...
 
virtual void disableDepthBufferTest ()=0
 Disable depth buffer test. More...
 
virtual void enableDepthBufferTest ()=0
 Enable depth buffer test. More...
 
virtual void setDepthFunction (int32_t depthFunction)=0
 Set up depth function. More...
 
virtual void setColorMask (bool red, bool green, bool blue, bool alpha)=0
 Set up GL rendering colormask. More...
 
virtual void clear (int32_t mask)=0
 Clear render buffer with given mask. More...
 
virtual int32_t createTexture ()=0
 Creates a texture. More...
 
virtual int32_t createDepthBufferTexture (int32_t width, int32_t height, int32_t cubeMapTextureId, int32_t cubeMapTextureIndex)=0
 Creates a depth buffer texture. More...
 
virtual int32_t createColorBufferTexture (int32_t width, int32_t height, int32_t cubeMapTextureId, int32_t cubeMapTextureIndex)=0
 Creates a color buffer texture. More...
 
virtual int32_t createGBufferGeometryTexture (int32_t width, int32_t height)=0
 Creates a geometry buffer geometry texture. More...
 
virtual int32_t createGBufferColorTexture (int32_t width, int32_t height)=0
 Creates a geometry buffer color RGBA texture. More...
 
virtual void uploadTexture (int contextIdx, Texture *texture)=0
 Uploads texture data to current bound texture. More...
 
virtual void uploadCubeMapTexture (int contextIdx, Texture *textureLeft, Texture *textureRight, Texture *textureTop, Texture *textureBottom, Texture *textureFront, Texture *textureBack)=0
 Uploads cube map texture data to current bound texture. More...
 
virtual int32_t createCubeMapTexture (int contextIdx, int32_t width, int32_t height)=0
 Create cube map texture from frame buffers. More...
 
virtual void resizeDepthBufferTexture (int32_t textureId, int32_t width, int32_t height)=0
 Resizes a depth texture. More...
 
virtual void resizeColorBufferTexture (int32_t textureId, int32_t width, int32_t height)=0
 Resize color buffer texture. More...
 
virtual void resizeGBufferGeometryTexture (int32_t textureId, int32_t width, int32_t height)=0
 Resizes a geometry buffer geometry texture. More...
 
virtual void resizeGBufferColorTexture (int32_t textureId, int32_t width, int32_t height)=0
 Resizes a geometry buffer color RGBA texture. More...
 
virtual void bindTexture (int contextIdx, int32_t textureId)=0
 Binds a texture with given id or unbinds when using ID_NONE. More...
 
virtual void bindCubeMapTexture (int contextIdx, int32_t textureId)=0
 Binds a cube map texture with given id or unbinds when using ID_NONE. More...
 
virtual void onBindTexture (int contextIdx, int32_t textureId)=0
 On bind texture event. More...
 
virtual void disposeTexture (int32_t textureId)=0
 Dispose a texture. More...
 
virtual int32_t createFramebufferObject (int32_t depthBufferTextureId, int32_t colorBufferTextureId, int32_t cubeMapTextureId=0, int32_t cubeMapTextureIndex=0)=0
 Creates a frame buffer object with depth texture attached. More...
 
virtual int32_t createGeometryBufferObject (int32_t depthBufferTextureId, int32_t geometryBufferTextureId1, int32_t geometryBufferTextureId2, int32_t geometryBufferTextureId3, int32_t colorBufferTextureId1, int32_t colorBufferTextureId2, int32_t colorBufferTextureId3, int32_t colorBufferTextureId4, int32_t colorBufferTextureId5)=0
 Creates a geometry frame buffer object. More...
 
virtual void bindFrameBuffer (int32_t frameBufferId)=0
 Enables a framebuffer to be rendered. More...
 
virtual void disposeFrameBufferObject (int32_t frameBufferId)=0
 Disposes a frame buffer object. More...
 
virtual vector< int32_t > createBufferObjects (int32_t buffers, bool useGPUMemory, bool shared)=0
 Generate buffer objects for vertex data and such. More...
 
virtual void uploadBufferObject (int contextIdx, int32_t bufferObjectId, int32_t size, FloatBuffer *data)=0
 Uploads buffer data to buffer object. More...
 
virtual void uploadBufferObject (int contextIdx, int32_t bufferObjectId, int32_t size, IntBuffer *data)=0
 Uploads buffer data to buffer object. More...
 
virtual void uploadBufferObject (int contextIdx, int32_t bufferObjectId, int32_t size, ShortBuffer *data)=0
 Uploads buffer data to buffer object. More...
 
virtual void uploadIndicesBufferObject (int contextIdx, int32_t bufferObjectId, int32_t size, ShortBuffer *data)=0
 Uploads buffer data to buffer object. More...
 
virtual void uploadIndicesBufferObject (int contextIdx, int32_t bufferObjectId, int32_t size, IntBuffer *data)=0
 Uploads buffer data to buffer object. More...
 
virtual void bindIndicesBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind indices buffer object. More...
 
virtual void bindTextureCoordinatesBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind texture coordinates buffer object. More...
 
virtual void bindVerticesBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind vertices buffer object. More...
 
virtual void bindNormalsBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind normals buffer object. More...
 
virtual void bindColorsBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind colors buffer object. More...
 
virtual void bindTangentsBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind tangents buffer object. More...
 
virtual void bindBitangentsBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind bitangents buffer object. More...
 
virtual void bindModelMatricesBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind model matrices buffer object. More...
 
virtual void bindEffectColorMulsBufferObject (int contextIdx, int32_t bufferObjectId, int32_t divisor)=0
 Bind effect color muls buffer object. More...
 
virtual void bindEffectColorAddsBufferObject (int contextIdx, int32_t bufferObjectId, int32_t divisor)=0
 Bind effect color adds buffer object. More...
 
virtual void bindOriginsBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind origins buffer object. More...
 
virtual void bindTextureSpriteIndicesBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind texture and sprite indices buffer object. More...
 
virtual void bindPointSizesBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind point sizes buffer object. More...
 
virtual void bindSpriteSheetDimensionBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind sprite sheet dimension buffer object. More...
 
virtual void drawInstancedIndexedTrianglesFromBufferObjects (int contextIdx, int32_t triangles, int32_t trianglesOffset, int32_t instances)=0
 Draw instanced indexed triangles from buffer objects. More...
 
virtual void drawIndexedTrianglesFromBufferObjects (int contextIdx, int32_t triangles, int32_t trianglesOffset)=0
 Draw indexed triangles from buffer objects. More...
 
virtual void drawInstancedTrianglesFromBufferObjects (int contextIdx, int32_t triangles, int32_t trianglesOffset, int32_t instances)=0
 Draw instanced triangles from buffer objects. More...
 
virtual void drawTrianglesFromBufferObjects (int contextIdx, int32_t triangles, int32_t trianglesOffset)=0
 Draw triangles from buffer objects. More...
 
virtual void drawPointsFromBufferObjects (int contextIdx, int32_t points, int32_t pointsOffset)=0
 Draw points from buffer objects. More...
 
virtual void setLineWidth (float lineWidth)=0
 Set line width. More...
 
virtual void drawLinesFromBufferObjects (int contextIdx, int32_t points, int32_t pointsOffset)=0
 Draw lines from buffer objects. More...
 
virtual void unbindBufferObjects (int contextIdx)=0
 Unbind buffer objects. More...
 
virtual void disposeBufferObjects (vector< int32_t > &bufferObjectIds)=0
 Disposes a frame buffer object. More...
 
virtual int32_t getTextureUnit (int contextIdx)=0
 Get texture unit. More...
 
virtual void setTextureUnit (int contextIdx, int32_t textureUnit)=0
 Sets up texture unit. More...
 
Renderer_LightgetLight (int contextIdx, int32_t lightIdx)
 Get light. More...
 
virtual void onUpdateLight (int contextIdx, int32_t lightId)=0
 Update light. More...
 
array< float, 4 > & getEffectColorMul (int contextIdx)
 Get effect color mul. More...
 
array< float, 4 > & getEffectColorAdd (int contextIdx)
 Get effect color add. More...
 
virtual void onUpdateEffect (int contextIdx)=0
 Update material. More...
 
Renderer_SpecularMaterialgetSpecularMaterial (int contextIdx)
 Get specular material. More...
 
Renderer_PBRMaterialgetPBRMaterial (int contextIdx)
 Get PBR material. More...
 
virtual void onUpdateMaterial (int contextIdx)=0
 On update material. More...
 
const string & getShader (int contextIdx)
 Get shader. More...
 
void setShader (int contextIdx, const string &id)
 Set shader. More...
 
virtual void onUpdateShader (int contextIdx)=0
 On update shader. More...
 
const EntityShaderParametersgetShaderParameters (int contextIdx)
 Get shader parameters. More...
 
void setShaderParameters (int contextIdx, const EntityShaderParameters &parameters)
 Set shader parameters. More...
 
virtual void onUpdateShaderParameters (int contextIdx)=0
 On update shader parameters. More...
 
virtual float readPixelDepth (int32_t x, int32_t y)=0
 Reads a pixel depth. More...
 
virtual ByteBufferreadPixels (int32_t x, int32_t y, int32_t width, int32_t height)=0
 Read pixels. More...
 
virtual void dispatchCompute (int contextIdx, int32_t numGroupsX, int32_t numGroupsY, int32_t numGroupsZ)=0
 Dispatch compute. More...
 
virtual void memoryBarrier ()=0
 Memory barrier. More...
 
virtual void uploadSkinningBufferObject (int contextIdx, int32_t bufferObjectId, int32_t size, FloatBuffer *data)=0
 Upload skinning buffer object. More...
 
virtual void uploadSkinningBufferObject (int contextIdx, int32_t bufferObjectId, int32_t size, IntBuffer *data)=0
 Upload skinning buffer object. More...
 
virtual void bindSkinningVerticesBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind skinning vertices buffer object. More...
 
virtual void bindSkinningNormalsBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind skinning normal buffer object. More...
 
virtual void bindSkinningVertexJointsBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind skinning vertex joints buffer object. More...
 
virtual void bindSkinningVertexJointIdxsBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind skinning vertex joint indices buffer object. More...
 
virtual void bindSkinningVertexJointWeightsBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind skinning vertex joint weights buffer object. More...
 
virtual void bindSkinningVerticesResultBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind skinning vertices result buffer object. More...
 
virtual void bindSkinningNormalsResultBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind skinning normals result buffer object. More...
 
virtual void bindSkinningMatricesBufferObject (int contextIdx, int32_t bufferObjectId)=0
 Bind skinning matrices result buffer object. More...
 
float getMaskMaxValue (int contextIdx)
 Get mask max value. More...
 
void setMaskMaxValue (int contextIdx, float maskMaxValue)
 Set mask max value. More...
 
array< float, 3 > & getEnvironmentMappingCubeMapPosition (int contextIdx)
 Get environment mapping cube map position. More...
 
void setEnvironmentMappingCubeMapPosition (int contextIdx, array< float, 3 > &position)
 Set environment mapping cube map position. More...
 
virtual void initGuiMode ()=0
 Set up renderer for GUI rendering. More...
 
virtual void doneGuiMode ()=0
 Set up renderer for 3d rendering. More...
 
virtual void setVSync (bool vSync)=0
 Enable/Disable v-sync. More...
 
virtual const Renderer_Statistics getStatistics ()=0
 
TexturegenerateMipMap (const string &id, Texture *texture, int32_t level, int32_t atlasBorderSize)
 Generate mip map for atlas texture currently. More...
 

Public Attributes

RendererType rendererType { RENDERERTYPE_NONE }
 
int32_t CONTEXTINDEX_DEFAULT
 
int32_t ID_NONE
 
int32_t CLEAR_DEPTH_BUFFER_BIT
 
int32_t CLEAR_COLOR_BUFFER_BIT
 
int32_t CULLFACE_FRONT
 
int32_t CULLFACE_BACK
 
int32_t TEXTUREUNITS_MAX
 
int32_t PROGRAM_OBJECTS
 
int32_t PROGRAM_POINTS
 
int32_t PROGRAM_LINES
 
int32_t PROGRAM_COMPUTE
 
int32_t SHADER_FRAGMENT_SHADER
 
int32_t SHADER_VERTEX_SHADER
 
int32_t SHADER_COMPUTE_SHADER
 
int32_t DEPTHFUNCTION_ALWAYS
 
int32_t DEPTHFUNCTION_EQUAL
 
int32_t DEPTHFUNCTION_LESSEQUAL
 
int32_t DEPTHFUNCTION_GREATEREQUAL
 
int32_t FRAMEBUFFER_DEFAULT
 
int32_t FRONTFACE_CW
 
int32_t FRONTFACE_CCW
 
int32_t CUBEMAPTEXTUREINDEX_NEGATIVE_X
 
int32_t CUBEMAPTEXTUREINDEX_POSITIVE_X
 
int32_t CUBEMAPTEXTUREINDEX_POSITIVE_Y
 
int32_t CUBEMAPTEXTUREINDEX_NEGATIVE_Y
 
int32_t CUBEMAPTEXTUREINDEX_POSITIVE_Z
 
int32_t CUBEMAPTEXTUREINDEX_NEGATIVE_Z
 
int32_t LIGHTING_NONE
 
int32_t LIGHTING_SPECULAR
 
int32_t LIGHTING_PBR
 
int32_t UNIFORM_CL_SKINNING_VERTEX_COUNT
 
int32_t UNIFORM_CL_SKINNING_MATRIX_COUNT
 
int32_t UNIFORM_CL_SKINNING_INSTANCE_COUNT
 

Protected Attributes

int32_t viewPortWidth
 
int32_t viewPortHeight
 
Renderer_Statistics statistics
 
Vector3 cameraPosition
 
Matrix4x4 projectionMatrix
 
Matrix4x4 cameraMatrix
 
Matrix4x4 modelViewMatrix
 
Matrix4x4 viewportMatrix
 
int32_t effectPass
 
string shaderPrefix
 
vector< Renderer_ContextrendererContexts
 

Detailed Description

Renderer interface.

Author
Andreas Drewke @ersion $Id$

Definition at line 44 of file Renderer.h.

Member Enumeration Documentation

◆ RendererType

Enumerator
RENDERERTYPE_NONE 
RENDERERTYPE_OPENGLES 
RENDERERTYPE_OPENGL 
RENDERERTYPE_VULKAN 

Definition at line 48 of file Renderer.h.

Constructor & Destructor Documentation

◆ Renderer()

Renderer ( )

Public constructor.

Definition at line 21 of file Renderer.cpp.

◆ ~Renderer()

~Renderer ( )
virtual

Destructor.

Definition at line 66 of file Renderer.cpp.

Member Function Documentation

◆ attachShaderToProgram()

virtual void attachShaderToProgram ( int32_t  programId,
int32_t  shaderId 
)
pure virtual

Attaches a shader to a program.

Parameters
programIdprogram id
shaderIdshader id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindBitangentsBufferObject()

virtual void bindBitangentsBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind bitangents buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindColorsBufferObject()

virtual void bindColorsBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind colors buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindCubeMapTexture()

virtual void bindCubeMapTexture ( int  contextIdx,
int32_t  textureId 
)
pure virtual

Binds a cube map texture with given id or unbinds when using ID_NONE.

Parameters
contextIdxcontext index
textureIdtextureId

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindEffectColorAddsBufferObject()

virtual void bindEffectColorAddsBufferObject ( int  contextIdx,
int32_t  bufferObjectId,
int32_t  divisor 
)
pure virtual

Bind effect color adds buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id
divisordivisor

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindEffectColorMulsBufferObject()

virtual void bindEffectColorMulsBufferObject ( int  contextIdx,
int32_t  bufferObjectId,
int32_t  divisor 
)
pure virtual

Bind effect color muls buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id
divisordivisor

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindFrameBuffer()

virtual void bindFrameBuffer ( int32_t  frameBufferId)
pure virtual

Enables a framebuffer to be rendered.

Parameters
frameBufferIdframeBufferId

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindIndicesBufferObject()

virtual void bindIndicesBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind indices buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindModelMatricesBufferObject()

virtual void bindModelMatricesBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind model matrices buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindNormalsBufferObject()

virtual void bindNormalsBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind normals buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindOriginsBufferObject()

virtual void bindOriginsBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind origins buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindPointSizesBufferObject()

virtual void bindPointSizesBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind point sizes buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindSkinningMatricesBufferObject()

virtual void bindSkinningMatricesBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind skinning matrices result buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindSkinningNormalsBufferObject()

virtual void bindSkinningNormalsBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind skinning normal buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindSkinningNormalsResultBufferObject()

virtual void bindSkinningNormalsResultBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind skinning normals result buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindSkinningVertexJointIdxsBufferObject()

virtual void bindSkinningVertexJointIdxsBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind skinning vertex joint indices buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindSkinningVertexJointsBufferObject()

virtual void bindSkinningVertexJointsBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind skinning vertex joints buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindSkinningVertexJointWeightsBufferObject()

virtual void bindSkinningVertexJointWeightsBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind skinning vertex joint weights buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindSkinningVerticesBufferObject()

virtual void bindSkinningVerticesBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind skinning vertices buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindSkinningVerticesResultBufferObject()

virtual void bindSkinningVerticesResultBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind skinning vertices result buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindSpriteSheetDimensionBufferObject()

virtual void bindSpriteSheetDimensionBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind sprite sheet dimension buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindTangentsBufferObject()

virtual void bindTangentsBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind tangents buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindTexture()

virtual void bindTexture ( int  contextIdx,
int32_t  textureId 
)
pure virtual

Binds a texture with given id or unbinds when using ID_NONE.

Parameters
contextIdxcontext index
textureIdtextureId

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindTextureCoordinatesBufferObject()

virtual void bindTextureCoordinatesBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind texture coordinates buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindTextureSpriteIndicesBufferObject()

virtual void bindTextureSpriteIndicesBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind texture and sprite indices buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ bindVerticesBufferObject()

virtual void bindVerticesBufferObject ( int  contextIdx,
int32_t  bufferObjectId 
)
pure virtual

Bind vertices buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ clear()

virtual void clear ( int32_t  mask)
pure virtual

Clear render buffer with given mask.

Parameters
maskmask

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ createBufferObjects()

virtual vector< int32_t > createBufferObjects ( int32_t  buffers,
bool  useGPUMemory,
bool  shared 
)
pure virtual

Generate buffer objects for vertex data and such.

Parameters
buffersbuffers
useGPUMemoryuse GPU memory
sharedshared between different threads
Returns
ids

Implemented in VKRenderer, GL2Renderer, GL3Renderer, and GLES2Renderer.

◆ createColorBufferTexture()

virtual int32_t createColorBufferTexture ( int32_t  width,
int32_t  height,
int32_t  cubeMapTextureId,
int32_t  cubeMapTextureIndex 
)
pure virtual

Creates a color buffer texture.

Parameters
widthwidth
heightheight @oaram cubeMapTextureId cube map texture id
cubeMapTextureIndexcube map texture index
Returns
color buffer texture id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ createCubeMapTexture()

virtual int32_t createCubeMapTexture ( int  contextIdx,
int32_t  width,
int32_t  height 
)
pure virtual

Create cube map texture from frame buffers.

Parameters
contextIdxcontext index
widthwidth
heightheight
Returns
texture id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ createDepthBufferTexture()

virtual int32_t createDepthBufferTexture ( int32_t  width,
int32_t  height,
int32_t  cubeMapTextureId,
int32_t  cubeMapTextureIndex 
)
pure virtual

Creates a depth buffer texture.

Parameters
widthwidth
heightheight @oaram cubeMapTextureId cube map texture id
cubeMapTextureIndexcube map texture index
Returns
depth texture id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ createFramebufferObject()

virtual int32_t createFramebufferObject ( int32_t  depthBufferTextureId,
int32_t  colorBufferTextureId,
int32_t  cubeMapTextureId = 0,
int32_t  cubeMapTextureIndex = 0 
)
pure virtual

Creates a frame buffer object with depth texture attached.

Parameters
depthBufferTextureIddepth buffer texture id
colorBufferTextureIdcolor buffer texture id
cubeMapTextureIdcube map texture id
cubeMapTextureIndexcube map texture index
Returns
frame buffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ createGBufferColorTexture()

virtual int32_t createGBufferColorTexture ( int32_t  width,
int32_t  height 
)
pure virtual

Creates a geometry buffer color RGBA texture.

Parameters
widthwidth
heightheight
Returns
geometry buffer color RGBA texture id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ createGBufferGeometryTexture()

virtual int32_t createGBufferGeometryTexture ( int32_t  width,
int32_t  height 
)
pure virtual

Creates a geometry buffer geometry texture.

Parameters
widthwidth
heightheight
Returns
geometry buffer geometry texture id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ createGeometryBufferObject()

virtual int32_t createGeometryBufferObject ( int32_t  depthBufferTextureId,
int32_t  geometryBufferTextureId1,
int32_t  geometryBufferTextureId2,
int32_t  geometryBufferTextureId3,
int32_t  colorBufferTextureId1,
int32_t  colorBufferTextureId2,
int32_t  colorBufferTextureId3,
int32_t  colorBufferTextureId4,
int32_t  colorBufferTextureId5 
)
pure virtual

Creates a geometry frame buffer object.

Parameters
depthBufferTextureIddepth buffer texture id
geometryBufferTextureId1geometry texture id 1
geometryBufferTextureId2geometry texture id 2
geometryBufferTextureId3geometry texture id 3
colorBufferTextureId1color buffer texture id 1
colorBufferTextureId2color buffer texture id 2
colorBufferTextureId3color buffer texture id 3
colorBufferTextureId4color buffer texture id 4
colorBufferTextureId5color buffer texture id 5
Returns
frame buffer object id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ createProgram()

virtual int32_t createProgram ( int  type)
pure virtual

Creates a shader program.

Parameters
typetype
Returns
int

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ createTexture()

virtual int32_t createTexture ( )
pure virtual

Creates a texture.

Returns
texture id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ disableBlending()

virtual void disableBlending ( )
pure virtual

Disables blending.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ disableCulling()

virtual void disableCulling ( int  contextIdx)
pure virtual

Disable culling.

Parameters
contextIdxcontext index

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ disableDepthBufferTest()

virtual void disableDepthBufferTest ( )
pure virtual

Disable depth buffer test.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ disableDepthBufferWriting()

virtual void disableDepthBufferWriting ( )
pure virtual

Disable depth buffer writing.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ dispatchCompute()

virtual void dispatchCompute ( int  contextIdx,
int32_t  numGroupsX,
int32_t  numGroupsY,
int32_t  numGroupsZ 
)
pure virtual

Dispatch compute.

Parameters
contextIdxcontext index
numGroupsXnum groups x
numGroupsYnum groups y
numGroupsZnum groups z

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ disposeBufferObjects()

virtual void disposeBufferObjects ( vector< int32_t > &  bufferObjectIds)
pure virtual

Disposes a frame buffer object.

Parameters
bufferObjectIdsframe buffer id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ disposeFrameBufferObject()

virtual void disposeFrameBufferObject ( int32_t  frameBufferId)
pure virtual

Disposes a frame buffer object.

Parameters
frameBufferIdframe buffer id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ disposeTexture()

virtual void disposeTexture ( int32_t  textureId)
pure virtual

Dispose a texture.

Parameters
textureIdtexture id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ doneGuiMode()

virtual void doneGuiMode ( )
pure virtual

Set up renderer for 3d rendering.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ drawIndexedTrianglesFromBufferObjects()

virtual void drawIndexedTrianglesFromBufferObjects ( int  contextIdx,
int32_t  triangles,
int32_t  trianglesOffset 
)
pure virtual

Draw indexed triangles from buffer objects.

Parameters
contextIdxcontext index
trianglestriangles
trianglesOffsettriangles offset

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ drawInstancedIndexedTrianglesFromBufferObjects()

virtual void drawInstancedIndexedTrianglesFromBufferObjects ( int  contextIdx,
int32_t  triangles,
int32_t  trianglesOffset,
int32_t  instances 
)
pure virtual

Draw instanced indexed triangles from buffer objects.

Parameters
contextIdxcontext index
trianglestriangles
trianglesOffsettriangles offset
instancesinstances

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ drawInstancedTrianglesFromBufferObjects()

virtual void drawInstancedTrianglesFromBufferObjects ( int  contextIdx,
int32_t  triangles,
int32_t  trianglesOffset,
int32_t  instances 
)
pure virtual

Draw instanced triangles from buffer objects.

Parameters
contextIdxcontext index
trianglestriangles
trianglesOffsettriangles offset
instancesinstances

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ drawLinesFromBufferObjects()

virtual void drawLinesFromBufferObjects ( int  contextIdx,
int32_t  points,
int32_t  pointsOffset 
)
pure virtual

Draw lines from buffer objects.

Parameters
contextIdxcontext index
pointspoints
pointsOffsetpoints offset

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ drawPointsFromBufferObjects()

virtual void drawPointsFromBufferObjects ( int  contextIdx,
int32_t  points,
int32_t  pointsOffset 
)
pure virtual

Draw points from buffer objects.

Parameters
contextIdxcontext index
pointspoints
pointsOffsetpoints offset

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ drawTrianglesFromBufferObjects()

virtual void drawTrianglesFromBufferObjects ( int  contextIdx,
int32_t  triangles,
int32_t  trianglesOffset 
)
pure virtual

Draw triangles from buffer objects.

Parameters
contextIdxcontext index
trianglestriangles
trianglesOffsettriangles offset

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ enableAdditionBlending()

virtual void enableAdditionBlending ( )
pure virtual

Enable blending with c = a + b.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ enableBlending()

virtual void enableBlending ( )
pure virtual

Enables blending.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ enableCulling()

virtual void enableCulling ( int  contextIdx)
pure virtual

Enable culling.

Parameters
contextIdxcontext index

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ enableDepthBufferTest()

virtual void enableDepthBufferTest ( )
pure virtual

Enable depth buffer test.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ enableDepthBufferWriting()

virtual void enableDepthBufferWriting ( )
pure virtual

Enable depth buffer writing.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ finishFrame()

virtual void finishFrame ( )
pure virtual

Finish frame.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ generateMipMap()

Texture * generateMipMap ( const string &  id,
Texture texture,
int32_t  level,
int32_t  atlasBorderSize 
)

Generate mip map for atlas texture currently.

Parameters
idid
texturetexture
levellevel
atlasBorderSizeatlasBorderSize

Definition at line 69 of file Renderer.cpp.

◆ getCameraMatrix()

Matrix4x4 & getCameraMatrix ( )
inline
Returns
camera matrix

Definition at line 543 of file Renderer.h.

◆ getCameraPosition()

Vector3 & getCameraPosition ( )
inline
Returns
camera position

Definition at line 511 of file Renderer.h.

◆ getEffectColorAdd()

array< float, 4 > & getEffectColorAdd ( int  contextIdx)
inline

Get effect color add.

Parameters
context
Returns
effect color add

Definition at line 1126 of file Renderer.h.

◆ getEffectColorMul()

array< float, 4 > & getEffectColorMul ( int  contextIdx)
inline

Get effect color mul.

Parameters
context
Returns
effect color mul

Definition at line 1116 of file Renderer.h.

◆ getEffectPass()

int32_t getEffectPass ( )
inline

Get effect pass.

Returns
effect pass

Definition at line 460 of file Renderer.h.

◆ getEnvironmentMappingCubeMapPosition()

array< float, 3 > & getEnvironmentMappingCubeMapPosition ( int  contextIdx)
inline

Get environment mapping cube map position.

Parameters
contextIdxcontext index
Returns
environment mapping position

Definition at line 1345 of file Renderer.h.

◆ getLight()

Renderer_Light & getLight ( int  contextIdx,
int32_t  lightIdx 
)
inline

Get light.

Parameters
contextIdxcontext index
lightIdlight id
Returns
light

Definition at line 1099 of file Renderer.h.

◆ getLighting()

int32_t getLighting ( int  contextIdx)
inline

Get current lighting model.

Parameters
contextIdxcontext index
Returns
lighting, see LIGHTING_*

Definition at line 493 of file Renderer.h.

◆ getMaskMaxValue()

float getMaskMaxValue ( int  contextIdx)
inline

Get mask max value.

Returns
mask max value

Definition at line 1325 of file Renderer.h.

◆ getModelViewMatrix()

Matrix4x4 & getModelViewMatrix ( )
inline
Returns
model view matrix or in some cases the model matrix

Definition at line 556 of file Renderer.h.

◆ getPBRMaterial()

Renderer_PBRMaterial & getPBRMaterial ( int  contextIdx)
inline

Get PBR material.

Parameters
contextIdxcontext index
Returns
material

Definition at line 1152 of file Renderer.h.

◆ getProgramUniformLocation()

virtual int32_t getProgramUniformLocation ( int32_t  programId,
const string &  name 
)
pure virtual

Returns location of given uniform variable.

Parameters
programIdprogram id
nameuniform name
Returns

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ getProjectionMatrix()

Matrix4x4 & getProjectionMatrix ( )
inline
Returns
projection matrix

Definition at line 530 of file Renderer.h.

◆ getRenderer()

virtual const string getRenderer ( )
pure virtual
Returns
renderer

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ getRendererType()

RendererType getRendererType ( )
inline
Returns
renderer type

Definition at line 203 of file Renderer.h.

◆ getShader()

const string & getShader ( int  contextIdx)
inline

Get shader.

Parameters
contextIdxcontext index

Definition at line 1167 of file Renderer.h.

◆ getShaderParameters()

const EntityShaderParameters & getShaderParameters ( int  contextIdx)
inline

Get shader parameters.

Parameters
contextIdxcontext index
Returns
shader parameters

Definition at line 1194 of file Renderer.h.

◆ getShaderPrefix()

const string & getShaderPrefix ( )
inline

Get shader prefix.

Returns
shader prefix

Definition at line 476 of file Renderer.h.

◆ getShaderVersion()

virtual const string getShaderVersion ( )
pure virtual
Returns
shader version e.g. gl2, gl3 or gles2

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ getSpecularMaterial()

Renderer_SpecularMaterial & getSpecularMaterial ( int  contextIdx)
inline

Get specular material.

Parameters
contextIdxcontext index
Returns
material

Definition at line 1142 of file Renderer.h.

◆ getStatistics()

virtual const Renderer_Statistics getStatistics ( )
pure virtual
Returns
renderer statistics

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ getTextureMatrix()

Matrix2D3x3 & getTextureMatrix ( int  contextIdx)
inline

Get texture matrix.

Parameters
contextIdxcontext index
Returns
texture matrix

Definition at line 578 of file Renderer.h.

◆ getTextureUnit()

virtual int32_t getTextureUnit ( int  contextIdx)
pure virtual

Get texture unit.

Parameters
contextIdxcontext index
Returns
active texture unit

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ getTextureUnits()

virtual int32_t getTextureUnits ( )
pure virtual
Returns
number of texture units

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ getVendor()

virtual const string getVendor ( )
pure virtual
Returns
vendor

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ getViewPortHeight()

int32_t getViewPortHeight ( )
inline
Returns
viewport height

Definition at line 332 of file Renderer.h.

◆ getViewportMatrix()

Matrix4x4 & getViewportMatrix ( )
inline
Returns
view port matrix

Definition at line 569 of file Renderer.h.

◆ getViewPortWidth()

int32_t getViewPortWidth ( )
inline
Returns
viewport width

Definition at line 325 of file Renderer.h.

◆ initGuiMode()

virtual void initGuiMode ( )
pure virtual

Set up renderer for GUI rendering.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ initialize()

virtual void initialize ( )
pure virtual

Initialize renderer.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ initializeFrame()

virtual void initializeFrame ( )
pure virtual

Pre Frame Initialization.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ initializeWindowSystemRendererContext()

virtual bool initializeWindowSystemRendererContext ( GLFWwindow *  glfwWindow)
pure virtual

Initialize window system renderer context.

Parameters
glfwWindowGLFL window

Implemented in EngineGL2Renderer, EngineGL3Renderer, EngineGLES2Renderer, and EngineVKRenderer.

◆ isBufferObjectsAvailable()

virtual bool isBufferObjectsAvailable ( )
pure virtual

Checks if buffer objects is available.

Returns
buffer objects availability

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ isComputeShaderAvailable()

virtual bool isComputeShaderAvailable ( )
pure virtual
Returns
if compute shaders are available

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ isDeferredShadingAvailable()

virtual bool isDeferredShadingAvailable ( )
pure virtual
Returns
If deferred shading is available

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ isDepthTextureAvailable()

virtual bool isDepthTextureAvailable ( )
pure virtual

Checks if depth texture is available.

Returns
depth texture is available

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ isGLCLAvailable()

virtual bool isGLCLAvailable ( )
pure virtual
Returns
if OpenGL+CL is available

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ isInstancedRenderingAvailable()

virtual bool isInstancedRenderingAvailable ( )
pure virtual

Checks if instanced rendering is available.

Returns
instance rendering availability

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ isNormalMappingAvailable()

virtual bool isNormalMappingAvailable ( )
pure virtual
Returns
if normal mapping is supported

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ isPBRAvailable()

virtual bool isPBRAvailable ( )
pure virtual
Returns
if PBR lighting is supported

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ isSpecularMappingAvailable()

virtual bool isSpecularMappingAvailable ( )
pure virtual
Returns
if specular mapping is supported

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ isSupportingIntegerProgramAttributes()

virtual bool isSupportingIntegerProgramAttributes ( )
pure virtual
Returns
is supporting integer program attributes

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ isSupportingMultithreadedRendering()

virtual bool isSupportingMultithreadedRendering ( )
pure virtual
Returns
if renderer is supporting multi threaded rendering

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ isUsingProgramAttributeLocation()

virtual bool isUsingProgramAttributeLocation ( )
pure virtual
Returns
requires program attribute location

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ isUsingShortIndices()

virtual bool isUsingShortIndices ( )
pure virtual
Returns
Returns if renderer is using short indices, otherwise it uses int indices

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ linkProgram()

virtual bool linkProgram ( int32_t  programId)
pure virtual

Links attached shaders to a program.

Parameters
programIdprogram id
Returns
success

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ loadShader()

virtual int32_t loadShader ( int32_t  type,
const string &  pathName,
const string &  fileName,
const string &  definitions = string(),
const string &  functions = string() 
)
pure virtual

Loads a shader.

Parameters
typetype
pathNamepath name
fileNamefile name
definitionspreprocessor definitions
functionsincluded functions
Returns
shader handle

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ memoryBarrier()

virtual void memoryBarrier ( )
pure virtual

Memory barrier.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ onBindTexture()

virtual void onBindTexture ( int  contextIdx,
int32_t  textureId 
)
pure virtual

On bind texture event.

Parameters
contextIdxcontext index
textureIdtextureId

Implemented in EngineGL2Renderer, EngineGL3Renderer, EngineGLES2Renderer, and EngineVKRenderer.

◆ onUpdateCameraMatrix()

virtual void onUpdateCameraMatrix ( int  contextIdx)
pure virtual

Update camera matrix event.

Parameters
contextIdxcontext index

Implemented in EngineGL2Renderer, EngineGL3Renderer, EngineGLES2Renderer, and EngineVKRenderer.

◆ onUpdateEffect()

virtual void onUpdateEffect ( int  contextIdx)
pure virtual

Update material.

Parameters
contextIdxcontext index

Implemented in EngineGL2Renderer, EngineGL3Renderer, EngineGLES2Renderer, and EngineVKRenderer.

◆ onUpdateLight()

virtual void onUpdateLight ( int  contextIdx,
int32_t  lightId 
)
pure virtual

Update light.

Parameters
contextIdxcontext index
lightIdlight id

Implemented in EngineGL2Renderer, EngineGL3Renderer, EngineGLES2Renderer, and EngineVKRenderer.

◆ onUpdateMaterial()

virtual void onUpdateMaterial ( int  contextIdx)
pure virtual

On update material.

Parameters
contextIdxcontext index

Implemented in EngineGL2Renderer, EngineGL3Renderer, EngineGLES2Renderer, and EngineVKRenderer.

◆ onUpdateModelViewMatrix()

virtual void onUpdateModelViewMatrix ( int  contextIdx)
pure virtual

Update model view matrix event.

Parameters
contextIdxcontext index

Implemented in EngineGL2Renderer, EngineGL3Renderer, EngineGLES2Renderer, and EngineVKRenderer.

◆ onUpdateProjectionMatrix()

virtual void onUpdateProjectionMatrix ( int  contextIdx)
pure virtual

Update projection matrix event.

Parameters
contextIdxcontext index

Implemented in EngineGL2Renderer, EngineGL3Renderer, EngineGLES2Renderer, and EngineVKRenderer.

◆ onUpdateShader()

virtual void onUpdateShader ( int  contextIdx)
pure virtual

On update shader.

Parameters
contextIdxcontext index

Implemented in EngineGL2Renderer, EngineGL3Renderer, EngineGLES2Renderer, and EngineVKRenderer.

◆ onUpdateShaderParameters()

virtual void onUpdateShaderParameters ( int  contextIdx)
pure virtual

On update shader parameters.

Parameters
contextIdxcontext index

Implemented in EngineGL2Renderer, EngineGL3Renderer, EngineGLES2Renderer, and EngineVKRenderer.

◆ onUpdateTextureMatrix()

virtual void onUpdateTextureMatrix ( int  contextIdx)
pure virtual

Update texture matrix for active texture unit event.

Parameters
contextIdxcontext index

Implemented in EngineGL2Renderer, EngineGL3Renderer, EngineGLES2Renderer, and EngineVKRenderer.

◆ prepareWindowSystemRendererContext()

virtual bool prepareWindowSystemRendererContext ( int  tryIdx)
pure virtual

Prepare window system renderer context.

Parameters
tryIdxtry index

Implemented in EngineGL2Renderer, EngineGL3Renderer, EngineGLES2Renderer, and EngineVKRenderer.

◆ readPixelDepth()

virtual float readPixelDepth ( int32_t  x,
int32_t  y 
)
pure virtual

Reads a pixel depth.

Parameters
xx
yy
Returns
depth 0.0f..1.0f

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ readPixels()

virtual ByteBuffer * readPixels ( int32_t  x,
int32_t  y,
int32_t  width,
int32_t  height 
)
pure virtual

Read pixels.

Parameters
xx
yy
widthwidth
heightheight
Returns
byte buffer

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ resizeColorBufferTexture()

virtual void resizeColorBufferTexture ( int32_t  textureId,
int32_t  width,
int32_t  height 
)
pure virtual

Resize color buffer texture.

Parameters
textureIdtexture id
widthwidth
heightheight

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ resizeDepthBufferTexture()

virtual void resizeDepthBufferTexture ( int32_t  textureId,
int32_t  width,
int32_t  height 
)
pure virtual

Resizes a depth texture.

Parameters
textureIdtexture id
widthwidth
heightheight

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ resizeGBufferColorTexture()

virtual void resizeGBufferColorTexture ( int32_t  textureId,
int32_t  width,
int32_t  height 
)
pure virtual

Resizes a geometry buffer color RGBA texture.

Parameters
textureIdtexture id
widthwidth
heightheight
Returns
geometry buffer color RGBA texture id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ resizeGBufferGeometryTexture()

virtual void resizeGBufferGeometryTexture ( int32_t  textureId,
int32_t  width,
int32_t  height 
)
pure virtual

Resizes a geometry buffer geometry texture.

Parameters
textureIdtexture id
widthwidth
heightheight
Returns
geometry buffer geometry texture id

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setClearColor()

virtual void setClearColor ( float  red,
float  green,
float  blue,
float  alpha 
)
pure virtual

Set up clear color.

Parameters
redred
greengreen
blueblue
alphaalpha

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setColorMask()

virtual void setColorMask ( bool  red,
bool  green,
bool  blue,
bool  alpha 
)
pure virtual

Set up GL rendering colormask.

Parameters
redred
greengreen
blueblue
alphaalpha

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setCullFace()

virtual void setCullFace ( int32_t  cullFace)
pure virtual

Sets up which face will be culled.

Parameters
cullFacecull face

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setDepthFunction()

virtual void setDepthFunction ( int32_t  depthFunction)
pure virtual

Set up depth function.

Parameters
depthFunctiondepth function

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setEffectPass()

void setEffectPass ( int32_t  effectPass)
inline

Set effect pass.

Parameters
effectPasseffect pass

Definition at line 468 of file Renderer.h.

◆ setEnvironmentMappingCubeMapPosition()

void setEnvironmentMappingCubeMapPosition ( int  contextIdx,
array< float, 3 > &  position 
)
inline

Set environment mapping cube map position.

Parameters
contextIdxcontext index
positionposition

Definition at line 1355 of file Renderer.h.

◆ setFrontFace()

virtual void setFrontFace ( int  contextIdx,
int32_t  frontFace 
)
pure virtual

Set up clock wise or counter clock wise faces as front face.

Parameters
contextIdxcontext index
frontFacefrontFace

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setLighting()

void setLighting ( int  contextIdx,
int32_t  lighting 
)
inline

Set current lighting model.

Parameters
contextIdxcontext index
lightinglighting, see LIGHTING_*

Definition at line 503 of file Renderer.h.

◆ setLineWidth()

virtual void setLineWidth ( float  lineWidth)
pure virtual

Set line width.

Parameters
lineWidthline width

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setMaskMaxValue()

void setMaskMaxValue ( int  contextIdx,
float  maskMaxValue 
)
inline

Set mask max value.

Parameters
contextIdxcontext index
maskMinValuemask mask value

Definition at line 1335 of file Renderer.h.

◆ setProgramAttributeLocation()

virtual void setProgramAttributeLocation ( int32_t  programId,
int32_t  location,
const string &  name 
)
pure virtual

Bind attribute to a input location.

Parameters
programIdprogram id
locationlocation
nameattribute name

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setProgramUniformFloat()

virtual void setProgramUniformFloat ( int  contextIdx,
int32_t  uniformId,
float  value 
)
pure virtual

Set up a float uniform value.

Parameters
contextIdxcontext index
uniformIduniform id
valuevalue

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setProgramUniformFloatMatrices4x4()

virtual void setProgramUniformFloatMatrices4x4 ( int  contextIdx,
int32_t  uniformId,
int32_t  count,
FloatBuffer data 
)
pure virtual

Set up a float matrices 4x4 uniform values.

Parameters
contextIdxcontext index
uniformIduniform id
countcount
datadata

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setProgramUniformFloatMatrix3x3()

virtual void setProgramUniformFloatMatrix3x3 ( int  contextIdx,
int32_t  uniformId,
const array< float, 9 > &  value 
)
pure virtual

Set up a float matrix 3x3 uniform value.

Parameters
contextIdxcontext index
uniformIduniform id
valuevalue

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setProgramUniformFloatMatrix4x4()

virtual void setProgramUniformFloatMatrix4x4 ( int  contextIdx,
int32_t  uniformId,
const array< float, 16 > &  value 
)
pure virtual

Set up a float matrix 4x4 uniform value.

Parameters
contextIdxcontext index
uniformIduniform id
valuevalue

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setProgramUniformFloatVec2()

virtual void setProgramUniformFloatVec2 ( int  contextIdx,
int32_t  uniformId,
const array< float, 2 > &  data 
)
pure virtual

Set up a float vec2 uniform value.

Parameters
contextIdxcontext index
uniformIduniform id
datadata

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setProgramUniformFloatVec3()

virtual void setProgramUniformFloatVec3 ( int  contextIdx,
int32_t  uniformId,
const array< float, 3 > &  data 
)
pure virtual

Set up a float vec3 uniform value.

Parameters
contextIdxcontext index
uniformIduniform id
datadata

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setProgramUniformFloatVec4()

virtual void setProgramUniformFloatVec4 ( int  contextIdx,
int32_t  uniformId,
const array< float, 4 > &  data 
)
pure virtual

Set up a float vec4 uniform value.

Parameters
contextIdxcontext index
uniformIduniform id
datadata

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setProgramUniformInteger()

virtual void setProgramUniformInteger ( int  contextIdx,
int32_t  uniformId,
int32_t  value 
)
pure virtual

Set up a integer uniform value.

Parameters
contextIdxcontext index
uniformIduniform id
valuevalue

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setShader()

void setShader ( int  contextIdx,
const string &  id 
)
inline

Set shader.

Parameters
contextIdxcontext index
idshader id
parametersparameters

Definition at line 1178 of file Renderer.h.

◆ setShaderParameters()

void setShaderParameters ( int  contextIdx,
const EntityShaderParameters parameters 
)
inline

Set shader parameters.

Parameters
contextIdxcontext index
parametersshader parameters

Definition at line 1204 of file Renderer.h.

◆ setShaderPrefix()

void setShaderPrefix ( const string &  shaderPrefix)
inline

Set shader prefix.

Parameters
shaderPrefixshader prefix

Definition at line 484 of file Renderer.h.

◆ setTextureUnit()

virtual void setTextureUnit ( int  contextIdx,
int32_t  textureUnit 
)
pure virtual

Sets up texture unit.

Parameters
contextIdxcontext index
textureUnittexture unit

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setViewPort()

virtual void setViewPort ( int32_t  width,
int32_t  height 
)
pure virtual

Set up viewport parameter.

Parameters
widthwidth
heightheight

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ setVSync()

virtual void setVSync ( bool  vSync)
pure virtual

Enable/Disable v-sync.

Parameters
vSyncV-sync enabled

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ unbindBufferObjects()

virtual void unbindBufferObjects ( int  contextIdx)
pure virtual

Unbind buffer objects.

Parameters
contextIdxcontext index

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ updateViewPort()

virtual void updateViewPort ( )
pure virtual

Update viewport.

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ uploadBufferObject() [1/3]

virtual void uploadBufferObject ( int  contextIdx,
int32_t  bufferObjectId,
int32_t  size,
FloatBuffer data 
)
pure virtual

Uploads buffer data to buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id
sizesize
datadata

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ uploadBufferObject() [2/3]

virtual void uploadBufferObject ( int  contextIdx,
int32_t  bufferObjectId,
int32_t  size,
IntBuffer data 
)
pure virtual

Uploads buffer data to buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id
sizesize
datadata

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ uploadBufferObject() [3/3]

virtual void uploadBufferObject ( int  contextIdx,
int32_t  bufferObjectId,
int32_t  size,
ShortBuffer data 
)
pure virtual

Uploads buffer data to buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id
sizesize
datadata

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ uploadCubeMapTexture()

virtual void uploadCubeMapTexture ( int  contextIdx,
Texture textureLeft,
Texture textureRight,
Texture textureTop,
Texture textureBottom,
Texture textureFront,
Texture textureBack 
)
pure virtual

Uploads cube map texture data to current bound texture.

Parameters
contextIdxcontext index
textureLefttexture left
textureRighttexture right
textureToptexture top
textureBottomtexture bottom
textureFronttexture front
textureBacktexture back

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ uploadIndicesBufferObject() [1/2]

virtual void uploadIndicesBufferObject ( int  contextIdx,
int32_t  bufferObjectId,
int32_t  size,
IntBuffer data 
)
pure virtual

Uploads buffer data to buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id
sizesize
datadata

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ uploadIndicesBufferObject() [2/2]

virtual void uploadIndicesBufferObject ( int  contextIdx,
int32_t  bufferObjectId,
int32_t  size,
ShortBuffer data 
)
pure virtual

Uploads buffer data to buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id
sizesize
datadata

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ uploadSkinningBufferObject() [1/2]

virtual void uploadSkinningBufferObject ( int  contextIdx,
int32_t  bufferObjectId,
int32_t  size,
FloatBuffer data 
)
pure virtual

Upload skinning buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id
sizesize
datadata

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ uploadSkinningBufferObject() [2/2]

virtual void uploadSkinningBufferObject ( int  contextIdx,
int32_t  bufferObjectId,
int32_t  size,
IntBuffer data 
)
pure virtual

Upload skinning buffer object.

Parameters
contextIdxcontext index
bufferObjectIdbuffer object id
sizesize
datadata

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ uploadTexture()

virtual void uploadTexture ( int  contextIdx,
Texture texture 
)
pure virtual

Uploads texture data to current bound texture.

Parameters
contextIdxcontext index
texturetexture

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

◆ useProgram()

virtual void useProgram ( int  contextIdx,
int32_t  programId 
)
pure virtual

Use shader program.

Parameters
contextIdxcontext index
programIdprogramId

Implemented in GL2Renderer, GL3Renderer, GLES2Renderer, and VKRenderer.

Member Data Documentation

◆ cameraMatrix

Matrix4x4 cameraMatrix
protected

Definition at line 182 of file Renderer.h.

◆ cameraPosition

Vector3 cameraPosition
protected

Definition at line 180 of file Renderer.h.

◆ CLEAR_COLOR_BUFFER_BIT

int32_t CLEAR_COLOR_BUFFER_BIT

Definition at line 144 of file Renderer.h.

◆ CLEAR_DEPTH_BUFFER_BIT

int32_t CLEAR_DEPTH_BUFFER_BIT

Definition at line 143 of file Renderer.h.

◆ CONTEXTINDEX_DEFAULT

int32_t CONTEXTINDEX_DEFAULT

Definition at line 140 of file Renderer.h.

◆ CUBEMAPTEXTUREINDEX_NEGATIVE_X

int32_t CUBEMAPTEXTUREINDEX_NEGATIVE_X

Definition at line 162 of file Renderer.h.

◆ CUBEMAPTEXTUREINDEX_NEGATIVE_Y

int32_t CUBEMAPTEXTUREINDEX_NEGATIVE_Y

Definition at line 165 of file Renderer.h.

◆ CUBEMAPTEXTUREINDEX_NEGATIVE_Z

int32_t CUBEMAPTEXTUREINDEX_NEGATIVE_Z

Definition at line 167 of file Renderer.h.

◆ CUBEMAPTEXTUREINDEX_POSITIVE_X

int32_t CUBEMAPTEXTUREINDEX_POSITIVE_X

Definition at line 163 of file Renderer.h.

◆ CUBEMAPTEXTUREINDEX_POSITIVE_Y

int32_t CUBEMAPTEXTUREINDEX_POSITIVE_Y

Definition at line 164 of file Renderer.h.

◆ CUBEMAPTEXTUREINDEX_POSITIVE_Z

int32_t CUBEMAPTEXTUREINDEX_POSITIVE_Z

Definition at line 166 of file Renderer.h.

◆ CULLFACE_BACK

int32_t CULLFACE_BACK

Definition at line 146 of file Renderer.h.

◆ CULLFACE_FRONT

int32_t CULLFACE_FRONT

Definition at line 145 of file Renderer.h.

◆ DEPTHFUNCTION_ALWAYS

int32_t DEPTHFUNCTION_ALWAYS

Definition at line 155 of file Renderer.h.

◆ DEPTHFUNCTION_EQUAL

int32_t DEPTHFUNCTION_EQUAL

Definition at line 156 of file Renderer.h.

◆ DEPTHFUNCTION_GREATEREQUAL

int32_t DEPTHFUNCTION_GREATEREQUAL

Definition at line 158 of file Renderer.h.

◆ DEPTHFUNCTION_LESSEQUAL

int32_t DEPTHFUNCTION_LESSEQUAL

Definition at line 157 of file Renderer.h.

◆ effectPass

int32_t effectPass
protected

Definition at line 185 of file Renderer.h.

◆ FRAMEBUFFER_DEFAULT

int32_t FRAMEBUFFER_DEFAULT

Definition at line 159 of file Renderer.h.

◆ FRONTFACE_CCW

int32_t FRONTFACE_CCW

Definition at line 161 of file Renderer.h.

◆ FRONTFACE_CW

int32_t FRONTFACE_CW

Definition at line 160 of file Renderer.h.

◆ ID_NONE

int32_t ID_NONE

Definition at line 142 of file Renderer.h.

◆ LIGHTING_NONE

int32_t LIGHTING_NONE

Definition at line 169 of file Renderer.h.

◆ LIGHTING_PBR

int32_t LIGHTING_PBR

Definition at line 171 of file Renderer.h.

◆ LIGHTING_SPECULAR

int32_t LIGHTING_SPECULAR

Definition at line 170 of file Renderer.h.

◆ modelViewMatrix

Matrix4x4 modelViewMatrix
protected

Definition at line 183 of file Renderer.h.

◆ PROGRAM_COMPUTE

int32_t PROGRAM_COMPUTE

Definition at line 151 of file Renderer.h.

◆ PROGRAM_LINES

int32_t PROGRAM_LINES

Definition at line 150 of file Renderer.h.

◆ PROGRAM_OBJECTS

int32_t PROGRAM_OBJECTS

Definition at line 148 of file Renderer.h.

◆ PROGRAM_POINTS

int32_t PROGRAM_POINTS

Definition at line 149 of file Renderer.h.

◆ projectionMatrix

Matrix4x4 projectionMatrix
protected

Definition at line 181 of file Renderer.h.

◆ rendererContexts

vector<Renderer_Context> rendererContexts
protected

Definition at line 188 of file Renderer.h.

◆ rendererType

RendererType rendererType { RENDERERTYPE_NONE }

Definition at line 138 of file Renderer.h.

◆ SHADER_COMPUTE_SHADER

int32_t SHADER_COMPUTE_SHADER

Definition at line 154 of file Renderer.h.

◆ SHADER_FRAGMENT_SHADER

int32_t SHADER_FRAGMENT_SHADER

Definition at line 152 of file Renderer.h.

◆ SHADER_VERTEX_SHADER

int32_t SHADER_VERTEX_SHADER

Definition at line 153 of file Renderer.h.

◆ shaderPrefix

string shaderPrefix
protected

Definition at line 186 of file Renderer.h.

◆ statistics

Renderer_Statistics statistics
protected

Definition at line 179 of file Renderer.h.

◆ TEXTUREUNITS_MAX

int32_t TEXTUREUNITS_MAX

Definition at line 147 of file Renderer.h.

◆ UNIFORM_CL_SKINNING_INSTANCE_COUNT

int32_t UNIFORM_CL_SKINNING_INSTANCE_COUNT

Definition at line 175 of file Renderer.h.

◆ UNIFORM_CL_SKINNING_MATRIX_COUNT

int32_t UNIFORM_CL_SKINNING_MATRIX_COUNT

Definition at line 174 of file Renderer.h.

◆ UNIFORM_CL_SKINNING_VERTEX_COUNT

int32_t UNIFORM_CL_SKINNING_VERTEX_COUNT

Definition at line 173 of file Renderer.h.

◆ viewPortHeight

int32_t viewPortHeight
protected

Definition at line 178 of file Renderer.h.

◆ viewportMatrix

Matrix4x4 viewportMatrix
protected

Definition at line 184 of file Renderer.h.

◆ viewPortWidth

int32_t viewPortWidth
protected

Definition at line 177 of file Renderer.h.


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