Removing 'using namespace std;' and fixing breakages
This commit is contained in:
parent
9bdaf0e1c3
commit
4cb08135cd
|
@ -26,7 +26,7 @@ struct Shader::Attribute {
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Compile a shader from file */
|
/** Compile a shader from file */
|
||||||
void Shader::compileShader(const string& filePath, GLuint& id)
|
void Shader::compileShader(const std::string& filePath, GLuint& id)
|
||||||
{
|
{
|
||||||
// Load shader file
|
// Load shader file
|
||||||
std::ifstream shaderFile(filePath);
|
std::ifstream shaderFile(filePath);
|
||||||
|
@ -35,8 +35,8 @@ void Shader::compileShader(const string& filePath, GLuint& id)
|
||||||
fatalError("Failed to open file @"+filePath);
|
fatalError("Failed to open file @"+filePath);
|
||||||
}
|
}
|
||||||
|
|
||||||
string fileContents = "";
|
std::string fileContents = "";
|
||||||
string line;
|
std::string line;
|
||||||
|
|
||||||
while(std::getline(shaderFile, line))
|
while(std::getline(shaderFile, line))
|
||||||
{
|
{
|
||||||
|
@ -71,7 +71,7 @@ void Shader::compileShader(const string& filePath, GLuint& id)
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Create new shader from vertex and fragment files */
|
/** Create new shader from vertex and fragment files */
|
||||||
Shader& Shader::createShader(const string& vertexShaderFilePath, const string& fragmentShaderFilePath)
|
Shader& Shader::createShader(const std::string& vertexShaderFilePath, const std::string& fragmentShaderFilePath)
|
||||||
{
|
{
|
||||||
Shader* shader = new Shader();
|
Shader* shader = new Shader();
|
||||||
|
|
||||||
|
@ -95,7 +95,7 @@ Shader& Shader::createShader(const string& vertexShaderFilePath, const string& f
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Create new shader from vertex, fragment and geometry files */
|
/** Create new shader from vertex, fragment and geometry files */
|
||||||
Shader& Shader::createShader(const string& vertexShaderFilePath, const string& fragmentShaderFilePath, const string& geometryShaderFilePath)
|
Shader& Shader::createShader(const std::string& vertexShaderFilePath, const std::string& fragmentShaderFilePath, const std::string& geometryShaderFilePath)
|
||||||
{
|
{
|
||||||
Shader* shader = new Shader();
|
Shader* shader = new Shader();
|
||||||
|
|
||||||
|
@ -126,7 +126,7 @@ Shader& Shader::createShader(const string& vertexShaderFilePath, const string& f
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Get uniform location */
|
/** Get uniform location */
|
||||||
GLuint Shader::getUniformLocation(const string& uniformName)
|
GLuint Shader::getUniformLocation(const std::string& uniformName)
|
||||||
{
|
{
|
||||||
auto it = m_uniforms.find(uniformName);
|
auto it = m_uniforms.find(uniformName);
|
||||||
if (it == m_uniforms.end())
|
if (it == m_uniforms.end())
|
||||||
|
@ -149,7 +149,7 @@ GLuint Shader::getUniformLocation(const string& uniformName)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
GLuint Shader::getAttribLocation(const string& attrbuteName)
|
GLuint Shader::getAttribLocation(const std::string& attrbuteName)
|
||||||
{
|
{
|
||||||
GLint attrib = glGetAttribLocation(m_programID, attrbuteName.c_str());
|
GLint attrib = glGetAttribLocation(m_programID, attrbuteName.c_str());
|
||||||
if (attrib == GL_INVALID_OPERATION || attrib < 0)
|
if (attrib == GL_INVALID_OPERATION || attrib < 0)
|
||||||
|
@ -231,52 +231,52 @@ void Shader::stop()
|
||||||
glUseProgram(0);
|
glUseProgram(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Shader::setUniform(const string& name, float x, float y, float z)
|
void Shader::setUniform(const std::string& name, float x, float y, float z)
|
||||||
{
|
{
|
||||||
glUniform3f(getUniformLocation(name), x, y, z);
|
glUniform3f(getUniformLocation(name), x, y, z);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Shader::setUniform(const string& name, const vec3& v)
|
void Shader::setUniform(const std::string& name, const vec3& v)
|
||||||
{
|
{
|
||||||
glUniform3fv(getUniformLocation(name), 1, value_ptr(v));
|
glUniform3fv(getUniformLocation(name), 1, value_ptr(v));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Shader::setUniform(const string& name, const dvec3& v)
|
void Shader::setUniform(const std::string& name, const dvec3& v)
|
||||||
{
|
{
|
||||||
glUniform3dv(getUniformLocation(name), 1, value_ptr(v));
|
glUniform3dv(getUniformLocation(name), 1, value_ptr(v));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Shader::setUniform(const string& name, const vec4& v)
|
void Shader::setUniform(const std::string& name, const vec4& v)
|
||||||
{
|
{
|
||||||
glUniform4fv(getUniformLocation(name), 1, value_ptr(v));
|
glUniform4fv(getUniformLocation(name), 1, value_ptr(v));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Shader::setUniform(const string& name, const dvec4& v)
|
void Shader::setUniform(const std::string& name, const dvec4& v)
|
||||||
{
|
{
|
||||||
glUniform4dv(getUniformLocation(name), 1, value_ptr(v));
|
glUniform4dv(getUniformLocation(name), 1, value_ptr(v));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Shader::setUniform(const string& name, const dmat4& m)
|
void Shader::setUniform(const std::string& name, const dmat4& m)
|
||||||
{
|
{
|
||||||
glUniformMatrix4dv(getUniformLocation(name), 1, GL_FALSE, value_ptr(m));
|
glUniformMatrix4dv(getUniformLocation(name), 1, GL_FALSE, value_ptr(m));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Shader::setUniform(const string& name, const mat4& m)
|
void Shader::setUniform(const std::string& name, const mat4& m)
|
||||||
{
|
{
|
||||||
glUniformMatrix4fv(getUniformLocation(name), 1, GL_FALSE, value_ptr(m));
|
glUniformMatrix4fv(getUniformLocation(name), 1, GL_FALSE, value_ptr(m));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Shader::setUniform(const string& name, const mat3& m)
|
void Shader::setUniform(const std::string& name, const mat3& m)
|
||||||
{
|
{
|
||||||
glUniformMatrix3fv(getUniformLocation(name), 1, GL_FALSE, value_ptr(m));
|
glUniformMatrix3fv(getUniformLocation(name), 1, GL_FALSE, value_ptr(m));
|
||||||
}
|
}
|
||||||
|
|
||||||
void Shader::setUniform(const string& name, float val)
|
void Shader::setUniform(const std::string& name, float val)
|
||||||
{
|
{
|
||||||
glUniform1f(getUniformLocation(name), val);
|
glUniform1f(getUniformLocation(name), val);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Shader::setUniform(const string& name, int val)
|
void Shader::setUniform(const std::string& name, int val)
|
||||||
{
|
{
|
||||||
glUniform1i(getUniformLocation(name), val);
|
glUniform1i(getUniformLocation(name), val);
|
||||||
}
|
}
|
||||||
|
|
34
src/Shader.h
34
src/Shader.h
|
@ -25,28 +25,28 @@
|
||||||
class Shader
|
class Shader
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
static Shader& createShader(const string& vertexShaderFilePath, const string& fragmentShaderFilePath);
|
static Shader& createShader(const std::string& vertexShaderFilePath, const std::string& fragmentShaderFilePath);
|
||||||
static Shader& createShader(const string& vertexShaderFilePath, const string& fragmentShaderFilePath, const string& geometryShaderFilePath);
|
static Shader& createShader(const std::string& vertexShaderFilePath, const std::string& fragmentShaderFilePath, const std::string& geometryShaderFilePath);
|
||||||
|
|
||||||
void linkShaders();
|
void linkShaders();
|
||||||
|
|
||||||
void setAttribute(const std::string& name, GLint size, GLboolean normalized, GLsizei stride, GLuint offset, GLenum type = GL_FLOAT);
|
void setAttribute(const std::string& name, GLint size, GLboolean normalized, GLsizei stride, GLuint offset, GLenum type = GL_FLOAT);
|
||||||
|
|
||||||
GLuint getUniformLocation(const string& uniformName);
|
GLuint getUniformLocation(const std::string& uniformName);
|
||||||
inline GLuint operator[](const std::string& name) { return getUniformLocation(name); }
|
inline GLuint operator[](const std::string& name) { return getUniformLocation(name); }
|
||||||
GLuint getAttribLocation(const string& attrbuteName);
|
GLuint getAttribLocation(const std::string& attrbuteName);
|
||||||
|
|
||||||
// Set uniforms
|
// Set uniforms
|
||||||
void setUniform(const string& name, float x, float y, float z);
|
void setUniform(const std::string& name, float x, float y, float z);
|
||||||
void setUniform(const string& name, const vec3& v);
|
void setUniform(const std::string& name, const vec3& v);
|
||||||
void setUniform(const string& name, const dvec3& v);
|
void setUniform(const std::string& name, const dvec3& v);
|
||||||
void setUniform(const string& name, const vec4& v);
|
void setUniform(const std::string& name, const vec4& v);
|
||||||
void setUniform(const string& name, const dvec4& v);
|
void setUniform(const std::string& name, const dvec4& v);
|
||||||
void setUniform(const string& name, const dmat4& m);
|
void setUniform(const std::string& name, const dmat4& m);
|
||||||
void setUniform(const string& name, const mat4& m);
|
void setUniform(const std::string& name, const mat4& m);
|
||||||
void setUniform(const string& name, const mat3& m);
|
void setUniform(const std::string& name, const mat3& m);
|
||||||
void setUniform(const string& name, float val);
|
void setUniform(const std::string& name, float val);
|
||||||
void setUniform(const string& name, int val);
|
void setUniform(const std::string& name, int val);
|
||||||
|
|
||||||
void setBuffers(GLint vao, GLint vbo, GLint ebo);
|
void setBuffers(GLint vao, GLint vbo, GLint ebo);
|
||||||
|
|
||||||
|
@ -65,12 +65,12 @@ private:
|
||||||
GLuint m_fragmentShaderID;
|
GLuint m_fragmentShaderID;
|
||||||
GLuint m_geometryShaderID;
|
GLuint m_geometryShaderID;
|
||||||
|
|
||||||
map<string, GLuint> m_uniforms;
|
std::map<std::string, GLuint> m_uniforms;
|
||||||
map<string, Attribute> m_attributes;
|
std::map<std::string, Attribute> m_attributes;
|
||||||
|
|
||||||
GLint vao, vbo, ebo;
|
GLint vao, vbo, ebo;
|
||||||
|
|
||||||
static void compileShader(const string& filePath, GLuint& id);
|
static void compileShader(const std::string& filePath, GLuint& id);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // __SHADER_H__
|
#endif // __SHADER_H__
|
||||||
|
|
|
@ -31,6 +31,4 @@
|
||||||
|
|
||||||
#include "util/Math3D.h"
|
#include "util/Math3D.h"
|
||||||
|
|
||||||
using namespace std;
|
|
||||||
|
|
||||||
#endif // __COMMON_H__
|
#endif // __COMMON_H__
|
||||||
|
|
Loading…
Reference in New Issue