Staram się znaleźć najlepszy sposób programowego przedstawienia terenu w mojej grze. Zastanawiałem się nad użyciem mapy wysokości (lub siatki równomiernie rozmieszczonych wierzchołków) do przedstawienia powierzchni terenu i mapy splat, aby umożliwić płynne teksturowanie. To działałoby na całkowicie gładkim terenie, ale problem polega na tym, jak przedstawić klify i ostre ściany klifu.
Same klify musiałyby być odwzorowane inaczej niż reszta terenu. Na przykład musieliby mieć inną (nierozciągniętą) teksturę widoczną z przodu klifu, ale gdybym użył do tego splatmapy, nie byłoby możliwe uzyskanie tak czystej powierzchni klifu w miejscu, w którym tekstura klifu jest całkowicie oddzielony od ziemi.
Obraz mówi tysiąc słów, więc ...
Jakie są ogólne sposoby przechowywania i / lub renderowania klifów i innych ostrych różnic w wysokości terenu?
źródło
Odpowiedzi:
To zdjęcie wygląda, jakby użyli dodatkowego rekwizytu do stworzenia klifu. Jeśli chcesz użyć zwykłej mapy wysokości do przedstawienia terenu, jest to prawie jedyne rozwiązanie. Dobra wiadomość jest taka, że jest powszechnie używana i działa dobrze. Najprostszym rozwiązaniem (z punktu widzenia programowania) jest po prostu umieszczenie dodatkowych rekwizytów w razie potrzeby w edytorze poziomów. Jeśli chcesz się zachwycić, możesz mieć narzędzie, które automatycznie wybiera zestaw rekwizytów i kształtuje dopasowany teren.
Możesz udostępnić narzędzie do wyciągania twarzy na mapie wysokości, co zapewni idealne twarze pionowe z odrobiną dodatkowych komplikacji, ale prawdopodobnie nie będzie to wyglądać bardzo dobrze i prawdopodobnie będzie wymagało umieszczenia dodatkowej dekoracji zakryj twardą krawędź.
Ostatnią opcją byłoby całkowite pominięcie mapy wysokości i po prostu uczynienie terenu pełnym kawałkiem geometrii, ale wtedy stracisz niezłą prostotę mapy wysokości.
źródło