31 października 2016

Generator map lekcja 4

Przerobiłem lekcję 4 Detecting Regions , w ramach której mapka była sprawdzenia pod obecność artefaktów w postaci zbyt małych obszarów pustych lub zbyt małych obszarów wypełnionych.
Przykładowo :
Mapka z dosyć dużą krawędzią dla kwadratu ściany (wartość Długość boku) z regionem o zdecydowanie zbyt małej wielkości. Powinien on zostać usunięty (wypełniony ścianą). Oczywiście w efekcie mapka będzie w 100% niegrywalna, ponieważ w całości zostanie wypełniona ścianami. 

Poniżej mapka przepuszczona przez filtr, z której usunięto dwa (musicie uwierzyć na słowo :) ) zbyt małe obszary puste. Algorytm usuwa także zbyt małe ściany.


  

W poniższej mapce widać zbyt mały obszar ściany, który powinien zniknąć z naszej mapy:


 Lekcja poszła dosyć szybko. Nie ustrzegłem się kilku błędów, ale udało się je w miarę szybko ogarnąć (nie pamiętam kiedy ostatnio używałem w javowego PriotytyQueue!)


28 października 2016

Generator map lekcja 3

Dzisiaj dzień bogaty we wpisy!

Jako, że miałem troszkę czasu skończyłem 3 lekcję dotyczącą generowania map czyli Creating Meshes.
Muszę powiedzieć, że z powodu niezbyt dobrego zrozumienia tego co się dzieje w tutorialu (jak i słabego tłumaczenia) zrobiłem kilka poważnych błędów w kodzie i mapki wyglądały niebałdzo:


 Problemem ponownie były wbudowane w Unity funkcje, które musiałem napisać samodzielnie w java od zera.

Po kilku zmianach jest już jednak dużo lepiej:



Jak widać są jednak jeszcze jakieś błędy - całe zielone pole powinno być zabudowane mapą, ale efekt jest zachęcający.
Poszukam, poprawię i się pochwal.

HA! Znalazłem błąd. Generator tworzy teraz takie oto mapki.


Kolejny krok - usuwanie błędnych (zbyt małych) obszarów oraz ustalanie powiązań pomiędzy rozdzielonymi na mapie obszarami.

Rysunek Głowomeba

Od ostatniego wpisu o głowomebie minęło już trochę czasu, a gdy odkłada się rzeczy na później coraz ciężej zakończyć rozpoczętą pracę.

Głowomeba czekała i czekała, aż się w końcu doczekała.  Efekt poniżej, wiele lepiej nie będzie bo nie pozwalają na to moje umiejętności.
 
Poniżej umieszczam aktualne foto.




W tej chwili oceniam kompletność rysunku potwora na 95% - nie ma dorysowanej "podłogi" i jakiegoś sensownego tła portalu, z którego wychodzi. 
Rysunek wykonany jest ołówkami na kartce w formacie A4.

27 października 2016

Generator map lekcja 2

Miałem chwilę na przerobienie kolejnego rozdziału tutoriala czyli Marching Squares. Teraz mój kod generuje mapę węzłów, z których będzie można przejść do wygładzania krawędzi pikselowej mapy.

Zrzutów ekranowych nie daję ze względu na to, że wizualnie nic się nie zmieniło. Siadam do części trzeciej.

14 października 2016

Generator map lekcja 1

Na bazie tutoriala do silnika gier Unity i lekcji Cellular Automata napisałem (podobny) generator podziemi w z użyciem Java 1.7 i JavaFX.

Wersja po pierwszej lekcji generuje takie oto mapki jak na załączonych screenach. Po przerobieniu kolejnych lekcji pokażę osiągany postęp.

(Paski widoczne na generatorze to ilość wygładzeń mapy (0-10) i stopień jej wypełnienia białym(0-100))