Zarówno systemy oparte na kafelkach, jak i statyczny model / system tekstur mogą być używane do reprezentowania świata, a każdy z nich ma inną siłę. To, czy jedno jest lepsze od drugiego, sprowadza się do tego, jak używasz tych elementów, i co najlepiej pasuje do twojego zestawu umiejętności i potrzeb.
Biorąc to pod uwagę, oba systemy można stosować osobno lub łącznie.
Standardowy system oparty na kafelkach ma następujące zalety:
- Prosta tablica 2D płytek
- Każda płytka ma jeden materiał
- Ten materiał może być pojedynczą teksturą, wielokrotnością lub mieszany z otaczających płytek
- Może ponownie używać tekstur dla wszystkich kafelków tego typu, zmniejszając tworzenie zasobów i przeróbkę
- Każda płytka może być przejezdna lub nie (wykrywanie kolizji)
- Łatwe do renderowania i identyfikowania części mapy
- Pozycja postaci i pozycja mapy są współrzędnymi bezwzględnymi
- Prosta pętla w odpowiednich kafelkach dla regionu ekranu
Wadą kafelków jest to, że musisz stworzyć system do budowania danych opartych na kafelkach. Możesz stworzyć obraz, który używa każdego piksela jako kafelka, tworząc w ten sposób tablicę 2D z tekstury. Możesz także utworzyć własny format. Za pomocą flag bitowych możesz przechowywać dużą liczbę danych na kafelek w dość małej przestrzeni.
Głównym powodem, dla którego większość ludzi robi kafelki, jest to, że pozwala im tworzyć małe zasoby i wykorzystywać je ponownie. Dzięki temu możesz stworzyć znacznie większy obraz i mniejsze kawałki. Zmniejsza to konieczność przeróbek, ponieważ nie zmieniasz całej mapy świata, aby wprowadzić niewielką zmianę. Na przykład, jeśli chcesz zmienić odcień całej trawy. Na dużym obrazku trzeba odmalować całą trawę. W systemie kafelkowym wystarczy zaktualizować kafelki trawy.
Podsumowując, prawdopodobnie wykonasz o wiele mniej przeróbek w systemie opartym na kafelkach niż na dużej mapie graficznej. Możesz skończyć z systemem kolizji opartym na kafelkach, nawet jeśli nie użyjesz go do mapy terenu. To, że używasz kafelka wewnętrznie, nie oznacza, że nie możesz używać modeli do reprezentowania obiektów środowiska, które mogą użyć więcej niż 1 kafelka dla ich przestrzeni.
Musisz podać więcej szczegółów na temat swojego środowiska / silnika / języka, aby podać przykłady kodu.