sobota, 18 czerwca 2011

Testujemy ruch

Trochę oddalam się od tej koncepcji Zeldy, ale nie od koncepcji gry. Postać oznacza masę kłopotów z animacją i to nie natury programistycznej, a raczej mmm... artystycznej. Znaczy ktoś te wszystkie kolorowe obrazki przebierającego nóżkami ludka musi narysować. Pomnożone przez 20, bo przeciwnicy też nie mogą być sztywnymi kołkami.

A może jednak mogą? Gdyby wymienić ich na jakieś pojazdy, roboty, pospolite sprzęty? Na razie testuję koncepcję wymiany na figurę geometryczną. I różne koncepcje ruchu. To jest właściwie główna treść tego testu. Jak powinna poruszać się postać? No tak, jasne, klawisze kursora i mysz do strzelania. Tyle ustaliłem na początku. Ale co właściwie robi klawisz "Up"? Gdzie ma iść postać? W gorę ekranu? Przed siebie? W kierunku kursora? Co robi "Left"? Postać obraca się w lewo? Czy może raczej zaczyna strafować?

Zamiast czczych rozważań, lepiej napisać test - oto więc jest. Na dole są radiobuttony do trzech opcji, można potestować. Póki co, wychodzi mi jednak, że pierwsze rozwiązanie było najlepsze. Jakoś tak najłatwiej ogarnąć gdzie postać idzie, a gdzie ma iść. Ale jeszcze sprawdzę co się stanie, gdy ruch postaci wymienię na ruch tła pod postacią (tak przecież ma wyglądać to docelowo - postać na środku ekranu, a świat przewija się jej pod stopami).

Kolejny krok to będzie zatem dodanie tego świata, który mógłby się przewijać.

Link do obadania:
http://gramowanie.blox.pl/resource/SilverlightApplication2TestPage.html

niedziela, 12 czerwca 2011

Podróbka Zeldy w Silverlight

Obijałem się strasznie ostatnio i w ogóle nie dotknąłem palcem mojego Bouldera. Ale za to, zachęcony nieopatrznym komentarzem torq314, rzuciłem się na Silverlighta niczym wilk na owieczkę. O, jakże łatwiej jest chwycić się nowego projektu (i nowej technologii), niż dociągnąć coś starego do końca. Pocieszam się myślą, że jak rozgrzebię 3 czy 5 projektów, to może powolutku-powolutku uda się któryś dopchać do poziomu przyzwoitości (o poziomie zajebistości na razie nie myślę).
W sumie to pomysł był na flashową Zeldę, ale... Ale póki co zamiast flasha jest silverlight. Co do Zeldy, to też nie jestem do końca przekonany. Może Linka zastąpię czołgiem lub - jeszcze lepiej - latającym spodkiem. Mniej zabaw z animacją.
Zaś Mario? Mario odkładam na później. Może jak najdzie mię ochotą zrobić coś w XNA.

To co jest teraz można zobaczyć tutaj:
http://gramowanie.blox.pl/resource/SilverlightApplication1TestPage.html
(Mam nadzieję, że działa nie tylko u mnie, nie wiem czy zrzuciłem na serwer wszystko co trzeba.)

A co jest? Jest animowana postać, którą poruszamy klawiszami strzałek (lub WSADem), myszką możemy strzelać. Strzałami. Celów nie ma, nie ma kolizji, nie ma mapy. Animacja jest tylko w jedną stronę, bo nie chciało mi się więcej rysować obrazków.
Jeszcze nie zrobiłem solidnego riserczu jeśli idzie o tworzenie gier w SL, więc parę rzeczy jest wykonanych po omacku. Sprajty to Image wrzucane na Canvas. Aktualizacja stanu gry jest w DispatcherTimer. Animacja ludka - podmiana Source w Image. Nie wiem, czy to jest najwłaściwsza ścieżka, ale (póki co) działa.
Jeśli nie opuści mnie zapał, to następne w kolejności będzie dodanie jakiejś mapy i kolizji (w tym zabijania przeciwników). Waham się, czy robić wielką scrollowaną mapę (tricky), czy osobne plansze jak w oryginalne (mowa o Zeldach 2D).

Fota jest na wypadek, gdyby były wątpliwości, czy wygląda tak jak ma wyglądać. Ma wyglądać tak: