Lines Matching refs:winding
76 inline WindingUsage getWindingUsage (const Winding winding)
78 const WindingUsage usage = winding == WINDING_CCW ? WINDING_USAGE_CCW :
79 winding == WINDING_CW ? WINDING_USAGE_CW : WINDING_USAGE_LAST;
174 inline std::string getProgramDescription (const Winding winding, const bool usePointMode)
177 str << "winding mode " << getWindingShaderName(winding) << ", " << (usePointMode ? "" : "don't ") << "use point mode";
236 //! Creates multiple shader programs for combinations of winding and point mode.
486 Winding winding;
571 DrawResult draw (const deUint32 vertexCount, const std::vector<float>& patchTessLevels, const Winding winding, const bool usePointMode);
639 BaseTestInstance::DrawResult BaseTestInstance::draw (const deUint32 vertexCount, const std::vector<float>& patchTessLevels, const Winding winding, const bool usePointMode)
652 .setShader (vk, device, VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT, m_context.getBinaryCollection().get(getProgramName("tese", winding, usePointMode)), DE_NULL)
734 * different programs, using different winding etc. settings. Compare
760 const Winding winding = static_cast<Winding>(windingNdx);
764 const DrawResult result = draw(static_cast<deUint32>(patchTessLevels.size()), patchTessLevels, winding, usePointMode);
800 << " - case B: " << getProgramDescription(winding, usePointMode) << ", tessellation levels: "
846 const DrawResult result = draw(static_cast<deUint32>(patchTessLevels.size()), patchTessLevels, m_caseDef.winding, m_caseDef.usePointMode);
919 * point_mode, winding etc. Before outputting tesscoords from shader, mirror
941 const DrawResult result = draw(static_cast<deUint32>(patchTessLevels.size()), patchTessLevels, m_caseDef.winding, m_caseDef.usePointMode);
1070 addDefaultPrograms(programCollection, m_caseDef.primitiveType, m_caseDef.spacingMode, getWindingUsage(m_caseDef.winding), getPointModeUsage(m_caseDef.usePointMode));
1099 addDefaultPrograms(programCollection, m_caseDef.primitiveType, m_caseDef.spacingMode, getWindingUsage(m_caseDef.winding), getPointModeUsage(m_caseDef.usePointMode), mirrorCoords);
1118 const CaseDefinition caseDef = { primitiveType, spacingMode, WINDING_LAST, false }; // winding is ignored by this test
1122 tcu::TestCase* makeOuterEdgeIndexIndependenceTest (tcu::TestContext& testCtx, const std::string& name, const TessPrimitiveType primitiveType, const SpacingMode spacingMode, const Winding winding, const bool usePointMode)
1124 const CaseDefinition caseDef = { primitiveType, spacingMode, winding, usePointMode };
1128 tcu::TestCase* makeSymmetricOuterEdgeTest (tcu::TestContext& testCtx, const std::string& name, const TessPrimitiveType primitiveType, const SpacingMode spacingMode, const Winding winding, const bool usePointMode)
1130 const CaseDefinition caseDef = { primitiveType, spacingMode, winding, usePointMode };
1581 * the tessellation levels, tessellation mode, spacing mode, winding, and
1608 * winding doesn't change the set of triangles, though it can change the
1857 TestCase* makeInvariantPrimitiveSetTest (tcu::TestContext& testCtx, const std::string& name, const TessPrimitiveType primitiveType, const SpacingMode spacingMode, const Winding winding, const bool usePointMode)
1859 const CaseDefinition caseDef = { CASETYPE_INVARIANT_PRIMITIVE_SET, primitiveType, spacingMode, getWindingUsage(winding), usePointMode };
1902 Winding winding;
2024 << getWindingShaderName(caseDef.winding)
2192 tcu::TestCase* makeTessCoordRangeTest (tcu::TestContext& testCtx, const std::string& name, const TessPrimitiveType primitiveType, const SpacingMode spacingMode, const Winding winding, const bool usePointMode)
2194 const CaseDefinition caseDef = { CASETYPE_TESS_COORD_RANGE, primitiveType, spacingMode, winding, usePointMode };
2198 tcu::TestCase* makeOneMinusTessCoordTest (tcu::TestContext& testCtx, const std::string& name, const TessPrimitiveType primitiveType, const SpacingMode spacingMode, const Winding winding, const bool usePointMode)
2200 const CaseDefinition caseDef = { CASETYPE_ONE_MINUS_TESS_COORD, primitiveType, spacingMode, winding, usePointMode };
2246 const Winding winding = static_cast<Winding>(windingNdx);
2248 const std::string primSpacWindPointName = primSpacName + "_" + getWindingShaderName(winding) + (usePointMode ? "_point_mode" : "");
2250 invariantPrimitiveSetGroup->addChild (PrimitiveSetInvariance::makeInvariantPrimitiveSetTest (testCtx, primSpacWindPointName, primitiveType, spacingMode, winding, usePointMode));
2251 tessCoordComponentRangeGroup->addChild ( TessCoordComponent::makeTessCoordRangeTest (testCtx, primSpacWindPointName, primitiveType, spacingMode, winding, usePointMode));
2252 oneMinusTessCoordComponentGroup->addChild ( TessCoordComponent::makeOneMinusTessCoordTest (testCtx, primSpacWindPointName, primitiveType, spacingMode, winding, usePointMode));
2253 symmetricOuterEdgeGroup->addChild ( InvariantOuterEdge::makeSymmetricOuterEdgeTest (testCtx, primSpacWindPointName, primitiveType, spacingMode, winding, usePointMode));
2256 outerEdgeVertexSetIndexIndependenceGroup->addChild(InvariantOuterEdge::makeOuterEdgeIndexIndependenceTest(testCtx, primSpacWindPointName, primitiveType, spacingMode, winding, usePointMode));