package ru.dbotthepony.kstarbound.client.gl.vertex

import it.unimi.dsi.fastutil.ints.IntList

enum class GeometryType(
	/**
	 * Число вершин у одного элемента
	 */
	val elements: Int,

	/**
	 * Индекс вершин одного элемента
	 */
	val indices: IntList
) {
	AS_IS(1, IntList.of(0)),
	LINES(2, IntList.of(0, 1)),
	TRIANGLES(3, IntList.of(0, 1, 2)),

	/**
	 * A B C C D A
	 */
	QUADS(4, IntList.of(0, 1, 2, 2, 3, 0)),

	QUADS_AS_LINES(4, IntList.of(0, 1, 0, 2, 1, 3, 2, 3)),
	QUADS_AS_LINES_WIREFRAME(4, IntList.of(0, 1, 0, 2, 1, 3, 2, 3, 0, 3, 1, 2)),
}
