Generator mapy

ghasta
Reactions:
Posty: 2334
Rejestracja: 29 września 2010, 23:48
Been thanked: 1 time
Kontakt:

Post autor: ghasta » 31 października 2016, 13:29

Doszedłem do wniosku że zabiorę się z wątku o mapkach do oddzielnego tematu.

Poniżej - jak kogoś interesuje - postęp w tworzeniu generatora podziemi napisanego na bazie znalezionego tutoriala do silnika unity.
Procedural Cave Generation tutorial

Jak skończę pisać całość umieszczę pełny kod na blogu. A tymczasem:

Lekcja 1

[youtube]https://www.youtube.com/watch?v=v7yyZZj ... RkWXftAOf9[/youtube]
[edyta]

i efekt:
Obrazek

Przerobiłem lekcję nr. 2
Marching Squares (poniżej)
[youtube]https://www.youtube.com/watch?v=yOgIncKp0BE[/youtube]

Efektu - brak, bo nie ma tu co pokazać, ale już wygładzanie krawędzi po lekcji 3 spowodowało że mapka wygląda lepiej (oczywiście chodzi o mapkę
dalszą gdzie nie ma błędu związanego z rysowaniem)

Obrazek

I generator bez błędu rysowania z wygładzonymi krawędziami.

Obrazek

Zignorowałem lekcję dodającą ściany 3D ponieważ nie pracuję w środowisku 3D i przeszedłem od razu do kolejnej lekcji czyli 5. W efekcie nie powstają już mapki z takimi artefaktami:

Obrazek

a wyczyszczone:

Obrazek

Na mapkach widoczny jest efekt funkcji wygładzającej poprzez użycie trójkątów.

Lekcja 6 to zapewnienie połączeń pomiędzy pustymi regionami mapy.

już niedługo :D ..

I tak oto zapomniałem zaktualizować wątku :)
Skończyłem generator mapy i zacząłem kolejną rzecz, pośrednio z nim związaną. Robię "prostą" grę roguelike z mocno uproszczoną mechaniką. Na tę chwilę poświeciłem czas na stworzenie generatora mapy/potworów/skarbów i powoli przechodzę do ekranów obsługujących walkę. Zapewne zrobię ją tak jak w starych FinalFantasy z lewej wrogowie, a z prawej drużyna. Zresztą wymusza to zastosowana mechanika gry.

Jak chcecie dowiedzieć się więcej to zapraszam na bloga.
Ostatnio zmieniony 15 listopada 2016, 09:11 przez ghasta, łącznie zmieniany 1 raz.

ghasta
Reactions:
Posty: 2334
Rejestracja: 29 września 2010, 23:48
Been thanked: 1 time
Kontakt:

Post autor: ghasta » 22 listopada 2016, 10:37

Ciągne temat dalej - wiedza zdobyta przy generatorze mapy zostanie przekuta w grę roguelike. Do opisu gry przestałem używać wyrazu prosta po tym jak zobaczyłem dzisiaj ile już narzeźbiłem kodu (coś z 68 klas), a będzie go potrzebne będzie jeszcze ze 2-3 razy więcej. Ilość linii kodu sprawdzę jak skończę pisać całość.

Z drugiej strony to dobrze, że człowiek nie zdaje sobie sprawy jak coś (tu: programowanie gier) wygląda na początku drogi : -) Gdybym wiedział ile czasu trzeba będzie poświęcić na prostą grę roguelike chyba bym się tego nie podjął.

A kiedyś, kiedyś, do rogalika zaprzęgnę mechanikę KC. Boszz cóż piękne marzenie!
Ostatnio zmieniony 22 listopada 2016, 10:42 przez ghasta, łącznie zmieniany 1 raz.

ghasta
Reactions:
Posty: 2334
Rejestracja: 29 września 2010, 23:48
Been thanked: 1 time
Kontakt:

Post autor: ghasta » 12 grudnia 2016, 12:51

Walczę z gierką dalej. Dodałem grafikę, ponieważ zmęczyło mnie patrzenie na kolorowe kwadraciki. Efekt jej dodania jest fajny. Mapa pokoi stała się czytelniejsza.
Aktualnie gra generowana jest z prędkością 60 klatek na sekundę. Pewnie to zmienię z powodu bezsensowności takiego obciążania procka przy animacji, która składa się z całych 2 klatek...

[center]Obrazek[/center]

maciej
Reactions:
Posty: 1374
Rejestracja: 29 marca 2012, 21:53

Post autor: maciej » 12 grudnia 2016, 13:13

Tej. Trochę to wygląda jak plansza do Labiryntu Śmierci
"Mieli do wyboru wojn? lub ha?b?, wybrali ha?b?, a wojn? b?d? mieli tak?e"

ghasta
Reactions:
Posty: 2334
Rejestracja: 29 września 2010, 23:48
Been thanked: 1 time
Kontakt:

Post autor: ghasta » 12 grudnia 2016, 13:58

Prawidłowe skojarzenie - bazą są zasady gry Citadel of Blood vel Labirynt Śmierci ;-)

Kolejny mały sukces - na ekranie animuje mi się już drużyna i potwory. :)
[center]
Obrazek[/center]
Ostatnio zmieniony 14 grudnia 2016, 11:07 przez ghasta, łącznie zmieniany 1 raz.

Awatar użytkownika
Suriel
Reactions:
Posty: 3733
Rejestracja: 19 września 2010, 22:20
Lokalizacja: Wawa
Has thanked: 87 times
Been thanked: 150 times

Post autor: Suriel » 23 stycznia 2017, 14:19

Krok po kroku i będzie gierka jak się patrzy. Mam pytanie, czy jakieś tam elementy nie mogą zostać zrobione przez kogoś innego, np grafika. Pytam o to czy da się jakoś cię odciążyć, czy w ogóle myślałeś o tym, bo może to jest "tylko moje dzieło".
Jeżeli zabałaganione biurko jest oznaką zabałaganionego umysłu, oznaką czego jest puste biurko? Albert Einstein

ghasta
Reactions:
Posty: 2334
Rejestracja: 29 września 2010, 23:48
Been thanked: 1 time
Kontakt:

Post autor: ghasta » 30 marca 2018, 11:48

:D Surielu - jako że minęło tylko 14 miesięcy od pytania, spieszę odpowiedzieć:
Grafiki ściągnąłem z portalu udostępniającego tile-sety dla gier. Tu link dla wykorzystanego kompletu: DawnLike
Na etapie na jakim byłem (i jestem nadal) nie potrzebuję wsparcia grafika z prostej przyczyny - nie miał by co robić, a poza tym średnio mnie stać na takie fanaberie do czysto niekomercyjnego projektu/dema/nauki biblioteki.

Abstrahując od pytania - ten sam zestaw grafik został wykorzystany jest w książce, z którą teraz pracuję.

Zaś nowa grą pisaną na bazie książki mam nadzieję dotrzeć dalej niż z projektem sprzed roku. :) Powoli zaczynam łapać jak działa libGdx, a aktualnie udało mi się stworzyć ekrany statusów i obsługi ekwipunku (zaproponowany w książce kod jest absurdalnie pokomplikowany - pewnie da się to napisać dużo łatwiej).

ghasta
Reactions:
Posty: 2334
Rejestracja: 29 września 2010, 23:48
Been thanked: 1 time
Kontakt:

Post autor: ghasta » 26 lipca 2018, 16:32

W ramach przypomnienia :P wykonałem jeszcze raz tutorial z proceduralnego generowania mapek. Tym razem z użyciem javy i biblioteki libgdx.
I poniżej próbka wygenerowanej mapy.

p.s.
Mam też nadzieję, że w przyszłym tygodniu będę mógł pochwalić się dużym projektem, który robię w libgdx!

ODPOWIEDZ