void opengl::ShaderUniforms::setUniform4f(const SCP_string &name, const float x, const float y, const float z, const float w)
{
	vec4 temp;

	temp.xyzw.x = x;
	temp.xyzw.y = y;
	temp.xyzw.z = z;
	temp.xyzw.w = w;

	setUniform4f(name, temp);
}
Esempio n. 2
0
//--------------------------------------------------------------
void ofShader::setUniforms(const ofParameterGroup & parameters) const{
	for(int i=0;i<parameters.size();i++){
		if(parameters[i].type()==typeid(ofParameter<int>).name()){
			setUniform1i(parameters[i].getEscapedName(),parameters[i].cast<int>());
		}else if(parameters[i].type()==typeid(ofParameter<float>).name()){
			setUniform1f(parameters[i].getEscapedName(),parameters[i].cast<float>());
		}else if(parameters[i].type()==typeid(ofParameter<ofVec2f>).name()){
			setUniform2f(parameters[i].getEscapedName(),parameters[i].cast<ofVec2f>());
		}else if(parameters[i].type()==typeid(ofParameter<ofVec3f>).name()){
			setUniform3f(parameters[i].getEscapedName(),parameters[i].cast<ofVec3f>());
		}else if(parameters[i].type()==typeid(ofParameter<ofVec4f>).name()){
			setUniform4f(parameters[i].getEscapedName(),parameters[i].cast<ofVec4f>());
		}else if(parameters[i].type()==typeid(ofParameterGroup).name()){
			setUniforms((ofParameterGroup&)parameters[i]);
		}
	}
}
Esempio n. 3
0
//--------------------------------------------------------------
void ofShader::setUniform4f(const string & name, const ofVec4f & v) const{
	setUniform4f(name,v.x,v.y,v.z,v.w);
}
 void setUniform(const fvec4& value)  { setUniform4f(1, value.ptr()); }
 void setUniform(int count, const fvec4* value)  { setUniform4f(count, value->ptr()); }
Esempio n. 6
0
int ShaderProgram::setUniform(const std::string &uniformName, Vec4 & value)
{
    addUniform( uniformName );
    setUniform4f( uniformName, value);
}