Próbuję zrobić trójkąt, jak ten w prawo na poniższym rysunku:Triangle Gradient na OpenGL
Problemem jest to, że to, co chcę osiągnąć jest gradient kolorów z vertexes 1 i 2 proyected z C.
O ile mi wiadomo, nie jest to możliwe, ponieważ wierzchołek C musi mieć swój własny kolor, który również będzie mieszał się z kolorami 1 i 2, jak w lewym trójkącie obrazu . Jeśli ustawię C na kolor środkowy, generuje to niepożądany efekt, ponieważ im wyższy trójkąt, tym mniej zauważalne są kolory innych wierzchołków.
Linia C1 powinna być czarna, a linia C2 biała.
Czy jest jakiś sposób osiągnięcia tego w OpenGL?
Ponieważ trójkąt zmieni się dynamicznie, wydaje się, że pierwsza opcja prawdopodobnie nie pasuje. Co do shaderów, czy powinienem używać vertex shadera, aby przekazać zmienną wartość do wierzchołka fragmentu? Do tej pory używałem tylko modułu do cieniowania wierzchołków, a po zapoznaniu się z samouczkiem nie mogę jeszcze dowiedzieć się, w jaki sposób działa przekazywanie zmiennych wartości z werteksowego shadwera. – Leo
Nadal może: struktura będzie rozciągać się wraz z geometrią. – Thomas
Przepraszamy za szybką edycję. Nie zdawałem sobie sprawy, że naciśnięcie klawisza enter spowoduje przesłanie komentarza. – Leo