Podstawy XNA - Rozpocznij pracę
Autor: Łukasz Żmudzin
Opublikowano: 2012-03-20
XNA jest zbiorem narzędzi, pozwalającym na pisanie gier dla systemu Windows, konsoli Xbox 360, odtwarzacza Zune oraz Windows Phone. Microsoft udostępnia bezpłatne środowisko uruchomieniowe, jakim jest Microsoft XNA Studio Express. Do grafiki 3D wykorzystywany jest XNA Framework Content Pipeline, który odpowiada za wyświetlanie obrazu, zarządzanie zasobami oraz zapewnia prostą interakcję z gamepadem, klawiaturą i innymi kontrolerami. Dzięki wspólnej platformie można bardzo szybko przenieść grę z konsoli Xbox na Windows Phone lub odwrotnie.
Przed wykonaniem zadań powinieneś znać:
- podstawy języka C#.
Po wykonaniu zadań dowiesz się:
- z jakich podstawowych elementów składa się utworzony projekt,
- jak zmienić kolor tła projektu.
Implementacja
Twoim zadaniem będzie zainstalowanie niezbędnych narzędzi, utworzenie pierwszej aplikacji XNA oraz zmiana koloru wyświetlanego tła. Wynik zadań został przedstawiony na Rys. 1.
Rys. 1. Pierwsza aplikacja w XNA ze zmienionym tłem.
Zainstaluj niezbędne aplikacje
Poznawanie XNA zaczniemy od uruchomienia środowiska, w którym będziemy tworzyć nasze gry.
- Jeśli posiadasz już zainstalowane Visual C#2010 Express, pomiń ten krok. Jeżeli nie, to pobierz Visual Studio 2010 Express All-In-One. Link do pobrania: https://www.microsoft.com/visualstudio/en-us/products/2010-editions/express-iso.
- Zainstaluj Microsoft Visual C# 2010 Express.
- Pobierz i zainstaluj Microsoft XNA Game Studio 4.0. Link do pobrania: https://www.microsoft.com/download/en/details.aspx?id=27599.
Utwórz nowy projekt
- Uruchom Visual C# 2010 Express.
- Wybierz z menu w Visual Studio C# 2010 Express File->New -> Project (Rys. 2.).
Rys. 2. Tworzenie nowego projektu.
- W oknie New Project określ parametry nowego projektu (Rys. 3.):
- z listy Installed Templates wybierz Visual C#->XNA Game Studio 4.0 -> Windows Game,
- w polu Name wpisz PierwszyXNA
- jeśli to konieczne zmień lokalizację projektu, klikając na przycisk Browse,
- kliknij OK.
Rys. 3. Dostępne szablony projektu.
Analiza elementów pliku Game1.cs
W pliku Game1.cs umieszczone zostały najważniejsze elementy projektu, których zrozumienie jest kluczowe dla poznania XNA.
- Na samym początku kodu naszego projektu umieszczone zostały biblioteki, z których będzie korzystała nasza gra (Rys. 4.).
Rys. 4. Sekcja using w kodzie Game1.cs.
Informacja |
Biblioteki, dołączone do projektu, zawierają metody odpowiedzialne za kontrolę elementów, takich jak dźwięk (np. mikrofon, efekty dźwiękowe), zasoby zewnętrzne, grafika wyświetlana na ekranie, użycie danych wejściowych, obsługę gracza oraz użycie albumów zdjęć czy też odtwarzanie muzyki. |
- Sprawdź publiczną klasę Game1, która została utworzona automatycznie i dziedziczy po Microsoft.Xna.Framework.Game (Rys. 5.).
Rys. 5. Klasa Game1 i jej konstruktor.
Informacja |
Klasa ta zawiera atrybuty graphics oraz spriteBatch, które zostały utworzone odpowiednio do zarządzania grafiką urządzenia oraz przechowywania grup duszków (ang. sprite), które wykorzystują te same ustawienia. Game1() jest konstruktorem, który odpowiada za zainicjowanie atrybutu graphics oraz określenie katalogu, w którym będzie przechowywana zewnętrzna zawartość gry. |
- Sprawdź metody umieszczone w kodzie:
- metoda Initialize() odpowiada za inicjalizację zewnętrznych zasobów gry, takich jak np. muzyka (Rys. 6.),
Rys. 6. Metoda Initialize odpowiedzialna za inicjalizację zewnętrznych zasobów gry.
- metoda LoadContent() odpowiada za pobieranie zasobów do projektu (Rys. 7.),
Rys. 7. Metoda LoadContent() odpowiedzialna za pobieranie zasobów.
- metoda Update() odpowiada za odświeżanie elementów gry. Standardowo jest wywoływana co 60 razy na sekundę dla aplikacji Windows i Xbox oraz 30 razy dla aplikacji na Windows Phone (Rys. 8.),
Rys. 8. Metoda Update() odpowiedzialna za odświeżanie elementów.
- metoda Draw() odpowiada za wyświetlanie elementów na ekranie. Jest ona uruchamiana, tak często jak to jest możliwe, po metodzie Update() (Rys. 9.),
Rys. 9. Metoda Draw() odpowiedzialna za wyświetlanie elementów na ekranie.
- jeśli podczas działania aplikacji będziesz chciał usunąć dodane zasoby (np. w celu przygotowania miejsca na elementy kolejnego poziomu), wykorzystaj metodę UnloadContent() (Rys. 10.).
Rys. 10. Metoda UnloadContent() odpowiedzialna za usuwanie dodanych zasobów.
Zmiana wyświetlanego koloru i uruchomienie projektu
Zmień wyświetlany kolor - chabrowy niebieski na jasno zielony i uruchom projekt.
- Zmień kolor:
- w metodzie Draw() usuń CornflowerBlue i wciśnij Ctrl+spacja,
- na liście nazw barw znajdź LightGreen,
- kliknij na niego myszką lub wciśnij Enter (Rys. 11.).
Rys. 11. Wybór koloru tła.
- Przetestuj działanie aplikacji:
- zapisz zmiany w pliku,
- wciśnij F5 lub wybierz Debug->Start Debugging,
- sprawdź, czy Twoja aplikacja wyświetliła tło koloru jasno zielonego, jak na Rys. 1.
Podsumowanie
W tym artykule nauczyliśmy się, jak zainstalować aplikacje niezbędne do tworzenia gier w XNA. Poznaliśmy najważniejsze metody wykorzystywane przez XNA i dowiedzieliśmy się, jak zmieniać kolor tła.
W kolejnym artykule nauczymy się, jak zarządzać zasobami w XNA.
Zadanie 1.
Zmień kolor tła na SeaShell oraz na kolor dowolnie przez siebie wybrany.