Nowe metody interakcji w Adobe Flash



Podobne dokumenty
Zastosowanie AR i nowych form interakcji w środowisku Adobe Flex Air 2

Rzeczywistość rozszerzona w praktyce muzealnej

Kinect vs VR, czyli technologie sensoryczne stosowane w konsolach do gier.

GUI - projektowanie interfejsów

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Java jako język programowania

DESIGNER APPLICATION. powered by

opracował Adam Nowiński

Mobilne Aplikacje Multimedialne

Zastosowania Robotów Mobilnych

MAR Mobile Augmented Reality Rzeczywistość Rozszerzona NA TWOIM SMARTFONIE

TWÓJ BIZNES. Nasz Obieg Dokumentów

Innowacja pedagogiczna na zajęciach komputerowych w klasach 4e, 4f, 4g. Nazwa innowacji Programowy Zawrót Głowy

Pliki zorganizowano w strukturze drzewiastej odzwierciedlając strukturę logiczną aplikacji:

Programowanie obiektowe

Projekt Zaprogramować działanie robota w narzędziu USARSim

IBM SPSS Statistics - Essentials for Python: Instrukcje instalacji dla Windows

5.2. Pierwsze kroki z bazami danych

Wprowadzenie do projektu QualitySpy

Szczegółowy opis przedmiotu zamówienia

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Instrukcja migracji z programu Proste Faktury do programu DuoKomp Sprzedaż i Magazyn

OMNITRACKER Wersja testowa. Szybki przewodnik instalacji

Rozdział 2. Programowanie Arduino i kodowanie społecznościowe (29)

REFERAT PRACY DYPLOMOWEJ

Memeo Instant Backup Podręcznik Szybkiego Startu

Tworzenie gier na urządzenia mobilne

INTERAKTYWNA KOMUNIKACJA WIZUALNA. Flash - podstawy

OMNITRACKER Wersja testowa. Szybki przewodnik instalacji

Misja #1 Poznajemy Prophio.

Referat Pracy Dyplomowej

INSTRUKCJA DO OPROGRAMOWANIA KOMPUTEROWEGO

Nowe notowania epromak Professional

Aplikacja (oprogramowanie) będzie umożliwiać przygotowanie, przeprowadzenie badania oraz analizę wyników według określonej metody.

1. Szczegółowy opis przedmiotu zamówienia

Norton 360 TM Instrukcja instalacji, aktywacji i dezinstalacji aplikacji

REFERAT PRACY DYPLOMOWEJ

GUI - projektowanie interfejsów

Część I Rozpoczęcie pracy z usługami Reporting Services

16) Wprowadzenie do raportowania Rave

WIZUALIZACJA I STEROWANIE ROBOTEM

JavaFX. Technologie Biznesu Elektronicznego. Wydział Informatyki i Zarządzania Politechnika Wrocławska

ActionLab - oprogramowanie do tworzenia labiryntów interaktywnych V1.0.1

Projektowanie systemów zrobotyzowanych

Techniki animacji komputerowej

System zarządzający grami programistycznymi Meridius

SCENARIUSZ LEKCJI. Temat może zostać zrealizowany jako wprowadzający do zagadnień opracowywania i prezentowania informacji.

Załącznik 1 instrukcje instalacji

Nowy PekaoBIZNES 24. Przewodnik po zmianach w systemie. Departament Bankowości Transakcyjnej

Obrazek 1: Interfejs DT. DT Help File v1.3

Strona wizytówka od 400 zł

Komputery I (2) Panel sterowania:

Projektowanie systemów zrobotyzowanych

Voicer. SPIKON Aplikacja Voicer V100

Laboratorium przez Internet w modelu studiów inżynierskich

Webowy generator wykresów wykorzystujący program gnuplot

Nowe notowania epromak Professional

Dokumentacja aplikacji Szachy online

Szybkie prototypowanie w projektowaniu mechatronicznym

UMOWY CYWILNOPRAWNE Instalacja, rejestracja i konfiguracja programu

SPOSOBY POMIARU KĄTÓW W PROGRAMIE AutoCAD

to agencja specjalizująca się w kompleksowej obsłudze marek w mediach społecznościowych. Dzięki specjalistycznemu know-how, dopasowaniu oferty do

Tablet dla dzieci GoClever GENIUS 7"

Dokonaj instalacji IIS opublikuj stronę internetową z pierwszych zajęć. Ukaże się kreator konfigurowania serwera i klikamy przycisk Dalej-->.

Główne elementy zestawu komputerowego

MonoGame. Wieloplatformowe gry w C# Mateusz Cicheński

Pytanie: Odpowiedź: Pytanie: Odpowiedź: . Pytanie: Odpowiedź: Pytanie: element multimedialny lub interaktywny Odpowiedź: Pytanie:

Phocus.pl to polsko-japońska firma składająca się z grupy kreatywnych profesjonalistów, którzy współpracując razem tworzą porządne rzeczy.

Gogle wirtualnej rzeczywistości (VR) Pro

1 Wprowadzenie do koncepcji Microsoft Office BI 1 Zakres ksiąŝki 2 Cel ksiąŝki 3 Wprowadzenie do tematu 3 Zawartość rozdziałów 4

URZĄDZENIE DO BEZPRZEWODOWEGO STRUMIENIOWANIA MULTIMEDIÓW

G DATA TechPaper Aktualizacja rozwiązań G DATA Business do wersji 14.2

Załącznik techniczny przedmiotu zamówienia komponentu

Jak utworzyć diagram

Kryteria ocen zajęcia komputerowe klasa 4

Serwery Statefull i Stateless

Instrukcja wejścia na lekcje on-line

Instrukcje instalacji pakietu IBM SPSS Data Access Pack dla systemu Windows

Numer i nazwa obszaru: Temat szkolenia:

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

Dokumentacja projektu QUAIKE Architektura oprogramowania

Instrukcja uaktualnienia AdRem NetCrunch z wersji 5.3 do 6.x

World Wide Web? rkijanka

Tworzenie aplikacji GIS w technologii Flex. Tomasz Turowski Esri Polska

Programowanie Obiektowe GUI

Tomasz Greszata - Koszalin

G DATA TechPaper. Aktualizacja rozwiązań G DATA Business do wersji 14.1

Pomoc. BIP strona portalu

E-Podręcznik w edukacji. Marlena Plebańska

1. Opis aplikacji. 2. Przeprowadzanie pomiarów. 3. Tworzenie sprawozdania

Digital Signage Systems

Instrukcja instalacji aplikacji MuoviSelect 2.0

Programowanie Urządzeń Mobilnych. Laboratorium nr 7, 8

windows XP n a j l e p s z e t r i k i

Ćwiczenie 1: Pierwsze kroki

wizualizacje animacje reklama inwestycji PROMOCJA ARCHITEKTURY ZAUFANY PARTNER

CMS, CRM, sklepy internetowe, aplikacje Web

Zaawansowana Grafika Komputerowa

to agencja specjalizująca się w kompleksowej obsłudze marek w mediach społecznościowych. Dzięki specjalistycznemu know-how, dopasowaniu oferty do

Platforma szkoleniowa krok po kroku

Transkrypt:

Interfejs użytkownika - Kansei w praktyce 2009 184 Nowe metody interakcji w Adobe Flash Marcin Wichrowski Polsko-Japońska Wyższa Szkoła Technik Komputerowych Warszawa mati@pjwstk.edu.pl www.wichrowski.pl Streszczenie Aplikacja Adobe Flash od kilku lat stanowi multimedialny standard w projektowaniu bogatych wizualnie i interakcyjnie treści w sieci. Dzięki rozwijanym dodatkowym bibliotekom możliwe staje się rozszerzenie funkcjonalności produkcji Flash o nowe metody prezentacji i interakcji. Omawiane w artykule przykłady dotyczą opracowanych przez entuzjastów bezpłatnych bibliotek WiiFlash 21 oraz FLARToolKit 22. Pierwsza pozwala na komunikację z poziomu języka ActionScript z kontrolerami do konsoli Nintendo Wii, natomiast druga odpowiada za obsługę technologii Augmented Reality. Słowa kluczowe Interfejsy Flash, Nintendo Wii, WiiFLash, FLARToolKit, Augmented Reality Wprowadzenie do WiiFlash Autorami projektu WiiFlash są Joa Ebert i Thibault Imbert. Powstał on z myślą o integracji aplikacji stworzonych w Adobe Flash i kontrolerów dostarczanych do obsługi popularnej konsoli Nintendo Wii. Są nimi Wii Remote, Nunchuk, ClassicController oraz Balance Board (można je nabyć oddzielnie bez konieczności kupowania konsoli). Copyright Wydawnictwo PJWSTK Warszawa 2009 Kansei 2009 Interfejs użytkownika Kansei w praktyce ISBN 978-83-89244-78-9 21 http://wiiflash.bytearray.org/ 22 http://www.libspark.org/wiki/saqoosha/flartoolkit/en

185 Projekt zbudowany jest z dwóch części: WiiFlash Server (serwer odpowiadający za komunikację komputera z kontrolerami napisany w C++ i.net) WiiFlash ActionScript API (interfejs programowania aplikacji w postaci komponentu SWC) komunikacja między komputerem a kontrolerem z poziomu języka ActionScript. Dostarczony plik testowy Wiimote Demo.fla pozwala sprawdzić działanie wbudowanych sensorów oraz przycisków urządzenia. Kontroler Wii Remote (nieoficjalnie nazywany Wiimote) posiada poza kilkoma przyciskami wbudowany czujnik ruchu, czujnik przyspieszenia (accelerometer) oraz kamerę z filtrem podczerwieni pozwalającą śledzić położenie do 4 źródeł nadajników podczerwieni. Komunikacja między nim a komputerem odbywa się przez Bluetooth, w który wyposażona jest większość współczesnych laptopów. Istnieje również szeroki wybór przenośnych wersji USB z dedykowanymi programami obsługi (np. BlueSoleil 23 ). W celu wykrycia kontrolera Wiimote należy wybrać wyszukiwanie urządzeń Bluetooth oraz nacisnąć na nim przyciski 1 + 2. Najczęściej urządzenie zostaje zidentyfikowane jako Nintendo RVL-CNT-01. Niektóre z aplikacji dołączanych do adapterów Bluetooth wymagają podania kodu parowania dla łączonych urządzeń, jednak w przypadku kontrolerów Wii krok ten należy zignorować. Udane połączenie będzie sygnalizowane zieloną ikoną w pasku systemowym. Ostatnim krokiem jest uruchomienie WiiFlash Server, który dostarczany jest razem z bibliotekami, przykładami i dokumentacją. Wspomniany serwer poinformuje o ilości podłączonych urządzeń. Od tego momentu po uruchomieniu Adobe Flash możliwa jest 23 http://www.bluesoleil.com/ rysunek 1. Wykryty kontroler i uruchomiony WiiFlash Server Implementacja ActionScript 3 Komunikacja z kontrolerami i obsługa ich zdarzeń jest intuicyjna. Poniżej przedstawiono dla przykładu kilka poleceń pozwalających połączyć się z kontrolerem Wiimote. Pierwszym krokiem jest zaimportowanie bibliotek i upewnienie się, że ścieżka dostępu do folderu je zawierająca jest właściwa: import org.wiiflash.wiimote; import org.wiiflash.events.buttonevent; import org.wiiflash.events.wiimoteevent; import flash.events.*;

186 Połączenie z kontrolerem realizuje kod: var mywiimote:wiimote = new Wiimote(); mywiimote.connect(); Do wykrycia i obsługi zdarzenia np. naciśnięcia przysisku A, który ma wywołać drgania urządzenia służy kod: mywiimote.addeventlistener(buttonevent.a_press, onapressed ); Przykłady zastosowań Dzięki możliwości podłączenia także pozostałych kontrolerów sposoby interakcji w filmach Flash mogą być wzbogacone o metody kinetyczne i optyczne co daje szerokie spektrum zastosowań. Jednym z pierwszych przykładów jest projekt Majority Desk 24 pozwalający sterować obiektami wirtualnego pulpitu z użyciem dwóch Wiimotów (autorzy: Eddie Herrmann i Dan McWeeney). function onapressed ( pevt:buttonevent ):void { mywiimote.rumbletimeout = 1000; } Poniższy kod realizuje śledzenie informacji z sensorów ruchu i wykorzystuje je do zmiany położenia na osiach x oraz y symbolu box1_mc. Obiekt jest wyśrodkowany względem sceny, mnożnik 200 odpowiada za szybkość przemieszczania się symbolu. mywiimote.addeventlistener(wiimoteevent.update, move); function move(event:event):void { box1_mc.x = (stage.stagewidth / 2) + mywiimote.sensorx * 200; box1_mc.y = (stage.stageheight / 2) + mywiimote.sensory * 200; } W podobny sposób może odbywać się pobieranie danych z innych przycisków i sensorów w tym rejestrowanie źródeł podczerwieni. 24 25 rysunek 2. Majority Desk Wykorzystanie wbudowanej kamery z filtrem podczerwieni przedstawiają np. projekty Alana Rossa 25, http://blog.danmcweeney.com/48 http://blog.ewherrmann.com/2007/10/08/majority-deskget-your-wiihands-on/ http://lab.adjazent.com/2008/05/05/wiiflash-interactiveribbons-and-some-other-wiiflash-examples/

187 który użyj jej do wizualnej reprezentacji położenia źródeł diod IR oraz śledzenia ruchu głowy do sterowania obiektami w przestrzeni 3D (head tracking). wielodotykowego. W programie WiiJ użytkownik manipulując wideo, zdjęciami, kształtami i ścieżkami muzycznymi w czasie rzeczywistym tworzy pokaz audiowizualny. rysunek 3. Wiimote Demo IR Traces rysunek 5. WiiJ - Visual Jockey rysunek 4. Wiimote Demo Head Tracking Echa pionierskich zastosowań kontrolerów Wii, które zaproponował Johnny Chung Lee 26 można odnaleźć także w aplikacji WiiJ Visual Jokey 27. Za pomocą jednego Wiimota i dwóch piór z diodami IR każda powierzchnia może stać się rodzajem ekranu Podobnie zaawansowane użycie śledzenia źródeł podczerwieni użyto w konstrukcji interaktywnego stołu będącego częścią wystawy w Liliesleaf Museum 28. Bazując na Wiimotach odczytujących położenie dwóch elementów nawigacyjnych znajdujących się na blacie instalacja pozwala sterować wyświetlaniem elementów wideo, obrazów i tekstów. Daje to możliwość w intuicyjny i interaktywny sposób zapoznać się z prezentowaną treścią. 26 http://johnnylee.net/projects/wii/ 27 http://vimeo.com/user1276653 28 http://www.pixelproject.com/

188 prawdopodobnej fizycznie animacji reprezentującej daną akcję. Jednak przykładów wykorzystania WiiFlash do tworzenia prostych gier nie brakuje. Na wykorzystanie kontrolera Balance Board zdecydowała się belgijska firma Togami w swojej grze, w której użytkownik steruje deską do snowboardu 30. rysunek 6. Liliesleaf Interactive Table Dużym atutem w użyciu WiiFlasha jest możliwość sterowania filmami opublikowanymi w sieci. I tak dla przykładu projekt zrealizowany przez Jeffa Windera pozwala na sterowanie mapą z użyciem urządzeń Wiimote i Nunchuk 29. Za pomocą przycisków można przybliżać/oddalać mapę, poruszanie przesuwa widok, natomiast joystick na Nunchuku działa jak myszka. rysunek 7. WiiFlash z UMap komponent 29 Oczywistymi pomysłami na zastosowanie WiiFlash wydają się gry, które zasadą działania nawiązują do tych z konsoli Nintendo Wii. Niestety posługiwanie się tylko bezpośrednimi danymi z sensorów nie zapewni precyzji i płynności ruchów znanych z gier konsolowych. Wynika to z faktu, iż w przypadku konsoli dane z sensorów są tylko podstawą do rozpoznania wykonanego ruchu i dalszego wyliczenia najbardziej http://seedylifestyle.blogspot.com/2008/07/wiiflash-andumap-v10-component.html rysunek 8. Togami Snowboard Game 30 http://www.togami.biz/

189 Jedne z bardziej niecodziennych zastosowań opisywanej technologii to stworzenie prawdziwego pojazdu sterowanego kierownicą Wii Wheel 31 oraz WiiSpray 32 symulującego rozpylanie farby na ekranie. rysunek 9. Pojazd sterowany Wiimotem Wprowadzenie do FLARToolKit FLARToolKit to przeniesiona do ActionScript 3 wersja ARToolKit zestawu bibliotek do generowania aplikacji Augmented Reality (AR). Transfer dokonany został z szybciej działającej wersji Java (NyARToolKit), a nie z oryginalnego kodu w języku C. W uproszczeniu Augmented Reality (tłumaczona często jako rzeczywistość wzbogacona) polega na połączeniu rzeczywistego świata rejestrowanego kamerą z obiektami generowanymi przez komputer. W miejscach gdzie kamera rejestruje odpowiedni marker (może nim być po prostu kartka z nadrukiem) zostaje na niego nałożony obiekt 3D, którego położenie dopasowane jest do ruchów obserwującej go kamery. W wyniku śledzenia zmian lokalizacji markera, trójwymiarowy obiekt wydaje się być integralną częścią rzeczywistego świata. W celu rozpoczęcia pracy z FLARToolkit należy: pobrać biblioteki FLARToolKit: http://www.libspark.org/svn/as3/flartoolkit/trunk pobrać biblioteki Papervision3d: http://papervision3d.googlecode.com/svn/trunk/ zaprojektować marker i zapamiętać go z użyciem ARToolKit Marker Generator dostępnym na stronie: http://saqoosha.net/en/?s=marker+generator rysunek 10. WiiSpray 31 http://labs.kuru2jam.com/ 32 http://www.wiispray.com/ Działanie aplikacji opiera się na analizie dokonywanej przez Marker Detector obiektu BitmapData (zrzut obrazu z kamery) w poszukiwaniu wzorca markera. Następnie informacje dotyczące położenia wzorca są przekazywane do kontenera Flar Base Node (jest nim Papervision DisplayObject3d) przechowującego obiekt 3D, który ma być odwzorowany na markerze.

190 Dokładne opisy implementacji można znaleźć na stronach Mikko Haapoja 33 oraz Lee Brimelowa 34. Przykłady zastosowań FLARToolKit otwiera drogę do powstawania aplikacji Flash wykorzystujących AR dostępnych online. Wcześniej realizacja takich projektów była możliwa wyłącznie w innych środowiskach programistycznych. Spektrum zastosowań podobnie jak standardowego AR jest bardzo szerokie, a łatwość dostępu przez przeglądarkę internetową z Flash Playerem znacznie zwiększa liczbę potencjalnych użytkowników. Z racji dużej wizualnej atrakcyjności tej technologii reklamodawcy chętnie sięgają po pokazy przyciągające uwagę widza. Ostatnio wykorzystano ją na stronie Ecomagination 35, na której po wydrukowaniu kartki z markerem widz może podziwiać animowane modele elektrowni wiatrowych i słonecznych. Innym przykładem zastosowania są wzbogacone książki, które oglądane przez kamerę pozwalają przekazać dodatkowe informacje. Pomysł ten można zrealizować w postaci wizualizacji na ekranie odpowiadającej danym markerom lub poprzez generowane na stronach książki obiektów 3D (np. modele architektoniczne w katalogu projektowym). rysunek 12. FLARToolKit - markery w książce rysunek 11. AR na stronie Ecomagiantion AR staje się również narzędziem ułatwiającym pracę architektom wnętrz i innym projektantom obiektów 3D, którzy mogą tworzyć swoje makiety w aplikacjach CAD, a następnie konfrontować ich wygląd w rzeczywistym otoczeniu oglądając je przez specjalne gogle z wyświetlaczami LCD. Pozwala to na redukcję budowania 33 http://www.mikkoh.com/blog/?p=182 34 http://gotoandlearn.com/play?id=105 35 http://ge.ecomagination.com/smartgrid/#/augmented_reality

191 kosztownych makiet i łatwiejsze dopasowanie obiektów do rzeczywistej przestrzeni. Połączenie dwóch wyżej omówionych technologii daje jeszcze bardziej rozbudowane możliwości wizualno symulacyjne np. stworzenie na markerach obiektów 3D sterowanych bezprzewodowymi kontrolerami. Jedna z prób wykorzystująca FLARToolKit prezentuje poruszający się po stole pojazd, z którym komunikacja odbywa się przez Xbox 360 Controller. Źródła [1] http://wiiflash.bytearray.org/ [2] http://www.libspark.org/wiki/saqoosha/flartoolkit/en [3] http://www.mikkoh.com/blog/?p=182 [4] http://gotoandlearn.com/play?id=105 rysunek 13. FLARToolKit + Xbox 360 Controller Podsumowanie Zwiększająca się liczba dostępnych na zasadach otwartej licencji bibliotek do ActionScript 3 daje szansę ma kreatywne wykorzystanie online nowoczesnych technologii przez szerokie grono zainteresowanych użytkowników. Interfejsy użytkownika, symulacje, gry, prace artystyczne, reklamy itp. dzięki łatwości łączenia wyżej opisanych technik mogą uzyskać nową jakość ograniczoną jedynie pomysłowością twórców.