Giganci Programowania
Tworzenie gier w Unity ONLINE
Wiek 13-15 lat

Tworzenie gier w Unity ONLINE

Projektuj gry jak w profesjonalnym studiu. W Unity stworzysz światy 2D i 3D, opanujesz fizykę i logikę rodem z CS-a czy LoL-a. Korzystaj z AI (Copilot, Canva) jako kreatywnego wsparcia. To realny gamedev i praca zespołowa. Twoje produkcje zrobią wrażenie nawet na największych wyjadaczach!

Wprowadzenie

Nauczymy się Unity i C#. Zaprojektujemy gry 2D i 3D. Stworzymy mechaniki gier podobne do League of Legends i Counter Strike. Poznamy fizykę w grach. Z ChatGPT, Gemini i GitHub Copilot nauczymy się szukania rozwiązań krok po kroku. Wykorzystamy AI do grafiki (Canva AI, DALL·E) i muzyki (Suno, ElevenLabs).

Program kursu

1Lekcja 1. Przypomnienie wiadomości C#
Pierwsze zajęcia poświęcone zostaną powtórzeniu wiadomości. Po dłuższej przerwie warto przypomnieć podstawy, które przerabiane były na poprzednich semestrach.
2Lekcja 2. UFO cz. I
Na drugich zajęciach rozpoczęta zostanie praca z silnikiem Unity 3D. Uczniowie zapoznają się z interfejsem programu, poznają podstawowe elementy z jakich składa się gra. Rozpoczną prosty projekt gry UFO gdzie napiszą skrypt, dzięki któremu poruszą statkiem kosmicznym po planszy.
3Lekcja 3. UFO cz. II
Trzecie zajęcia będą kontynuacją poprzednich. Zastosują nowe elementy związane z fizyką 2D, by statek nie uciekł poza planszę ale także mógł zdobywać punkty i je wyświetlać.
4Lekcja 4. Rozpoczęcie prac nad Infinite Runnerem cz. I
Czas na projekt na pozostałą część semestru. Ta lekcja poświęcona zostanie Game Design Documentowi, by pokazać jak ważną częścią tworzenia gier jest ich dokładne zaprojektowanie na samym początku.
5Lekcja 5. Rozpoczęcie prac nad Infinite Runnerem cz. II
Kolejne zajęcia zostaną poświęcone na przygotowanie prototypu gry. Stworzą obiekt gracza i podłoża. Stworzą również skrypt, który pozwoli postać wyskakiwać w powietrze a także zrobić tzw. double jump.
6Lekcja 6. Przewijanie świata, zliczanie wyniku
Czas przygotować poziom pod poruszanie się po nim a właściwie poruszanie nim. Skrypt napisany na tych zajęciach pozwoli na małe oszustwo - to świat będzie się poruszał względem gracza tworząc iluzję, że to jednak on po nim biegnie. Zaczniemy też zliczać nasze punkty.
7Lekcja 7. Przeszkody, losowe tworzenie bloków świata
Co to za gra w której się nic nie robi tylko biegnie? Dodamy więc przeszkody, które będziemy musieli omijać oraz losowe wybieranie ustawienia przeszkód. Gra nie może być przecież nudna!
8Lekcja 8. Koniec gry, restart
W grze zdarza się, że coś się nie uda. Dlatego na tych zajęciach uczniowie zapoznają się z przeładowywaniem scen by w przypadku skuchy zrestartować poziom.
9Lekcja 9. Animacja gracza, grafiki świata
Nadajemy charakteru. Te zajęcia poświęcone zostaną wyglądowi poziomów, bohatera czy pułapek. Dodane zostaną grafiki oraz animacje przygotowane wcześniej, by móc je łatwo zaimplementować.
10Lekcja 10. Coin, platformy i najlepszy wynik
Pieniądze rządzą światem. Dodane zostaną więc do gry by móc zdobywać kasę oraz dodamy zapis najlepszego wyniku, by wraz z kolejnymi próbami starać się pobić swój rekord. Dodamy też platformy, by gra nie działa się tylko na jednym poziomie.
11Lekcja 11. Nieśmiertelność, magnes
PowerUP… Dziś zaprogramowana zostanie nieśmiertelność. Przynajmniej taka chwilowa. Przygotujemy też inne znajdźki, których zdobycie w trakcie gry wywołało dodatkowe efekty.
12Lekcja 12. Zaawansowany UI cz. 1, menu główne.
Te zajęcia spędzimy nam na tworzeniu interfejsu i menu. Nasza gra musi się jakoś rozpocząć, menu główne jest swojego rodzaju fasadą, która wita gracza zaraz po uruchomieniu gry. Dodana zostanie również obiekt sterujący dźwiękami, które dodamy do gry w jednej z kolejnych lekcji.
13Lekcja 13. Zaawansowany UI. cz. 2, sklep z ulepszeniami
Gromadzenie pieniędzy bez możliwości ich wydania mija się z celem, dlatego dodamy dzisiaj możliwość wykorzystania zbieranych monet do ulepszania naszych powerupów. Ponadto poznamy sposoby na automatyczne ustawianie elementów interfejsu.
14Lekcja 14. Dźwięki w grze i Unity Ads
Pora na ostatnie szlify. Poprawki błędów, niedoróbek no i wisienka na torcie w postaci dźwięków w grze. Następnie czas na eksport na komputer i na Androida. Omówione zostaną najważniejsze kwestie ważne przy podsumowaniu projektu, który w końcu wyeksportujemy, by pochwalić się innym naszą grą.
15Lekcja 15. Space Invaders
Na tej lekcji przygotujemy grę Space Invaders, tworząc mapę, sterowanie postacią oraz przeciwników. Określimy warunki wygranej i przegranej.
16Lekcja 16. Space Invaders. Kontynuacja
Rozszerzamy nasz projekt o dodatkowego przeciwnika oraz tarcze.
17Lekcja 17. Pacman
Na dwóch kolejnych zajęciach stworzymy klasyczną grę retro Pacman. Pierwsza lekcja skupi się tworzeniu podstaw poruszania się Pacmana, zjadania kropek i wygranej.
18Lekcja 18. Pacman. Kontynuacja
Na lekcji dokończymy projekt Pacmana rozpoczęty na lekcji poprzedniej. Lekcja będzie skupiała się na stworzeniu AI i restarcie gry.
19Lekcja 19. Game Design Doc oraz Kontrola Wersji
Pierwsze zajęcia poświęcone zostaną obmyślaniu działania gry. Omówione zostaną różnice między grami 2D i 3D. Przygotowany zostanie Game Design Doc a także uczniowie dowiedzą się czym jest kontrola wersji projektu na podstawie GitHuba i Plastic SCM.
20Lekcja 20. Kontroler gracza
Na tych zajęciach uczniowie przygotują kontroler gracza stosując wewnętrzny komponent Unity CharacterController. Oprócz poruszania gracza przygotują skrypt pracy kamery, przez którą będą oglądać świat gry.
21Lekcja 21. Czas, pauza i punkty
Teraz uczniowie przygotują kilka specjalnych mechanik. Zaprogramują stoper, który będzie odmierzał ile czasu zostało do znalezienia mety. Stworzą też mechanikę pauzowania gry oraz zakończenie jej, czyli wygraną i przegraną.
22Lekcja 22. PickUpy
Teraz uczniowie przygotują kilka specjalnych mechanik. Zaprogramują stoper, który będzie odmierzał ile czasu zostało do znalezienia mety. Stworzą też mechanikę pauzowania gry oraz zakończenie jej, czyli wygraną i przegraną.
23Lekcja 23. Portal cz. I
Rozpoczęte zostaną pracę nad portalami, dzięki którym gracze będą mogli się przenieść do innej części labiryntu. Te zajęcia poświęcone zostaną zbudowaniu obiektu portalu.
24Lekcja 24. Portal cz. II
Kolejne zajęcia będą kontynuacją portali. Stworzone zostaną skrypty, które pozwolą na płynne przejście między portalami a także stworzone zostanie kilka zabezpieczeń, by portal działał poprawnie.
25Lekcja 25. Podstawy grafiki 3D
Czas na grafikę 3D. I to dosłownie. Na tych zajęciach uczniowie zapoznają się z podstawami programu Blender 3D. Poznają jak się modeluje i jakie są elementy składowe modelu. Przygotują też pierwszą grafikę do gry.
26Lekcja 26. Tworzenie Pickupów i Export cz.1
Uczniowie z pomocą nauczyciela stworzą swoje własne grafiki 3D, które zastosują w tworzonej grze. Poznają kilka sztuczek związanych z modelowaniem, by uatrakcyjnić swoje projekty.
27Lekcja 27. Tworzenie Pickupów i Export cz.2
Po stworzeniu modeli i doszlifowaniu czas na export do Unity. Uczniowie dodadzą stworzone przez siebie modele do projektu a następnie dodadzą do nich skrypty związane z ich mechanikami.
28Lekcja 28. Podstawy animacji i zagadka
Jeśli są PickUpy można dodawać animacje. Uczniowie wprawią w ruch swoje modele. Przy okazji stworzą mechanizm pułapki a także mechanizm otwierania drzwi za pomocą klucza.
29Lekcja 29. Tworzenie Labiryntów i level design
Czas w końcu przygotować swój labirynt. Na tych zajęciach przygotowane zostaną skrypty, które pozwolą uczniom na generowanie labiryntów według ich pomysłów. Przygotują metę gry a także dodadzą niebo do projektu.
30Lekcja 30. Tworzenie Labiryntów i level design cz.2
Gdy mamy gotowy labirynt warto go uatrakcyjnić poprzez dodanie pułapek, drzwi czy pickupów. Każdy uczeń stworzy w ten sposób własny, niepowtarzalny poziom gry.
31Lekcja 31. Materiały i postprocessy
Gotowy poziom można jeszcze uatrakcyjnić. Te zajęcia poświęcone zostaną materiałom by nadać koloryt obiektom. Następnie omówione zostaną postprocessy, dzięki którym uczniowie będą w stanie zupełnie zmienić tzw. Flow swojej gry. Na koniec wprowadzona zostanie muzyka i dźwięki.
32Lekcja 32. UI i wykończenie gry
Ostatnie zajęcia poświęcone zostaną interfejsowi gry. Wprowadzone zostaną dwuwymiarowe grafiki informujące gracza o czasie jaki mu pozostał, czy jest pod wpływem pickupu lub czy dobiegł w końcu do mety. Utworzone zostanie też proste Menu główne. No i w końcu eksportujemy naszą grę by móc pochwalić się znajomym.
33Lekcja 33. Arkanoid
Przygotujemy podstawy gry Arkanoid. Oprogramujemy arenę, poruszanie kładki oraz ruch kulki. Przygotujemy również pierwsze cegiełki do zbijania.
34Lekcja 34. Arkanoid. Kontynuacja
Kontynuujemy prace nad grą Arkanoid. Dodamy generowanie bloków oraz różne poziomy.
35Lekcja 35. Przypomnienie podstaw, powtórzenie i omówienie projektu
Na pierwszych zajęciach przypomnimy sobie podstawy C# i Unity. Przypomnimy też sobie Game Design Doc przy omawianiu projektu semestralnego.
36Lekcja 36. Tworzenie i poruszanie pojazdu cz .1
Na drugich zajęciach poznamy podstawy poruszania pojazdów w Unity. Zapoznamy się z komponentem Wheel Collider.
37Lekcja 37. Tworzenie i poruszanie pojazdu cz .2
Po zapoznaniu się z tworzeniem kół, dodamy nasz pojazd i zabezpieczymy go, by jeździł poprawnie. Dodamy także śledzenie pojazdu.
38Lekcja 38. Teoria gier multi i przygotowanie środowiska
Lekcja teoretyczna o tworzeniu gier multiplayer a także przygotowanie środowiska Photon.
39Lekcja 39. CheckPointy i odliczanie okrążeń
Zajęcia poświęcone zostaną punktom kontrolnym usytuowanym na terenie. Dzięki nim, program będzie w stanie określić, ile okrążeń wykonał gracz.
40Lekcja 40. UI
Na tych zajęciach utworzymy przygotujemy podstawy interfejsu użytkownika. Dodamy nazwę i kolor gracza, odliczanie i reset gry.
41Lekcja 41. Poprawa jazdy, lusterko i zmiana widoku
Zajęcia poświęcone będą poprawką a także dodaniem lusterka do gry oraz zmianie widoku.
42Lekcja 42. Menu i wykończenia
Podczas zajęć przygotowane zostanie menu gry, w którym będzie można wybrać kolor i nazwę naszego samochodu.
43Lekcja 43. Tworzenie Multiplayera cz.1
Na tych zajęciach w końcu zaczniemy tworzyć elementy związane z połączeniem z serwerem i z innymi graczami. Z względu na wymagające testowanie, lekcja rozbita jest na dwa spotkania.
44Lekcja 44. Tworzenie Multiplayera cz.2
Na tych zajęciach w końcu zaczniemy tworzyć elementy związane z połączeniem z serwerem i z innymi graczami. Z względu na wymagające testowanie, lekcja rozbita jest na dwa spotkania.
45Lekcja 45. Tablica wyników
Na tych zajęciach zajmiemy się przygotowaniem tablicy wyników oraz wyświetleniem jej.
46Lekcja 46. PowerUp
Na tej lekcji dodamy Nitro do naszych samochodów.
47Lekcja 47. Teren i praca własna cz. 1
Dwie ostatnie lekcje poświęcone zostaną tworzeniu toru do jazdy oraz przygotowaniem własnych wyścigów. Po stworzeniu terenu uczniowie będą sami uzupełniać elementy toru i przekładać gotowe elementy na nową mapę.
48Lekcja 48. Teren i praca własna cz. 2
Dwie ostatnie lekcje poświęcone zostaną tworzeniu toru do jazdy oraz przygotowaniem własnych wyścigów. Po stworzeniu terenu uczniowie będą sami uzupełniać elementy toru i przekładać gotowe elementy na nową mapę.