GlistEngine
Loading...
Searching...
No Matches
gShader Class Reference

#include <gShader.h>

Inheritance diagram for gShader:
Collaboration diagram for gShader:

Public Member Functions

 gShader ()
 
 gShader (const std::string &shaderFullPath)
 
 gShader (const std::string &vertexFullPath, const std::string &fragmentFullPath, const std::string &geometryFullPath="")
 
 ~gShader ()
 
void load (const std::string &shaderFullPath)
 
void load (const std::string &vertexFullPath, const std::string &fragmentFullPath, const std::string &geometryFullPath="")
 
void loadShader (const std::string &shaderFilename)
 
void loadShader (const std::string &vertexFileName, const std::string &fragmentFileName, const std::string &geometryFileName="")
 
void loadProgram (const std::string &vertexSource, const std::string &fragmentSource, const std::string &geometrySource="")
 
void loadProgram (const std::string &shaderSource)
 
template<typename T >
void attachUbo (const std::string &uboName, const gUbo< T > *ubo)
 
void use () const
 
void setBool (const std::string &name, bool value)
 
void setInt (const std::string &name, int value)
 
void setUnsignedInt (const std::string &name, unsigned int value)
 
void setFloat (const std::string &name, float value)
 
void setVec2 (const std::string &name, const glm::vec2 &value)
 
void setVec2 (const std::string &name, float x, float y)
 
void setVec3 (const std::string &name, const glm::vec3 &value)
 
void setVec3 (const std::string &name, float x, float y, float z)
 
void setVec4 (const std::string &name, const glm::vec4 &value)
 
void setVec4 (const std::string &name, float x, float y, float z, float w)
 
void setMat2 (const std::string &name, const glm::mat2 &mat)
 
void setMat3 (const std::string &name, const glm::mat3 &mat)
 
void setMat4 (const std::string &name, const glm::mat4 &mat)
 
GLint getUniformLocation (const std::string &name)
 
- Public Member Functions inherited from gRenderObject
 gRenderObject ()
 
int getScreenWidth ()
 
int getScreenHeight ()
 
void pushMatrix ()
 
void popMatrix ()
 
- Public Member Functions inherited from gObject
 gObject ()
 
void logi (std::string message)
 
void logd (std::string message)
 
void logw (std::string message)
 
void loge (std::string message)
 
void logi (std::string tag, std::string message)
 
void logd (std::string tag, std::string message)
 
void logw (std::string tag, std::string message)
 
void loge (std::string tag, std::string message)
 

Public Attributes

bool loaded
 
GLuint id
 

Additional Inherited Members

- Static Public Member Functions inherited from gRenderObject
static void setScreenSize (int screenWidth, int screenHeight)
 
static void setUnitScreenSize (int unitWidth, int unitHeight)
 
static void setScreenScaling (int screenScaling)
 
static void enableShadowMapping ()
 
static void disableShadowMapping ()
 
static bool isShadowMappingEnabled ()
 
static gRenderergetRenderer ()
 
static void destroyRenderer ()
 
static void createRenderer ()
 
- Static Public Member Functions inherited from gObject
static std::string gGetAppDir ()
 
static std::string gGetAssetsDir ()
 
static void gSetAssetsDir (std::string assetsDir)
 
static std::string gGetFilesDir ()
 
static std::string gGetImagesDir ()
 
static std::string gGetFontsDir ()
 
static std::string gGetModelsDir ()
 
static std::string gGetTexturesDir ()
 
static std::string gGetShadersDir ()
 
static std::string gGetSoundsDir ()
 
static std::string gGetDatabasesDir ()
 
static std::string gGetVideosDir ()
 
static void setCurrentResolution (int scalingNo, int currentResolutionNo)
 
- Static Public Attributes inherited from gObject
static const int LOGLEVEL_SILENT
 
static const int LOGLEVEL_DEBUG
 
static const int LOGLEVEL_INFO
 
static const int LOGLEVEL_WARNING
 
static const int LOGLEVEL_ERROR
 
- Static Protected Attributes inherited from gRenderObject
static bool isshadowmappingenabled
 
- Static Protected Attributes inherited from gObject
static int renderpassnum
 
static int renderpassno
 
static int releasescaling
 
static int releaseresolution
 

Constructor & Destructor Documentation

◆ gShader() [1/3]

gShader::gShader ( )

◆ gShader() [2/3]

gShader::gShader ( const std::string &  shaderFullPath)

◆ gShader() [3/3]

gShader::gShader ( const std::string &  vertexFullPath,
const std::string &  fragmentFullPath,
const std::string &  geometryFullPath = "" 
)

◆ ~gShader()

gShader::~gShader ( )

Member Function Documentation

◆ attachUbo()

template<typename T >
void gShader::attachUbo ( const std::string &  uboName,
const gUbo< T > *  ubo 
)
inline

◆ getUniformLocation()

GLint gShader::getUniformLocation ( const std::string &  name)

◆ load() [1/2]

void gShader::load ( const std::string &  shaderFullPath)

◆ load() [2/2]

void gShader::load ( const std::string &  vertexFullPath,
const std::string &  fragmentFullPath,
const std::string &  geometryFullPath = "" 
)

◆ loadProgram() [1/2]

void gShader::loadProgram ( const std::string &  shaderSource)

◆ loadProgram() [2/2]

void gShader::loadProgram ( const std::string &  vertexSource,
const std::string &  fragmentSource,
const std::string &  geometrySource = "" 
)

◆ loadShader() [1/2]

void gShader::loadShader ( const std::string &  shaderFilename)

◆ loadShader() [2/2]

void gShader::loadShader ( const std::string &  vertexFileName,
const std::string &  fragmentFileName,
const std::string &  geometryFileName = "" 
)

◆ setBool()

void gShader::setBool ( const std::string &  name,
bool  value 
)

◆ setFloat()

void gShader::setFloat ( const std::string &  name,
float  value 
)

◆ setInt()

void gShader::setInt ( const std::string &  name,
int  value 
)

◆ setMat2()

void gShader::setMat2 ( const std::string &  name,
const glm::mat2 &  mat 
)

◆ setMat3()

void gShader::setMat3 ( const std::string &  name,
const glm::mat3 &  mat 
)

◆ setMat4()

void gShader::setMat4 ( const std::string &  name,
const glm::mat4 &  mat 
)

◆ setUnsignedInt()

void gShader::setUnsignedInt ( const std::string &  name,
unsigned int  value 
)

◆ setVec2() [1/2]

void gShader::setVec2 ( const std::string &  name,
const glm::vec2 &  value 
)

◆ setVec2() [2/2]

void gShader::setVec2 ( const std::string &  name,
float  x,
float  y 
)

◆ setVec3() [1/2]

void gShader::setVec3 ( const std::string &  name,
const glm::vec3 &  value 
)

◆ setVec3() [2/2]

void gShader::setVec3 ( const std::string &  name,
float  x,
float  y,
float  z 
)

◆ setVec4() [1/2]

void gShader::setVec4 ( const std::string &  name,
const glm::vec4 &  value 
)

◆ setVec4() [2/2]

void gShader::setVec4 ( const std::string &  name,
float  x,
float  y,
float  z,
float  w 
)

◆ use()

void gShader::use ( ) const

Member Data Documentation

◆ id

GLuint gShader::id

◆ loaded

bool gShader::loaded

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