31 #ifndef INCLUDE_ARTICULATION_PROGRAMS_H_ 32 #define INCLUDE_ARTICULATION_PROGRAMS_H_ 84 GLuint
createShader(
const GLenum shaderType,
const GLchar*
const code,
const char *
const name)
const;
91 GLuint
loadShader(
const GLenum shaderType,
const char *
const filename)
const;
98 bool link(
const char *
const name)
const;
108 GLint normalMatrix[6];
114 : modelMatrix(-1), projectionMatrix(-1), mvp(-1) {
115 for (
size_t i = 0; i < 6; ++i) {
117 normalMatrix[i] = -1;
135 : lightPosition(-1), lightAmbient(-1), lightDiffuse(-1), lightSpecular(-1) {
154 : materialAmbient(-1), materialDiffuse(-1), materialSpecular(-1), materialShininess(-1), textureUnit(-1),
166 bool hasTesselationShader;
178 : textureUnit(-1), integral(-1), resolution(-1) {
290 : textureUnit(-1), stepSize(-1), resolution(-1) {
303 : textureUnit(-1), resolution(-1) {
316 : textureUnit(-1), resolution(-1) {
329 : textureUnit(-1), resolution(-1) {
341 GLint costmapTextureUnit;
344 : resolution(-1), costmapTextureUnit(-1), robotPixel(-1) {
355 GLint costmapTextureUnit;
356 GLint inputTextureUnit;
358 : resolution(-1), costmapTextureUnit(-1), inputTextureUnit(-1) {
371 : resolution(-1), textureUnit(-1) {
417 : textureUnit(-1), minDist(-1), maxDist(-1) {
431 : textureUnit(-1), width(-1), height(-1) {
445 : textureUnit(-1), width(-1), height(-1) {
458 : resolution(-1), robotPosition(-1) {
471 : textureUnit(-1), resolution(-1) {
486 : textureUnit(-1), width(-1), height(-1) {
499 : utilityUnit(-1), gain1Unit(-1) {
513 : utilityUnit(-1), gain1Unit(-1), gain2Unit(-1) {
Definition: Programs.h:390
Definition: Programs.h:349
Locations of light source shader variables.
Definition: Programs.h:125
Definition: Programs.h:268
Definition: Programs.h:308
GLint lightPosition
vec4 position of the light source in homogeneous coordinates.
Definition: Programs.h:126
Definition: Programs.h:422
Definition: Programs.h:426
Definition: Programs.h:454
Definition: Programs.h:249
Definition: Programs.h:436
GLint materialShininess
float shininess factor of the material.
Definition: Programs.h:146
GLint lightDiffuse
vec3 diffuse color of the light source.
Definition: Programs.h:128
Definition: Programs.h:504
Definition: Programs.h:169
Definition: Programs.h:255
Definition: Programs.h:477
Definition: Programs.h:299
Definition: Programs.h:382
Definition: Programs.h:321
Definition: Programs.h:353
LocationsMVP()
Constructor, initalizes all locations to invalid.
Definition: Programs.h:113
virtual ~AbstractProgram()
Destructor.
Locations of material shader variables.
Definition: Programs.h:142
Definition: Programs.h:408
GLint materialDiffuse
vec3 diffuse color of the material.
Definition: Programs.h:144
Definition: Programs.h:463
GLint projectionMatrix
4x4 Projection matrix.
Definition: Programs.h:107
GLuint loadShader(const GLenum shaderType, const char *const filename) const
Create a shader from a file.
bool isReady() const
Returns true if the program is ready to be used.
Definition: Programs.h:70
Definition: Programs.h:450
Definition: Programs.h:491
Definition: Programs.h:183
Locations of model, view, and projection shader variables.
Definition: Programs.h:104
Definition: Programs.h:508
Definition: Programs.h:159
bool ready
True if program is ready, see isReady().
Definition: Programs.h:76
GLint modelMatrix
4x4 Model matrix.
Definition: Programs.h:105
Abstract superclass for all shader programs.
Definition: Programs.h:41
LocationsMaterial()
Constructor, initalizes all locations to invalid.
Definition: Programs.h:153
Definition: Programs.h:205
Definition: Programs.h:173
LocationsLight()
Constructor, initalizes all locations to invalid.
Definition: Programs.h:134
Definition: Programs.h:281
Definition: Programs.h:412
Definition: Programs.h:394
Definition: Programs.h:312
static void setOpenGLVersion()
Reads versions and available extensions from the GPU.
Definition: Programs.h:229
Definition: Programs.h:363
Definition: Programs.h:191
GLint mvp
4x4 Pre-multiplied model-view-projection matrix.
Definition: Programs.h:109
Definition: AbstractCamera.h:41
GLint materialSpecular
vec3 specular color of the material.
Definition: Programs.h:145
GLint lightSpecular
vec3 specular color of the light source.
Definition: Programs.h:129
Definition: Programs.h:237
GLint lightAmbient
vec3 RGB ambient color of the light source.
Definition: Programs.h:127
Definition: Programs.h:467
Definition: Programs.h:295
Definition: Programs.h:367
Definition: Programs.h:481
Definition: Programs.h:440
GLuint createShader(const GLenum shaderType, const GLchar *const code, const char *const name) const
Create a shader from source code.
Definition: Programs.h:285
Definition: Programs.h:243
Definition: Programs.h:200
Definition: Programs.h:334
Definition: Programs.h:378
Definition: Programs.h:273
GLint textureUnit
ID of the texture unit holding the diffuse material texture.
Definition: Programs.h:147
Definition: Programs.h:339
const GLuint program
OpenGL program ID.
Definition: Programs.h:75
AbstractProgram()
Constructor.
GLint materialAmbient
vec3 ambient color of the material.
Definition: Programs.h:143
bool link(const char *const name) const
Link the associated shader stages.
Definition: Programs.h:495
void use() const
Bind this program to the GPU.
Abstract superclass for all shader programs projecting panoramas to texture images.
Definition: Programs.h:223
Definition: Programs.h:213
Definition: Programs.h:325
GLint hasTexture
True if the texture unit should be used, false if material parameters should be used.
Definition: Programs.h:148
Definition: Programs.h:261
Definition: Programs.h:402