Safe Haskell | None |
---|---|

Language | Haskell2010 |

## Synopsis

- newtype PrimitiveTopology where
- PrimitiveTopology Int32
- pattern PRIMITIVE_TOPOLOGY_POINT_LIST :: PrimitiveTopology
- pattern PRIMITIVE_TOPOLOGY_LINE_LIST :: PrimitiveTopology
- pattern PRIMITIVE_TOPOLOGY_LINE_STRIP :: PrimitiveTopology
- pattern PRIMITIVE_TOPOLOGY_TRIANGLE_LIST :: PrimitiveTopology
- pattern PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP :: PrimitiveTopology
- pattern PRIMITIVE_TOPOLOGY_TRIANGLE_FAN :: PrimitiveTopology
- pattern PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY :: PrimitiveTopology
- pattern PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY :: PrimitiveTopology
- pattern PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY :: PrimitiveTopology
- pattern PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY :: PrimitiveTopology
- pattern PRIMITIVE_TOPOLOGY_PATCH_LIST :: PrimitiveTopology

# Documentation

newtype PrimitiveTopology Source #

VkPrimitiveTopology - Supported primitive topologies

# Description

Each primitive topology, and its construction from a list of vertices, is described in detail below with a supporting diagram, according to the following key:

Vertex | A point in 3-dimensional space. Positions chosen within the diagrams are arbitrary and for illustration only. | |

Vertex Number | Sequence position of a vertex within the provided vertex data. | |

Provoking Vertex | Provoking vertex within the main primitive. The arrow points along an edge of the relevant primitive, following winding order. Used in flat shading. | |

Primitive Edge | An edge connecting the points of a main primitive. | |

Adjacency Edge | Points connected by these lines do not contribute to a main primitive, and are only accessible in a geometry shader. | |

Winding Order | The relative order in which vertices are defined within a primitive, used in the facing determination. This ordering has no specific start or end point. |

The diagrams are supported with mathematical definitions where the vertices (v) and primitives (p) are numbered starting from 0; v0 is the first vertex in the provided data and p0 is the first primitive in the set of primitives defined by the vertices and topology.

# See Also

`PipelineInputAssemblyStateCreateInfo`

,
`cmdSetPrimitiveTopologyEXT`