Wpis z mikrobloga

Pomału długie sobie w projekcie i już zaczynam planować następne moduły. Czytam jakieś artykuły, szukam inspiracji, ogólnie rzecz ujmując - uczę się. Napotkałem jednak problem generowania świata gry. Lubię algorytmy do tego służące, są bardzo ciekawe i takie... Zmyślne? Chcę zaprojektować swój generator na potrzeby tego projektu, jednak mam bardzo nietypowe wynagania, z którymi nie mogę sobie poradzić:

- całość jest w 2D, widok z góry i może być oparte na kwadratowej siatce

- wygenerowane pomieszczenia mają mieć ścisłą zabudowę - ma być jak najmniej luk (ten warunek eliminuje większość znanych mi sposobów)

- każde pomieszczenie na być połączone korytarzem z pewnym punktem, stałym dla wszystkich pomieszczeń. Korytarzem, nie innym pokojami.

Znacie jakieś algorytmy czy sposoby na uzyskanie czegoś takiego? Artykuły, książki itp. Czytałem sporo na necie, jednak żaden sposób czy choćby jego fragment mi nie odpowiada. Będę wdzięczny za algorytmy robiące tylko część opisanej przeze mnie pracy, albo za ogólny opis tychże.

#algorytmy #gamedev
  • 12
@essf: co? Ja umiem tworzyć gry, programuję na dość dobrym poziomie (chociaż niektóre niuanse dalej są dla mnie niejasne). Moim problemem nie jest to że nie umiem programować a chcę zrobić grę, ja po prostu szukam pomocy w konstrukcji odpowiadającego mi algorytmu do proceduralnego generowania świata.
@BezdomnySkynet: a jak się to ma do małej ilości pustych miejsc? Taki sposób da mi wiele korytarzy zbiegajacych się w jednym miejscu, a na końcu każdego będzie pokój. Ot, taki burdel na kółkach. Do dungeonu może ok, ale ja muszę mieć dość zwarty układ pomieszczeń.
@BezdomnySkynet: wyobraź sobie dom. Dużo pokoi, wszystkie połączone korytarzami z innymi pokojami oraz z wyjściem. Jednocześnie trudno tam znaleźć jakieś puste przestrzenie, dziury w środku budynku itp. Co prawda nie chce generować domu, ale myślę że to dość dobrze opisuje to co chcę zrobić.
Ale przeciez ja Ci nie kazalem przerabiac. Dodadlem tylko idee ktora wedlug mnie zblizy Cie do algorytmu jakiego szukasz I zniweluje problem wielu korytarzu. Mozna by tez jakos premiowac pola blisko zajetych juz przy losowaniu miejsca na pomieszczenie
@frogi16: Nie wiem czy to jest to czego szukasz, ale ciekawe rozwiązanie problemu generowania świata zaproponowali twórcy Dungeon of Endless i mówili o tym na konferencji Unite - https://www.youtube.com/watch?v=zPQOHX9hiL0
Pierwsza część wykładu jest o renderowaniu grafiki, ale druga właśnie o generowaniu. Co ciekawe zaczynali oni od bardziej "losowego" podejścia, po czym zmienili je i bardziej projektują poszczególne typy pomieszczeń. Jest bardziej schematycznie i powtarzalnie, ale ładniej i lepiej dla gameplayu. Jakoś