W grach 2D z góry na dół piłka czasami ma wrażenie, że jest w powietrzu, jak poniżej:
Jak mogę to osiągnąć?
W grach 2D z góry na dół piłka czasami ma wrażenie, że jest w powietrzu, jak poniżej:
Jak mogę to osiągnąć?
Odpowiedzi:
Podaj kulce wartość wysokości. Narysuj cień w rzeczywistej pozycji kuli 2D; cień pomoże przestrzennie zorientować piłkę dla gracza.
Podczas rysowania samej piłki , przesunąć pozycję Y o „wysokość” piłki. Jeśli chcesz zaimplementować coś więcej niż iluzję, użyj tej wartości wysokości również w obliczeniach - na przykład możesz zaimplementować zdolność piłki do przechodzenia nad głową gracza w grze takiej jak pokazałeś, sprawdzając, czy wysokość jest większy niż wysokość gracza.
Cień i tekstura .
Teksturuj piłkę, aby pokazać, że się obraca. Pomaga to uzyskać iluzję obrotu kuli, która ma więcej niż 2 wymiary.
Cień może oszukać mózg w wierzeniu w różne rzeczy. Sprawiając, że płaskie rzeczy wyglądają, jakby miały trzeci wymiar.
Nie musisz nawet zmieniać wysokości piłki, wystarczy zmienić położenie cienia.
Ten film jest doskonałym przykładem tego, co może zrobić cień. Zauważysz, że piłka porusza się dokładnie tak samo w każdej sekwencji, zmienia się tylko cień: https://www.youtube.com/watch?v=5fgOK0odA1o
Shadow and Ball to kluczowe aspekty. Rozmiar cienia i odległość między Kulą a cieniem powinny wzrosnąć wraz ze wzrostem wysokości. Rozmiar piłki powinien się również zwiększać wraz ze wzrostem wysokości piłki. Pozycja cienia reprezentuje pozycję kuli na 2d, a kiedy wzrost wysokości kuli musisz zmienić pozycję kuli (zakładam, że źródło światła jest jednorodne i nie jest pojedynczym punktem jak lampa. Źródło światła zmienia wszystko w cieniu). Wreszcie możesz dodać animację, taką jak przepływ powietrza.
Zrobiłbym to, co sugerują powyższe plakaty, cień i rozmiar zwiększają się, gdy piłka jest wyższa. Pamiętam z gry w tenisa w starych grach telewizyjnych to, że piłka zwolniła wraz ze wzrostem i stała się większa. Kiedy osiągnie swój zenit i zacznie „schodzić”, zacznie znowu szybciej, gdy się zmniejszy.