Nie rozumiem znaczenia terminu „2.5D”. Jestem szczególnie zdezorientowany różnicą między środowiskami 2.5D i 3D, mimo że przeczytałem różne definicje i artykuły na temat obu. Rozumiem części, w których 2.5D jest jak 3D, ale nie dostaję części, w których 2.5D jest inny.
Więc, co to znaczy dla gry, aby być 2.5D? Na przykład, czy pokazana tutaj gra 2.5D?
2.5d
terminology
Mathieug
źródło
źródło
Odpowiedzi:
Terminy 2D i 3D (jak zapewne już wiesz) odnoszą się do liczby wymiarów przestrzennych w euklidesowej przestrzeni świata. Ta wymiarowość musi być liczbą porządkową; nie ma czegoś takiego jak pół-wymiar , więc termin 2.5D jest tak naprawdę nonsensem i nie ma żadnego wewnętrznego znaczenia. To powiedziawszy, 2.5 jest „gdzieś pomiędzy” 2 a 3, więc 2.5D ogólnie oznacza coś w stylu „gdzieś pomiędzy 2D i 3D”.
Osobiście używam tego terminu w odniesieniu do przypadków, w których graficzne i logiczne przestrzenie świata mają różne wymiary. W szczególności istnieją tutaj dwa różne warianty:
Inne powszechne użycie tego terminu (choć nie takie, którego używam) dotyczy gier, które wykorzystują połączenie grafiki 3D i billboardu 2D. W tym przypadku termin w ogóle nie opisuje logicznej wymiarowości gry. Praktycznie wszystkie gry 3D wykorzystują billboard w taki czy inny sposób, w tym systemy cząsteczkowe, serwery proxy odległych obiektów i nakładki interfejsu użytkownika w świecie. Dlatego termin ten jest zwykle używany tylko wtedy, gdy znaczna część obiektów niebędących tłem używa grafiki 2D, a granica między 2,5D a 3D jest nieco rozmyta.
źródło
Pierwszą znaną mi grą, w której zastosowano termin „2.5D”, był Doom (chociaż Wolfenstein 3D też w pewnym sensie się kwalifikuje).
Wolfenstein 3D był zasadniczo grą 2D z prezentacją 3D. Nawigowałeś po labiryncie 2D, wszystkie podłogi były płaskie, wszystkie sufity były na tej samej wysokości, nie było okien, drzwi były od podłogi do sufitu i były otwierane na boki, i nigdy nie mogłeś być na innym obiekcie ani pod nim. Gra wykorzystywała raycasting, aby dowiedzieć się, dla każdej kolumny ekranu, jak daleko ściana była w tym kierunku i jaką teksturę miała ściana; następnie narysowano kolumnę tekstury ściany o wysokości odwrotnie proporcjonalnej do odległości, a przestrzeń powyżej i poniżej pomalowano wypełnieniem podłogi i sufitu. Wrogowie i przedmioty były duszkami o ograniczonej liczbie aspektów, a ich rozmiar znów był proporcjonalny do odległości.
Doom zastosował technologię bardzo podobną do Wolfenstein 3D, ale wykorzystał ją, aby uzyskać więcej wrażeń 3D. Mapy były nieruchome2D, reprezentowane za pomocą partycjonowania przestrzeni binarnej 2D (stąd nazwa pliku mapy .BSP). To, co zobaczyłeś na automapie po wciśnięciu klawisza, było po prostu bezpośrednim renderowaniem 2D mapy. Ale każdy sektor miał niezależną „wysokość podłogi” i „wysokość sufitu”, a krawędzie miały tekstury górnej i dolnej strony (używane, gdy miały niższą wysokość sufitu lub wyższą wysokość podłogi, niż część ich otoczenia). Pozwoliło to na schody, okna, platformy, pule i inne efekty - silnik musiał po prostu móc przechodzić listę wielu sektorów, zanim ostatecznie uderzył w ścianę, i ich odpowiednie tekstury. Ale nadal nie możesz mieć prawdziwej architektury 3D - możesz zrobić „most” na jakimś szlamie za pomocą podniesionej części podłogi, ale nie byłoby możliwe, aby cokolwiek znalazło się podmost. Pozycja w grze to nadal tylko X i Y. Jedyną kontrolą, jaką gracz ma nad swoją wysokością, jest spadanie z przedmiotów, a także windy, które są po prostu sektorami, które są napisane w skryptach w celu zmiany wysokości podłogi. Wrogowie nadal są duszkami (choć myślę, że mieli więcej aspektów), strzały „autocelują” na wysokości, ponieważ wykrywanie kolizji jest tylko dwuwymiarowe i nie było w niej modelu 3D.
Heretic i Hexen zastosowali silniki Dooma, które posunęły się o krok dalej, do tego stopnia, że czasami nazywano je „2.75D”; mieli większość takich samych ograniczeń architektonicznych i wrogów opartych na duszkach, ale dodali możliwość patrzenia w górę i w dół (przechylanie widoku, ale tylko do tej pory, bo inaczej silnik się zepsuje) oraz skakania, latania i kucania (niezależnie zmieniając wysokość).
źródło
2,5D
Terminy 2.5D („dwa i pół-wymiarowe”), perspektywa, i pseudo-3D ar, głównie w branży gier wideo, używane do opisywania projekcji graficznych 2D i podobnych technik stosowanych do wywoływania serii obrazów (lub scen) w celu symulacji wyglądu trójwymiarowości (3D), gdy tak naprawdę nie są, lub rozgrywki w trójwymiarowej grze wideo, która jest ograniczona do płaszczyzny dwuwymiarowej.
Z mojego doświadczenia wynika, która definicja jest podkreślona, zależy od wieku osoby, z którą rozmawiasz.
Starsi gracze mają tendencję do korzystania z pierwszej definicji „ Rzutów graficznych 2D i podobnych technik używanych do wywołania serii obrazów (lub scen) w celu symulacji wyglądu trójwymiarowości (3D), podczas gdy w rzeczywistości tak nie jest ”
Młodsi gracze używają drugiej definicji „ rozgrywki w trójwymiarowej grze wideo, która jest ograniczona do dwuwymiarowej płaszczyzny ”.
Osobiście używam drugiej definicji. Moim zdaniem Trine, Donkey Kong i Super Mario Bros Wii U byłyby 2,5D. Dodatkowo znacznik Steam 2.5D korzysta z drugiej definicji. Sądzę, że jest to dobry test lakmusowy dla tego, jak typowy gracz definiuje pojęcie) i jako taki uważam, że druga definicja jest bardziej poprawna .
3D
Każda gra wideo z grafiką 3D, która jest obliczana w 3 wymiarach. Zauważ, że dzięki temu jest to super zestaw drugiej definicji 2.5D.
źródło
2.5D to po prostu wygodny sposób na powiedzenie 2D, który wygląda na 3D.
Przypuszczam, że naprawdę można rozmazać linie definicji, jeśli na przykład używasz silnika 3D, ale ograniczasz rozgrywkę tylko do płaszczyzny 2D, ale osobiście rozważę coś 2.5D, czy wygląda 3D, ale działa 2D.
źródło
Zrzut ekranu gry, który opublikowałeś, to gra 3D.
W grze 3D obiekty są rysowane za pomocą wierzchołków w celu narysowania rzeczywistych obiektów 3D, które następnie są kolorowe, teksturowane i tak dalej.
W grze 2D obiekty są pobierane z duszków / arkuszy duszków itp.
Różnica między nimi polega na tym, jak je wyświetlić. Duszek jest jak płaski kawałek papieru. Nie możesz go zobaczyć pod innym kątem lub kątem, bo duszek zostanie przekrzywiony. Na obiekcie 3D, gdy kamera się porusza, można zobaczyć różne części obiektu, ponieważ obiekt jest dobrze 3D.
W grze 2.5D łączysz oba te światy. Pamiętaj tylko dlatego, że nie można przesunąć kamery, aby zobaczyć różne ujęcia, nie czyni gry inną niż 3D. Decydują o tym obiekty, które się w nim znajdują.
Dobrym przykładem gry 2.5D jest Ragnarok Online. To, co sprawia, że 2.5D, to fakt, że świat jest w większości skompromitowany z obiektami 3D. Budynki, krajobraz itp. To teksturowane obiekty 3D. Możesz obrócić kamerę górną i jednocześnie zobaczyć różne strony tych obiektów. Możesz zobaczyć przód budynku, a także obszar lewej / prawej / dachu. Gracze są jednak duszkami 2D, które wydają się stać w pozycji stojącej do góry. Jeśli zbyt mocno obrócisz kamerę, gra musi załadować inną komórkę arkusza ikonek, aby ta postać zmieniła swój wygląd. Nie możesz oglądać różnych kątów postaci, ponieważ nie są one 3D. Kąty są ładowane dynamicznie w zależności od widoku z kamery.
http://sprites.technoized.com/images/sprite/ro/gm_m.png
To jest arkusz duszków z gry. Gdybyś tylko popatrzył na to, założyłbyś, że pochodzi z gry 2D. Sam, miałbyś rację. Ale po umieszczeniu w świecie 3D masz grę 2.5D.
źródło
2.5D
jest mylący, ponieważ jest to po prostu ludzka interpretacja itp., A nie coś technicznego. Na przykład, jaka jest Twoja gra, jeśli używasz techniki Billboard do wszystkiego (itp. Teksturowanych quadów) w środowisku 3D, jeśli są obracane zawsze przed Tobą? Niektórzy mogą powiedzieć, że 2.5D, ale większość zestawu powie 3D, ponieważ jest głębia Z. Technicznie, jeśli używa wierzchołków 3D (czyli wymiaru Z), to jest 3D, jeśli używa tylko X / Y (powiedzmy, Super Mario bros ), to jest 2D. Ale jeśli używa tylko 2D (x / y) w środowisku 3D (w tym postaci), to nadal jest 3D, ale 2.5D z interpretacji .2.5D jest często innym sposobem na powiedzenie „izometryczny” - grafika 2D narysowana w taki sposób, aby wyglądała jak 3D, ale nie symulowała współrzędnych 3D. Zobacz artykuł w Wikipedii na temat grafiki izometrycznej: http://en.wikipedia.org/wiki/Isometric_graphics_in_video_games_and_pixel_art
Istotą jest to, że w 2,5D / izometryczny nadal używasz układu współrzędnych 2D - z osiami xiy tylko do obliczania grafiki. Twoja grafika może być po prostu duszkami 2D, które są zwykle rysowane tak, że można zobaczyć trzy ściany, a następnie umieszczane na ekranie za pomocą współrzędnych (x, y). Czasami duszki są nawet tworzone przez modelowanie w 3D, a następnie tworzenie duszek 2D modelu 3D pod wieloma kątami.
Ruchome obiekty charakteryzują się tylko kilkoma kątami, z których można je oglądać. Jeśli zakręcisz postacią w widoku izometrycznym, nie będzie się ona gładko obracać, ale zobaczysz kilka różnych kątów, takich jak przód, 3/4, bok i tak dalej. Wynika to z faktu, że każdy unikalny kąt widzenia wymaga zupełnie nowego zestawu duszków.
Gry izometryczne zwykle obsługują tylko jeden kąt kamery, ze względu na ograniczenia tego typu systemu. Inną cechą wyróżniającą gry izometryczne jest to, że zazwyczaj nie mają punktów zbiegu. Gdy patrzysz na obiekt w prawdziwym życiu, jeśli obiekt jest bliżej ciebie, będzie on większy w twojej wizji. Jeśli obiekt jest dalej, będzie mniejszy. W grach izometrycznych wszystkie obiekty zwykle mają ten sam rozmiar bez względu na to, gdzie się znajdują w przestrzeni.
Dla porównania gry 3D symulują wszystkie 3 osie - x, y i z. Na bardzo niskim poziomie komputer tłumaczy x, y i z na x, y, aby wyświetlić je na monitorze, ale na wyższym poziomie artyści faktycznie manipulują punktami na 3 osiach, aby przedstawić obiekty. Ponieważ komputer ma wszystkie informacje o kształcie obiektu, może dynamicznie obliczać, co ten obiekt wygląda pod dowolnym kątem, i może wydawać się mniejszy lub większy, gdy się do niego zbliżasz lub oddalasz.
Niektóre gry to połączenie 2.5D i prawdziwego 3D. Przykładem, o którym mogę pomyśleć, jest seria Disgaea, która zawiera tła 3D i duszki 2D.
źródło
Nie jestem pewien, jaka byłaby bardziej akceptowana definicja, ale ja i ludzie z mojej poprzedniej firmy uważaliśmy, że „każda gra, która wygląda jak izometryczny 3D, ale jest renderowana za pomocą duszków 2D”, to 2.5D.
Teraz wyjaśnię, dlaczego to zrobiliśmy. Generalnie renderowanie świata 3D z dużą ilością obiektów spowoduje zbyt dużą presję na przetwarzanie, obniżając liczbę klatek na sekundę. Aby temu zaradzić, generalnie tworzyliśmy obiekty w oprogramowaniu do renderowania 3D, takim jak Maya, i renderowaliśmy je jako duszki. Które można wykorzystać w grze. Nie wspominając o tym, że kąt był brany pod uwagę podczas renderowania. Mówiąc o tej technologii z wydawcą, zwykle używamy tego terminu. Świat 3D, który wygląda jak świat 2D, jest dla nas technicznie 3D. Dlatego na ogół nie używaliśmy tego terminu dla tej metody. Pomyślałem, że powinienem się tutaj podzielić.
źródło
Zazwyczaj termin „2.5-D” odnosi się do jednego z dwóch bardzo różnych stylów gier.
Może to oznaczać:
1) Gra wykorzystująca techniki renderowania 2D, ale kontrolująca w 3 wymiarach przestrzennych. Zwykle używa sztuczek graficznych, aby wyglądały tak, jakby były renderowane w 3D. Było to bardzo powszechne w latach 90., ale dzisiaj nie tak bardzo. (Przykłady: „DOOM”, „Duke Nukem 3D”, „Wolfenstein 3D”)
2) Gra całkowicie renderowana w 3D, ale która kontroluje wyłącznie wzdłuż jednego lub więcej samolotów 2D. Ten styl jest bardzo popularny do dziś. (Przykłady: „Little Big Planet”, „New Super Mario Bros.”, „Trials HD”)
Należy zauważyć, że przy użyciu wzorca architektonicznego widok-model-kontroler pierwszy styl gry ma „model”, który reprezentuje dane w 3 wymiarach, ale „widok”, który wyświetla je użytkownikowi tylko w 2 wymiarach; drugi styl gry jest odwrotny.
źródło
W 2.5D używasz zasobów 2D / technik renderowania, aby dać wrażenie środowiska 3D.
Teraz, z tą definicją, w następującym potencjalnie niejednoznacznym scenariuszu wymagane jest pewne opracowanie:
Gra A
Używając grafiki 3D, GPU przyspieszone i wszystkie (obiekty gry to siatki, a nie obrazy), ze stałym kątem kamery. Zróbmy jeszcze gorzej, rzut jest ortograficzny, klasyczny 63,43 stopnia. Jedynym sposobem, aby zauważyć na pierwszy rzut oka, że grafika nie jest 2D, jest to, że 3DGC, z wyjątkiem tego, że renderujesz je z niezwykłą starannością, łatwo można odróżnić od sprite'ów do rysowania ręcznego, niezależnie od projekcji użytej do ich renderowania. Możesz eksperymentować z różnymi technikami renderowania, parametrami, modułami cieniującymi itp., A będziesz miał trudności z ukryciem faktu, że są to siatki 3D.
Gra B
Port w grze A, ale ukierunkowany na platformy, o których wiadomo, że mają sprzęt, który nie radzi sobie zbyt dobrze z grafiką 3D lub wcale go nie obsługuje. Następnie port zastępuje siatki spritami. Nadal używa na przykład 3D Bounding Boxes do kolizji, a obiekty mają właściwość position z wartościami x, y i z, ponieważ logika gry w większości nie została dotknięta lub w ogóle nie została dotknięta, tylko kod renderowania został zmieniony.
Ponieważ duszki w grze B są renderami zasobów 3D gry A, a dla uproszczenia gry gra A nie robi niczego, co wymaga skomplikowanych shaderów, w 99% wszystkich procesorów graficznych nie można odróżnić ramki od gry B kadru z gry A.
W 2.5D interakcja między obiektami gry jest ograniczona do zestawu sytuacji, w których iluzja 3D nie może zostać naruszona. Na przykład, aby reprezentować przytulanie się dwóch znaków, musisz utworzyć pojedynczy plik obrazu z interakcją dwóch znaków, ponieważ próba przedstawienia operacji przytulania tylko przy użyciu jednego obrazu na znak byłaby zbyt trudna lub niemożliwa. Może możesz przyjść z postacią podzieloną na części i narysować je we właściwej kolejności. W 3D problem ten nie istnieje (istnieje inny, polegający na prawidłowym ułożeniu dwóch znaków, aby nie przenikały przez siatkę drugiego znaku).
Teraz, aby to zwizualizować, wyobraź sobie, że w grze A i B występuje błąd, który w niektórych sytuacjach pozwala postaci gracza przejść przez inny obiekt gry, umożliwiając nam łatwe rozróżnienie między 2.5D a 3D.
Gra B, 2.5D Renderowanie, duszki są uporządkowane według wartości z wektora położenia. W tym przykładzie dodatnie z jest w dół, a ujemne z jest w górę. oś z i oś y są równoległe, ale z jest skalowane o współczynnik 0,5 y. Więc jeśli widoczny obszar wynosi od 10 do 10 lat, w tym samym obszarze mamy od 20 do 20 z. Obiekty z większym z zostaną narysowane jako ostatnie, więc będą postrzegane jako znajdujące się przed obiektami o niższym z. Cień postaci gracza wygląda dziwnie, ponieważ cienie są w wyższej warstwie niż podłoga, ale w gorszej warstwie niż wszystkie inne obiekty, więc cień postaci gracza nigdy nie znajduje się na kostce.
Gra A, renderowanie 3D. Bufor głębokości (znany również jako bufor Z) służy do testowania głębokości z precyzją pikseli. Zatem obiekt nie musi całkowicie zamykać innego, nawet trójkąt nie musi całkowicie zamykać innego, mamy test głębokości precyzji pikseli. Możemy obracać obiekty gry w dowolny sposób i nadal uzyskiwać realistyczne wyniki, gdy wchodzą w interakcje.
W CV: w wersji 2.5D duszek znajduje się przed lub za innym duchem. W 3D siatka składa się z trójkątów, ale trójkąt nie jest minimalną jednostką podczas testowania głębokości, możesz mieć precyzję pikseli. Oczywiście obrót kamery w 2.5D jest niemożliwy, ponieważ zasoby zostały utworzone dla stałego kąta kamery, podczas gdy w 3D jest naturalne, jeśli kąty kamery są ograniczone przez projekt w grze 3D to inny temat.
Istnieją różne triki, które dają wrażenie bycia w świecie 3D, gdy można tylko renderować grafikę 2D, przedstawiłem tylko szybko spreparowany przykład z wykorzystaniem niektórych zasobów mojego opuszczonego projektu.
Dlaczego nie zawsze używać 3D i zapomnieć o 2.5D?
Cóż, mogę pomyśleć w kilku przykładach, dlaczego deweloper może preferować podejście 2.5D:
Jak bardzo możesz przybliżać wyniki grafiki 3D za pomocą 2.5D?
Istnieje horyzont wydajności i złożoności programowania. Gdy zbliżysz się do tego horyzontu, zaczniesz wątpić, czy Twój projekt jest naprawdę możliwy w 2.5D, czy też musisz przejść do pełnego 3D. Na przykład możesz użyć buforowania Z w wersji 2.5D (teoretycznie), ale czy możesz zapłacić koszt pamięci wideo (stary komputer stacjonarny z wbudowaną grafiką, a nie wydajne urządzenia mobilne)? Czy chcesz zapłacić koszt przechowywania dodatkowego obrazu, aby zapisać maskę Z każdego duszka?
Dobrymi kandydatami do 2.5D są gry RPG, myślcie, że Baldur's Gate lub RTS uważa Age of Empires 1 i 2 (AoE 3 jest w pełni 3D i łatwo je odróżnić).
Przydatne referencje:
Buforowanie Z: http://en.wikipedia.org/wiki/Z-buffering
Rzuty ortograficzne: http://glasnost.itcarlow.ie/~powerk/GeneralGraphicsNotes/projection/orthographicprojection.html
źródło