Enfoque para escribir un sombreador de fragmentos GLSL con un color sólido por triángulo / cara

Tengo datos de vértices y triángulos que contienen un color para cadatriángul (cara), no para cada vértice. es decir, un solo vértice es compartido por múltiples caras, cada cara potencialmente de un color diferente.

¿Cómo debo abordar este problema en GLSL para obtener una asignación de color sólido para cadacar siendo prestados? Calcular y asignar un búfer de "color de vértice" promediando los colores de los polys vecinos de un vértice es bastante fácil, pero esto, por supuesto, produce un resultado borroso donde los colores se interpolan en el sombreador de fragmentos.

Lo que realmente necesito no debería ser valores de color interpolados, tendré alrededor de 40k triángulos sombreados con aproximadamente 15 colores sólidos posibles una vez que esto funcione según lo previsto.

Respuestas a la pregunta(3)

Su respuesta a la pregunta