Grafika 3D: Różnice pomiędzy wersjami

[wersja przejrzana][wersja przejrzana]
Usunięta treść Dodana treść
Wipur (dyskusja | edycje)
różne poprawki
Wipur (dyskusja | edycje)
m drobne redakcyjne
Linia 10:
}}
[[Modelowanie (3D)|Geometria obiektów trójwymiarowych]] może być reprezentowana na kilka sposobów:
* '''[[Siatka (grafika 3D)|Siatkasiatka wielokątów]]''' – obiekt jest budowany z płaskich wielokątów (najczęściej trójkątów lub czworokątów), które mają wspólne wierzchołki i krawędzie. W ten sposób można tworzyć proste bryły, albo – jeśli siatka jest dostatecznie gęsta – dobrze przybliżać skomplikowane obiekty.
* '''[[Wokselwoksel]]e''' (voxele) – obiekt jest budowany z elementarnych sześcianów (trójwymiarowych pikseli). Tego rodzaju reprezentacja jest rozpowszechniona szczególnie w [[tomografia komputerowa|diagnostyce medycznej]], gdzie uzyskuje się szereg przekrojów ([[Pixmapa|obrazów bitmapowych]]) ciała pacjenta i na ich podstawie tworzy trójwymiarowe modele.
* '''Opisopis matematyczny''' – obiekty są określone równaniami. Mogą to być kule, płaszczyzny oraz szczególnie użyteczne i powszechnie stosowane powierzchnie parametryczne (płaty powierzchni), na przykład [[płaty Béziera]], Hermite'a, czy [[NURBS]]. Istnieją programy, które swoje funkcjonowanie opierają głównie o właśnie taki sposób modelowania; zaliczyć do nich można [[POV-Ray]].
 
Dane trójwymiarowe mogą zostać pobrane ze świata rzeczywistego, między innymi za pomocą wspomnianych tomografów komputerowych, [[skaner 3D|skanerów trójwymiarowych]], ze zdjęć satelitarnych (topografia terenów) a także ze zdjęć [[stereoskopia|stereoskopowych]]. W animacji komputerowej wykorzystywana jest również technika ''motion capture'', która polega na nagrywaniu ruchu człowieka – czujniki położenia umieszczane są w kluczowych punktach ciała: na rękach, nogach, głowie, karku. Przeniesienie nagranych w ten sposób ruchów na sztuczne postacie nadaje ich ruchom naturalność, trudną do uzyskania klasycznymi metodami animacji.
Linia 27:
Obrazy trójwymiarowe są tworzone głównie w [[grafika rastrowa|technice rastrowej]], [[grafika wektorowa|wektorowo]] przedstawia się co najwyżej obrysy, szkice itp.
 
Głównym problemem w obu przypadkach jest [[usuwanie niewidocznych powierzchni|wyznaczanie powierzchni widocznych]], a więc selekcja tych obiektów (lub  ich części), które są widoczne w danym rzucie. Robi się to na przykład za pomocą [[bufor Z|bufora Z]], sortowania względem głębokości, śledzenia promieni.
 
Ponadto przeważnie obserwujemy niewielki fragment sceny, a dodatkowo scena może składać się z wielkiej liczby obiektów (sięgającej nawet setek milionów), dlatego równie ważne jest określenie, które obiekty mogą być widoczne, aby przetwarzać tylko te dane, które naprawdę są potrzebne.
Linia 35:
[[Plik:Subsurface scattering.jpg|thumb|Podpowierzchniowe rozpraszanie światła w obiekcie]]
 
Realizm obrazów generowanych przez komputer jest w większości zastosowań bardzo ważny. Aby go uzyskać modeluje się [[oświetlenie (grafika komputerowa)|oświetlenie]]: definiuje światła, powierzchniom obiektów trójwymiarowych nadaje kolor i fakturę, określa cienie rzucane przez obiekty, odbicia zwierciadlane, [[Refrakcja|załamanie]] i rozpraszanie światła itd.,i itptym podobne.
 
Metody, które pozwalają na bardzo dokładne przedstawienie scen trójwymiarowych są również bardzo kosztowne obliczeniowo (np. [[śledzenie promieni]], [[metoda energetyczna]]). Z kolei szybkie, przybliżone metody cieniowania obiektów, tworzenia cieni, odbić zwierciadlanych są z powodzeniem wykorzystywane w grach komputerowych. Bardzo popularną techniką uzyskiwania realizmu w scenie jest obliczanie oświetlenia na każdy piksel z osobna. Jest to operacja kosztowna obliczeniowo, jednak dzięki wspomaganiu sprzętowemu (''pixel shader'') możliwa do uzyskania animacji w czasie rzeczywistym.