Ne moraš da deliš sve na trouglove, možeš i na konveksne poligone. Ideš duž početnog poligona i ispituješ u kojoj tački je narušena konveksnost. Recimo da je to indeks
m. Onda nađeš prvu tačku posle
m za koju ona nije narušena, recimo da je to indeks
k, i u polaznom poligonu preskočiš sve između indeksa
m i
k-1. A sa strane definišeš novi poligon sa indeksima od
m-1 do
k, pa i za njega ponoviš celi postupak.
Ovo valjda radiš samo jednom, pa posle renderuješ izdeljene poligone. Ne tražiš svaki put ispočetka kako da ih podeliš.
Ima dosta da se piše, a meni vreme kratko. :)
Ipak se ++uje.