56 lines · 1.7 KB · C++
RawDownload
////  ProgramObject.cpp//  interface/src/renderer////  Created by Andrzej Kapolka on 5/7/13.//  Copyright 2013 High Fidelity, Inc.////  Distributed under the Apache License, Version 2.0.//  See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html// #include <glm/gtc/type_ptr.hpp> #include "ProgramObject.h" ProgramObject::ProgramObject(QObject* parent) : QGLShaderProgram(parent) {} void ProgramObject::setUniform(int location, const glm::vec2& value) {    setUniformValue(location, value.x, value.y);} void ProgramObject::setUniform(const char* name, const glm::vec2& value) {    setUniformValue(name, value.x, value.y);} void ProgramObject::setUniform(int location, const glm::vec3& value) {    setUniformValue(location, value.x, value.y, value.z);} void ProgramObject::setUniform(const char* name, const glm::vec3& value) {    setUniformValue(name, value.x, value.y, value.z);} void ProgramObject::setUniform(int location, const glm::vec4& value) {    setUniformValue(location, value.x, value.y, value.z, value.w);} void ProgramObject::setUniform(const char* name, const glm::vec4& value) {    setUniformValue(name, value.x, value.y, value.z, value.w);} void ProgramObject::setUniformArray(const char* name, const glm::vec3* values, int count) {    GLfloat* floatVal = new GLfloat[count*3];    int index = 0;    for (int i = 0; i < count; i++) {        assert(index < count*3);        const float* valPtr = glm::value_ptr(values[i]);        floatVal[index++] = valPtr[0];        floatVal[index++] = valPtr[1];        floatVal[index++] = valPtr[2];    }        setUniformValueArray(name, floatVal, count, 3);    delete[] floatVal;}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t