ezEngine  Milestone 7
ezGALShaderGL Class Reference
Inheritance diagram for ezGALShaderGL:

Public Member Functions

EZ_FORCE_INLINE glProgramId GetGLShaderProgram () const
 Returns the handle of the linked OpenGL shader program.
 
EZ_FORCE_INLINE glShaderId GetGLVertexShader () const
 
EZ_FORCE_INLINE glShaderId GetGLPixelShader () const
 

Protected Member Functions

 ezGALShaderGL (const ezGALShaderCreationDescription &description)
 
virtual ezResult InitPlatform (ezGALDevice *pDevice) override
 
virtual ezResult DeInitPlatform (ezGALDevice *pDevice) override
 
- Protected Member Functions inherited from ezGALShader
 ezGALShader (const ezGALShaderCreationDescription &Description)
 

Static Protected Member Functions

static ezResult CompileShader (glProgramId &dstProgram, glShaderId &dstShader, ezUInt32 glShaderType, const void *szRawSource)
 Intern helper function to compile and attach a shader. More...
 

Protected Attributes

glProgramId m_Program
 
glShaderId m_VertexShader
 
glShaderId m_PixelShader
 

Friends

class ezGALDeviceGL
 
class ezMemoryUtils
 

Member Function Documentation

ezResult ezGALShaderGL::CompileShader ( glProgramId &  dstProgram,
glShaderId &  dstShader,
ezUInt32  glShaderType,
const void *  szRawSource 
)
staticprotected

Intern helper function to compile and attach a shader.

Todo:
We need a name for the shader, otherwise this log message is not very useful!
ezResult ezGALShaderGL::InitPlatform ( ezGALDevice pDevice)
overrideprotectedvirtual
Todo:
Maybe it would be a good idea to check if incoming shaders were already compiled
Todo:
This won't work as the macro always calls the version that uses vargs.
Todo:
We need a name for the shader, otherwise this log message is not very useful!

Implements ezGALShader.


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