Почему этот треугольный шейдер, который я написал, разбивается на четыре?C++

Программы на C++. Форум разработчиков
Anonymous
Почему этот треугольный шейдер, который я написал, разбивается на четыре?

Сообщение Anonymous »

Я написал шейдер треугольника с функцией края и попытался использовать вес для его раскрашивания, но по какой-то причине цвета разделились на 4 отдельных треугольника, каждый со своей уменьшенной версией шейдера. функция рисования представляет собой всего лишь две строки кода для цвета и положения и не должна вызывать эту ошибку.
[img]https://i.sstatic. net/rze68KkZ.png[/img]

Код: Выделить всё

int edgeFunction(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t x3, uint16_t y3){
return (x2-x1)*(y3-y1)-(y2-y1)*(x3-x1);
}

std::vector RGBtri(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t x3, uint16_t y3){
std::vector tri; //fragment is a struct with xyrgba

int minX = std::min(x1, std::min(x2,x3));
int maxX = std::max(x1, std::max(x2,x3));
int minY = std::min(y1, std::min(y2,y3));
int maxY = std::max(y1, std::max(y2,y3));

int p = edgeFunction(x1,y2,x2,y2,x3,y3);

for(uint16_t y = minY;y
Моя цель — разместить красный, зеленый и синий в вершинах основного треугольника, а не разделить его 

Подробнее здесь: [url]https://stackoverflow.com/questions/78683227/why-is-this-triangle-shader-that-i-wrote-splitting-into-four[/url]

Вернуться в «C++»