Lines Matching defs:vertex

115 /** Builds and links a program object consisting only of vertex shader stage.
116 * The function also creates a vertex shader, assigns it user-provided body
120 * @param vertex_shader_code Source code to use for the vertex shader.
580 * Make sure that all available generic vertex attributes report
597 * vertex attribute arrays configured with glVertexAttribLPointer()
617 /** Template class to store vertex attribute data
749 * @tparam SIZE Size of vertex attribute
751 * @param index Index of vertex attribute, starts from 1.
778 * @tparam SIZE Size of vertex attribute
780 * @param index Index of vertex attribute, starts from 1.
807 * @param index Index of vertex attribute, starts from 1.
879 * @tparam SIZE Size of vertex attribute. Specialisation for 1.
893 * @tparam SIZE Size of vertex attribute. Specialisation for 2.
907 * @tparam SIZE Size of vertex attribute. Specialisation for 3.
921 * @tparam SIZE Size of vertex attribute. Specialisation for 4.
935 * @tparam SIZE Size of vertex attribute. Specialisation for 1.
949 * @tparam SIZE Size of vertex attribute. Specialisation for 2.
963 * @tparam SIZE Size of vertex attribute. Specialisation for 3.
977 * @tparam SIZE Size of vertex attribute. Specialisation for 4.
1010 /** Prepare buffer and vertex array object, get max vertex attributes
1035 * @param function_name Name of function used to set vertex attributes
1036 * @param index Index of vertex attribute
1084 * @param index Index of vertex attribute
1131 * @param index Index of vertex attribute
1169 * should be defined in a vertex shader. The test should verify
1185 * defined in a vertex shader. Verification of the data exposed
1206 * should be defined in a vertex shader. Verification of the data exposed
1219 * vertex shader. Verification of the data exposed by these input
1227 * vertex shader. Verification of the data exposed by these input
1235 * vertex shader. Verification of the data exposed by these input
1243 * vertex shader. Verification of the data exposed by these input
1262 * b) glDrawArraysInstanced(), primcount > 1, zero vertex attrib divisor
1263 * c) glDrawArraysInstanced(), primcount > 1, non-zero vertex attrib divisor
1280 * for all vertex shader invocations.
1381 void setAttributes(_iteration iteration, const attributeConfiguration& configuration, GLuint vertex,
1384 void setAttributes_a(const attributeConfiguration& configuration, GLint n_type, GLuint vertex,
1387 void setAttributes_a_scalar(const attributeConfiguration& configuration, GLint n_type, GLuint vertex,
1390 void setAttributes_a_vec(const attributeConfiguration& configuration, GLint n_type, GLuint vertex,
1393 void setAttributes_b(const attributeConfiguration& configuration, GLint n_type, GLuint vertex,
1396 void setAttributes_c(const attributeConfiguration& configuration, GLint n_type, GLuint vertex,
1571 /** Calculate offset of "n_type" attributes group in doubles, tightly packed, for vertex buffer offsets
1591 * Results are in reveresed order of vertex buffer
1630 /** Calculate vertex length in "doubles", tightly packed, for offset in vertex buffer
1653 * @param use_vertex_array If attributes are configured with vertex array or as constants
1698 /* With vertex array */
1806 /** Get varying name and vertex shader code for given configuration
1811 * @param use_vertex_attrib_divisor If vertex attribute divisor should be used
1813 * @param out_vertex_shader_code Source code of vertex shader
2018 /** Get configuration of vertex array object
2249 message << "vertex attribute divisor: 0";
2253 message << "constant vertex attribute";
2257 message << "vertex attribute divisor: 1";
2270 * @param use_vertex_attrib_divisor If vertex attribute divisor should be used
2306 /** Configure vertex array object for all attributes
2323 /* Set vertex attributes divisor and disable */
2339 /** Prepare vertex buffer data for given iteration
2355 for (GLuint vertex = 0; vertex < m_n_vertices; ++vertex)
2357 setAttributes(iteration, configuration, vertex, buffer_data);
2364 /** Set all attributes for <vertex>
2368 * @param vertex Vertex orinal number
2371 void LimitTest::setAttributes(_iteration iteration, const attributeConfiguration& configuration, GLuint vertex,
2382 setAttributes_a(configuration, n_type, vertex, out_buffer_data);
2388 setAttributes_b(configuration, n_type, vertex, out_buffer_data);
2398 setAttributes_c(configuration, n_type, vertex, out_buffer_data);
2405 /** Set attributes of given <n_type> for <vertex>, as described in "iteration a".
2409 * @param vertex Vertex orinal number
2412 void LimitTest::setAttributes_a(const attributeConfiguration& configuration, GLint n_type, GLuint vertex,
2419 setAttributes_a_scalar(configuration, n_type, vertex, out_buffer_data);
2423 setAttributes_a_vec(configuration, n_type, vertex, out_buffer_data);
2427 /** Set scalar double attributes of given <n_type> for <vertex>, as described in "iteration a".
2431 * @param vertex Vertex orinal number
2434 void LimitTest::setAttributes_a_scalar(const attributeConfiguration& configuration, GLint n_type, GLuint vertex,
2439 GLuint vertex_offset = vertex * configuration.m_vertex_length;
2450 out_buffer_data[attribute_offset] = attribute + attribute_index + vertex * 2;
2454 /** Set dvec2 attributes of given <n_type> for <vertex>, as described in "iteration a".
2458 * @param vertex Vertex orinal number
2461 void LimitTest::setAttributes_a_vec(const attributeConfiguration& configuration, GLint n_type, GLuint vertex,
2467 GLuint vertex_offset = vertex * configuration.m_vertex_length;
2482 out_buffer_data[attribute_offset + i] = attribute + attribute_index + vertex * 3 + i + 1;
2487 /** Set attributes of given <n_type> for <vertex>, as described in "iteration b".
2491 * @param vertex Vertex orinal number
2494 void LimitTest::setAttributes_b(const attributeConfiguration& configuration, GLint n_type, GLuint vertex,
2500 GLuint vertex_offset = vertex * configuration.m_vertex_length;
2523 out_buffer_data[attribute_offset + i] = attribute + attribute_index + vertex * n_elements + i;
2528 /** Set attributes of given <n_type> for <vertex>, as described in "iteration c".
2532 * @param vertex Vertex orinal number
2535 void LimitTest::setAttributes_c(const attributeConfiguration& configuration, GLint n_type, GLuint vertex,
2541 GLuint vertex_offset = vertex * configuration.m_vertex_length;
2554 out_buffer_data[attribute_offset + i] = n_type + attribute + attribute_index + vertex * 16 + i;
2680 /* Prepare vertex array object */
2752 /* Prepare vertex array buffer for iteration */
2755 /* Regular and instanced draw calls, vertex attribute divisor: 0 */
2784 /* Regular draw calls, constant vertex attribute */
2813 /* Instanced draw calls, vertex attribute divisor: 1 */
2846 /** Tests regular and instanced draw calls with vertex attribute divisor set to 0
2916 /** Tests instanced draw calls with vertex attribute divisor set to 1
2970 /* For each vertex */
2971 for (GLuint vertex = 0; vertex < m_n_vertices; ++vertex)
2973 const GLuint vertex_offset = vertex * m_n_varyings;
2979 m_log << tcu::TestLog::Message << "Failure. Instance: " << instance << " Vertex: " << vertex
2984 m_log << tcu::TestLog::Message << "Failure. Vertex: " << vertex << tcu::TestLog::EndMessage;
3059 * vertex shader.
3061 * given vertex attribute array;
3063 * given vertex attribute array;
3065 * given vertex attribute array;
3359 /* Configure vertex attribute divisor */
3504 * - verification of the data XFBed from the vertex shader.
3677 /** Initializes a vertex array object used by the test.
3816 } /* for (two vertex attrib divisor configurations) */