Tereny proceduralne w 3D: co zostało zrobione? Czy istnieją na ten temat algo i / lub teorie? [Zamknięte]


10

Oprócz programowania modelowanie środowiska zajmuje dużo czasu.

Nie wiem, jaki jest czas pracy, na przykład na poziomie lochów WoW lub w innym pięknym mieście, przyszłym środowisku, dżunglach, fantasy itp., Ale ten rodzaj pracy jest wykonywany od zera przez artystów.

Jakie techniki są stosowane w randomizatorze poziomu TorchLight i czy inne tytuły mają z tym podobieństwa? Czy istnieje takie nazwisko dla takich technik?


Myślę, że mapy Torchlight są 2D, z grafiką 3D. Nie pamiętam, żeby miał jakieś obszary mapy 3D, takie jak Iglica Czarnej Skały WoW, gdzie tunele przebiegają jedna nad drugą. Prawdopodobnie możesz użyć dowolnego generatora lochów 2D Roguelikes ( pcg.wikidot.com/pcg-alameterm:dungeon-generation ).
amitp

Zabawna referencja, to demo 4 KB: youtube.com/watch?v=_YWMGuh15nE
Oskar Duveborn

Generowanie lochów 2D zostało już omówione na stronie gamedev.stackexchange.com/questions/2663/… .

Odpowiedzi:


8

Roguelikes robią takie rzeczy od czasu ich wynalezienia i są „nasieniem” Torchlight (i Diablo), od których czerpali swoje pomysły.

Nie wiem konkretnie o Torchlight, ale ogólnie rzecz biorąc, to, czego szukasz, nazywa się „Generowaniem Poziomów Proceduralnych”.

Paliwo generuje proceduralnie strefę tak łykowatą, że nie zmieściłaby się na DVD, na którym pojawia się gra. Szczególnie podobało mi się czytanie na niej serii Shamusa Younga .

Innym interesującym przykładem treści generowanych proceduralnie jest nie wydana jeszcze gra Introversion o nazwie Subversion . Zobacz część 12 na tej stronie; jest wyjątkowo soczysty.

Mówiąc o miastach generowanych proceduralnie, jest też trochę oprogramowania pośredniego - sprawdź http://www.procedural.com/ .

Aby uzyskać więcej gier / oprogramowania pośredniego, odwiedź stronę Wikipedii Generowania procedur i Wiki Generowania procedur .


2

(Cytowane linki w linku do pastebin: http://pastebin.com/PpJknMuT )

Można powiedzieć, że istnieją 2 różne rodzaje. To zależy, czego chcesz. Na przykład, jeśli weźmiemy ostatnią grę GTA, setki artystów wykorzystano do stworzenia miasta i spersonalizowania go. Można tu zastosować generowanie procedur, ale byłoby to raczej narzędzie dla artystów niż coś, co działałoby na silniku gry, ponieważ nie chcemy specjalnie innego układu miasta w każdej grze.

Tak więc moja rozprawa licencjacka dotyczyła proceduralnego generowania miast z przeznaczeniem na strefy: [1]

To narzędzie jest używane przez artystę do tworzenia miasta, pozwalając jednocześnie kontrolować różne aspekty, jeśli tego wymagają. Generacja miast jest podobna do systemów L, jak widać w pracy Pascala Muellera: [2] Strefa miejska działa jako mapa obrazu, biorąc prawdopodobieństwa stref (komercyjnych, mieszkaniowych, przemysłowych) z danych rgb pikseli. Można by zautomatyzować generowanie, jeśli chcesz, ale aby miasta wyglądały wiarygodnie, algorytm musiałby być znacznie bardziej złożony przy użyciu mechaniki AI populacji, a nie L-Systemu i algorytmów hałasu.

Generację w locie można zobaczyć w [3] lub chyba najprostszym przykładem byłby helikopter: [4]

Coś podobnego do Torchlight to Infinity: Quest for Earth [5]

W Infinity galaktyka i wszystko w niej jest generowane z wartością ziarna, która następnie tworzy wszystkie inne zmienne używane do generowania wszystkiego, co jest w galaktyce (planety, słońca itp.). Link mówi o tym, jak to działa bardziej szczegółowo.


Tak, rozumiem: nie zawsze chciałoby się mieć losowe poziomy z generacją z nasion lub inaczej. Chodzi o to, że chcemy, aby generowanie poziomów było po prostu ułatwiać pracę projektantowi poziomów, aby nie musiał robić wszystkiego za pomocą mayi lub max. Generowanie poziomów nie zawsze jest zaprojektowane tylko do generowania poziomów, może również powodować, że oprogramowanie generuje fragmenty geometrii w locie, zamiast prowadzić duży plik zawierający całą geometrię, np. Mapę wysokości, ale dla określonych zestawów poziomów, takich jak dżungla, biuro lub miasto: Po prostu prosimy artystę o zrobienie tekstur i trochę
żart

i niektóre wspólne elementy geometrii, które chcemy powtórzyć. Nie mówię o poziomach tylko proceduralnych, ale dla dużego dużego świata jest to konieczne do oszczędzania pamięci.
Jokoon

Jakiego rodzaju środowiska gry chcesz? Mam na myśli to, że jeśli masz miasto, to tylko budynki byłyby powtarzane w różnych orientacjach. Krajobrazy są, jak mówisz, o wiele łatwiejsze do wygenerowania w locie. To naprawdę zależy od gry, którą chcesz stworzyć, więc czy byłoby to coś w rodzaju Morrowind / Oblivion, GTA czy coś innego?
Sycren,

1

Minecraft wykorzystuje hałas 2D Perlin do generowania terenu na zewnątrz. Może mieć praktycznie nieskończone poziomy (umrzesz ze starości, zanim dojdziesz do krawędzi), które są generowane podczas eksploracji graczy. (Prawdopodobnie) wykorzystuje również hałas 3D Perlin do generowania podziemnych jaskiń.


Technicznie krawędź świata Minecraft jest nieosiągalna - gdy zdobędziesz około jednej trzeciej drogi (IIRC), gra zacznie się chwytać i oszczędzać co sekundę i nie można jej zagrać. ;-)
Kaczka komunistyczna

-1

Jakie są techniki zaangażowane w randomizator na poziomie TorchLight.

Będą to po prostu losowe liczby, które zostaną wprowadzone do algorytmów poziomu.

i czy inne tytuły mają z tym podobieństwa?

Wikipedia .

Chociaż dyskusyjna Left 4 Dead zastosowała podobne techniki tam AI Director.

Czy istnieje takie nazwisko dla takich technik?

Fraktale, rekurencje, systemy L i zwykłe stare algorytmy. Każda w połączeniu z liczbami losowymi.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.