Pracuję nad odgórną strzelanką podobną do DoDonPachi , Ikaruga itp. Ruch aparatu przez świat jest obsługiwany automatycznie, a gracz może poruszać się wewnątrz widocznego obszaru kamery.
Po drodze wrogowie są skryptowani, aby spawnować się w określonych punktach na ścieżce. Choć brzmi to prosto, widziałem dwa sposoby zdefiniowania tych punktów:
- Pozycja kamery: „wyzwala” spawnowanie, gdy kamera mija punkty
- Czas na ścieżce: „30 sekund za, spawnuj 2 wrogów”
W obu przypadkach zostaną określone pozycje względem kamery, a także zachowanie wroga.
Sposób, w jaki to widzę, sposób definiowania tych punktów będzie miał bezpośredni wpływ na działanie „edytora poziomów” lub tego, co masz.
Czy byłyby jakieś korzyści z jednego podejścia nad drugim?
źródło
Wystarczy jednak, że pozycja aparatu do odrodzenia byłaby prawdopodobnie bardziej elastyczna, ponieważ można modyfikować ścieżkę bez martwienia się o duży efekt domina.
Jeśli idziesz z czasem odradzania, dodanie lub usunięcie ścieżki będzie ogromnym problemem, ponieważ będziesz musiał zmodyfikować wiele odrodzeń wroga.
Kolejny problem, jaki widzę, to zmiana prędkości aparatu. Czy naprawdę chcesz iść i dostosowywać spawn wroga tylko dlatego, że sprawiłeś, że kamera porusza się trochę szybciej lub wolniej? Ponadto musisz przebrnąć przez poziom okropnie wiele razy, aby znaleźć czasy odrodzenia lub poprawki dla nich.
źródło
Zdecydowanie nie polecam wcale przesuwać „kamery”; zawsze rozważaj gracza i wrogów w tej samej stałej przestrzeni współrzędnych. Zarówno wrogowie, jak i przewijanie w tle powinny być dopasowane do niezależnej osi czasu. Ułatwia całą matematykę.
źródło
Wybrałbym pozycję kamery. Użycie czasu sprawi, że będzie ci trudniej, jeśli chcesz, aby ścieżka wroga pasowała do grafiki w pliku mapy (np. Wrogowie podążający zakrzywioną ścieżką). Pozwala także przyspieszyć przewijanie bez zmiany punktów odradzania.
Drugą stroną jest to, że przyspieszenie zwoju sprawi, że wrogowie przyjdą szybciej. Co można uznać za plus (przyspieszenie oznaczałoby trudność) lub ujemny (szybkość przewijania wpływa na tempo).
źródło
Pracuję również nad kosmiczną strzelanką. Użyłem pustego obiektu GameController. dodano składnik skryptu o nazwie GameController.cs, który kontroluje część spawnującą, np.
http://www.youtube.com/watch?v=VqFJsU63GRo
źródło
Umieściłbym je na dużym tle mapy i umieściłbym ich początkową ścieżkę ruchu na tej mapie. W ten sposób mogłem później zmienić ścieżkę kamery w znaczący sposób, zamiast osobno zmieniać zarówno ścieżkę, jak i czas.
źródło