Aplikacje VR w Unity · laboratoria

Projektowanie gier VR, spotkanie po spotkaniu

Przez 12 spotkań przechodzicie całą drogę od pustej sceny w Unity do działającej gry — najpierw na klawiaturze, docelowo w goglach VR.

Wprowadzenie

Wejdźcie do świata, który sami zaprojektujecie

Rzeczywistość wirtualna zmienia sposób, w jaki gracz doświadcza gry — przestaje być obserwatorem zza ekranu, a staje się częścią sceny. W tym kursie zajmiecie miejsce twórców takiego doświadczenia: od architektury systemu VR i standardu OpenXR, przez środowisko, światło i ruch, aż po interfejs i mechaniki interakcji. Każde spotkanie dokłada jedną warstwę do gry, którą budujecie samodzielnie przez cały semestr.

Zadanie

Wasze zadanie: kompletna gra w Unity

Do końca kursu tworzycie własną, autorską grę w Unity. Gra ma mieć czytelny cel, działające sterowanie, środowisko, interfejs i przynajmniej dwie mechaniki interakcji. Poziom trudności zadania wyznacza platforma docelowa gry i stopień dopracowania.

3
Gra się odpala, podstawy działają, ale są braki do dorobienia
4
Gra działa poprawnie sterowana klawiaturą
5
Gra działa w pełni w goglach VR

Proces

12 spotkań — harmonogram i wymagania

Poniższa oś prowadzi krok po kroku przez cały proces tworzenia gry. Kliknijcie nagłówek spotkania, aby zobaczyć temat i konkretne wymaganie do zrealizowania przed kolejnym razem.

Terminy spotkań

gr. 1 = IiE/inż/PG/23/LAB/1/SSgr. 2 = IiE/inż/PG/23/LAB/2/SS
#TematGrupa 1Grupa 2
1Architektura VR, OpenXR i pierwsza scenaśr 07.1015:30–17:55śr 07.1018:00–20:25
2Środowisko, modele, teksturyśr 14.1015:30–17:55pn 12.1018:00–20:25
3Światło i kameraśr 21.1015:30–17:55wt 20.1018:00–20:25
4Locomotion i komfort graczaśr 28.1015:30–17:55śr 28.1018:00–20:25
5Interfejs użytkownikaśr 04.1115:30–17:55wt 03.1118:00–20:25
6Animacje, cząsteczki, interakcjeśr 18.1115:30–17:55śr 18.1118:00–20:25
7Rozbudowa mechanikśr 25.1115:30–17:55czw 26.1118:00–20:25
8Dźwięk i optymalizacjaśr 02.1215:30–17:55śr 02.1218:00–20:25
9Testowanie komfortu i ergonomiiśr 09.1215:30–17:55czw 10.1218:00–20:25
10Playtesty i poprawkiśr 16.1215:30–17:55śr 16.1218:00–20:25
przerwa świąteczna
11Finalizacja projektuśr 13.0115:30–17:55śr 13.0118:00–20:25
12Prezentacje projektówśr 20.0115:30–17:05śr 20.0117:10–18:45

Uwaga: grupa 2 w kilku tygodniach ma zajęcia w innym dniu niż środa (pn, wt, czw). Ostatnie spotkanie obu grup trwa 2h.

1

Architektura VR, OpenXR i pierwsza scena w Unity

gr. 1 śr 07.10 · gr. 2 śr 07.10

Jak zbudowana jest aplikacja VR: runtime, OpenXR jako standard, XR Plugin Management. Konfiguracja projektu Unity pod VR i pierwsza scena z osadzonym rigiem gracza.

DO ZROBIENIA PRZED KOLEJNYM SPOTKANIEM

  • Skonfigurowany projekt Unity z XR Plugin Management i OpenXR
  • Zaimportowany XR Interaction Toolkit
  • Pierwsza scena z XR Origin, uruchamiana bez błędów (podgląd w symulatorze lub na goglach)
2

Środowisko, modele, tekstury

gr. 1 śr 14.10 · gr. 2 pn 12.10

Budowanie świata gry: import modeli, praca z materiałami i teksturami, szybkie prototypowanie układu poziomu.

DO ZROBIENIA PRZED KOLEJNYM SPOTKANIEM

  • Wstępny layout poziomu (grayboxing) osadzony w scenie z 1. spotkania
  • Zaimportowane lub stworzone modele kluczowych obiektów sceny
  • Nałożone materiały i tekstury nadające scenie spójny charakter
3

Światło i kamera w projektach VR

gr. 1 śr 21.10 · gr. 2 wt 20.10

Oświetlenie realtime vs. zapieczone, specyfika ustawień kamery i FOV w goglach, wpływ obu na wydajność i komfort gracza.

DO ZROBIENIA PRZED KOLEJNYM SPOTKANIEM

  • Docelowe oświetlenie sceny (co najmniej jedno źródło kierunkowe + punktowe/obszarowe tam, gdzie potrzebne)
  • Skonfigurowana kamera / XR Rig dopasowana do wysokości i pozycji gracza w scenie
4

Ruch postaci, Locomotion i komfort gracza

gr. 1 śr 28.10 · gr. 2 śr 28.10

Systemy poruszania się w VR: teleportacja, smooth locomotion, obroty, vignette i inne techniki ograniczające dyskomfort (motion sickness).

DO ZROBIENIA PRZED KOLEJNYM SPOTKANIEM

  • Postać/gracz może poruszać się po scenie z 2. spotkania
TOR 4: ruch sterowany klawiaturą (WASD lub odpowiednik)
TOR 5: locomotion VR (teleportacja i/lub smooth locomotion) z co najmniej jedną opcją komfortu
5

Projektowanie interfejsu użytkownika

gr. 1 śr 04.11 · gr. 2 wt 03.11

UI ekranowe vs. UI diegetyczne i world-space canvas w VR, sposoby wskazywania i klikania w przestrzeni 3D.

DO ZROBIENIA PRZED KOLEJNYM SPOTKANIEM

  • Ekran/menu startowe gry
  • HUD lub inny element informujący gracza o stanie rozgrywki
TOR 5: UI osadzone w świecie (world-space canvas), obsługiwane wskaźnikiem lub kontrolerem
6

Animacje, system cząsteczkowy, mechaniki interakcji

gr. 1 śr 18.11 · gr. 2 śr 18.11

Animator Controller i proste animacje, Particle System jako narzędzie feedbacku, pierwsze mechaniki interakcji z obiektami (chwytanie, przełączanie, aktywowanie).

DO ZROBIENIA PRZED KOLEJNYM SPOTKANIEM

  • Co najmniej jedna animacja postaci lub obiektu w scenie
  • Co najmniej jeden efekt cząsteczkowy użyty jako feedback dla gracza
  • Pierwsza mechanika interakcji gracza z obiektem w świecie gry
7

Rozbudowa mechanik rozgrywki

gr. 1 śr 25.11 · gr. 2 czw 26.11

Praca projektowa: rozwijanie własnej gry o kolejną mechanikę i jasne zasady rozgrywki, przy wsparciu prowadzącego.

DO ZROBIENIA PRZED KOLEJNYM SPOTKANIEM

  • Druga mechanika rozgrywki lub przeszkoda dołożona do gry
  • Zdefiniowany i zaimplementowany warunek zwycięstwa oraz porażki
8

Dźwięk i optymalizacja w VR

gr. 1 śr 02.12 · gr. 2 śr 02.12

Udźwiękowienie gry, podstawy audio przestrzennego w VR oraz optymalizacja sceny pod stabilną liczbę klatek na goglach.

DO ZROBIENIA PRZED KOLEJNYM SPOTKANIEM

  • Dodane efekty dźwiękowe i/lub muzyka w grze
  • Sprawdzona i w razie potrzeby poprawiona wydajność sceny
TOR 5: co najmniej jedno źródło dźwięku przestrzennego (spatial audio)
9

Testowanie komfortu i ergonomii w VR

gr. 1 śr 09.12 · gr. 2 czw 10.12

Wspólne testowanie własnych gier pod kątem komfortu gracza i ergonomii sterowania, wnioski z pierwszych reakcji użytkowników.

DO ZROBIENIA PRZED KOLEJNYM SPOTKANIEM

  • Przeprowadzony test własnej gry (klawiatura i/lub VR) z inną osobą
  • Spisane minimum 3 wnioski dotyczące komfortu lub sterowania
  • Wprowadzona co najmniej jedna poprawka wynikająca z testu
10

Playtesty i poprawki

gr. 1 śr 16.12 · gr. 2 śr 16.12

Runda playtestów w parach/grupach, spisywanie zgłoszonych błędów i wspólna praca nad ich naprawą.

DO ZROBIENIA PRZED KOLEJNYM SPOTKANIEM

  • Lista błędów i uwag zebranych podczas playtestu
  • Naprawione minimum 3 zgłoszone problemy
11

Finalizacja projektu

gr. 1 śr 13.01 · gr. 2 śr 13.01

Ostatnie spotkanie robocze przed prezentacjami: domykanie mechanik, oprawa audiowizualna, przygotowanie stabilnego builda.

DO ZROBIENIA PRZED PREZENTACJĄ

  • Gotowy, grywalny build gry
  • Domknięta oprawa audiowizualna (UI, dźwięk, efekty)
  • Przygotowana krótka prezentacja procesu twórczego (2–3 min)
TOR 4: build stabilnie działający na klawiaturze
TOR 5: build w pełni grywalny w goglach VR
12

Prezentacje projektów

gr. 1 śr 20.01 · gr. 2 śr 20.01
bez nowych wymagań

Ostatnie spotkanie poświęcone wyłącznie prezentacji gotowych projektów. Każda osoba pokazuje swoją grę, krótko omawia proces powstawania i napotkane wyzwania.

OCENA KOŃCOWA

Pokaz w auli: film z gameplayu + pitch projektu (2 min). Ocena końcowa = średnia z oceny za sprinty i oceny za grę + bonus za pitch.

  • 3  gra się odpala, podstawowe rzeczy działają, ale są braki i trzeba coś jeszcze dorobić
  • 4  gra działa poprawnie sterowana klawiaturą
  • 5  gra w pełni działa i jest grywalna w goglach VR

Zaliczenie

Pracujemy jak zespół w studiu: sprint po sprincie

Każde zadanie „do zrobienia” ze spotkań 1–10 to jeden sprint. Sprint zaliczacie, raportując postęp prowadzącemu w wyznaczonym oknie czasowym. Terminy są sztywne, więc pilnujcie ich sami — poniżej macie dokładnie rozpisane, kiedy która część projektu podlega kontroli.

80%
Minimalna obecność na zajęciach — warunek zaliczenia przedmiotu
6/10
Minimalna liczba zaliczonych sprintów, by zostać dopuszczonym do pokazu
2 min
Pokaz końcowy w auli: film z gameplayu + pitch projektu

Jak wygląda raport ze sprintu

3 zdania + pokaz na żywo

Mówicie w trzech zdaniach, co się udało, i pokazujecie, że to faktycznie działa w uruchomionym projekcie.

Na czym można pokazać
  • TAK gogle VR
  • TAK XR Device Simulator w Unity
  • TAK połączenie zdalne z udostępnionym ekranem na żywo — projekt uruchamiany w trakcie rozmowy
  • NIE nagranie wideo, zrzuty ekranu
Zajęcia w drugiej grupie

Możecie przyjść na zajęcia drugiej grupy, ale nie ma gwarancji, że będzie wolny sprzęt VR. Miejcie przygotowany projekt w symulatorze.

Jedno wystąpienie = jeden sprint

Jednym raportem zaliczacie jeden sprint. Na jednych zajęciach zaliczacie jeden sprint. Wyjątek: jeśli nie było Was z powodu choroby, na kolejnych zajęciach możecie zaliczyć zaległy i bieżący sprint w dwóch osobnych wystąpieniach.

Kiedy można zaliczyć sprint

Sprint, który dostajecie na spotkaniu N, możecie zaraportować:

① na tym samym spotkaniu N, na którym dostaliście zadanie,

② na spotkaniu N w drugiej grupie,

③ na wykładzie przed kolejnym spotkaniem,

④ najpóźniej na spotkaniu N+1 swojej grupy. Po tym terminie sprint przepada. Konkretne daty macie w tabeli poniżej.

Harmonogram sprintów

SprintCo podlega kontroliZadanie ze spotkaniaOstatni termin gr. 1Ostatni termin gr. 2
S1Projekt Unity z OpenXR i XR Interaction Toolkit, scena z XR Origin1 (07.10 / 07.10)śr 14.10pn 12.10
S2Layout poziomu, modele, materiały i tekstury2 (14.10 / 12.10)śr 21.10wt 20.10
S3Oświetlenie sceny, kamera / XR Rig3 (21.10 / 20.10)śr 28.10śr 28.10
S4Poruszanie się gracza po scenie4 (28.10 / 28.10)śr 04.11wt 03.11
S5Menu startowe i HUD5 (04.11 / 03.11)śr 18.11śr 18.11
S6Animacja, efekt cząsteczkowy, pierwsza interakcja6 (18.11 / 18.11)śr 25.11czw 26.11
S7Druga mechanika, warunek zwycięstwa i porażki7 (25.11 / 26.11)śr 02.12śr 02.12
S8Dźwięk, sprawdzona wydajność8 (02.12 / 02.12)śr 09.12czw 10.12
S9Test z inną osobą, 3 wnioski, 1 poprawka9 (09.12 / 10.12)śr 16.12śr 16.12
S10Lista błędów z playtestu, 3 naprawione problemy10 (16.12 / 16.12)śr 13.01śr 13.01

Jak liczymy ocenę z laboratoriów

Ocena końcowa składa się z trzech elementów: oceny za sprinty, oceny za grę (kryteria w sekcji „Ewaluacja”) i bonusu za pitch.

Zaliczone sprinty0–5678910
Ocena za sprintybrak dopuszczenia3.03.54.04.55.0
Bonus za pitch: +0.5

Przyznawany za pitch, który mieści się w 2 minutach, jasno przedstawia pomysł na grę, a film z gameplayu pokazuje jej kluczowe mechaniki.

Ocena końcowa = (ocena za sprinty + ocena za grę) ÷ 2 + bonus za pitch
Wynik zaokrąglamy w górę do najbliższej oceny w skali (3.0, 3.5, 4.0, 4.5, 5.0); maksymalnie 5.0.
Przykład: 7 sprintów (3.5) + gra działająca w VR (5.0) → 4.25 → 4.5. Z bonusem za pitch → 5.0.

Źródła

Materiały, z których warto korzystać

Oficjalna dokumentacja i materiały referencyjne przydatne na każdym etapie procesu.

Ewaluacja

Jak oceniamy projekt

Ocena zależy od stopnia dopracowania gry i platformy, na której finalnie działa. Poniższa tabela pokazuje różnice między trzema poziomami. Ocena za grę jest jednym z elementów oceny końcowej — pełny sposób liczenia znajdziecie w sekcji „Zaliczenie”.

Kryterium Ocena 3 — do dokończenia Ocena 4 — klawiatura Ocena 5 — VR
Sterowanie Gra się odpala, sterowanie działa częściowo lub z błędami Ruch i interakcje działają poprawnie na klawiaturze Ruch i interakcje działają poprawnie w goglach i kontrolerach
Locomotion i komfort Poruszanie się jest niepełne lub nieprecyzyjne Płynne poruszanie się po scenie Teleportacja/smooth locomotion z opcjami komfortu
Interfejs UI obecne w szczątkowej formie. Czytelne menu i HUD na ekranie, nie w pełni działające. UI osadzone w przestrzeni (world-space), obsługiwane kontrolerem
Wykonanie techniczne Gra się uruchamia, ale są wyraźne braki lub błędy do dokończenia Stabilny build, brak błędów blokujących rozgrywkę Stabilna liczba klatek w goglach, brak objawów dyskomfortu

Podsumowanie

Po kursie

Na koniec semestru macie w portfolio kompletną, działającą grę w Unity oraz praktyczne doświadczenie w projektowaniu środowisk, interakcji i komfortu gracza w VR — od pierwszej sceny z OpenXR aż po prezentację gotowego projektu.