Katedra Inżynierii Wiedzy Wykład 13
O czym dzisiaj? Natural User Interface; Virtual Reality (VR); Augmented Reality (AR);
UI - User Interface działanie bezpośrednie - użytkownik porozumiewa się bezpośrednio z obiektami - np. przeciągnięcie pliku do kosza; wybór z menu - wybór jednej z opcji dostępnych w obiekcie menu; wypełnienie formularza - wypełnienie pól/odpowiedź na pytania prowadzi do pewnej akcji; język poleceń - wydawanie specjalnych poleceń (wraz z parametrami) umożliwiających podjęcie akcji systemu; język naturalny - wydawanie poleceń w języku naturalnym.
UI podział Text User Interface (TUI) klawiatura i tekst; Graphical User Interface (GUI) wskaźnik (myszka) i wyświetlacz graficzny; Voice User Interface (VUI) mikrofon i głośnik; Natural User Interface (NUI) gesty odczytywane przy pomocy kontrolera; Reality User Interface (RUI) elementy noszone przez użytkownika.
Nazwa Kinect for Xbox 360; Kinect; pierwotnie określany jako Projekt Natal; Powstanie i platforma docelowa Konsola Xbox; siódma generacja konsol; sprzedaż od października 2010; Inne urządzenia Wii Remote Plus; Playstation Move; Playstation Eye;
Rysunek: Kinect - budowa
Klawiatura, mysz, pad, joystick - są to typowe i najbardziej rozpowszechnione kontrolery do gier. Pojawienie się Ninteno Wii w 2006 roku zmieniło tę sytuację. Konsola znana jest głównie ze swojego bezprzewodowego kontrolera, pilota Wii, który może być używany jako urządzenie wskazujące i może wykrywać ruch w trzech wymiarach. Sony Move, który jest niejako następcą Ninteno Wii to właściwie zbliżone urządzenie o znacznie większej dokładności.
Motion Capture - czyli jak działa Kinect? technika stosowana w filmach i grach komputerowych; przechwytywanie ruchów aktorów w przestrzeni trójwymiarowej; zapis poszczególnych sekwencji ruchowych. Rysunek: Standardowy Motion Capture
Motion Capture w Kinect 48 charakterystycznych punktów na ciele człowieka (głownie stawy), ciało przedstawione jako szkielet składający się z punktów i kresek, wymagana wcześniejsza kalibracja urządzenia - rozpoznawanie sylwetki. Rysunek: Kinect Motion Capture
Rysunek: Kinect - w środku W środku: kamera RGB, kamera IR (podczerwień) do pomiaru głębi, źródło światła IR - dioda laserowa z dyfuzorem, zestaw mikrofonów (z funkcją redukcji echa), silnik do regulacji pochylenia urządzenia.
Rysunek: Schemat blokowy urządzenia ze strony http://www.primesense.com/?p=514
Rozdzielczość kamer kamera RGB: 1600x1200 (UXGA), kamera IR do pomiaru głębi: 1200x960 (VGA). Rozdzielczość 3D zakres głębi: od 0, 8m do 3, 5m, rozdzielczość x/y: 3mm (w odległości 2m), rozdzielczość z: 1cm (w odległości 2m). Pole widzenia w pionie: 57 stopni, w poziomie: 53 stopnie, przekątna: 70 stopni.
Przykładowe aplikacje Prosta aplikacja do sortowania i przeglądania zdjęć, Mapa 2D z możliwością przybliżania, oddalania i wyznaczania trasy przy pomocy kliknięcia: wskazanie ręką punktu początkowego oraz punktu docelowego, Płynny obrót modelu 3D - np. tomografia (z uwzględnieniem obrotu, zbliżenia oraz oddalenia obiektu), Złożona aplikacja, w której interfejs użytkownika ograniczony jest do minimum, a sterowanie programem odbywa się z wykorzystaniem Kinect.
Virtual Reality (VR) Sztuczne środowisko, które odbierane jest jednocześnie przez kilka zmysłów. Rysunek: Pierwsze urządzenie przedstawione jako Virtual reality device (prototyp zbudowany w 1962 roku). źródło: sensorama3d.com
Historia VR Headsight VR 1961r; Sword of Damocles 1968r, pierwszy zestaw VR / AR; nazwa VR 1987r.; automaty do gier z VR początek lat 90; SEGA VR 1993r.; Nintendo Virtual Boy 1995r. Occulus Rift 2016r.
Podział VR brak immersji prezentacja informacji bazująca np. na GPS (google earth); systemy hybrydowe bazujące na rzeczywistości rozszerzonej świat rzeczywisty z nałożonymi elementami, tzw. graphics on top of real world ; systemy immersyjne obecność wewnątrz symulacji.
VR vs AR zastąpienie rzeczywistości vs dodanie nowych, wirtualnych elementów do świata rzeczywistego; pełna immersja vs brak immersji (uwaga, w przypadku vr też można mówić o braku immersji); szerokie pole widzenia vs wąskie pole widzenia (poszerzamy widok o dodatkowe elementy tylko w niewiekim obszarze);
Rysunek: GUI vs VR vs AR
Augmented Reality - AR połączenie świata rzeczywistego oraz obiektów generowanych komputerowo; interaktywność w czasie rzeczywistym; Virtuality Continuumźdefiniowane w 1994 przez P. Milgrama i F. Kishino; wszystko pomiędzy światem rzeczywistym a rzeczywistością wirtualną określamy jako rzeczywistość mieszaną.
Rysunek: GUI vs VR vs AR * P. Milgram, H. Takemura, A. Utsumi, F. Kishino, Augmented Reality: A class of displays on the reality-virtuality continuum, 1994.
Aplikacje AR podział Marker-based - znaczniki w rzeczywistych lokacjach wykorzystywane najczęściej jako reklamy, rzadziej jako gry terenowe; pomiar aktywności użytkowników; Marker-less AR - bazujące na kamerze i na pomiarach GPS (plus kompas) pozwalające ustalić najbliższe otoczenie użytkownika; Augmented vision AR - czujniki: akcelerometr, żyroskop, ciśnienie, ruch, elementy odzieży pozwalające na pomiar funkcji (np. funkcji życiowych).
Life Logging aaa
Co wiemy po zajęciach game design - bardzo szerokie, obejmuje kodowanie, przygotowanie modeli, AI, GUI, fabułę i tak dalej; skupiamy się na wybranym elemencie, takim jak programowanie zdarzeniowe i pisanie skryptów; dobór metody postępowania do projektu (możliwość stosowania metodyki reuse, RAD, podejście przyrostowe); podział prac w zespole i szacowanie czasu przewidzianego na wykonanie zadania; korzystanie z narzędzi ułatwiających wykonywanie poszczególnych elementów;
Co wiemy po zajęciach opracowanie alternatywnego interfejsu dla aplikacji mobilnej i stacjonarnej; wykorzystanie AI oraz podejmowania decyzji zwłaszcza w przypadku gier strategicznych; możliwość zastąpienia zdarzeń losowych elementami związanymi z podejmowaniem decyzji (zamiast losowego przeciwnika w grze mamy przeciwnika racjonalnego, który chętniej podejmuje działania przynoszące potencjalnie zysk); znajomość zachowań graczy oraz możliwość wprowadzania elementów gamifikacji, nagradzania graczy w trakcie rozgrywki;
Co dodatkowo silnik gry a silnik grafiki; główna pętla silnika gry; wzorce i refaktoryzacja kodu; przejście z GUI na NUI; działania mające na celu promocję produktu (strona www, korzystanie z google trends); korzystanie z narzędzi do wersjonowania; ogólne pojęcie o scenariuszach testowych.
Zagadnienia na egzamin narysuj diagram sieciowy na podstawie diagramu Gantta; dla danego diagramu Gantta oszacuj czas pracy nad projektem (czas całkowity dla całego zespołu); zaproponuj algorytm poruszania się NPC po terenie zakładając, że ma on do dyspozycji ścieżki od punktu A do punktu B; zaproponuj algorytm poruszania się postaci po labiryncie; na czym polega idea programowania zdarzeniowego / co stanie się po usunięciu obiektu X z poniższego kodu; przedstaw główne komponenty projektu w formie diagramu o strukturze drzewa, gdzie na górze znajduje się główne okno programu; na czym polega mechanizm prototypowania i jak można go wykorzystać przy tworzeniu projektu (prototypowanie z porzuceniem jako metodyka / prototypowanie GUI jako przykład budowy szkicu interfejsu); opisz dwie metodyki pracy nad projektem (bazując na gotowych rozwiązaniach lub zaproponowanych przez siebie).
Dziękuję za uwagę