Wydaje mi się, że grafika wektorowa jest bardziej wydajna pod względem zasobów / skalowalności; jednak w większości przypadków widziałem artystów używających grafiki bitmapowej / rasteryzowanej. Czy jest to ograniczenie nakładane na artystów przez programistów / projektantów gier? Jako programista myślę, że grafika wektorowa byłaby bardziej idealna, ponieważ pozwala na skalowanie rozdzielczości bez konieczności jej odtwarzania, tworzenia naprawdę dużej grafiki lub powodowania rozmycia grafiki.
Pytania: dlaczego więcej osób używa SVG / AI do tworzenia grafiki 2D? Czy rzeczywiście byłby preferowany (i kto woli)? Czy grafika bitmapowa jest standardem czy ograniczeniem (a może żadnym)?
Tło: Pracuję nad silnikiem i miałem fajne pomysły na grafikę wektorową; nie chcę jednak wkurzać artystów w przyszłości.
Wydaje mi się, że jest to bardziej pytanie dotyczące pragmatyzmu i rozwoju gier.
źródło
Odpowiedzi:
W przeciwieństwie do innych form sztuki, grafika wektorowa wymaga niezwykle wysokiej precyzji, co czyni ją nieodpowiednią dla wielu stylów sztuki. Podstawowe kształty i tym podobne są łatwe w użyciu grafiki wektorowej, ale dodawanie drobnych detali, które byłyby naprawdę łatwe do pomalowania, jest bardzo trudne. Więc to trochę ograniczone do bardzo prostych stylów „symbolicznych”. Do wszystkiego innego malowanie po prostu działa lepiej.
To, co nadaje się do grafiki wektorowej, to ikony i design, a tam nie znajdzie się wielu artystów, którzy wykorzystaliby coś innego.
Nawiasem mówiąc: Skalowalność nie jest tak naprawdę problemem w przypadku grafiki rastrowej, malowanie w rozdzielczości 10x nie stanowi aż tak dużej różnicy niż malowanie w rozdzielczości, w której będzie wyświetlany. Coś, co jest obecnie dość często wykonywane (często reklamowane jako „HD-Graphics”).
źródło
Grafika wektorowa jest zwykle bardziej wydajna niż grafika rastrowa do przechowywania (tzn. Rozmiar pliku jest mniejszy), ale znacznie mniej wydajna pod względem wydajności (tj. Ile czasu zajmuje komputerowi na narysowanie obrazu).
Aby wyświetlić obraz, komputer musi zrasteryzować ten obraz (tj. Obliczyć piksele w obrazie). Ponieważ grafika rastrowa z definicji jest już zrasteryzowana, nie ma wiele obliczeń, które komputer musi wykonać przed zrzuceniem pikseli do bufora tylnego.
Jednak ten problem zależy od tego, czy mówisz o używaniu grafiki wektorowej w czasie rzeczywistym w grze, czy o artystach rysujących w programie Illustrator, a następnie eksportujących do formatów rastrowych, takich jak png.
źródło
W rzeczywistości istnieje wiele gier 2D, które wykorzystują to, co stanowi sztukę wektorową; Na przykład Ghost Trick: Phantom Detective w zasadzie generuje postacie w silniku jako grafikę wektorową. (Mówiąc ściślej, uważam, że są one podawane jako płaskie wielokątne regiony, co w tym przypadku stanowi to samo). Mówiąc bardziej ogólnie, modele wielokątne można ogólnie traktować jako dane „wektorowe” - reprezentują wierzchołki, krawędzie i ściany obiektu - w przeciwieństwie do danych „rastrowych” (rozdzielczość ekranu), więc w pewien sposób większość gier 3D jest za pomocą wektoryzowanych opisów danych.
Podejrzewam jednak, że twoje pytanie dotyczy bardziej sztuki 2D i pojawia się kilka czynników. Jak mówi pan Bestia, drobne szczegóły sprawiają, że grafika wektorowa jest trudniejsza do zbudowania; wyobraź sobie coś w rodzaju granatu na postaci, gdzie nawet odrobina sprytnego wklejania poszczególnych granatów wciąż nie zaoszczędzi całej masy czasu. Myślę, że większym problemem jest jednak to, że grafiki wektorowej trochę kontrolę dalaod artysty; jak zauważasz, grafika wektorowa może wyglądać znacznie lepiej na większą skalę, ale prawdziwymi problemami są niższe rozdzielczości, w których niewybredne szczegóły rasteryzacji mogą znacznie zmienić wygląd obrazu. Wyobraź sobie na przykład oko postaci; zewnętrzna granica może być owalna, nie większa niż dziesięć lub dwadzieścia pikseli i być może tylko niewielka garść pikseli wysokości. Przy tych rozdzielczościach rasteryzacja danych wektorowych - linii, kolistych łuków lub krzywych Beziera - staje się kwestią krytyczną i jeśli twoi artyści nie będą mogli pracować bezpośrednio w silniku - co zasadniczo oznacza stworzenie zupełnie nowego programu do rysowania wektorów - wtedy oni mają trudności z zagwarantowaniem, że wygląd ich obiektów w grze będzie pasował do wyglądu ich narzędzia. Co więcej, po prostu wyglądanie poprawnie w jednej rozdzielczości nie gwarantuje żadnej poprawności; znowu, skalowanie działa dobrze, gdy masz do czynienia z obiektami, których szczegóły mają dziesiątki lub setki pikseli, ale gdy przechodzisz do funkcji na mniejszą skalę, wówczas skalowane renderowanie przechodzi w dokładnie takie same szczegóły rasteryzacji.
To powiedziawszy, renderowanie wektoryzacyjne nie zawsze jest niewłaściwe i często może być stylistycznym wyborem dla doskonałego efektu. Ale nie jest to panaceum na problemy, które poruszasz w grafice rastrowej, i rodzi także nowe problemy.
źródło
Uważam, że jest to głównie połączenie tradycji, narzędzi i technologii oraz oczekiwań, które wzajemnie się przenikają.
Interesującą rzeczą tych punktów jest to, że widać, że wszystko się zmienia. Być może użycie grafiki wektorowej wzrośnie w najbliższej przyszłości. Nowoczesny sprzęt graficzny dobrze nadaje się do grafiki wektorowej, więc tak naprawdę chodzi o stworzenie dobrego łańcucha technologicznego, aby wprowadzić sztukę do gry i na ekran.
źródło
Imho to różnica w podejściu ... chodzi raczej o budowanie sztuki niż rysowanie. Wolę grafikę wektorową ze względu na łatwość zmieniania, ponownego wykorzystywania, skalowania i wrażenie kartonu, które mogę z łatwością stworzyć. Większość „wyszkolonych” artystów woli rysować i malować, podczas gdy wielu grafików lubi używać wektorów.
Sprawdź mój blog: http://2dgameartforprogrammers.blogspot.com.au/
Warto zacząć od początku i najpierw przeczytać wcześniejsze samouczki. :)
źródło
Czytałem już jakiś artykuł zatytułowany Icon Design: Bitmap vs Vector , który pokazuje klarowność szczegółów, które gubią się podczas skalowania obrazu wektorowego. Nie chodzi o to, że występuje jakakolwiek strata, ale o to, że można ją precyzyjnie dostroić jako mapę bitową.
Spójrz na ten przykład ikony drukarki (w kółko obraz jest wzorcem w każdym przypadku):
Najlepszym miejscem jest skalowanie za pomocą wektora, a następnie dostosowanie za pomocą rastra. Chyba więc mówię, że mogą używać wektora, ale efektem końcowym jest raster.
źródło
Jest to przede wszystkim problem techniczny, że większość firm nie wykorzystuje w swoich grach grafiki wektorowej. Znam wielu artystów, którzy tworzą swoje dzieła we Flashu lub Illustratorze, tylko po to, by wypompować zrasteryzowany obraz, który zostaje uderzony w duszka wielokąta. To tylko przeszkoda techniczna, której większość dużych firm nie chce zbytnio zrozumieć.
Poniżej znajduje się przykład animowanej postaci, wykonanej w AI, z około 13 ruchomymi częściami. Byłoby wspaniale móc to wykorzystać, ale musieliśmy starannie umieścić każdy kawałek w osobnym obrazie. Jedyną korzyścią było to, że mieliśmy te aktywa gotowe do skalowania dla każdej sztuki marketingowej.
Innym powodem, dla którego może nie być bardziej popularny, jest fakt, że format EPS ma inne standardy niż AI. Tak więc wszyscy dzwony i gwizdy, które artyści lubią umieszczać na swoich obrazach, zostają zdeptane po konwersji na EPS.
Ostatecznie nie wiem, co trzeba zrobić, aby zaimplementować grafikę wektorową w grze, ale wiem, że większość inżynierów, z którymi współpracowałem, zdecydowała się wypluć png zamiast się z tym pogodzić.
źródło
Nie mogę mówić za wszystkich, ale z własnego doświadczenia wynika, że programy do grafiki wektorowej (czytaj: Inkscape, jedyny, którego próbowałem) są trudniejsze w użyciu i nie są tak intuicyjne jak programy graficzne bitmapowe. Wszyscy rozumieją pędzel i wiadro. Krzywe są trudniejsze.
źródło