Grafika komputerowa

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj
Obraz fotorealistyczny (stworzony komputerowo)

Grafika komputerowa – dziedzina informatyki zajmująca się wykorzystaniem technik komputerowych do celów wizualizacji artystycznej oraz wizualizacji rzeczywistości. Grafika komputerowa jest obecnie narzędziem powszechnie stosowanym w nauce, technice oraz rozrywce.

Chociaż grafika komputerowa koncentruje się głównie na specjalistycznych algorytmach i strukturach danych, to jednak siłą rzeczy musi czerpać wiedzę z rzeczywistości. Na przykład, aby uzyskać obrazy fotorealistyczne, należy wiedzieć, jak w rzeczywistym świecie światło oddziałuje z przedmiotami. Podobnie, aby symulacja jazdy samochodem była jak najwierniejsza, należy wiedzieć, jak obiekty fizyczne ze sobą oddziałują.

Od lat dziewięćdziesiątych XX wieku grafika komputerowa jest też kolejną dyscypliną artystyczną. Nazywa się ją malarstwem cyfrowym a dzieła powstałe przy jej zastosowaniu grafiką cyfrową lub infografiką.

Niektóre zastosowania[edytuj]

Rys historyczny[edytuj]

Początki grafiki komputerowej sięgają lat pięćdziesiątych XX wieku, jednak – ze względu na duże koszty komputerów i urządzeń graficznych – aż do lat 80. grafika komputerowa była wąską specjalizacją, a na jej zastosowania praktyczne mogły pozwolić sobie ośrodki badawcze, duże firmy oraz instytucje rządowe. Dopiero gdy w latach dziewięćdziesiątych rozpowszechniły się komputery osobiste, grafika komputerowa stała się czymś powszechnym.

Klasyfikacja[edytuj]

Obrazek rastrowy Obrazek wektorowy
Obrazek rastrowy Obrazek wektorowy
Obrazek rastrowy Obrazek wektorowy
Obrazek rastrowy Obrazek wektorowy
Porównanie jakości obrazów rastrowych i wektorowych podczas skalowania

Ponieważ celem grafiki jest generowanie obrazów, jednym z głównych kryteriów klasyfikacji jest technika ich tworzenia.

  • Grafika wektorowa: obraz jest rysowany za pomocą kresek lub łuków. Niegdyś powstawał tak obraz na ploterach kreślących, ale jeszcze do lat 80. XX wieku były wykorzystywane monitory CRT, które kreśliły obraz w analogiczny sposób jak oscyloskopy.
  • Grafika rastrowa: obraz jest budowany z prostokątnej siatki leżących blisko siebie punktów (tzw. pikseli). Głównym parametrem w przypadku grafiki rastrowej jest wielkość bitmapy, czyli liczba pikseli, podawana na ogół jako wymiary prostokąta.

Identyczny podział istnieje, jeśli weźmie się pod uwagę reprezentację danych w programach komputerowych.

  • Grafika wektorowa – w tym przypadku nazwa może być nieco myląca, ponieważ obrazy mogą składać się nie tylko z wektorów (odcinków), ale również z innych figur geometrycznych. Cechą grafiki wektorowej jest to, że zapamiętywane są charakterystyczne dla danych figur dane (parametry), na przykład dla okręgu będzie to środek i promień, dla odcinka współrzędne punktów końcowych, a dla krzywych parametrycznych współrzędne punktów kontrolnych. Program, jeśli musi narysować obraz na urządzeniu (rastrowym lub wektorowym), na podstawie posiadanych danych wygeneruje obraz tych figur – bardzo ważną zaletą tej reprezentacji jest możliwość dowolnego powiększania obrazów, bez straty jakości.
  • Grafika rastrowa – do zapamiętania obrazu rastrowego potrzebna jest dwuwymiarowa tablica pikseli nazywana powszechnie bitmapą. Nazwa wzięła się stąd, że początkowo były rozpowszechnione systemy wyświetlające obrazy czarno-białe, więc w takim przypadku pojedynczy piksel mógł być opisany przez jeden bit. Jednak gdy powszechniejsza stała się grafika kolorowa, piksele zaczęły być opisywane więcej niż jednym bitem – wówczas pojawiła się nazwa pixmapy, która jednak nie się przyjęła (chociaż jest stosowana w, na przykład, X Window).

Przewagą reprezentacji wektorowej nad rastrową jest to, że zawsze istnieje dokładna informacja o tym, z jakich obiektów składa się obraz. W przypadku obrazów bitmapowych tego rodzaju informacja jest tracona, a jedyne, czego można bezpośrednio się dowiedzieć, to kolor piksela. Istnieją jednak metody, które pozwalają wydobyć z obrazów bitmapowych tekst i/lub krzywe.

W chwili obecnej dominują wyświetlacze rastrowe, więc programy wykorzystujące grafikę wektorową są zmuszone przedstawiać idealne figury geometryczne w skończonej rozdzielczości.

Kolejnym kryterium, według którego klasyfikuje się zastosowania grafiki, jest charakter danych.

  • Grafika dwuwymiarowa (grafika 2D): wszystkie obiekty są płaskie (w szczególności każdy obraz rastrowy wpada do tej kategorii).
  • Grafika trójwymiarowa (grafika 3D): obiekty są umieszczone w przestrzeni trójwymiarowej i celem programu komputerowego jest przede wszystkim przedstawienie trójwymiarowego świata na dwuwymiarowym obrazie.
  • Grafika ruchoma: jej celem jest przedstawienie obrazu jako zbioru klatek, które - pokazując się na ułamek sekundy i przechodząc w następną klatkę - dają nam wrażenie ruchu obiektów przedstawionych na ekranie. Częstotliwość zmiany klatek najczęściej podaje się w liczbie klatek na sekundę (FPS, od ang. frame per second).

Jeszcze jednym kryterium jest cykl generacji obrazu.

  • Grafika nieinterakcyjna: program wczytuje uprzednio przygotowane dane i na ich podstawie tworzy wynikowy obraz. Tak działa na przykład POV-Ray, który wczytuje z pliku definicję sceny trójwymiarowej i na jej podstawie generuje obraz sceny.
  • Grafika interakcyjna: program na bieżąco uaktualnia obraz w zależności od działań użytkownika, dzięki temu użytkownik może od razu ocenić skutki. Bardzo ważne w tym przypadku jest, aby czas odświeżenia obrazu nie był zbyt długi – dlatego w przypadku grafiki interakcyjnej akceptuje się i stosuje uproszczone metody rysowania obiektów, aby zminimalizować czas oczekiwania.
  • Grafika czasu rzeczywistego: program musi bardzo szybko (kilkadziesiąt razy na sekundę) regenerować obraz, aby wszelkie zmiany były natychmiast uwidocznione. Grafika czasu rzeczywistego ma szczególnie znaczenie w różnego rodzaju symulatorach, jest również powszechna w grach komputerowych.

Zobacz też[edytuj]

Linki zewnętrzne[edytuj]