E-book details

Stwórz grę w Unity, a nauczysz się programowania w C#! Pisanie kodu, które sprawia radość. Wydanie V

Stwórz grę w Unity, a nauczysz się programowania w C#! Pisanie kodu, które sprawia radość. Wydanie V

Harrison Ferrone

Ebook

Unity jest zaawansowanym środowiskiem przeznaczonym do tworzenia gier 3D. Równocześnie może stanowić początek wspaniałej przygody z C#, który jest nowoczesnym i wszechstronnym językiem programowania. Taka ścieżka nauki pozwala na uniknięcie niezrozumiałego dla początkujących żargonu czy niejasnej logiki programowania. Poszczególne konstrukcje języka i ich zastosowanie nagle stają się proste - dzięki niestandardowym skryptom pisanym w C# można rozszerzyć możliwości Unity i tworzyć wciągające, świetnie wyglądające gry. Oto sposób na przyjemną i angażującą, a przy tym skuteczną naukę programowania!

To piąte, uzupełnione i zaktualizowane wydanie cenionego podręcznika, dzięki któremu poznasz od podstaw koncepcje programowania w języku C#, dowiesz się, czym są zmienne i klasy, a także jakie są zasady programowania zorientowanego obiektowo. Po zapoznaniu się z elementarzem C# przejdziesz do tworzenia gier w Unity. Nauczysz się tworzyć skrypty obsługi prostej mechaniki gry i zdobędziesz praktyczne doświadczenie w programowaniu zgodnym z najlepszymi praktykami kodowania. A tym samym wejdziesz na wyższy poziom w zakresie posługiwania się Unity i językiem C#. Po uważnej lekturze zdobędziesz umiejętności potrzebne do realizacji projektów własnych gier w Unity i C#.

W książce między innymi:

  • precyzyjne przykłady przydatne w nauce podstaw programowania w języku C#
  • skrypty i ich implementacja w Unity
  • tworzenie podstawowych mechanizmów gier
  • interfejsy, klasy abstrakcyjne, stosy, kolejki, obsługa wyjątków i błędów w C#
  • podstawy sztucznej inteligencji do zastosowania w grach

Ciekawość to pierwszy krok do programowania!

  • O autorze
  • O recenzentach
  • Przedmowa
    • Dla kogo jest ta książka?
    • Zawartość książki
    • Jak najlepiej wykorzystać tę książkę?
    • Pobieranie plików z przykładowym kodem
    • Stosowane konwencje
  • 1. Poznaj środowisko
    • Wymagania techniczne
    • Pierwsze kroki z Unity 2020
    • Korzystanie z macOS
    • Tworzenie nowego projektu
    • Poruszanie się w edytorze
    • Korzystanie z C# w Unity
      • Korzystanie ze skryptów C#
    • Wprowadzenie do edytora Visual Studio
      • Czas na działanie otwieranie skryptu C#
      • Uważaj na niedopasowanie nazw
      • Synchronizacja plików C#
    • Poznawanie dokumentacji
      • Dostęp do dokumentacji Unity
        • Czas na działanie otwieranie dokumentacji Reference Manual
        • Czas na działanie korzystanie z dokumentacji Scripting Reference
      • Wyszukiwanie zasobów dotyczących C#
        • Czas na działanie poszukiwanie informacji na temat klasy C#
    • Podsumowanie
    • Pytania obsługa skryptów
  • 2. Bloki budulcowe programowania
    • Definiowanie zmiennych
      • Nazwy są ważne
      • Zmienne pełnią rolę symboli zastępczych
      • Czas na działanie tworzenie zmiennej
      • Czas na działanie modyfikacja wartości zmiennej
    • Metody
      • Metody definiują działania
      • Metody to także symbole zastępcze
      • Czas na działanie tworzenie prostej metody
      • Klasy wprowadzenie
      • Popularne klasy w Unity
      • Klasa jest planem obiektów
    • Korzystanie z komentarzy
      • Praktyczne lewe ukośniki
      • Komentarze wielowierszowe
      • Czas na działanie wprowadzanie komentarzy
    • Wykorzystanie bloków budulcowych programowania w praktyce
      • Skrypty stają się komponentami
      • Pomocna dłoń od klasy MonoBehaviour
      • Próba gry Narodziny bohatera klasa MonoBehaviour w Scripting API
      • Komunikowanie się pomiędzy klasami
    • Podsumowanie
    • Quiz bloki budulcowe języka C#
  • 3. Zmienne, typy i metody
    • Pisanie poprawnego kodu w C#
    • Debugowanie kodu
    • Deklarowanie zmiennych
      • Deklaracje typów i wartości
      • Deklarowanie samego typu
      • Korzystanie z modyfikatorów dostępu
    • Wybór poziomu bezpieczeństwa
      • Czas na działanie tworzenie zmiennej prywatnej
    • Typy danych
      • Popularne wbudowane typy danych
      • Czas na działanie korzystanie z różnych typów danych
      • Czas na działanie tworzenie interpolowanych ciągów znaków
      • Konwersja typów
      • Wywnioskowane deklaracje
      • Typy niestandardowe
      • Typy ogólna charakterystyka
    • Nazwy zmiennych
      • Najlepsze praktyki
      • Zasięg zmiennej
    • Operatory
      • Operatory arytmetyczne i operatory przypisania
      • Czas na działanie wykonywanie nieprawidłowych działań na typach
    • Definiowanie metod
      • Podstawowa składnia
      • Modyfikatory i parametry
        • Czas na działanie definiowanie prostej metody
      • Konwencje nazewnictwa
      • Metody są objazdem w przepływie sterowania programu
    • Metody z parametrami
      • Czas na działanie dodawanie parametrów do metody
    • Określanie zwracanych wartości
      • Czas na działanie dodawanie zwracanej wartości
      • Wykorzystywanie zwracanych wartości
      • Czas na działanie przechwytywanie zwracanych wartości
        • Próba gry Narodziny bohatera metody i argumenty
    • Korzystanie z popularnych metod w Unity
      • Metoda Start
      • Metoda Update
    • Podsumowanie
    • Quiz zmienne i metody
  • 4. Przepływ sterowania i kolekcje
    • Instrukcje wyboru
      • Instrukcja if-else
        • Podstawowa składnia
        • Czas na działanie perspektywa złodzieja
      • Korzystanie z operatora NOT
      • Zagnieżdżanie instrukcji
      • Ocena wielu warunków
        • Czas na działanie dotarcie do skarbu
    • Instrukcja switch
      • Podstawowa składnia
      • Dopasowywanie wzorców
        • Czas na działanie wybór czynności do wykonania
      • Przypadki fall-through
        • Czas na działanie rzucanie kośćmi
      • Quiz nr 1 instrukcje warunkowe
    • Kolekcje wprowadzenie
      • Tablice
        • Podstawowa składnia
      • Indeksy tablic
      • Wyjątki przekroczenia zakresu
      • Listy
        • Podstawowa składnia
        • Czas na działanie uczestnicy rozgrywki
        • Najważniejsze metody
    • Słowniki
      • Podstawowa składnia
        • Czas na działanie konfigurowanie zapasów
      • Korzystanie z par zapisanych w słowniku
      • Quiz nr 2 wszystko o kolekcjach
    • Instrukcje iteracyjne
      • Pętle for
      • Czas na działanie wyszukiwanie elementu
      • Pętle foreach
        • Przetwarzanie w pętli par kluczwartość
        • Próba gry Narodziny bohatera znajdowanie dostępnych przedmiotów
      • Pętle while
      • Czas na działanie śledzenie życia gracza
      • Do nieskończoności i dalej
    • Podsumowanie
  • 5. Klasy, struktury i programowanie obiektowe
    • Definiowanie klas
      • Podstawowa składnia
        • Czas na działanie tworzenie klasy Character
      • Tworzenie egzemplarzy klasy
        • Czas na działanie tworzenie nowego obiektu postaci
      • Dodawanie pól klasy
        • Czas na działanie szczegóły postaci
      • Korzystanie z konstruktorów
        • Czas na działanie określanie początkowych wartości właściwości
      • Deklarowanie metod klasy
        • Czas na działanie wyświetlanie danych o postaci
    • Deklarowanie struktur
      • Podstawowa składnia
        • Czas na działanie utworzenie struktury Weapon
    • Typy referencyjne i typy wartości
      • Typy referencyjne
        • Czas na działanie tworzenie nowej postaci
      • Typy wartości
        • Czas na działanie kopiowanie broni
    • Myślenie w kategoriach obiektów
      • Hermetyzacja
        • Czas na działanie resetowanie
      • Dziedziczenie
        • Konstruktory bazowe
          • Czas na działanie wywoływanie konstruktora bazowego
      • Kompozycja
      • Polimorfizm
        • Czas na działanie odmiany funkcjonalne
      • Przegląd informacji o paradygmacie OOP
    • Zastosowanie OOP w Unity
      • Obiekty są realizacjami klas
      • Dostęp do komponentów
      • Podstawowa składnia
        • Czas na działanie dostęp do bieżącego komponentu transformacji
        • Czas na działanie wyszukiwanie komponentów różnych obiektów
      • Przeciągnij i upuść
        • Czas na działanie przypisywanie zmiennych w Unity
    • Podsumowanie
    • Quiz wszystko o OOP
  • 6. Ubrudź sobie ręce silnikiem Unity
    • Elementarz projektu gry
      • Dokumentacja projektowa gry
      • Dokumentacja jednostronicowa gry Narodziny bohatera
    • Budowanie poziomu
      • Tworzenie prymitywów
        • Czas na działanie tworzenie podstawowej płaszczyzny
    • Myślenie w 3D
      • Materiały
        • Czas na działanie zmiana koloru podłoża
      • White-boxing
        • Narzędzia edycyjne
          • Narodziny bohatera ustawianie ściany
        • Utrzymywanie hierarchii w porządku
          • Czas na działanie korzystanie z pustych obiektów
        • Korzystanie z prefabrykatów
          • Czas na działanie tworzenie wieżyczki
          • Czas na działanie aktualizacja prefabrykatu
          • Czas na działanie dokończenie poziomu
          • Narodziny bohatera tworzenie elementu kondycji
    • Podstawy oświetlenia
      • Tworzenie oświetlenia
      • Właściwości komponentów oświetlenia
    • Animacje w Unity
      • Tworzenie klipów
        • Czas na działanie tworzenie nowego klipu
      • Nagrywanie klatek kluczowych
        • Czas na działanie animacja obracania
      • Krzywe i styczne
        • Czas na działanie wygładzanie obrotu
    • System cząstek
      • Czas na działanie dodanie efektów blasku
    • Podsumowanie
    • Quiz podstawowe własności silnika Unity
  • 7. Ruch, sterowanie kamerą i kolizje
    • Poruszanie postacią
      • Konfigurowanie gracza
        • Czas na działanie tworzenie kapsuły gracza
      • Wektory
      • Pobieranie danych wejściowych od gracza
        • Czas na działanie ruchy graczem
    • Dodawanie kamery śledzącej
      • Czas na działanie skrypt z implementacją zachowania kamery
    • System fizyki w Unity
      • Komponenty Rigidbody w ruchu
        • Czas na działanie dostęp do komponentu Rigidbody
        • Czas na działanie obsługa ruchu komponentu Rigidbody
      • Komponenty Collider i kolizje
        • Czas na działanie podnoszenie przedmiotu
      • Zastosowanie wyzwalaczy komponentów Collider
        • Czas na działanie tworzenie nieprzyjaciela
        • Czas na działanie przechwytywanie zdarzeń wyzwalających
          • Narodziny bohatera wszystkie prefabrykaty!
      • System fizyki przegląd
    • Podsumowanie
    • Quiz sterowanie graczem i system fizyki
  • 8. Skrypty do obsługi mechaniki gry
    • Obsługa skoków
      • Typy wyliczeniowe
      • Typy wartości w enumeracjach
      • Czas na działanie naciskanie spacji, aby skakać!
    • Zastosowanie masek warstw
      • Czas na działanie ustawienie warstw obiektów
      • Czas na działanie jeden skok naraz
    • Mechanizm strzelania
      • Tworzenie egzemplarzy obiektów
      • Czas na działanie tworzenie prefabrykatu pocisku
      • Czas na działanie dodanie mechaniki strzelania
    • Zarządzanie obiektami GameObject
      • Czas na działanie niszczenie pocisków
    • Tworzenie menedżera gry
      • Śledzenie właściwości gracza
      • Czas na działanie tworzenie menedżera gry
      • Pobieranie i ustawianie właściwości
      • Czas na działanie dodawanie zmiennych wspierających
      • Czas na działanie aktualizacja kolekcji przedmiotów
    • Polerowanie gry
      • Graficzny interfejs użytkownika
      • Czas na działanie dodawanie elementów interfejsu użytkownika
      • Warunki wygrywania i przegrywania
      • Czas na działanie wygrana
    • Dyrektywy using i przestrzenie nazw
      • Czas na działanie zatrzymywanie i ponowne uruchamianie
    • Podsumowanie
      • Quiz mechanika gry
  • 9. Podstawy sztucznej inteligencji. Zachowania nieprzyjaciół
    • Nawigacja w Unity
      • Komponenty nawigacyjne
        • Czas na działanie konfigurowanie komponentu NavMesh
        • Czas na działanie konfigurowanie agentów nieprzyjaciela
    • Ruchome agenty nieprzyjaciół
      • Programowanie proceduralne
        • Czas na działanie odwoływanie się do lokalizacji patrolowych
        • Czas na działanie ruchy nieprzyjaciół
        • Czas na działanie ciągłe patrolowanie pomiędzy lokalizacjami
    • Mechanika gry nieprzyjaciela
      • Znajdź i zniszcz
        • Czas na działanie zmiana celu agenta
        • Czas na działanie wykrywanie kolizji z kulami
        • Czas na działanie aktualizacja menedżera gry
    • Refaktoryzacja i zastosowanie zasady DRY
      • Czas na działanie refaktoryzacja metody restart
        • Narodziny bohatera refaktoryzacja logiki wygranej (przegranej)
    • Podsumowanie
    • Quiz mechanizmy AI i nawigacja
  • 10. Więcej o typach, metodach i klasach
    • Więcej informacji o modyfikatorach dostępu
      • Właściwości stałe i tylko do odczytu
      • Wykorzystanie słowa kluczowego static
      • Czas na działanie tworzenie klasy statycznej
    • Więcej informacji o metodach
      • Przeciążanie metod
      • Czas na działanie przeciążanie metody restartowania poziomu
      • Parametry ref
      • Czas na działanie śledzenie restartów
      • Parametry out
    • Więcej informacji o OOP
      • Interfejsy
      • Czas na działanie tworzenie interfejsu menedżera
      • Czas na działanie implementacja interfejsu
    • Klasy abstrakcyjne
      • Rozszerzanie klas
      • Czas na działanie rozszerzanie klasy String
      • Czas na działanie korzystanie z metod rozszerzeń
    • Więcej o przestrzeniach nazw
      • Aliasy typów
    • Podsumowanie
    • Quiz wchodzimy o poziom wyżej
  • 11. Stosy, kolejki i kolekcje HashSet
    • Stosy wprowadzenie
      • Podstawowa składnia
        • Czas na działanie przechowywanie zebranych przedmiotów
      • Zdejmowanie elementów ze stosu i podglądanie ich
        • Czas na działanie ostatni zebrany przedmiot
      • Popularne metody
      • Kolejki
      • Podstawowa składnia
      • Dodawanie, usuwanie i podglądanie elementów kolejek
      • Najważniejsze metody
    • Korzystanie z kolekcji HashSet
      • Podstawowa składnia
      • Wykonywanie działań na zbiorach
    • Podsumowanie
    • Quiz zaawansowane kolekcje
  • 12. Typy generyczne, delegaty i nie tylko
    • Wprowadzenie do typów generycznych
      • Obiekty generyczne
        • Czas na działanie tworzenie generycznej kolekcji
      • Metody generyczne
        • Czas na działanie dodanie elementu generycznego
      • Ograniczenia parametrów typu
        • Czas na działanie ograniczenia dla generycznych elementów
    • Delegowanie działań
      • Podstawowa składnia
        • Czas na działanie tworzenie delegata do debugowania
      • Delegaty jako typy parametrów
        • Czas na działanie wykorzystanie delegatów w roli argumentów
    • Zdarzenia
      • Podstawowa składnia
        • Czas na działanie tworzenie zdarzenia
      • Obsługa subskrypcji zdarzeń
        • Czas na działanie subskrybowanie zdarzenia
    • Obsługa wyjątków
      • Zgłaszanie wyjątków
        • Czas na działanie sprawdzanie, czy indeks sceny nie jest ujemny
      • Korzystanie z bloków try-catch
        • Czas na działanie przechwytywanie błędów podczas restartowania
    • Elementarz wzorców projektowych
      • Popularne wzorce stosowane w grach
    • Podsumowanie
    • Quiz zaawansowane możliwości języka C#
  • 13. Dalsza podróż
    • To tylko namiastka
    • Przypomnienie zasad programowania obiektowego
    • Podejście do projektów Unity
    • Własności silnika Unity, których nie opisałem
    • Następne kroki
      • Zasoby związane z językiem C#
      • Zasoby związane z Unity
      • Certyfikaty z Unity
      • Narodziny bohatera pokaż grę światu
    • Podsumowanie
  • Odpowiedzi do quizów
    • Rozdział 1. Poznaj środowisko
      • Pytania obsługa skryptów
    • Rozdział 2. Bloki budulcowe programowania
      • Quiz bloki budulcowe języka C#
    • Rozdział 3. Zmienne, typy i metody
      • Quiz zmienne i metody
    • Rozdział 4. Przepływ sterowania i kolekcje
      • Quiz 1 instrukcje warunkowe
      • Quiz nr 2 wszystko o kolekcjach
    • Rozdział 5. Klasy, struktury i programowanie obiektowe
      • Quiz wszystko o OOP
    • Rozdział 6. Ubrudź sobie ręce silnikiem Unity
      • Quiz podstawowe własności silnika Unity
    • Rozdział 7. Ruch, sterowanie kamerą i kolizje
      • Quiz sterowanie graczem i system fizyki
    • Rozdział 8. Skrypty do obsługi mechaniki gry
      • Quiz mechanika gry
    • Rozdział 9. Podstawy sztucznej inteligencji. Zachowania nieprzyjaciół
      • Quiz mechanizmy AI i nawigacja
    • Rozdział 10. Więcej o typach, metodach i klasach
      • Quiz wchodzimy o poziom wyżej
    • Rozdział 11. Stosy, kolejki i kolekcje HashSet
      • Quiz zaawansowane kolekcje
    • Rozdział 12. Typy generyczne, delegaty i nie tylko
      • Quiz zaawansowane możliwości języka C#
  • Title: Stwórz grę w Unity, a nauczysz się programowania w C#! Pisanie kodu, które sprawia radość. Wydanie V
  • Author: Harrison Ferrone
  • Original title: Learning C# by Developing Games with Unity 2020: An enjoyable and intuitive approach to getting started with C# programming and Unity, 5th Edition
  • Translation: Radosław Meryk
  • ISBN: 978-83-283-8145-2, 9788328381452
  • Date of issue: 2021-11-10
  • Format: Ebook
  • Item ID: stwgr5
  • Publisher: Helion