Grafika komputerowa.

Cieniowanie gładkie

Trójkąt ma interpolowaną liniowo barwę. W przypadku koloru 24 bitowego należy interpolować każdą składową RGB oddzielnie. Tym cieniowaniem można symulować łagodne oświetlenie, płynne przejście np. z barwy czerwonej do zielonej. (Osiągnąć tzw. gradienty.)

Algorytm cieniowania gładkiego (gourauda):
1. Posortuj wierzchołki trójkąta względem ich wspólrzędnych y. (od najmniejszej do największej)
2. Oblicz przyrosty między wierzchołkami trójkąta na podstawie wzorów. dx12 = (x2-x1)/(y2-y1); dx13 = (x3-x1)/(y3-y1); dx23=(x3-x2)/y3-y2) i12 = (i2-i1)/(y2-y1); i13 = (i3-i1)/(y3-y2); i23=(i3-i2)/(y3-y2) W przypadku koloru 24 bitowego należy interpolować każdą ze składowych koloru oddzielnie.
3. y=y1; x11=x1; x12=x2; c1=c1; c2=c2
4. Rysuj linię poziomą od punktu (x11,y) do punktu (x12,y) z płynnym prześciem koloru od c1 do c2, pamiętaj, aby sprawdzić czy x11= 5. x11 = x11 + dx12
6. x12 = x12 + dx13
7. c1 = c1 + i12
8. c2 = c2 + i13
7. y = y +1
10. Jeżeli y < y2 skacz do punktu 4.
11. y = y2; x11=x2; x12 = x3; c1 = c2; c2 = c3
12. Rysuj linię poziomą do punktu (x11,y) do punktu (x12,y) z płynnym przejściem koloru od c1 do c2 , pamiętaj aby sprawdzić cz x11 =< x12 (w razie potrzeby zmień kolejność punktów).
13. x11 = x11 + dx13
14. x12 = x12 + dx13
15. c2 = c2 + i13
16. c3 = c3 + i23
17. y = y + 1
18. Jeżeli y < y3 to skacz do punktu 10

Obiekt cieniowany gładko Obiekt cieniowany gładko

Cieniowanie gładkie - gradienty Cieniowanie gładkie - gradienty