Walls And Holes  1
ShaderProgramOneLight Class Reference

Wrapper for the 'onelight' GLSL program. More...

#include <shaderprogramonelight.h>

Public Member Functions

 ShaderProgramOneLight ()
 This constructor DOES NOT CREATE THE PROGRAM. Call create() before using any other methods. More...
 
void create ()
 Creates the program. Assumes an OpenGL context is bound. More...
 
void bind ()
 Binds the OpenGL program. More...
 
void release ()
 Unbinds the OpenGL program. More...
 
void enableArrays ()
 Enables all relevant arrays. More...
 
void disableArrays ()
 Disables all relevant arrays. More...
 
void setAttrPositionBuffer (int offset=0, int stride=0)
 
void setAttrNormalBuffer (int offset=0, int stride=0)
 
void setAttrReflSpecularBuffer (int offset=0, int stride=0)
 
void setAttrReflDiffuseBuffer (int offset=0, int stride=0)
 
void setAttrReflAmbientBuffer (int offset=0, int stride=0)
 
void setAttrShininessBuffer (int offset=0, int stride=0)
 
void setUniformMVP (QMatrix4x4 mat)
 
void setUniformLightPosition (QVector3D pos)
 
void setUniformCameraPosition (QVector3D pos)
 
void setUniformAmbientColor (QVector3D color)
 
void setUniformSourceSpecularColor (QVector3D color)
 
void setUniformSourceDiffuseColor (QVector3D color)
 

Protected Attributes

QSharedPointer< QOpenGLShaderProgram > mProgram
 
int mAttrPosition
 
int mAttrNormal
 
int mAttrReflSpecular
 
int mAttrReflDiffuse
 
int mAttrReflAmbient
 
int mAttrShininess
 
int mUnifMVP
 
int mUnifLightPosition
 
int mUnifCameraPosition
 
int mUnifAmbientColor
 
int mUnifSourceSpecularColor
 
int mUnifSourceDiffuseColor
 

Detailed Description

Wrapper for the 'onelight' GLSL program.

Constructor & Destructor Documentation

◆ ShaderProgramOneLight()

ShaderProgramOneLight::ShaderProgramOneLight ( )

This constructor DOES NOT CREATE THE PROGRAM. Call create() before using any other methods.

Member Function Documentation

◆ bind()

void ShaderProgramOneLight::bind ( )

Binds the OpenGL program.

◆ create()

void ShaderProgramOneLight::create ( )

Creates the program. Assumes an OpenGL context is bound.

◆ disableArrays()

void ShaderProgramOneLight::disableArrays ( )

Disables all relevant arrays.

◆ enableArrays()

void ShaderProgramOneLight::enableArrays ( )

Enables all relevant arrays.

◆ release()

void ShaderProgramOneLight::release ( )

Unbinds the OpenGL program.

◆ setAttrNormalBuffer()

void ShaderProgramOneLight::setAttrNormalBuffer ( int  offset = 0,
int  stride = 0 
)

◆ setAttrPositionBuffer()

void ShaderProgramOneLight::setAttrPositionBuffer ( int  offset = 0,
int  stride = 0 
)

◆ setAttrReflAmbientBuffer()

void ShaderProgramOneLight::setAttrReflAmbientBuffer ( int  offset = 0,
int  stride = 0 
)

◆ setAttrReflDiffuseBuffer()

void ShaderProgramOneLight::setAttrReflDiffuseBuffer ( int  offset = 0,
int  stride = 0 
)

◆ setAttrReflSpecularBuffer()

void ShaderProgramOneLight::setAttrReflSpecularBuffer ( int  offset = 0,
int  stride = 0 
)

◆ setAttrShininessBuffer()

void ShaderProgramOneLight::setAttrShininessBuffer ( int  offset = 0,
int  stride = 0 
)

◆ setUniformAmbientColor()

void ShaderProgramOneLight::setUniformAmbientColor ( QVector3D  color)

◆ setUniformCameraPosition()

void ShaderProgramOneLight::setUniformCameraPosition ( QVector3D  pos)

◆ setUniformLightPosition()

void ShaderProgramOneLight::setUniformLightPosition ( QVector3D  pos)

◆ setUniformMVP()

void ShaderProgramOneLight::setUniformMVP ( QMatrix4x4  mat)

◆ setUniformSourceDiffuseColor()

void ShaderProgramOneLight::setUniformSourceDiffuseColor ( QVector3D  color)

◆ setUniformSourceSpecularColor()

void ShaderProgramOneLight::setUniformSourceSpecularColor ( QVector3D  color)

Member Data Documentation

◆ mAttrNormal

int ShaderProgramOneLight::mAttrNormal
protected

◆ mAttrPosition

int ShaderProgramOneLight::mAttrPosition
protected

◆ mAttrReflAmbient

int ShaderProgramOneLight::mAttrReflAmbient
protected

◆ mAttrReflDiffuse

int ShaderProgramOneLight::mAttrReflDiffuse
protected

◆ mAttrReflSpecular

int ShaderProgramOneLight::mAttrReflSpecular
protected

◆ mAttrShininess

int ShaderProgramOneLight::mAttrShininess
protected

◆ mProgram

QSharedPointer<QOpenGLShaderProgram> ShaderProgramOneLight::mProgram
protected

◆ mUnifAmbientColor

int ShaderProgramOneLight::mUnifAmbientColor
protected

◆ mUnifCameraPosition

int ShaderProgramOneLight::mUnifCameraPosition
protected

◆ mUnifLightPosition

int ShaderProgramOneLight::mUnifLightPosition
protected

◆ mUnifMVP

int ShaderProgramOneLight::mUnifMVP
protected

◆ mUnifSourceDiffuseColor

int ShaderProgramOneLight::mUnifSourceDiffuseColor
protected

◆ mUnifSourceSpecularColor

int ShaderProgramOneLight::mUnifSourceSpecularColor
protected

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