Stwórz grę w Unity, a nauczysz się programowania w C#! Pisanie kodu, które sprawia radość. Wydanie V - Helion
Tytuł oryginału: Learning C# by Developing Games with Unity 2020: An enjoyable and intuitive approach to getting started with C# programming and Unity, 5th Edition
Tłumaczenie: Radosław Meryk
ISBN: 978-83-283-8144-5
stron: 338, Format: 168x237, okładka: miękka
Data wydania: 2021-07-01
Księgarnia: Helion
Cena książki: 55,20 zł (poprzednio: 68,15 zł)
Oszczędzasz: 19% (-12,95 zł)
Nakład wyczerpany
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!
Harrison Ferrone jest inżynierem. Pisze dokumentacje techniczne dla firmy Microsoft, a także tworzy treÅ›ci instruktażowe dla serwisów LinkedIn i Pluralsight. Publikuje artykuÅ‚y na raywenderlich.com, prowadzi również dziaÅ‚alność dydaktycznÄ…. Kiedy nie pracuje, zajmuje siÄ™ kotami, czyta książki i z nostalgiÄ… wspomina lektury szkolne.
Zobacz także:
- Język C. Kurs video. Praktyczne wprowadzenie do programowania 99,00 zł, (29,70 zł -70%)
- Wzorce projektowe dla programistów C#. Kurs video 99,00 zł, (29,70 zł -70%)
- C# 9.0 w pigułce 173,87 zł, (53,90 zł -69%)
- Gray Hat C#. Język C# w kontroli i łamaniu zabezpieczeń 57,74 zł, (17,90 zł -69%)
- ASP.NET Core 6. Kurs video. Rozwijaj aplikacje webowe z Entity Framework Core 178,97 zł, (62,64 zł -65%)
Spis treści
Stwórz grę w Unity, a nauczysz się programowania w C#! Pisanie kodu, które sprawia radość. Wydanie V -- spis treści
- 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#
- Dostęp do dokumentacji Unity
- 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#
- Definiowanie zmiennych
- 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 if-else
- 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
- Tablice
- 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
- Podstawowa składnia
- 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
- Instrukcje wyboru
- 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
- Podstawowa składnia
- Deklarowanie struktur
- Podstawowa składnia
- Czas na działanie utworzenie struktury Weapon
- Podstawowa składnia
- Typy referencyjne i typy wartości
- Typy referencyjne
- Czas na działanie tworzenie nowej postaci
- Typy wartości
- Czas na działanie kopiowanie broni
- Typy referencyjne
- Myślenie w kategoriach obiektów
- Hermetyzacja
- Czas na działanie resetowanie
- Dziedziczenie
- Konstruktory bazowe
- Czas na działanie wywoływanie konstruktora bazowego
- Konstruktory bazowe
- Kompozycja
- Polimorfizm
- Czas na działanie odmiany funkcjonalne
- PrzeglÄ…d informacji o paradygmacie OOP
- Hermetyzacja
- 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
- Definiowanie klas
- 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
- Tworzenie prymitywów
- 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
- Narzędzia edycyjne
- Materiały
- 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
- Tworzenie klipów
- System czÄ…stek
- Czas na działanie dodanie efektów blasku
- Podsumowanie
- Quiz podstawowe własności silnika Unity
- Elementarz projektu gry
- 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
- Konfigurowanie gracza
- 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
- Komponenty Rigidbody w ruchu
- Podsumowanie
- Quiz sterowanie graczem i system fizyki
- Poruszanie postaciÄ…
- 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
- Obsługa skoków
- 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
- Komponenty nawigacyjne
- 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
- Programowanie proceduralne
- 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
- Znajdź i zniszcz
- Refaktoryzacja i zastosowanie zasady DRY
- Czas na działanie refaktoryzacja metody restart
- Narodziny bohatera refaktoryzacja logiki wygranej (przegranej)
- Czas na działanie refaktoryzacja metody restart
- Podsumowanie
- Quiz mechanizmy AI i nawigacja
- Nawigacja w Unity
- 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
- Więcej informacji o modyfikatorach dostępu
- 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
- Podstawowa składnia
- Korzystanie z kolekcji HashSet
- Podstawowa składnia
- Wykonywanie działań na zbiorach
- Podsumowanie
- Quiz zaawansowane kolekcje
- Stosy wprowadzenie
- 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
- Obiekty generyczne
- 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
- Podstawowa składnia
- Zdarzenia
- Podstawowa składnia
- Czas na działanie tworzenie zdarzenia
- Obsługa subskrypcji zdarzeń
- Czas na działanie subskrybowanie zdarzenia
- Podstawowa składnia
- 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
- Zgłaszanie wyjątków
- Elementarz wzorców projektowych
- Popularne wzorce stosowane w grach
- Podsumowanie
- Quiz zaawansowane możliwości języka C#
- Wprowadzenie do typów generycznych
- 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#
- Rozdział 1. Poznaj środowisko