//! Fills the color array with the given color void setColorArray(const fvec4& color) { u32 vert_count = (u32)(vertexArray() ? vertexArray()->size() : vertexAttribArray(VA_Position) ? vertexAttribArray(VA_Position)->data()->size() : 0); VL_CHECK( vert_count ) ref<ArrayFloat4> color_array = new ArrayFloat4; color_array->resize(vert_count); for(u32 i=0; i<color_array->size(); ++i) color_array->at(i) = color; #if defined(VL_OPENGL_ES2) setVertexAttribArray(VA_Color, color_array.get()); #else setColorArray(color_array.get()); #endif }
void PerlinWavesShader::setAttributeTexCoordsIn(bool normalized, GLsizei stride, GLvoid* data) const { setVertexAttribArray("texCoordsIn", 2, GL_FLOAT, normalized, stride, data); }
void PerlinWavesShader::setAttributePositionIn(bool normalized, GLsizei stride, GLvoid* data) const { setVertexAttribArray("positionIn", 3, GL_FLOAT, normalized, stride, data); }
void setVertexAttribArray(unsigned int attrib_idx, ArrayAbstract* data, bool normalize=true, EVertexAttribBehavior data_behav=VAB_NORMAL) { setVertexAttribArray(VertexAttribInfo(attrib_idx, data, normalize, data_behav)); }
void BlurFilterShader::setAttributeTexCoordIn(bool normalized, GLsizei stride, GLvoid* data) const { setVertexAttribArray("texCoordIn", 2, GL_FLOAT, normalized, stride, data); }
void LuminanceFilterShader::setAttributePositionIn(bool normalized, GLsizei stride, GLvoid* data) const { setVertexAttribArray("positionIn", 3, GL_FLOAT, normalized, stride, data); }
void ParallaxShader::setAttributeBitangentIn(bool normalized, GLsizei stride, GLvoid* data) const { setVertexAttribArray("bitangentIn", 3, GL_FLOAT, normalized, stride, data); }
void setVertexAttribArray(unsigned int attrib_location, ArrayAbstract* data, bool normalize=true, EVertexAttribInterpretation data_behav=VAI_NORMAL) { setVertexAttribArray(VertexAttribInfo(attrib_location, data, normalize, data_behav)); }