Grafika komputerowa

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania
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ą[potrzebny przypis]. Nazywa się ją malarstwem cyfrowym, a dzieła powstałe przy jej zastosowaniu grafiką cyfrową lub infografiką.


Niektóre zastosowania[edytuj | edytuj kod]

Rys historyczny[edytuj | edytuj kod]

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 | edytuj kod]

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 się nie 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 | edytuj kod]

Linki zewnętrzne[edytuj | edytuj kod]