Lines Matching defs:arrays
686 ContextShaderProgram (const glu::RenderContext& ctx, const std::vector<ContextArray*>& arrays);
692 static std::string genVertexSource (const glu::RenderContext& ctx, const std::vector<ContextArray*>& arrays);
697 static sglr::pdec::ShaderProgramDeclaration createProgramDeclaration (const glu::RenderContext& ctx, const std::vector<ContextArray*>& arrays);
703 ContextShaderProgram::ContextShaderProgram (const glu::RenderContext& ctx, const std::vector<ContextArray*>& arrays)
704 : sglr::ShaderProgram (createProgramDeclaration(ctx, arrays))
705 , m_componentCount (arrays.size())
706 , m_attrType (arrays.size())
708 for (int arrayNdx = 0; arrayNdx < (int)arrays.size(); arrayNdx++)
710 m_componentCount[arrayNdx] = getComponentCount(arrays[arrayNdx]->getOutputType());
711 m_attrType[arrayNdx] = mapOutputType(arrays[arrayNdx]->getOutputType());
813 std::string ContextShaderProgram::genVertexSource (const glu::RenderContext& ctx, const std::vector<ContextArray*>& arrays)
850 for (int arrayNdx = 0; arrayNdx < (int)arrays.size(); arrayNdx++)
853 << "${VTX_IN} highp " << ContextArray::outputTypeToGLType(arrays[arrayNdx]->getOutputType()) << " a_" << arrays[arrayNdx]->getAttribNdx() << ";\n";
866 for (int arrayNdx = 0; arrayNdx < (int)arrays.size(); arrayNdx++)
868 if (arrays[arrayNdx]->getAttribNdx() == 0)
870 switch (arrays[arrayNdx]->getOutputType())
921 switch (arrays[arrayNdx]->getOutputType())
925 "\tcolor = color * a_" << arrays[arrayNdx]->getAttribNdx() << ";\n";
930 "\tcolor.rg = color.rg * a_" << arrays[arrayNdx]->getAttribNdx() << ".xy;\n";
935 "\tcolor = color.rgb * a_" << arrays[arrayNdx]->getAttribNdx() << ".xyz;\n";
940 "\tcolor = color.rgb * a_" << arrays[arrayNdx]->getAttribNdx() << ".xyz * a_" << arrays[arrayNdx]->getAttribNdx() << ".w;\n";
1060 sglr::pdec::ShaderProgramDeclaration ContextShaderProgram::createProgramDeclaration (const glu::RenderContext& ctx, const std::vector<ContextArray*>& arrays)
1064 for (int arrayNdx = 0; arrayNdx < (int)arrays.size(); arrayNdx++)
1065 decl << sglr::pdec::VertexAttribute(std::string("a_") + de::toString(arrayNdx), mapOutputType(arrays[arrayNdx]->getOutputType()));
1070 decl << sglr::pdec::VertexSource(genVertexSource(ctx, arrays));
1854 for (size_t ndx = 0; ndx < arrays.size(); ++ndx)
1856 const ArraySpec& array = arrays[ndx];
1858 if (arrays.size() > 1)
1901 for (size_t ndx = 0; ndx < arrays.size(); ++ndx)
1903 const ArraySpec& array = arrays[ndx];
1965 Spec::ArraySpec arraySpec = m_spec.arrays[0];
1989 // And other arrays are color-like
1990 for (int arrayNdx = 1; arrayNdx < (int)m_spec.arrays.size(); arrayNdx++)
1992 Spec::ArraySpec arraySpec = m_spec.arrays[arrayNdx];
2001 for (int arrayNdx = 0; arrayNdx < (int)m_spec.arrays.size(); arrayNdx++)
2003 Spec::ArraySpec arraySpec = m_spec.arrays[arrayNdx];
2101 for (size_t i = 0; i < m_spec.arrays.size(); ++i)
2103 if (m_spec.arrays[i].storage == Array::STORAGE_BUFFER)
2105 const bool inputTypePacked = m_spec.arrays[i].inputType == Array::INPUTTYPE_UNSIGNED_INT_2_10_10_10 || m_spec.arrays[i].inputType == Array::INPUTTYPE_INT_2_10_10_10;
2107 int dataTypeSize = Array::inputTypeSize(m_spec.arrays[i].inputType);
2111 if (m_spec.arrays[i].offset % dataTypeSize != 0)
2122 for (size_t i = 0; i < m_spec.arrays.size(); ++i)
2124 if (m_spec.arrays[i].storage == Array::STORAGE_BUFFER)
2126 const bool inputTypePacked = m_spec.arrays[i].inputType == Array::INPUTTYPE_UNSIGNED_INT_2_10_10_10 || m_spec.arrays[i].inputType == Array::INPUTTYPE_INT_2_10_10_10;
2128 int dataTypeSize = Array::inputTypeSize(m_spec.arrays[i].inputType);
2132 if (m_spec.arrays[i].stride % dataTypeSize != 0)