´Index

1 Introducci´o 7

1.1 Motivaci´o ...... 7

1.2 Context ...... 8 1.3 Objectius ...... 8

2 Estudi d’antecedents 11

2.1 Introducci´o ...... 11

2.2 Elpassat...... 12 2.2.1 Joystick ...... 12

2.2.2 Pistolesdellum...... 16 2.3 Elpresent ...... 19

2.3.1 Gamepad ...... 19 2.3.2 Teclat ...... 24 2.3.3 Ratol´ı ...... 29

2.3.4 Volant ...... 33 2.3.5 WiiRemote ...... 36

1 2.3.6 Pantalla t`actil ...... 40 2.3.7 Acceler`ometre ...... 44

2.3.8 Balanceboard...... 45 2.3.9 Dancepad...... 48

2.3.10 Dispositius musicals ...... 50 2.4 Elfutur ...... 52 2.4.1 C`ameres ...... 54

2.4.2 Realitat Augmentada ...... 62 2.4.3 Micr`ofon...... 68

2.4.4 Dispositius ment-computador ...... 71

3 Tecnologia 77

3.1 DispositiuEmotivEPOC...... 77

3.1.1 Eldispositiu...... 77 3.1.2 Usdeldispositiu´ ...... 79

3.1.3 Programes inclosos ...... 79 3.1.4 EmoComposer...... 82 3.1.5 Estructura...... 82

3.1.6 Usosdel’API ...... 87 3.1.7 Provesdeprecisi´o...... 93

3.2 OpenGL...... 97 3.2.1 Arquitectura...... 98

3.2.2 Us´ ...... 99

2 4 Model de requeriments 101

4.1 Requeriments no funcionals ...... 101

4.2 Requeriments funcionals ...... 102

5 Especificaci´o 103

5.1 Actorsdelsistema...... 104

5.2 Casosd’´us...... 104 5.2.1 Iniciar aplicaci´o...... 104

5.2.2 Finalitzar aplicaci´o ...... 106 5.2.3 Navegar ...... 106 5.2.4 Saltarportal...... 107

5.2.5 Disparar...... 108 5.3 Modelconceptual ...... 109

6 Disseny 111

6.1 Diagramadeclasses...... 111 6.2 Diagrames de seq¨u`encia ...... 113

6.2.1 Bucleprincipal ...... 113 6.2.2 Saltdeportal ...... 114 6.2.3 Disparar...... 115

6.3 Disseny de la interf´ıcie ...... 115 6.4 Arquitecturageneraldelsistema...... 117

7 Implementaci´o 119

3 7.1 API del sistema Emotiv EPOC ...... 119 7.1.1 Connexi´o ...... 120

7.1.2 Enquesta ...... 120 7.1.3 Obtenci´odedades ...... 122

7.1.4 Desconnexi´o...... 123

8 Planificaci´o 125

8.1 Rols ...... 126

8.2 Tasques ...... 126 8.3 Desviaci´ode la planificaci´o...... 126 8.4 C`arregadetreballperrol ...... 129

9 Estudi econ`omic 131

9.1 Costenpersonal ...... 132 9.2 Costosmaterials ...... 132

10 Perspectives de futur 135

10.1Donarordres ...... 135 10.2 Detecci´odelason...... 138

10.2.1 Somnol`encia durant la conducci´o...... 138 10.2.2 Induirsomnisl´ucids ...... 139

10.3 Detecci´ode la resposta emotiva d’un usuari ...... 140 10.3.1 Evoluci´od’imatges ...... 140 10.3.2 Usos judicials i d’investigaci´o ...... 141

4 10.3.3 Classificaci´ode pel·l´ıcules ...... 142 10.3.4 Resposta personalitzada de sistemes d’IA ...... 142

11 Conclusions 145

11.1 Objectiusassolits ...... 145 11.2 Conclusions sobre el dispositiu ...... 146

A Manual d’´us 149

A.1 Preparaci´odeldispositiu ...... 149 A.2 Entrenament ...... 150

A.3 Usdelprototip´ ...... 152

A Format de l’arxiu del mapa 155

5 6 Cap´ıtol 1

Introducci´o

En aquest cap´ıtol s’explica quina ha estat la motivaci´oper a la realitzaci´o d’aquest projecte, en quin context s’emmarca i quins s´on els seus objectius m´es generals que es pretenen assolir.

1.1 Motivaci´o

La motivaci´ooriginal per a la realitzaci´od’aquest PFC neix de l’inter`es en aprofundir els coneixements adquirits durant els estudis d’Enginyeria en In- form`atica en el camp de la visualitzaci´ode sistemes gr`afics i interacci´oamb ells, on s’ha cursat assignatures optatives relacionades.

Amb aquesta motivaci´oes va contactar amb els professors Jes´us Alonso Alonso i Robert Joan-Arinyo, que realitzen recerca en aquest `ambit, per tal de desenvolupar un PFC que permet´es aprofundir aquests coneixements.

7 Es va pactar la realitzaci´od’un projecte de recerca en l’`ambit dels sistemes d’adquisici´od’informaci´oa aplicacions gr`afiques.

1.2 Context

El present PFC est`aenmarcat en l’`ambit dels dispositius d’adquisici´od’in- formaci´oa computadors, especialment enfocat al camp de sistemes gr`afics com simuladors, videojocs o entorns de realitat virtual.

Aquest ´es un camp molt ampli i, per tant, en primer lloc s’ha realitzat un estudi hist`oric de l’evoluci´odel sector, aix´ıcom un estudi de les possibilitats a curt i mitj`atermini basant-nos en els diferents projectes que es troben en fase experimental o de desenvolupament. A partir del que hem apr`es en aquest estudi es decideix investigar una tecnologia en concret que, en aquest cas, ´es la tecnologia d’interacci´oment- computador a trav´es d’electroencefalografia. Concretament el dispositiu a estudiar ´es l’Emotiv EPOC, en comercialitzaci´odes de finals de 2009.

1.3 Objectius

El principal objectiu ´es analitzar la capacitat que el dispositiu Emotiv EPOC d´ona a l’usuari per tal de generar ordres per a una aplicaci´o de manera fiable i consistent. Per a determinar aquesta capacitat s’estudiaran els diferents modes de comunicaci´oque proporciona el dispositiu.

8 Alguns d’aquests modes es poden estudiar amb les eines que acompa- nyen el dispositiu. Per a estudiar-ne d’altres, i comprovar el correcte an`alisi anterior en un entorn m´es real, es construir`aun prototipus que permetr`aex- perimentar en un marc similar a l’´us pel qual el dispositiu ha estat dissenyat.

9 10 Cap´ıtol 2

Estudi d’antecedents

Dediquem aquest cap´ıtol a estudiar dispositius dedicats a l’adquisici´od’in- formaci´oper tal d’interactuar amb videojocs i altres entorns virtuals. Tamb´e analitzem els casos d’´us pels que han estat o poden ser ´utils.

2.1 Introducci´o

Els dispositius i mecanismes d’entrada s´on un apartat essencial a l’hora de marcar l’experi`encia de joc que experimenten els jugadors a l’hora de fer

´us dels diferents videojocs, videoconsoles i altres entorns gr`afics. A l’estudi d’antecedents veurem diferents dispositius, alguns que s’han utilitzat al llarg de la hist`oria dels videojocs i que han caigut en des´us, d’altres que es fan servir actualment per a generar la interacci´onecess`aria, i d’altres amb els que es comen¸ca a investigar o que estan en les ´ultimes fases de desenvolupament

11 abans de ser distribu¨ıts per a utilitzaci´oa gran escala. Analitzarem per una banda les caracter´ıstiques d’aquests dispositius i, per l’altra, veurem per a quins casos d’´us han estat utilitzats. La Figura 2.1 il.lustra l’evoluci´oen el temps dels dispositius d’entrada m´es usuals en vide- ojocs i entorns virtuals.

2.2 El passat

Els dispositius d’aquesta secci´ohan caigut en des´us. Tot i que encara es pot trobar algun videojoc o algun altre tipus d’aplicaci´oal mercat que en faci ´us, entre els productes en desenvolupament i els que surten al mercat, el seu ´us espec´ıfic ´es molt minoritari o pr`acticament inexistent.

2.2.1 Joystick

El joystick ´es un dispositiu d’entrada que consta d’una palanca i diversos botons. La palanca t´ela seva part inferior fixada. Fent for¸ca amb una m`a, la palanca es pot inclinar en dues direccions, sobre el pla de suport del dispositiu. Quan es deixa d’aplicar for¸ca sobre la palanca, aquesta tendeix a tornar a la posici´od’equilibri.

L’´us del joystick es va importar des d’altres ind´ustries, com la ind´ustria aeron`autica o la d’elements mec`anics. L’any 1967, la videoconsola Magna- vox Odyssey va ser la primera en incorporar joysticks per a videojocs, que inicialment eren de funcionament anal`ogic [1]. L’any 1977, amb l’aparici´ode

12 13

Figura 2.1: Diagrama temporal de l’aparici´ode diferents dispositius. (a) (b) (c)

Figura 2.2: Joysticks de diferents `epoques. a) Joystick TAC-2, dels anys 80. b) Joystick de la videoconsola Magnavox Odyssey 2, final dels anys 1970. c) Joystick Freedom de Logitech, actual. l’, es van introduir al mercat els joysticks digitals, amb un nou connector l’especificaci´odel qual va ser l’est`andar durant un llarg periode de temps [2] . Dins dels videojocs, la plataforma on m´es s’ha implantat i on m´es import`ancia ha tingut ´es la de les m`aquines recreatives. Podem observar aquests joysticks i un de modern a la Figura 2.2.

Us´ del joystick

L’´us del joystick ha disminuit molt en els ´ultims anys, en part degut a l’apari- ci´odels sticks anal`ogics en els gamepads que permeten un control direccional anal`ogic a la vegada que mantenen els avantatges del gamepad. Per aquest motiu, s’analitzaran dos exemples d’´us d’aquest dispositiu: un d’antic, de quan era un dispositiu d’´us general en les videoconsoles, i un altre d’un dels usos espec´ıfics que encara avui en dia conserva.

• Galaga (Figura 2.3a i Figura 2.3b): Es tracta d’un joc de naus, publicat

14 l’any 1981, que funciona sobre una m`aquina recreativa. El m`etode d’entrada al joc era una palanca de joystick, la funci´odel qual era

controlar el moviment de la nau del jugador, i un bot´oque tenia per funci´oque la nau dispar´es contra els enemics [3]. Aquest ´us del joystick,

com a manera de controlar el moviment d’all`oque representa l’usuari dins del joc, ja sigui en forma de nau, de personatge, o quelcom diferent, en un entorn on es permet el moviment en dues direccions, ´es el m´es

caracter´ıstic d’aquest dispositiu, especialment en les d`ecades dels 80 i els inicis dels 90, quan tenien una major proporci´od’´us.

• Microsoft Flight Simulator (Figura 2.3c): El camp dels simuladors de vol ´es un dels pocs en que actualment es segueix usant el joystick de ma-

nera generalitzada, i aquest simulador n’´es un dels m´es estesos. El fet que el control dels avions reals sigui tamb´e, parcialment, per mitj`ad’un joystick, ´es important per a mantenir l’´us d’aquest dispositiu en aquest

camp. Tot i que l’´us del joystick ´es opcional el seu ´us ´es molt com´u i la pr`actica totalitat dels usuaris freq¨uents d’aquest tipus de software

l’utilitzen. La utilitat del joystick en aquest cas no ´es la de controlar de forma directa el moviment de l’avi´oen un pla si no la de gestionar

els diferents mecanismes de l’avi´oque posteriorment determinen el seu moviment en un entorn tridimensional [4].

15 (a) (b) (c)

Figura 2.3: Us´ de joysticks. a) M`aquina recreativa de Galaga. b) Captura de pantalla de Galaga. c) Captura de pantalla de Microsoft Flight Simulator

2.2.2 Pistoles de llum

Les pistoles de llum s´on un tipus de dispositiu apuntador utilitzat principal- ment en jocs on es simula l’´us d’una arma de foc [5]. El disseny ´es habitu- alment similar al de pistoles reals o futur´ıstiques. El funcionament es basa en un sensor situat a l’extrem del dispositiu que rep i analitza la llum emesa per la pantalla, juntament amb r`apides modificacions de la visualitzaci´odels objectes als que ha d’apuntar l’usuari [6]. La primera videoconsola en utilitzar-ne va ser la Magnavox Odyssey [7]

(Figura 2.4a), i va ser for¸ca popular amb la Entertainment System (NES) [8] (Figura 2.4b), aix´ıcom a les m`aquines recreatives d’arcade [5]. La tecnologia habitualment utilitzada en les pistoles de llum requereix d’una pantalla CRT. A mesura que el mercat de televisions i monitors va anar adoptant altres tecnologies, aquestes pistoles van anar perdent utilitat [5].

Posteriorment, altres dispositius com la GunCon 3 (Figura 2.4c), compatibles

16 (a) (b)

(c)

Figura 2.4: Pistoles de llum. a) Pistola de la Magnavox Odyssey b) Pistola de llum NES Zapper c)Pistola GunCon 3 de Namco amb pantalles amb un altre tipus de tecnologia, com les pantalles LCD o de plasma, han estat dissenyats [9] amb `exit.

Us´ de les pistoles de llum

La pr`actica totalitat de l’´us de pistoles de llum es produeix per a emular l’´us de pistoles per part del personatge que representa el jugador dins del joc, disparant als objectius als que s’apunta amb la pistola a la pantalla i, generalment, amb una vista en primera persona del personatge.

17 Alguns dels jocs que han utilitzat pistoles de llum s´on:

• Duck Hunt (Figura 2.5a): Publicat l’any 1984, ´es un dels jocs m´es

coneguts que utilitzen pistola de llum. El joc es basava en un usuari que tenia el rol de ca¸cador d’`anecs. El personatge no es movia i no

hi havia cap refer`encia visual del personatge a la pantalla, mentre que els `anecs sortien volant del terra i l’usuari havia d’apuntar i disparar

sobre ells r`apidament, abans de que hagu´essin aconseguit fugir del camp visual de la pantalla [10].

• Time Crisis (Figura 2.5b): Publicat l’any 1995 en m`aquines recreatives

i l’any 1997 per a la consola PlayStation de Sony i, per tant, pertanyent a una generaci´oposterior a Duck Hunt, ´es tamb´eun referent dins dels

jocs que utilitzen pistola de llum. La din`amic de joc ´es de les que s’anomena rail shooter, i es basa en que l’usuari no t´ellibertat per a decidir els seus moviments, si no que simplement pot disparar als

enemics apuntant amb la pistola i cobrir-se per recarregar amb un bot´o auxiliar que incorpora la pistola. Un cop no queden enemics a eliminar

a l’`area on es troba el jugador, el joc autom`aticament avan¸ca el jugador fins a la seg¨uent posici´o[11].

18 (a) (b)

Figura 2.5: Us´ de pistoles de llum. a) Captura de pantalla de Duck Hunt. b) Captura de pantalla de Time Crisis.

2.3 El present

A continuaci´os’exposen els dispositius que ja es poden trobarampliament ` al mercat i l’´us dels quals encara no ha disminu¨ıt de forma notable.

2.3.1 Gamepad

El gamepad ha estat, fins avui en dia, el dispositiu d’entrada m´es habitual- ment utilitzat en els videojocs, i ´es el principal mecanisme d’entrada en totes les videoconsoles modernes, excepte la Nintendo [12]. Tamb´e´es freq¨uent la seva utilitzaci´oen la plataforma PC, encara que amb una popularitat molt inferior respecte a les videoconsoles. [13]. Es tracta d’un dispositiu dissenyat per a ser manegat amb les dues mans a la vegada, generalment el dit polze esquerre controla la direcci´oi el dit polze dret controla un nombre variable de botons d’acci´o[13]. La primera videoconsola en fer ´us d’aquest sistema va ser la Nintendo

19 Entertainment System (NES) l’any 1983, amb el gamepad NES controller (Figura 2.6a). Era un dispositiu molt senzill, que comptava amb quatre botons de direcci´o, dos botons d’acci´oi dos botons de control [14] [15]. L’evoluci´odel disseny dels gamepad ha estat cont´ınua i en moltes di- reccions. Entre les caracter´ıstiques m´es importants que ha adquirit podem trobar:

• Inclussi´od’un o dos sticks anal`ogics, amb un marc de moviment i va- riabilitat continu dins dels l´ımits en els que es pot moure, similar a un joystick. Habitualment s’usa amb la m`aesquerra en compte d’utilitzar

els botons de direcci´o, per`ode vegades tamb´ees fa servir un segon stick anal`ogic amb la m`adreta per a altres objectius [16].

• Evoluci´oconstant del dispositiu cap a un disseny amb una major ergo- nomia, facilitant un ´us m´es natural de l’aparell. Podem veure l’evoluci´o de les imatges a [14].

• Relacionat amb l’augment de l’ergonomia, s’han incl`os botons d’ac- ci´oper a ser utilitzats amb els dits ´ındex i/o els dits mitgers d’una o

ambdues mans.

• Inclussi´ode tecnologia h`aptica per mitj`ad’un o m´es motors de vibraci´o,

sistema tamb´econegut com a force feedback. Aquest fet ´es significatiu perqu`eel gamepad deixa de ser un dispositiu tan sols d’entrada i es converteix tamb´een un dispositiu de sortida. Aquest sistema va ser

20 introdu¨ıt per primer cop a l’abril del 1997 amb el (Fi- gura 2.6b) , un dispositiu auxiliar i opcional que es podia afegir al

gamepad de la , i el primer gamepad en dur-lo incorporat de s`erie va ser el gamepad DualShock de Sony (Figura 2.6d).

• Fer el dispositiu sense fils [13]. El fet de no tenir fils representa un avantatge per a l’usuari, tant en q¨uesti´ode moviments, d’usabilitat, com per est`etica, per`ot´el’inconvenient de que se li ha de proporcionar

energia per mitj`ade piles o una bateria, i aix`osuposa un fet molest per als usuaris. Es´ un camp que ha anat evolucionant, inicialment la comu-

nicaci´oes feia utilitzant infrarrojos, per`oaix`otenia el problema de que si el dispositiu no enviava la senyal en la direcci´oadequada aquesta no

es rebia correctament. Posteriorment, els dispositius joystick Atari Wi- reless RF de l’Atari 2600 van utilitzar radiofreq¨u`encia per a solucionar aquest problema [17], i aquesta tecnologia va ser utilitzada per dispo-

sitius de les seg¨uents generacions com els Wivebird [18] de la Nintendo GameCube o el gamepad de la Xbox 360 [19]. Altres dispositius, com

el de la Nintendo Wii o el DualShock de la PlayStation 3 de Sony utilitzen tecnologia per a una millor comunicaci´o

[20] [21].

• Inclussi´od’una trackball. D’aquesta manera es permet la realitzaci´o acurada de determinats moviments que requereixen de precissi´o, per`o

no ha estat adoptada per la majoria de dispositius del mercat ja que, en

21 (a) (b)

(c) (d)

Figura 2.6: Gamepads. a) Gamepad NES Controller b) Rumple Pak de la Nintendo 64, destinat a proporcionar resposta h`aptica. c) Gamepad de l’Apple Pippin. d) PlayStation 2 DualShock 2.

general, es tracta d’un sistema m´es inc`omode que els sticks anal`ogics. Un dels dispositius en adoptar aquest element va ser el gamepad Ap- pleJack de la consola Apple Pippin [22] (Figura 2.6c).

Us´ del gamepad

El gamepad ´es un dispositiu d’´us molt gen`eric dins dels videojocs, i s’utilitza o s’ha utilitzat en pr`acticament tots els g`eneres i de maneres molt variades.

22 Tot i aix`o, es mostraran uns exemples significatius de la majoria dels casos en que es fa servir.

• Super Mario Bros. (Figura 2.7a): Publicat l’any 1985, i ´essent el segon joc m´es venut de la hist`oria, ´es un bon exemple dels abans populars

jocs de plataformes en dues dimensions. Es controlava mitjan¸cant el NES Controller, que era un dels primers gamepads encara poc sofis-

ticat. Amb els dos botons de direcci´olaterals el personatge es movia cap a l’esquerra i cap a la dreta, utilitzant el bot´odireccional inferi- or el personatge s’ajupia, i els dos botons d’acci´oeren per a realitzar

diferents accions auxiliars com saltar o accelerar [23].

• Tomb Raider (Figura 2.7b): Aquesta s`erie va ser publicada per primer cop l’any 1996, per`oqualsevol dels jocs que la integren ´es un bon exem-

ple del tipus de control en un joc en perspectiva en tercera persona, en els g`eneres de Role Playing Game (RPG), aventura i acci´o. Per al

control del moviment del personatge dins del mapa o entorn tridimen- sional es fa servir l’stick anal`ogic en el cas de que n’hi hagi, i en el seu

defecte les tecles de direcci´o. La resta de botons s´on per a realitzar diferents accions o moviments, com saltar, ajupir-se, disparar, etc. En algunes ocasions, com xocs, per a transmetre informaci´oa l’usuari es

fa servir la funci´ode vibraci´odel gamepad, en el cas de que aquesta existeixi en el dispositiu [24].

• S`erie FIFA (Figura 2.7c): Es tracta d’una s`erie de videojocs de futbol

23 amb lliuraments annuals, amb inici l’any 1993. El seu funcionament ´es similar al d’altres simuladors de futbol o d’altres esports d’equip.

L’usuari del joc controla en cada moment un sol jugador, determinant el seu moviment dins del terreny de joc preferentment amb l’stick anal`ogic

en cas de que el gamepad en tingui, o amb les tecles de direcci´oen el seu defecte. La resta de botons del gamepad s’utilitzen per a realitzar diferents accions del joc, com passades, esprintar, xutar, etc. Tamb´e

en aquest tipus de joc s’utilitza la funci´ode dispositiu de sortida del gamepad en forma de vibraci´odel comandament en casos com el d’una

entrada al jugador que controlem [25].

2.3.2 Teclat

El teclat ha estat el principal dispositiu d’entrada dels computadors personals des dels primers models que varen existir, i avui en dia segueix sent-ho al costat del ratol´ı[26]. El disseny est`abasat en el de les m`aquines d’escriure, i la disposici´o´es molt similar: una s`erie de tecles, organitzades en diverses files, sobre una superf´ıcie horitzontal o gaireb´ehoritzontal. La majoria de tecles representen un s´ımbol, que pot ser un car`acter alfab`etic, un d´ıgit decimal, un s´ımbol de puntuaci´oo un car`acter especial. Entre la resta de tecles, hi ha les de control, que serveixen per a genear algun esdeveniment especial al software, o les modificadores, que alteren el significat de les tecles simb`oliques mentre siguin pulsades, per tal de poder representar un major nombre de

24 (a) (b)

(c)

Figura 2.7: Us´ de gamepads. a) Captura de pantalla de Super Mario Bros. b) Captura de pantalla de Tomb Raider. c) Captura de pantalla del FIFA 09.

25 s´ımbols sense incrementar el nombre de tecles [27] [28]. Tot i que aquest tipus de dispositiu no ha estat dissenyat originalment per a videojocs i degut a que, inicialment i fins a la popularitzaci´odel ratol´ı, la majoria de computadors personals no disposaven de cap altre dispositiu d’entrada, els videojocs per a aquesta plataforma s’hi van adaptar i, gr`acies a la gran distribuci´oi popularitzaci´odels computadors personals, aquest dispositiu s’ha convertit en un dels m´es utilitzats per a jugar a videojocs a la plataforma PC [12]. El disseny dels teclats, de manera similar al de la majoria de disposi- tius, ha evolucionat al llarg dels anys. Entre les principals caracter´ıstiques assolides podem trobar:

• Increment de l’ergonomia, per tal que el dispositiu s’adapti millor als moviments naturals de la m`ai d’aquesta manera evitar mol`esties o fins

i tot possibles lesions a zones com el canell. Aquesta millora ha estat for¸ca generalitzada.

• Eliminaci´odels fils [27]. En el cas del teclat, l’eliminaci´o dels fils per-

met millores est`etiques del dispositiu i, ocasionalment, poder situar-lo en zones on no arribaria en versions amb fil, per`o, degut a la natura- lesa est`atica del teclat, no es tracta d’una millora fonamental pel que

fa a l’experi`encia de l’usuari. Podem veure un teclat sense fils a la Figura 2.8b.

• Tecles especials per a multim`edia i per a jocs [27]. Incorporaci´ode tecles

26 (a) (b) (c)

Figura 2.8: Teclats de diferents `epoques, amb diferents tecnologies i funci- ons. a) Teclat Model M cl`assic. b) Teclat sense fils. c) Teclat dissenyat especialment per a videojocs.

que realitzen funcions especials depenent del programa i que, en el cas de jocs, poden ser programades per a realitzar accions complexes de

forma m´es f`acil i r`apida. Un exemple n’´es el que trobem a la Figura 2.8c.

Us´ del teclat

El teclat ha estat durant molts anys el principal dispositiu d’adquisici´od’in- formaci´oper als videojocs que s’executen en la plataforma PC, encara que avui en dia comparteix protagonisme en aquesta plataforma amb el ratol´ı. Un cop popularitzat l’´us del ratol´ı, a vegades ´es utilitzat de forma conjunta, com en el g`enere First Person Shooter (FPS) [29] [30], o fins i tot de forma acces`oria i opcional, tan sols utilitzant-ho com a dreceres de teclat, en altres jocs com molts del g`enere Real-time Strategy (RTS) [31].

L’´us del teclat en videoconsoles ha estat pr`acticament inexistent, tot i que les videoconsoles d’´ultima generaci´odisposen de ports d’entrada USB

27 i, per tant, es podria arribar a utilitzar amb teclats amb port USB si els dissenyadors del joc ho creguessin convenient.

Es tracta d’un dispositiu molt gen`eric i per tant els casos en que s’utilitza s´on molt variats. Alguns d’ells s´on els seg¨uents:

• Tetris (Figura 2.9a): Aquest videojoc, un dels m´es populars de la hist`oria, compta amb moltes versions per`oel funcionament b`asic de

totes elles ´es similar. Per la part superior d’un rectagle vertical que se li presenta a l’usuari van baixant peces de diferents tipus. L’usuari ha de moure i rotar aquestes peces per tal de que encaixin correctament.

Quan ha aconseguit omplir una l´ınia horitzontal sencera, aquesta des- apareix. L’usuari ha d’evitar que les peces arribin dalt del rectangle.

Una de les disposicions de control m´es freq¨uents ´es utilitzar les tecles de direcci´olateral per a moure lateralment la fitxa que est`a baixant,

les tecles direccionals verticals per rotar la fitxa que baixa, en sentit oposat, i la barra espaiadora per a fer caure completament la fitxa en moviment.

• Prince of Persia (Figura 2.9b): En la versi´ooriginal d’aquest joc, pu- blicat l’any 1989, el control es feia mitjan¸cant el teclat. Per a moure el

jugador s’utilitzaven les tecles de direcci´olaterals. Utilitzant la tecla Shift el jugador caminava en comptes de c´orrer, i aquesta mateixa tecla servia per agafar ´ıtems. Per a saltar s’utilitzava la tecla espaiadora o

la tecla de direcci´osuperior. Durant el combat s’utilitzaven les tecles

28 (a) (b)

Figura 2.9: Us´ de teclats. a) Captura de pantalla d’una versi´odel Tetris. b) Captura de pantalla del Prince of Persia.

de direcci´o.

2.3.3 Ratol´ı

El ratol´ıs’ha convertit, juntament amb el teclat, en el principal dispositiu d’entrada dels computadors [26]. Es tracta d’un dispositiu apuntador bi- dimensional que funciona detectant els canvis de moviment respecte de la superf´ıcie que el suporta. Tamb´edisposa d’un o m´es botons per a realitzar accions i, des de l’any 1995, s’ha anat popularitzant la inclussi´od’una roda que es pot fer girar en dos sentits sobre un eix, que s’utilitza habitualment per a realizar scroll, i que avui en dia es troba a la gaireb´etotalitat dels ratolins comercialitzats [32] (Figura 2.10d). Entre els avantatges del ratol´ı es troba que ´es un dispositiu que permet a l’usuari, simult`aniament, realit- zar moviments `agils, que canvi¨ın de zona r`apidament, i realitzar moviments precissos sobre una petita `area quan sigui necessari.

29 La primera videoconsola en oferir un ratol´ıcom a m`etode d’entrada va ser el sistema educatiu VTech Socrates, l’any 1988 [33], mentre que la primera videoconsola popular en incorporar-lo va ser la Super Nintendo Entertain- ment System (SNES) (Figura 2.10b), l’any 1992. L’evoluci´ode l’´us del ratol´ı en la videoconsola ha estat, per`o, molt limitada, i normalment s’ha redu¨ıt als pocs casos d’intents, amb un `exit molt limitat, de traslladar a videocon- soles jocs de g`eneres m´es t´ıpics de computador, com els jocs d’estrat`egia.

Actualment, i de manera similar amb el cas dels teclats, degut als ports USB dels que disposen la majoria de videoconsoles de nova generaci´o, no hi ha impediments per a que els dissenyadors de videojocs que creguin convenient utilitzar el ratol´ıpuguin fer-ho [32].

De manera similar a d’altres dispositius gen`erics que tamb´es’utilitzen per a videojocs, el gran mercat que els usuaris dels videojocs suposen ha comportat que s’ofereixin versions pensades i dissenyades especialment per a aquests usuaris. Entre les caracter´ıstiques que els diferencien hi ha l’´us de tecnologia l`aser en compte d’`optica, per tal d’aconseguir una major resoluci´o i precisi´o, configuraci´ovariable de la precisi´o, o la possibilitat d’ajustar el pes del dispositiu segons les prefer`encies de l’usuari [34]. Podem veure un d’aquests ratolins a la Figura 2.10e.

Us´ del ratol´ı

El ratol´ı ´es un dispositiu amb un ´us gen`eric que va molt m´es enll`adels videojocs, ja que es tracta del principal dispositiu d’adquisici´od’informaci´oen

30 (a) (b) (c)

(d) (e)

Figura 2.10: Diferents ratolins. a) Primer ratol´ı. b) Ratol´ı de la videoconsola SNES. c) Ratol´ıde tres botons. d) Ratol´ıamb roda. e) Ratol´ıper a videojocs G5 de Logitech.

31 la majoria de sistemes de finestres moderns. Tot i aix`o, aqu´ıens centrarem en dos dels seus usos m´es freq¨uents i caracter´ıstics dins de l’`ambit dels videojocs, ja que tamb´edins d’aquest `ambit compta amb molts usos diferents i variats.

• Quake (Figura 2.11a): Aquest joc, publicat l’any 1996 i que ´es el pri-

mer d’una llarga s`erie, ´es un bon exemple del control dels jocs d’acci´o en primera persona (First Person Shooter, FPS), combinant el ratol´ıi

el teclat. L’an`alisi feta es refereix a aquest joc per`os’aplica a gaireb´e qualsevol altre del mateix g`enere. Cal tenir en compte que habitual- ment el m`etode de control ´es configurable, per`oaqu´ıs’analitza el que ve

per defecte i que coincideix amb l’´us habitual dels jocs d’aquest g`enere. Com s’ha apuntat anteriorment, per al control dels jocs del g`enere FPS

es combina el teclat i el ratol´ı. El ratol´ıs’utilitza per a definir la direc- ci´ocap a on el personatge mira i apunta, que a la vegada ´es la que el

jugador observa degut a que la visi´odel joc ´es en perspectiva en prime- ra persona. En alguns casos la relaci´oentre el moviment del ratol´ıi el del personatge ´es directa i en d’altres ´es inversa, ´es a dir, segons com es

configuri, al moure el ratol´ıcap a l’esquerra el personatge mirar`am´es cap a l’esquerra i segons com es configuri mirar`am´es cap a la dreta. El

bot´oprincipal del ratol´ıs’utilitza per a disparar l’arma o utilitzar l’estri que sigui seleccionat en aquell moment. Per al moviment de translaci´o del personatge s’utilitzen les tecles W-A-S-D del teclat, aix´ı com altres

tecles per a realitzar accions secund`aries.

32 (a) (b)

Figura 2.11: Us´ del ratol´ı. a) Captura de pantalla del Quake. b) Captura de pantalla de l’StarCraft.

• StarCraft (Figura 2.11b): Aquest videojoc publicat l’any 1998 serveix

com a exemple del g`enere d’estrat`egia en temps real (Real-time Strategy, RTS). En el control d’aquest g`enere de videojoc el pes del ratol´ı ´es m´es

alt i el del teclat ´es m´es baix, redu¨ınt-se el seu ´us en moltes ocasions per a utilitzar dreceres de teclat per part dels usuaris m´es experts i no

sent utilitzat per la majoria de jugadors menys experimentats. Amb el ratol´ıs’utilitzen els men´us del joc que permeten crear infraestructures i unitats, aix´ıcom tamb´eamb el ratol´ıes seleccionen unitats al mapa

i se’ls hi d´ona ordres, com per exemple atacar algun objectiu enemic.

2.3.4 Volant

El volant ´es un dispositiu constru¨ıt especialment per a jocs del g`enere de si- mulaci´oautomobil´ıstica [12]. Es tracta d’un dispositiu fet amb la intenci´ode ser similar a un volant de cotxe real, encara que normalment ´es d’una mida

33 Figura 2.12: Volant, canvi de marxes i pedals G25 de Logitech lleugerament inferior. Normalment ve acompanyat de pedals, per a l’accelera- ci´o, la frenada i opcionalment un tercer per a l’embragatge i, ocasionalment, d’una palanca per a efectuar els canvis de velocitat [35]. Podem veure un conjunt de volant, pedals i palanca de canvi de velocitats a la Figura 2.12. Inicialment, els volants eren una tecnologia molt simple, amb un possible angle de rotaci´opetit i que no transmetia cap tipus d’informaci´oa l’usuari. Posteriorment, l’angle en el que podien girar es va anar ampliant, i s’incor- poren motors per tal de proporcionar for¸ca de realimentaci´oa l’usuarii. Al principi la for¸ca tendia a centrar el dispositiu. Despr´es tamb´eva incorporar m`etodes per a que l’usuari tingu´es una major sensaci´ode realisme, amb fets com que el volant tingu´es diferent comportament segons la superf´ıcie sobre la que es trobi el vehicle dins del videojoc o simulador, o aplicar vibraci´oal volant en el moment d’un cop o un xoc[35]. L’angle de rotaci´odel volant s’ha anat ampliant i avui dia es troben volants amb un possible angle de rotaci´ode fins a 1080 graus, ´es a dir, de 3 voltes senceres [35] [36].

34 (a) (b)

Figura 2.13: Us´ del volant. a) Captura de pantalla del Gran Turismo. b) Captura de pantalla del Gran Turismo 3.

Us´ del volant

L’´us del volant ´es molt especialitzat i b`asicament es redueix a simuladors de conducci´ode cotxes o algun altre tipus de vehicles. Com a exemple ana- litzarem la s`erie de jocs Gran Turismo, una de les m´es conegudes dins del camp de la conducci´ode cotxes. No ens centrarem en cap versi´oen especial perqu`epel que fa al control s´on molt semblants. Deixarem de banda el fet que la majoria d’usuaris utilitzaven un gamepad per al control del joc i ens centrarem en el control del joc per mitj`ad’un volant i pedals.

Degut a que ´es l’objectiu del dispositiu, el control del joc amb volant i pedals ´es similar al control d’un vehicle real, utilitzant el volant per a girar als dos costats, i els pedals per a frenar i accelerar. Depenent del dispositiu, si es vol canviar de marxa de manera manual, s’utilitzaran botons del volant o una palanca especial. Podem veure dues captures de pantalla de diferents versions d’aquest simulador a la Figura 2.13.

35 2.3.5 Wii Remote

El comandament Wii Remote, tamb´eanomenat Wiimote, ´es el comandament est`andard de la videoconsola Nintendo Wii, apareguda l’any 2006 [37]. Es tracta d’un dispositiu que va ser innovador a l’ajuntar caracter´ıstiques de diferents tipus de dispositius existents anteriorment i alhora incorporar-ne de nous, fent possible per a l’usuari una experi`encia de joc inexistent fins al moment [38]. Est`adissenyat per a ser utilitzat amb una m`a, utilitzant tan els botons que incorpora com els moviments corporals [20]. Entre les seves caracter´ıstiques hi trobem:

• Es tracta d’un dispositiu apuntador, que hereta diverses caracter´ıstiques de les pistoles de llum. Tamb´et´ela capacitat de poder situar el dis-

positiu a l’espai respecte de la pantalla. De manera diferent a com ho fan les pistoles de llum, aix`os’aconsegueix mitjan¸cant l’´us conjunt d’un sensor d’imatges situat al dispositiu i una barra de sensors situada a

sobre o a sota de la pantalla, permetent d’aquesta manera que funcioni amb totes les pantalles independentment de la tecnologia que utilitzin

i de la seva mida [20].

La barra de sensors fa 20 cm de llargada i disposa de 10 llums LED infrarrojes. De les 10 llums, n’hi ha 5 a cada banda, i estan orientades de manera diferent: els LED del centre estan orientats cap a l’interior i

els dels extrems ho fan cap a l’exterior, mentre que els altres 3 de cada banda estan orientats cap endavant.

36 D’aquesta manera, el sensor d’imatges pot detectar els LED de la barra de sensors i pot, per una banda, determinar per triangulaci´ola posi-

ci´odel dispositiu a l’espai respecte a la barra de sensors, ´es a dir, la pantalla, i per altra banda pot detectar l’orientaci´od’aquest, incloent

l’orientaci´orespecte del terra [20] [39]. Podem veure la barra de sensors a la Figura 2.14.

• El dispositiu Wii Remote tamb´edisposa de capacitats per a la detecci´o

de moviment. Es tracta d’una detecci´od’acceleraci´oen tres eixos pro- porcionada gr`acies a la inclusi´od’un acceler`ometre. D’aquesta manera

es poden detectar les forces exercides pel jugador sobre el comandament i utilitzar-ho per proporcionar una interacci´om´es realista en alguns ti-

pus de videojocs [40].

• Tot i ser principalment un dispositiu d’entrada, en menor import`ancia tamb´ees tracta d’un dispositiu de sortida. Per una banda, gr`acies a un

motor intern disposa de capacitats de forces de realimentaci´o, de mane- ra similar a com ho fan altres dispositius, com gran part dels gamepads

actuals. Per altra banda, disposa d’un altaveu, i d’aquesta manera es poden aconseguir alguns efectes que aporten realisme ajudant-se de

la combinaci´od’altaveus, un al comandament, a prop del jugador, i d’altres, els propis de la pantalla, m´es allunyats de l’usuari [20].

• Connectivitat Bluetooth per a comunicar-se amb la videoconsola, sent

el seu ´us m´es freq¨uent l’enviament d’informaci´osobre les tecles que han

37 (a)

(b) (c)

Figura 2.14: Components del sistema d’entrada de la Nintendo Wii. a) Barra de sensors amb llums LED de la Nintendo Wii. b) Dispositiu Wii Remote c) Wii Remote amb dispositiu auxiliar Nunchuk

estat premudes [41].

• A partir d’un port, disposa de la capacitat per a ser ext´es amb diversos dispositius complementaris, per a poder adaptar-se a diferents estils de

joc. N’hi ha de diversos tipus, entre ells podem trobar un comandament secundari amb joystick, un gamepad, un dispositiu que transforma el

Wii Remote en una pistola de llum, o un puls`ometre [20]. Un d’aquests dispositius auxiliars ´es l’anomenat Nunchuck (Figura 2.14c).

38 Us´ del Wii Remote

El Wii Remote pot detectar gaireb´equalsevol tipus de moviment que se li apliqui. Aix`o´es aprofitat pels diferents videojocs per a simular interaccions que depenguin del la tem`atica interna del videojoc. Els seus usos s´on molt variats i diferents, adaptant-se a les necessitats en cada cas. S’analitzaran diferents usos per`ono es tractar`aen cap cas d’una llista exhaustiva.

: Aquest t´ıtol, un dels m´es populars degut a que es distri-

bueix juntament amb la videoconsola, inclou diferents jocs d’esports en els que s’utilitza el dispositiu Wii Remote per a que l’usuari realitzi

moviments similars als que es realitzen jugant a cada un dels esports. Per exemple, en el joc de tennis, l’usuari ha de moure el dispositiu com

si es tract´es d’una raqueta per a colpejar la pilota, en el de b´eisbol (Fi- gura 2.15a) l’ha d’utilitzar com si es tract´es d’un bat o en el de boxa ha de moure tant el Wii Remote com l’accessori Nunchuck com ho faria

un boxador durant un combat. Els botons del dispositiu servirien, en aquests casos, per a realitzar accions auxiliars [42].

• Medal of Honor Heroes 2 (Figura 2.15b): En aquest videojoc, del g`enere FPS i publicat l’any 2007, s’utilitza tant el Wii Remote com l’accessori Nunchuck. Es´ l’stick anal`ogic d’aquest ´ultim el que s’uti-

litza per a moure el personatge pel mapa, mentre que el dispositiu principal s’utilitza per apuntar als enemics que apareixen en pantalla i

per disparar amb el bot´oposterior, la qual cosa fa la interacci´osimilar

39 a la d’una pistola real. Tamb´es’aprofita el dispositiu per alguns usos auxiliars, com fer-lo girar per a simular l’´us d’una r`adio [43].

• Let’s tap (Figura 2.15c): Com a exemple innovador i curi´os d’aquest dispositiu, aquest joc publicat l’any 2008 s’utilitza sense tocar el dispo-

sitiu en s´ı, si no que per a jugar als diferents minijocs que s’hi incorporen cal deixar el dispositiu quiet en una superf´ıcie i colpejar-la, de manera que gr`acies a l’acceler`ometre que incorpora pot detectar-ho i actuar en

conseq¨u`encia [44].

2.3.6 Pantalla t`actil

Els dispositius amb pantalla t`actil permeten entrar informaci´odel tipus de dispositiu apuntador per`oamb algunes difer`encies que li proporcionen avan- tatges respecte d’altres dispositius apuntadors com per exemple el ratol´ı. Per una banda, es tracta d’un dispositiu que permet selecci´odirecta dels elements de la pantalla en compte de fer-ho indirectament a trav´es d’un dispositiu, de la qual manera s’aconsegueix un ´us m´es natural i senzill. Per altra banda, tot i que a vegades es fa servir algun estri per a interaccionar amb la pantalla com un llapis, la possibilitat de fer-ho directament amb els dits elimina un nivell de dificultat i fa el seu ´us encara m´es senzill [45]. Al llarg dels anys la tecnologia utilitzada per al desenvolupament de pan- talles t`actils ha anat evolucionant, i s’han pogut observar millores en diversos `ambits, com en la precissi´o. El canvi m´es notori pel que fa a experi`encia d’´us

40 (a) (b)

(c)

Figura 2.15: Us´ del Wii Remote. a) Usuari del joc de beisbol del Wii Sports. b) Captura de pantalla del Medal of Honor Heroes 2 c) Disposici´odels Wii Remote per a jugar al Let’s Tap

41 ´es el fet de la introducci´ode pantalles multitouch, ´es a dir, pantalles que poden tractar m´es d’un punt de contacte simult`aniament. Aix`opermet dis- senyar un ´us m´es natural i senzill per a algunes operacions, o fer que m´es d’un usuari facin servir la pantalla alhora [46] [47].

Tot i que les pantalles t`actils han estat investigades i produ¨ıdes des dels anys 60, no ha estat fins fa poc que el seu ´us s’ha expandit, tant de forma general com en el seu ´us per als videojocs. Actualment, podem dividir els sectors de videojocs que admeten l’´us de pantalla t`actil en els que s´on per a un dispositiu d’´us gen`eric i els que s´on per a un dispositiu d’´us espec´ıfic.

Entre els dispositius d’´us general que tinguin pantalla t`actil i que s’utilit- zin per a videojocs trobem, principalment, PDAs i Smartphones. D’entre ells, el m´es destacat ´es l’Apple iPhone (Figura 2.16a), que degut a diversos factors com la gran distribuci´oo el fet de disposar d’un entorn de desenvolupament i d’un sistema de distribuci´opropi de baix cost han possibilitat la creaci´o d’una `amplia comunitat que desenvolupa jocs per a aquesta plataforma [48]. Entre els dispositius d’´us espec´ıfic, ´es a dir, les videoconsoles, que utilitzen pantalla t`actil, la de m´es notorietat fins al moment ´es la videoconsola port`atil Nintendo DS (Figura 2.16b), introdu¨ıda al mercat l’any 2004, que disposa d’una doble pantalla t`actil. Per obtenir una major precissi´o no es fan servir habitualment els dits directament, si no que s’utilitza una esp`ecie de llapis especial per a aquest prop`osit [49].

42 (a) (b)

Figura 2.16: Diversos dispositius que utilitzen la pantalla t`actil com a sistema d’entrada per a videojocs. a) Utilitzaci´ode la pantalla t`actil de l’IPhone per a videojocs. b) Versi´oLite de la Nintendo DS.

Us´ de la pantalla t`actil

Els dispositius m´es populars, que s’utilitzen per a executar videojocs, ja sigui una funci´oespec´ıfica o una de general, i que compten amb pantalla t`actil s´on la Nintendo DS en l’apartat de videoconsoles port`atils i l’iPhone en el de tel`efons m`obils i altres dispositius m´es gen`erics.

• PictoChat a la Nintendo DS (Figura 2.17a): Es tracta d’una utilitat

inclosa en la videoconsola i que permet a diferents usuaris crear un xat d’imatges, utilitzant comunicaci´osense fils, i creant les imatges

dibuixant sobre la pantalla t`actil amb el llapis [50].

• Let’s Golf, de l’iPhone (Figura 2.17b): Aquest simulador de golf utilitza les capacitats de pantalla t`actil del dispositiu. Un cop el personatge

est`apreparat per a moure la pilota, polsant a un costat o altre de la pantalla l’usuari pot variar la seva direcci´o. Un cop es vol copejar la

43 (a) (b)

Figura 2.17: Us´ de pantalles t`actils. a) PictoChat a la NintendoDS b) Cap- tura de pantalla del Let’s Golf de l’iPhone

pilota, l’usuari toca el jugador, i aleshores ha de controlar la for¸ca a

aplicar en el cop tamb´eutilitzant la pantalla t`actil. Tamb´ees poden configurar altres par`ametres del joc utilitzant la pantalla t`actil [51].

2.3.7 Acceler`ometre

L’acceler`ometre ´es un dispositiu que habitualment s’utilitza per a complementar- ne d’altres. Mesura l’acceleraci´oque pateix el dispositiu relativa a la caiguda lliure, i pot ser d’un sol eix o multi-eix. En l’`ambit dels videojocs, ´es freq¨uent trobar-lo en dispositius de control moderns com poden ser gamepads com el

DualShock 3 de la Sony PlayStation 3, el comandament Wii Remote [20], o en una gran quantitat de dispositius m`obils que poden utilitzar la informaci´o que reben d’ell per a aconseguir tenir en compte el moviment de l’usuari dins del joc i aconseguir una interacci´om´es rica amb l’usuari [52].

44 (a)

Figura 2.18: Us´ de l’acceler`ometre. a) Wooden Labyrinth 3D

Us´ de l’acceler`ometre

Un dels videojocs que s’executa en dispositius m`obils i aprofita el seu ac- celer`ometre ´es Wooden Labyrinth 3D (Figura 2.18), dissenyat per a l’Apple iPhone. La din`amica del joc simula les caixes on has de moure una petita pilota met`alica per un laberint de parets de fusta, evitant caure en uns forats que hi ha al llarg del recorregut i intentant dur la pilota a un objectiu. Per a realitzar aix`o, el jugador ha d’inclinar lleugerament la caixa, provocant el moviment desitjat de la pilota. En la versi´odigital, la interacci´o´es similar, utilitzant el joc les dades de l’acceler`ometre per simular moviments de la pilota a partir de la inclinaci´odel dispositiu [53].

2.3.8 Balance board

El Wii Balance Board de Nintendo (Figura 2.19a), disponible des de l’any

2007 [54], ´es un dispositiu amb una forma similar a una b`ascula de cos i

45 (a) (b)

Figura 2.19: Dispositius del tipus Balance board. a) de l’Atari 2600. b) Wii Balance Board de Nintendo. s’utilitza, tamb´e, pujant a sobre seu. Gr`acies al conjunt de sensors del que disposa, pot detectar la distribuci´ode pressi´o, i per tant de pes, que l’usuari efectua sobre la plataforma. D’aquesta manera, el software pot utilitzar aquestes dades com a entrada, i crear una experi`encia d’´us m´es natural gr`acies a que s’utilitza el moviment del cos com a entrada. La seva distribuci´oha estat molt lligada a la del joc , que est`adissenyat per explotar les capacitats d’aquest dispositiu. L’antecedent m´es semblant a la Wii Balance Board ´es el Joyboard de l’Atari 2600, comercialitzada l’any 1982, que era de funcionament similar encara que m´es limitat tecnol`ogicament [55]. Podem veure’l a la Figura 2.19b.

Us´ de la balance board

Tot i que el primer dispositiu d’aquest tipus va ser la Joyboard de l’Atari 2600, aquell que m´es `exit comercial ha aconseguit i el que ´es m´es conegut ´es

46 la Wii Balance Board, per tant l’an`alisi d’´us ser`ad’aquest dispositiu. El videojoc m´es popular en fer ´us d’aquest dispositiu ´es l’anomenat Wii

Fit, comercialitzat a partir de l’any 2007, i que va ser el primer en utilitzar-lo presentant la comercialitzaci´odel dispositiu i del joc de forma conjunta. Com que dins d’aquest t´ıtol es fa ´us del dispositiu de moltes maneres diferents, s’analitzaran algunes d’elles [56]:

• Hula Hoop (Figura 2.20a): En aquesta activitat, l’usuari ha de fer moviments equivalents als que faria per utilitzar un hula hoop, pujat a sobre del dispositiu, el qual identifica els moviments a partir de la

variaci´ode la distribuci´odel pes en les diferents parts de la taula.

• Ski Slalom (Figura 2.20b): En aquest cas, l’usuari porta el control d’un

esquiador d’esl`alom, i ha de guiar-lo pels llocs adients. Pujat a dalt de la taula, ha de distribuir el seu pes per a girar cap el costat on m´es pes hi hagi, posar m´es pes a la part davantera per accelerar l’esquiador i

m´es pes a la posterior per a frenar-lo.

• Tightrope Walk: Aqu´ıel personatge ha de travessar una corda fluixa,

i per a fer-ho ha d’anar canviant r`apidament el seu pes de costat per`o d’una manera suau per avan¸car i evitar que el personatge caigui. En

ocasions el personatge ha de saltar i per a aconseguir-ho cal que l’usuari redueixi la pressi´oque realitza sobre la taula, per`osense arribar a saltar.

47 (a) (b)

Figura 2.20: Us´ de la balance board. a) Captura de pantalla del minijoc Hula Hoop b) Captura de pantalla del minijoc Ski Slalom.

2.3.9 Dance pad

Tamb´econegut com plataforma de ball, es tracta d’un dispositiu d’entrada per a videojocs de ball. T´eforma de superf´ıcie plana que s’estira al terra, com una catifa, habitualment quadrada i d’un metre de costat aproximadament.

La seva disposici´o´es, de forma habitual, en una matriu de 3x3 [57]. Els punts de la matriu disposen de sensors que detecten quan estan sent trepitjats, i d’aquesta manera es pot utilitzar per detectar els moviments de les cames de l’usuari.

El primer dance pad va ser introdu¨ıt al mercat l’any 1987, i es tracta del de Bandai (Figura 2.21a), dissenyat per a la videoconsola Nintendo Entertainment System. Aquest disposava de dues cares, amb 8 botons per una banda i 12, en matriu de 3x4, per l’altra [58]. L’´us d’aquest tipus de dispositiu, per`o, va ser molt baix fins a l’explosi´o dels jocs de ball a finals de la d`ecada dels 90, on la popularitat es va disparar

48 (a) (b) (c)

Figura 2.21: Diversos dance pads. a) Power Pad de Bandai. b) Dance Pad de la versi´ode DDR per a la PlayStation de Sony. c) Dance pad dura d’una m`aquina recreativa. amb jocs com els de les s`eries de Dance Dance Revolution (Figura 2.21b) o In the Groove. Una part molt important del seu ´us es troba, tamb´e, en el sector recreatiu, en aquest cas amb plataformes fixes i dures, en comptes de les catifes toves que la majoria d’usuaris particulars fa servir [57]. Podem veure una m`aquina recreativa amb una plataforma de ball a la Figura 2.21c.

Us´ del dance pad

El dance pad ´es un altre dels dispositius altament especialitzats, limitant- se el seu ´us per a simuladors de ball, encara que alguns d’ells diposen de la majoria de les funcions d’un dispositiu m´es gen`eric com un gamepad i podrien arribar a substituir-lo en bona part dels seus usos.

L’an`alisi ´es de la s`erie de videojocs Dance Dance Revolution (DDR), que ´es una de les m´es conegudes del g`enere de simuladors de ball, encara que la similitud amb els altres videojocs del g`enere ´es molt alta.

49 (a) (b)

Figura 2.22: Us´ del dance pad. a) Usuaris del dance pad b) Captura de pantalla del joc DDR

La din`amica del joc ´es senzilla, aix´ıcom tamb´eho ´es l’´us del dispositiu.

L’usuari tria una can¸c´oi el videojoc indica per la pantalla la posici´oon correspon posar els peus segons el ball associat a la can¸c´otriada. L’objectiu de l’usuari ´es reproduir aquest ball colpejant, amb la planta dels peus, la zona indicada pel videojoc en el moment indicat. De tant en tant hi ha variacions, que fan a l’usuari mantenir pr`emer un bot´o, o pr`emer una combinaci´ode botons en comptes d’un de sol. A la Figura 2.22a podem veure uns usuaris d’aquest joc, i a la Figura 2.22b una captura de pantalla.

2.3.10 Dispositius musicals

Amb l’aparici´ode videojocs de tem`atica musical tamb´ehan aparegut diversos perif`erics que imiten en menor o major grau els instruments que es fan servir origin`ariament per produir m´usica, per tal de proporcionar a l’usuari un

50 (a) (b)

(c) (d)

Figura 2.23: Diversos tipus de dispositius musicals. a) Dispositiu de DJ Hero. b) Samba de Amigo. c) Guitar Hero. d) Guitarra i bateria de Rock Band. major realisme durant la seva utilitzaci´o.

Entre ells podem trobar la guitarra, a s`eries com Guitar Hero [59] (Fi- gura 2.23c), bateries a jocs com DrumMania [60], o fins i tot maraques amb

Samba de Amigo de la Dreamcast [61] (Figura 2.23b), o un simulador de punxadiscos, amb DJ Hero [62] (Figura 2.23a). D’altres, com Rock Band (Figura 2.23d), van m´es enll`ai permeten interaccionar a diferents jugadors fent servir diversos instruments a la vegada [63].

51 Us´ dels dispositius musicals

Els dispositius musicals no s´on uniformes, n’hi ha que simulen diversos ins- truments, per`odins de cada instrument el seu ´us ´es molt espec´ıfic. Entre ells, es poden trobar els seg¨uents:

• Guitar Hero (Figures 2.24 a i 2.24b): Aquesta s`erie, iniciada l’any 2005, es caracteritza per utilitzar com a dispositiu d’entrada un controlador

que simula una guitarra. El jugador, simulant l’´us de diversos tipus de guitarra i baix, ha de fer les combinacions apropiades per marcar les

notes que, seguint una determinada can¸c´o, se li indiquen per la pantalla [64].

• Rock band (Figura 2.24c): Intentant crear una experi`encia diferent, la

s`erie Rock Band, publicada a partir de l’any 2007, pret´en simular un grup musical en compte d’un sol instrument. D’aquesta manera, es pot

utilitzar simult`aniament i de forma cooperativa entre diversos jugadors, perif`erics que simulen la guitarra i la bateria, aix´ıcom un micr`ofon que

s’utilitza de manera similar a la s`erie de videojocs Sing Star [65].

2.4 El futur

Els dispositius analitzats en aquesta secci´oes troben principalment en fase de desenvolupament i experimentaci´o, tot i que en algun cas poden disposar de primeres versions ja comercialitzades.

52 (a) (b)

(c)

Figura 2.24: Us´ de dispositius musicals. a) Usuaris de Guitar Hero b) Cap- tura de pantalla de Guitar Hero c) Captura de pantalla de Rock Band

53 2.4.1 C`ameres

La idea d’utilitzar c`ameres com a dispositius d’entrada per als videojocs existeix des de fa uns anys, com per exemple amb la c`amera de la (Figura 2.25a), introdu¨ıda l’any 1998 [66], per`oencara no ha assolit massa pes al mercat i es troba en fase de creixement. L’estrat`egia per tal d’aprofitar les c`ameres, per`o, varia molt segons el projecte, aix´ıcom tamb´evaria el tipus de c`ameres a utilitzar.

Les principals variants en l’objectiu de les c`ameres s´on el motion tracking `optic, per detectar la posici´oi moviment de l’usuari, i la realitat augmentada o mixta, en la que s’utilitzen les imatges d’entrada per tal de confeccionar les imatges de sortida. En aquesta secci´oes tractar`ael motion tracking `optic i tamb´ealguns dispositius que presentin difer`encies remarcables respecte a la resta de m`etodes d’utilitzaci´o. La realitat augmentada ser`atractada poste- riorment.

Motion tracking `optic

En el cas del motion tracking `optic es fa servir una c`amera per a detectar la posici´oi el moviment de l’usuari. El primer ´us d’aquest m`etode va ser a la plataforma PC amb dispositius com el TrackIR (Figura 2.25b), disponible des de l’any 2001, que utilitza una c`amera situada amb detectors d’infrarrojos situada a sobre de la pantalla. Aquest dispositiu disposa d’un sensor mono- crom que, quan l’usuari duu els indicadors adequats, i ajudat per m`etodes de tractament d’imatges, pot determinar la posici´oo el moviment de l’usuari,

54 amb diferents graus de llibertat depenent dels indicadors usats [67] [68]. Per a la plataforma PC, tamb´eexisteix la opci´od’utilitzar c`ameres est`andar, i per tant, en color, per a analitzar els moviments i la posici´o de l’usuari, com ´es el cas de l’aplicaci´ode software lliure FreeTrack. Aquesta aplicaci´o, tamb´e amb l’ajuda de models d’indicadors per part de l’usuari, permet la detecci´o de fins a 6 graus de llibertat [69].

EyeToy

Un dels dispositius que m´es visibilitat ha donat a l’entrada per mitj`ade c`ameres ha estat l’EyeToy de Sony (Figura 2.25c), que s’utilitza amb la PlayStation 2 de la mateixa companyia. Es´ similar a una c`amera web per a

PC, i s’utilitza per a diverses finalitats [70]. En alguns casos s’utilitza per a motion tracking `optic, detectant els movi- ments que fa l’usuari. En d’altres casos, per a realitat augmentada, obtenint imatges que es mostren en temps real per la pantalla, i, en d’altres, per virtu- alitat augmentada, utilitzant, per exemple, un sistema anomenat Cameo que permet, a partir de les imatges de la c`amera, generar un model 3D del cap de l’usuari, i utilitzar posteriorment aquest model en els entorns tridimensionals del joc [71] [72]. Tamb´edisposa d’un micr`ofon, pel que ´es possible acceptar ordres de veu o algun altre tipus d’ordres sonores [71].

55 PlayStation Motion Controller

El PlayStation Motion Contoller (Figura 2.25d) ´es un dispositiu en desenvo- lupament de Sony, que cont´euna llum de color variable en un extrem i que est`apensada per proporcionar la capacitat de realitzar motion tracking `optic a la PlayStation 3 de Sony a trav´es dela c`amera PlayStation Eye, successora de l’EyeToy, i amb la que mant´ela majoria de caracter´ıstiques funcionals, tot i millorar-la en diversos aspectes t`ecnics [73].

Degut a la capacitat de canviar de color, es pot adaptar al fons per obtin- dre millors resultats, i permet tamb´eutilitzar-ne diversos simult`aniament. Al ser de forma esf`erica, els c`alculs per a determinar la seva posici´oi dist`ancia s´on senzills i es poden fer d’una manera r`apida, evitant retrasos en la flu¨ıdesa de joc [74]. El dispositiu tamb´edisposa d’altres m`etodes per a obtindre dades d’en- trada, i per a transmetre sortida a l’usuari. L’entrada es realitza, per una banda, per mitj`ade botons, i per l’altra, per acceler`ometres i sensors d’an- gle, que permeten determinar l’acceleraci´oi la rotaci´ode l’usuari, aix´ıcom la posici´od’aquest en casos en que no es pugui determinar directament per la c`amera, com quan l’usuari s’interposa entre el dispositiu i la c`amera. La sortida, a banda del color del dispositiu que tamb´epot ser utilitzat pels jocs, es tracta de tecnologia h`aptica basada en force feedback. Tota la transmissi´o de dades, en els dos sentits, es realitza a trav´es de tecnologia Bluetooth [74].

56 Project Natal

El Project Natal (Figura 2.25e) ´es un ambici´os projecte de Microsoft, anun- ciat durant l’any 2009 i encara en desenvolupament1, que pret´en portar la interacci´osense utilitzaci´ode dispositius per part de l’usuari en general i el motion tracking `optic en particular un pas m´es enll`adel que ´es actualment possible, buscant millorar i simplificar l’experi`encia de joc [75]. Tot el necessari per a utilitzar aquesta tecnologia es troba en un sensor de 23 cent´ımetres de llargada que es coloca a la part superior o inferior de la pantalla [76]. Aquest sensor disposa dels seg¨uents elements:

• Una c`amera en color convencional, similar a d’altres per a consola com l’EyeToy o a una c`amera web de PC. Aquesta s’utilitza per a reconei-

xement facial, que permet mostrar imatges del jugador dins del joc, i per a captura i reconeixement de moviments i gestos, juntament amb el sensor de profunditat [77].

• Un sensor de profunditat, consistent en un projector d’infrarrojos i un sensor d’imatges CMOS. Aix`opermet, juntament amb la c`amera en

color, realitzar la captura de moviment sense veure’s afectat per condi- cions lum´ıniques poc favorables, eliminant un dels principals problemes dels que pateix el m`etode que tan sols utilitza c`ameres en color. El sen-

sor ´es ajustable,el que permet adaptar-lo a diferents necessitats degudes a factors com el tipus de joc o la distribuci´odel mobiliari a la sala [78].

1Aquest dispositiu sortir`aa la venda al novembre del 2010 amb el nom de

57 • Un conjunt de micr`ofons per tal de permetre t`ecniques de reconeixe- ment de veu i ordres de veu. Disposa de la capacitat de suprimir el

soroll ambient, i gr`acies a que no es tracta d’un sol micr`ofon si no de diversos, permet localitzar els sons que rep, amb la possibilitat, per

tant, de saber quin usuari ha fet cada ordre de veu que rep [77].

• Un processador sobre el que s’executar`ael software que proporcionar`a la capa de m´es baix nivell per analitzar les dades obtingudes de la c`amera, el sensor de profunditat i els micr`ofons, rebaixant la comple-

xitat del software que els desenvolupadors per a aquesta plataforma hauran d’afrontar i tot aix`osense suposar m´es c`arrega per al processa-

dor principal de la videoconsola [77].

Us´ de les c`ameres RGB

Tot i que hi ha diferents c`ameres RGB que actuen com a dispositiu d’entrada de dades per a videojocs, s’analitzar`al’EyeToy, que ´es un dels que m´es `exit i popularitat ha assolit.

Gran part dels videojocs que fan ´us d’aquest dispositiu de la videoconsola PlayStation 2 consten de minijocs, pel que l’´us que se’n fa pot variar dins d’un mateix t´ıtol. Alguns exemples d’´us s´on:

• EyeToy Play (Figura 2.26a): Aquest t´ıtol, publicat l’any 2003, va ser el

primer en fer ´us del perif`eric EyeToy. Es tracta d’un t´ıtol integrat per minijocs dissenyats per a ser jugats especialment en grup i per a que en

58 (a) (b)

(c) (d)

(e)

Figura 2.25: C`ameres i dispositius auxiliars. a) C`amera de la Game Boy. b) Dispositiu de TrackIR c) C`amera EyeToy de la PlayStation 2 de Sony. d) PlayStation Motion Controller. e) Dispositiu del Project Natal.

59 puguin gaudir usuaris no habituals de videojocs. Entre les accions que ha de realitzar l’usuari hi ha colpejar diversos elements que apareixen

a la pantalla o moure les mans simulants que s’est`anetejant la pantalla [79].

• EyeToy Kinetic (Figura 2.26b): Aquest ´es un joc dissenyat per a re- alitzar exercici i millorar la forma f´ısica. Per a aix`o, inclou diversos

minijocs que varien lleugerament entre ells per`oon el seu factor com´u ´es que l’usuari veu a la pantalla la seva imatge captada per la c`amera. A sobre d’aquesta imatge hi ha superposats diversos elements. L’usuari

ha o b´ed’esquivar, o b´ede copejar ja sigui amb els bra¸cos o les cames la posici´ode l’espai on equivaldria que f´ossin aquests elements [80].

• Tony Hawk’s American Wasteland: En aquest joc la c`amera EyeToy no ´es un dispositiu principal sino que ´es auxiliar i prescindible, per`o

l’aprofita en el cas de que el jugador disposi d’ella. La utilitat que se li d´ona ´es per a enregistrar una imatge de la cara del jugador, i

posteriorment utilitzar-la com a textura sobre la cara del personatge que el jugador controla [81].

Us´ de les c`ameres d’infrarrojos

A banda de l’´us de c`ameres RGB tamb´es’ha fet ´us de c`ameres detectores d’infrarrojos, alguns exemples dels quals es presenten a continuaci´oencara que la tem`atica no sigui estrictament de l’`ambit dels videojocs.

60 (a) (b)

Figura 2.26: Us´ de c`ameres. a) Screenshot de l’EyeToy Play. b) Screenshot de l’EyeToy Kinetic.

• Tracking dels dits: Utilitzant una c`amera d’IR, com la que incorpora

el dispositiu Wii Remote, es fa el seguiment dels dits de l’usuari per tal de poder utilitzar-los per a donar ordres al software. Donat que la

quantitat d’infrarrojos que emeten els dits ´es baixa, s’utilitza un focus d’infrarrojos que es col·loca en la posici´ode la c`amera i apuntant cap

a l’usuari. Degut a que el seguiment d’aquesta manera ´es complicat, ja que tota la m`areflexa els rajos infrarrojos i ´es dif´ıcil diferenciar els dits de la resta de la m`a, per a reduir el soroll s’incorporen uns

reflectors d’infrarrojos als extrems dels dits, obtenint d’aquesta manera una senyal molt m´es neta i f`acilment diferenciable [82].

• Pissarra interactiva multipunt: En aquest cas s’utilitza la c`amera IR en conjunt amb llapisos amb un LED infrarroig en el seu extrem, de

manera que la c`amera en pot fer el seguiment. Despr´es d’un proc´es de calibratge, la c`amera pot saber, en detectar una punt actiu, en quin

61 punt de la pantalla correspont el llum, ja sigui aquest sobre un projector o sobre una pantalla [82].

2.4.2 Realitat Augmentada

La realitat augmentada, a difer`encia de la majoria de seccions comentades, no ´es un dispositiu en s´ımateix si no que es tracta d’una t`ecnica, tot i que necessita de dispositius per a ser aplicada. La t`ecnica es defineix per reduir la dist`ancia de les percepcions entre all`ovirtual i all`oreal, i fer-ho en temps real [83]. Tot i que en principi ´es aplicable a diversos camps, com l’`audio, el v´ıdeo, respostes h`aptiques o olors, entre d’altres, els dos camps m´es avan¸cats s´on l’`audio i el v´ıdeo, i aqu´ıens centrarem ´unicament en aquest ´ultim. En el camp del v´ıdeo, doncs, la t`ecnica de realitat augmentada es realitza barrejant objectes reals amb d’altres de virtuals, superposats adequadament despr´es d’haver analitzat la posici´oi les imatges reals captades, i fer aix`oen temps real i en 3 dimensions.

Tot i que aquesta t`ecnica ´es interessant per al camp dels videojocs, i de ben segur que en marcar`ael futur, convertint-los en una activitat m´es din`amica i no nom´es d’interior si no que tamb´epracticable en entorns oberts, el seu potencial d’aplicaci´ova molt m´es enll`a, entrant a multitud de camps tan diferents com poden ser retransmissions esportives, exercicis militars, turisme o enginyeria. En general, per a poder aplicar la t`ecnica, hi ha dos requisits: Per una banda, que hi hagi un software amb l’entrada necess`aria per poder saber on

62 ´es i el que est`aveient l’usuari, ja sigui an`alisi de l’entrada d’una c`amera o per l’´us de dispositius que indiquen la posici´od’un usuari. Per l’altra banda, cal que aquest software tingui la capacitat d’alterar la imatge que percep l’usuari, per tal de poder modificar l’entrada original en el que consideri necessari.

Entre els difer`ents m`etodes d’aplicaci´orellevants en l’`ambit dels videojocs, podem trobar els seg¨uents:

• Dispositius m`obils amb c`amera integrada i capacitat de c`alcul suficient per tal de processar els algorismes necessaris. Els avantatges d’aquests dispositius s´on el seu relatiu baix cost i el fet de que ja estiguin intro-

du¨ıts al mercat, no requerint per tant, per molts usuaris, cap inversi´o en hardware. Com a punts negatius tenen la manca d’immersi´ode

l’usuari dins de l’experi`encia, la incomoditat que pot representar un ´us conscient i actiu del dispositiu en comptes d’un de m´es passiu o el

retard de la imatge de la pantalla respecte del que hauria de sortir-hi degut al temps de c`alcul necessari. Podem veure’n un exemple a la Figura 2.27a.

• Head-mounted displays (HMD) (Figura 2.27b) amb visors de v´ıdeo, ´es a dir, opacs i en els que les imatges que l’usuari veu han estat enviades

en la seva totalitat pel software corresponent, encara que una part important d’aquestes provingui d’una c`amera d’entrada. Degut a la curta dist`ancia respecte dels ulls, l’ull es fatiga en un espai de temps

relativament curt. Degut a que la totalitat de la imatge ha de passar

63 pel sistema abans de ser mostrada, aquest sistema tamb´epateix d’un retard que pot afectar negativament l’experi`encia d’´us, especialment en

casos on l’usuari realitzi moviments r`apids [84].

• HMD amb visors `optics, ´es a dir, que per defecte s´on transparents i

on el software pot decidir tornar opacs els p´ıxels que cregui necessari. D’aquesta manera, per una banda es disminueix la fatiga visual al ser gran part de la visi´ode l’usuari objectes reals, i no dibuixats a una

curta dist`ancia dels seus ulls, i per altra banda s’elimina el retard en la major part del que veu l’usuari. Com a punts negatius, trobem

que al tenir les parts reals i les virtuals diferents nivells de retard, es pot crear una sensaci´od’inconsist`encia, encara que aix`opot ser poc

important depenent de l’aplicaci´o. Tamb´ecal tenir en compte que aquests dispositius tenen un preu m´es elevat que els HMD amb visors de v´ıdeo, i aix`opot representar un problema depenent de la utilitat

que se li vulgui donar [84].

• De forma encara molt experimental, s’est`ainvestigant, per part de la

University of Washington, el camp produir imatges en lents de contacte (Figura 2.27c). La idea ´es generar imatges en les lents a partir de dades

rebudes per comunicaci´oper radiofreq¨u`encia, aconseguint un entorn a la vegada c`omode i amb una immersi´ototal per a l’usuari. Es tenen en consideraci´o, en aquests moments, dos tipus de tecnologia per a mostrar

les imatges. La primera ´es amb LEDs que generin llum i aquesta sigui

64 captada per l’usuari, sent aquest el m´etode m´es avan¸cat ara mateix. L’alternativa ´es fer servir uns components que alterin la llum que arriba a la lent i la transformin en la llum desitjada. El major avantatge d’aquesta alternativa ´es que necessitaria molta menys energia, i els principals inconvenients s´on que, per una banda, que es tracta d’una tecnologia m´es complexa, i per l’altra, que no s’aconseguiria una imatge de tanta qualitat.

L’apartat energ`etic ´es una q¨uesti´oa tenir en compte en aquests disposi- tius. Tot i ser els seus requeriments baixos, ja que tots els fotons emesos per la lent s´on captats per l’usuari, cal fer-hi arribar energia. S’han va- lorat dues alternatives, sent la primera instal·lar una mena de plaques solars min´uscules a la lent, per`os’ha trobat que el nivell d’energia que es proporciona ´es massa baix amb les efici`encies que s’aconsegueixen avui en dia. Per tant, ara mateix s’investiga m´es en l’altra branca, que ´es la de fer arribar energia per radiofreq¨u`encia i captar-la amb una mena d’antenes situades a la part de la lent que no veu l’usuari.

Un altre assumpte a solucionar per a poder utilitzar aquest tipus de dispositiu ´es l’enfocament, ja que l’ull hum`ano est`apreparat per enfo- car una imatge a tan poca dist`ancia seva. Per arreglar aix`otamb´ehi ha dues alternatives: utilitzar microlents davant de cada pixel que simulin que la imatge es troba a una dist`ancia de mig metre aproximadament, o aplicar l`asers directament, que no patirien d’aquest problema [85].

65 (a) (b) (c)

Figura 2.27: Dispositius utilitzats per realitat augmentada. a) Realitat aug- mentada en un dispositiu m`obil. b) Head-mounted display. c) Prototip de lent de contacte.

Per a poder fer servir la t`ecnica de realitat augmentada, tamb´ees fa necessari l’´us d’alg´un m`etode que permeti con`eixer la localitzaci´odel dis- positiu. Per als entorns exteriors s’acostuma a utilitzar la tecnologia GPS, la precissi´ode la qual no ´es tan bona com seria dessitjable encara que ha millorat for¸ca en els ´ultims anys. Actualment la millor precissi´oque poden obtenir els receptors GPS es situa sobre els 4 metres, i per a un ´us satisfac- tori, per a molts casos seria desitjable una precissi´ode pocs cent´ımetres. Per als casos on ´es imprescindible una millor precissi´oexisteixen t`ecniques com el GPS diferencial que permeten augmentar-ne la precissi´o. Tamb´e cal tenir en compte que la tecnologia GPS ofereix una freq¨u`encia d’actualitzaci´ode les dades d’aproximadament 1 hertz, xifra clarament insuficient per a obtenir una bona experi`encia d’us en depenent quines aplicacions. En els usos d’interior no ´es possible utilitzar la tecnologia GPS, aix´ıque si es desitja utilitzar posicionament m´es enll`adel que es pot inferir per les

66 imatges captades per la c`amera, ´es necessari instal·lar en el local algun tipus de sistema que permeti la localitzaci´odels usuaris dins de l’espai i transmetre aquesta informaci´oals dispositius que s’encarreguen de mostrar les imatges als usuaris [86] [87].

Us´ de la realitat augmentada

El primer prototip de videojoc pensat per a l’exterior utilitzant realitat aug- mentada ´es l’ARQuake, que es va comen¸car a desenvolupar l’any 2000 per part de l’University of South Australia i ha anat millorant des d’aleshores. Aquest sistema permet als usuaris jugar a una versi´omodificada del videojoc Quake, utilitzant un Head-mounted Display connectat a un port`atil transpor- tat dins d’una motxilla que transporta l’usuari, un dispositiu amb la funci´o de pistola creat espec´ıficament per aquest projecte, i, per a la orientaci´o, una combinaci´ode GPS i un sensor d’orientaci´oinercia [88]. Degut a les caracter´ıstiques del joc, la interacci´odel jugador amb el vi- deojoc ´es molt natural. Per a despla¸car-se pel mapa, el jugador es mou f´ısicament per l’entorn. Per a canviar l’angle de visi´o, ha de moure el cap, enfocant-lo cap a on vulgui mirar. Per a apuntar i disparar als enemics, uti- litza el dispositiu especial que fa la funci´ode pistola. La combinaci´ode tot aix`opermet a l’usuari una interacci´oamb el software molt real, en la que si tots els elements funcion´essin a un cert nivell, podria arribar a oblidar-se de que el que observa i viu no ´es la realitat si no un videojoc.

Podem veure un usuari i les imatges que percep dins de l’ARQuake a les

67 (a) (b)

(c)

Figura 2.28: Usuari d’ARQuake i les imatges que percep. a) Usuari d’ARQuake. b) Exemple d’imatge d’ARQuake percebuda per l’usuari. c) Un altre exemple d’imatge percebuda per l’usuari.

Figures 2.28a, 2.28b i 2.28c.

2.4.3 Micr`ofon

Es tracta d’un m`etode d’entrada poc explotat, amb l’excepci´odel subg`enere dels jocs de cantar, pels quals ´es un element imprescindible. Entre les seves virtuts hi ha que ´es un dispositiu amb un preu redu¨ıt i amb unaamplia ` distribuci´o, evitant en gran part el problema d’implantaci´odel dispositiu per

68 part d’aquells que vulguin utilitzar-lo. Tamb´ejuga a favor seu que la seva utilitzaci´opot ser un m`etode molt natural d’enviar informaci´oal videojoc per gran part d’usuaris, molts d’ells no acostumats a d’altres m`etodes d’entrada, m´es complexos.

L’´us del micr`ofon, si b´eno ´es massa ampli, s´ıque es troba molt repartit entre plataformes, entrant tant dins de la plataforma PC com en diferents videoconsoles. A la majoria d’elles es tracta d’un element opcional, per`oen alguna com la videoconsola portable Nintendo DS, el micr`ofon ve incorporat de s`erie [49], de manera que es potencia l’´us d’aquest dispositiu perqu`eels desenvolupadors per a la plataforma poden donar per descomptat que hi ser`a. Altres videoconsoles utilitzen un micr`ofon en s´ımateix, especialment per als videojocs musicals, i en d’altres casos es tracta d’un complement a un dispositiu m´es complicat, com el micr`ofon que incorpora l’EyeToy [71], el PlayStation Eye de Sony o el conjunt de micr`ofons que incorpora el dispositiu del Project Natal de Microsoft [78].

Us´ del micr`ofon

En el camp dels videojocs, podem trobar-hi els seg¨uents usos segons la fun- cionalitat desitjada:

• El ja mencionat ´us d’utilitzar el micr`ofon per a jocs en els quals es valora l’habilitat a l’hora de cantar una can¸c´oproposada pel progra-

ma. En aquest cas el micr`ofon ´es el principal dispositiu d’adquisici´o d’informaci´oal videojoc.

69 • Utilitzar-ho com a m`etode de comunicaci´oentre els diferents jugadors d’una mateixa partida online, que d’aquesta manera es poden comuni-

car f`acilment, de manera flu¨ıda i a la vegada que segueixen jugant. En aquest cas es tracta d’un m`etode d’entrada secundari i prescindible.

• Utilitzar-ho com m`etode per donar ordres al videojoc per mitj`ade

reconeixement de veu. Aquesta funcionalitat t´euna complexitat con- siderablement superior a les dues anteriors, encara que aix`oes veu recompensat per tornar l’experi`encia d’´us molt m´es natural de cara a

l’usuari. Fins ara, per`o, els casos en que s’ha utilitzat aquesta funcio- nalitat s´on escasos [89].

A continuaci´oanalitzem dos casos d’´us espec´ıfics:

• Sing Star: En aquesta s`erie de videojocs, publicada a partir de l’any

2004, el micr`ofon ´es el principal dispositiu, imprescindible per a jugar- hi, i l’´unic que s’utilitza a excepci´ode la navegaci´opels men´us. Tot i que hi ha petites variacions en la din`amica del joc segons diferents modes,

el funcionament b`asic ´es el seg¨uent: el jugador ha d’interpretar una can¸c´oo part d’ella, i per a qu`eho faci se li mostra la lletra i l’altura

de la m´usica. Aleshores el jugador canta utilitzant el micr`ofon, i el software analitza que l’altura o pitch que ha cantat l’usuari s’adequ¨ıa la de la melodia original, i el puntua en base a la similitud [90]. Podem

veure uns usuaris a la Figura 2.29a i una captura de pantalla a la Figura 2.29b.

70 (a) (b)

Figura 2.29: Us´ del micr`ofon. a) Usuaris de SingStar b) Captura de pantalla de SingStar

• SOCOM: U.S. Navy Seals: Aquest joc publicat l’any 2002 per a la vi-

deoconsola PlayStation 2 de Sony ofereix la possibilitat al seus jugador d’utilitzar un xat de veu entre els membres del mateix equip durant el

desenvolupament d’una partida multijugador en xarxa, facilitant aix´ı la seva cooperaci´oi creant una millor i m´es realista experi`encia de joc

[91].

2.4.4 Dispositius ment-computador

El camp dels dispositius que pretenen que l’usuari sigui capa¸cde donar or- dres als videojocs sense interactuar activament amb cap dispositiu ´es encara molt minoritari per`oen creixement, i degut al gran benefici pel que fa a l’ex- peri`encia d’´us que representaria que hi hagu´es aven¸cos en aquest camp ´es de preveure que el creixement ser`asostingut i el camp cada cop m´es important. En l’actualitat podem trobar un petit nombre d’aquest tipus de dispo-

71 sitius, sent el m´es avan¸cat el model EPOC de la companyia Emotiv (Figu- ra 2.30c), comercialitzat a partir del 2009 [92].

El dispositiu consta de 14 electrodes per a efectuar un an`alisi de l’activitat bioel`ectrica cerebral, i el seu funcionament es basa en diversos apartats [93]:

• L’an`alisi dels pensaments conscients. Els usuaris poden, despr´es d’una necess`aria fase d’entrenament del sistema per a que aquest conegui l’ac-

tivitat bioel`ectrica de l’usuari per a cada tipus de pensament conscient, donar ordres al videojoc amb l’´unic esfor¸cde pensar en un moviment

o acci´o. Degut a l’alt cost d’execuci´odels algorismes per a detectar aquestes ordres mentals, aquestes es reconeixen amb un cert retard, aix´ıque fins que no avanci el suficient la pot`encia de c`alcul, aquest sis-

tema nom´es ser`av`alid per a situacions on els reflexos d’acci´ono siguin imprescindibles.

• La detecci´ode diverses emocions pre-establertes, com poden ser l’emo-

ci´o, la frustraci´oo l’aborriment.

• La detecci´ode diversos moviments i expressions facials, gr`acies a la de- tecci´ode les senyals que s’envien als m´usculs. La detecci´oi an`alisi d’a-

questes senyals ´es molt m´es r`apida que la dels pensaments conscients, aix´ıque pot ser utilitzat en circumst`ancies que requereixin rapidesa en

la interacci´o.

• L’an`alisi de la rotaci´odel cap, amb dos graus de llibertat, gr`acies a la inclussi´od’elements que detecten canvis en la velocitat angular.

72 (a) (b) (c)

Figura 2.30: Diversos dispositius d’interf´ıcie amb la ment. a) NeuroSky. b) Neural Impulse Actuator. c) Dispositiu Emotiv EPOC.

L’Enobio[94] ´es un altre dispositiu d’interacci´oment-computador. Dis- posa de tan sols 4 electrodes, un nombre menor al d’altres dispositius com l’Emotiv EPOC. Es comunica a trav´es de senyal sense fils WiFi, la qual cosa permet m´es llibertat de moviments als seus usuaris. Aquest dispositiu est`am´es enfocat a aplicacions m`ediques o de recerca que a interacci´oen entorns virtuals, encara que tamb´e´es possible utilitzar-lo amb aquesta finalitat. El seu preu, 3750 €, impostos no inclosos, ´es molt superior al dels altres dispositius, i en dificulta l’adopci´oper part de la comunitat.

Us´ dels dispositius ment-computador

Aquest ´es un camp l’explotaci´ocomercial del qual ha estat encara molt baixa, i per tant els videojocs que en fan ´us s´on pocs, per`oles mateixes cases que produeixen els dispositius han desenvolupat aplicacions d’exemple, i aquestes seran les que es veuran.

73 El dispositiu d’aquesta categoria m´es avan¸cat en aquests moments ´es l’Emotiv Epoc, i alguns de les interaccions possibles en les demostracions que han mostrat s´on les seg¨uents:

• En una aplicaci´ode mostra, l’usuari pot aixecar objectes aixecant la

m`aconscientment.

• En un altre context de l’aplicaci´o, l’usuari pot espantar uns petits sers posant cara d’espantar-los.

• Hi ha una aplicaci´oon una versi´osimplificada d’un cap reprodueix tant els moviments del cap de l’usuari, com el seu somriure i quan parpelleja.

• F´ora del m´on dels videojocs i les aplicacions inform`atiques tradicionals, tamb´es’ha utilitzat aquest dispositiu per a control·lar una cadira de

rodes el`ectrica, utilitzant el somriure per avan¸car i clicant un ull per a girar cap aquell costat.

Podem veure imatges d’usuaris d’aquest dispositiu a les Figures 2.31a i

2.31b.

74 (a) (b)

Figura 2.31: Us´ d’interf´ıcies ment-computador. a) Usu`aria de l’Emotiv EPOC b) Usuari de l’Emotiv EPOC.

75 76 Cap´ıtol 3

Tecnologia

La realitzaci´od’aquest projecte s’ha basat `ampliament en dues tecnologies concretes: el dispositiu Emotiv EPOC i l’est`andar OpenGL. A continuaci´o les analitzem.

3.1 Dispositiu Emotiv EPOC

El dispositiu Emotiv EPOC permet l’interacci´oment-computador, i ´es el principal objecte d’an`alisi d’aquest projecte.

3.1.1 El dispositiu

El dispositiu Emotiv EPOC est`aformat pels seg¨uents elements:

• El principal element del dispositiu ´es un casc flexible de forma semi- esf`erica que s’adapta al cap per la part posterior. De cada un dels seus

77 extrems en surten 8 potes que acaben en un sensor que es col·loca sobre el cap per tal de rebre la informaci´onecess`aria. A la part posterior del

dispositiu hi ha un bot´oque l’engega i l’apaga, un llum que indica si est`aengegat i un receptor USB per tal de carregar la bateria de la que

disposa, que t´euna autonomia d’unes 12 hores. Tamb´eincorpora un giroscopi amb el que pot medir el moviment del cap per part de l’usuari. Per no haver de tenir cap cable des del dispositiu fins al computador, i

poder donar una major llibertat de moviments a l’usuari, disposa d’un emisor sense fils que transmet les dades necess`aries.

• Receptor del senyal sense fils: Com que el casc no disposa de cap fil, per`oincorpora un emisor de senyal sense fils, hi ha d’haver un receptor

que rebi aquestes dades i les transmeti al computador. Aix`oes realitza amb un petit dispositiu que es connecta a un port USB.

• Un cable USB que es connecta a la part posterior del casc amb l’objectiu

de carregar la seva bateria.

• Un joc de 16 sensors de tipus humit, que es poden cargolar al casc,

necessaris per tal de rebre senyal.

• Una petita ampolla de soluci´osalina per tal d’humitejar els sensors per incrementar la seva conductivitat.

• Diversos programes i drivers per tal de poder utiltizar correctament el dispositiu.

78 3.1.2 Us´ del dispositiu

El procediment necessari per a utilitzar el dispositiu Emotiv EPOC ´es el seg¨uent:

• Obrir la caixa dels sensors i humitejar les esponges amb la soluci´osalina, abans de desenroscar els sensors, fins que es vegi que aquests estan humits.

• Desenroscar cada un dels 16 sensors de la caixa i enroscar-los al casc, de forma que quedin ben subjectes.

• Col·locar el casc al cap, de forma que els 16 sensors tinguin bon con- tacte.

• Amb el programa Control Panel, comprovar que els 16 reben bon senyal,

´es a dir, que estiguin marcats en color verd. Si alg´un d’ells no rep bon senyal, ajustar-lo i tornar a humitejar-lo si ´es necessari fins que el senyal

sigui bo.

• En el moment en que es deixa d’utilitzar el casc, cal descargolar els 16

sensors del casc i guardar-los a la caixa.

3.1.3 Programes inclosos

S’incorporen diversos programes juntament amb el dispositiu. A continuaci´o s’explica la seva funci´o.

79 Control Panel

El programa Control Panel ´es una de les aplicacions que incorpora el dispo- sitiu Emotiv EPOC. Les seves funcions comprenen analitzar i comprovar el correcte funcionament del dispositiu, veure els senyals que s’estan rebent i configurar els diferents aspectes que donen aquesta possibilitat. El programa incorpora quatre pestanyes, amb les seg¨uents funcions:

• Headset Setup (Figura 3.1a): Permet veure la qualitat del senyal que

s’est`arebent en cada un dels sensors del dispositiu, amb l’objectiu de diagnosticar mals funcionaments i ajustar els sensors que no rebin un

bon senyal per tal de rebre’l.

• Expressiv Suite (Figura 3.1b): Mostra una cara que reflecteix les ex-

pressions que l’usuari fa en temps real, aix´ıcom una l´ınia temporal amb els valors que s’han rebut en els ´ultims segons dels 11 esdeveniments que aquesta suite detecta. Permet ajustar la sensibilitat de cada senyal

per separat. Tamb´ed´ona l’opci´od’entrenar aquelles expressions que es poden entrenar, i seleccionar si es vol utilitzar la signatura pr`opia,

entrenada, o la universal.

• Affectiv Suite (Figura 3.1c): Mostra dues l´ınies temporals, una de r`apida i una de lenta, on es poden apreciar els valors per les diferents

emocions que ´es possible detectar.

• Cognitiv Suite (Figura 3.1d): Mostra un cub que reflecteix les instrucci-

80 (a) (b)

(c) (d)

Figura 3.1: Captures de pantalla de diferents parts del programa Control Panel. a) Captura de pantalla de la pestanya Headset Setup del programa Control Panel. b) Captura de pantalla de la pestanya Expressiv Suite del programa Control Panel. c) Captura de pantalla de la pestanya Affectiv Suite del programa Control Panel. d) Captura de pantalla de la pestanya Cognitiv Suite del programa Control Panel.

ons que l’usuari d´ona mitjan¸cant el m`etode cognitiu. Addicionalment, permet seleccionar les accions actives, entrenar-les, aix´ıcom entrenar

l’estat neutral i configurar la sensibilitat desitjada per a cada una de les accions seleccionades com actives.

81 3.1.4 EmoComposer

L’EmoComposer (Figura 3.2a) ´es un programa que incorpora el Software

Development Kit (SDK) del dispositiu. El seu objectiu ´es emular l’exist`encia d’un dispositiu Emotiv EPOC i poder desenvolupar aplicacions per a ser utilitzades amb aquest dispositiu quan realment no es disposa d’ell. Permet crear tots els senyals que es detecten en les tres suites, per`ono permet simular el giroscopi. Tamb´epermet crear seq¨u`encies peri`odiques d’esdeveniments.

EmoKey

L’EmoKey (Figura 3.2b) ´es un altre programa que incorpora l’SDK. En aquest cas, l’objectiu ´es traduir senyals provinents del dispositiu en pulsaci- ons de tecles del teclat, amb la possibilitat de crear combinacions d’aquestes.

Permet crear condicions complexes per a l’execuci´odels triggers.

3.1.5 Estructura

El dispositiu Emotiv EPOC proporciona diferents m`etodes d’interacci´oentre l’usuari i l’aplicaci´o. Les dades facilitades estan dividides en 3 suites diferents, anomenades Expressiv , Emotiv i Cognitiv, quedant tan sols algun m`etode d’interacci´ofora d’aquestes suites.

82 (a) (b)

Figura 3.2: Captures de pantalla de diferents programes complementaris al dispositiu Emotiv EPOC. a) Captura de pantalla del programa EmoCompo- ser. b) Captura de pantalla del programa EmoKey.

Suite d’accions expressives

L’Expressiv Suite permet a l’aplicaci´ola detecci´ode diferents expressions facials per part de l’usuari. Algunes d’aquestes expressions es poden entrenar, ´es a dir, hi ha l’opci´o d’utilitzar una signatura particular per a efectuar les deteccions en comptes d’utilitzar la signatura universal. Concretament, les accions que es poden entrenar s´on totes excepte aquelles en les que intervenen els ulls. Les ex- pressions que es poden detectar s´on les incloses a la Taula 3.1. La primera columna identifica el nom de l’expressi´ofacial, a la segona donem una tra- ducci´oal catal`a, la tercera columna indica si l’expressi´oes pot entrenar o no i la darrera si l’expressi´oadmet diversos graus d’intensitat.

En les proves realitzades, el nivell de precisi´oamb el que es detecten les

83 Nom en angl`es Nom en catal`a Es pot entrenar Es´ gradual Blink Parpellejar No No Right Wink Picar l’ull dret No No Left Wink Picar l’ull esquerre No No Look Right/Left Mirar a la dreta/esquerra No No Raise Brow Al¸car celles S´ı S´ı Furrow Brow Arrufar celles S´ı S´ı Smile Somriure S´ı S´ı Clench Apretar dents S´ı S´ı Right Smirk Mig somriure dret S´ı S´ı Left Smirk Mig somriure esquerre S´ı S´ı Laugh Riure S´ı S´ı

Taula 3.1: Expressions detectables pel dispositiu Emotiv EPOC. expressions ´es diferent per a cada expressi´o. En general, la major difer`encia apreciada ´es en les accions relacionades amb els ulls, que no es poden entrenar, i ´es on pitjor precisi´o s’ha trobat. Dins d’aquestes accions, el parpelleig ´es el que millor es detecta, mentre que els resultats a l’hora de detectar les picades d’ullet d’ambd´os ulls i si es mira a l’esquerra o la dreta s´on pitjors. Les expressions d’al¸car i arronsar les celles es detecten de forma satis- fact`oria, especialment la d’al¸car les celles, mentre que la d’arronsar les celles, tot i detectar-se b´e, no mant´ela detecci´oactiva de forma permanent si no que fa uns cicles de detecci´oi no-detecci´otot i mantenir-se realment l’expressi´o constant. S’ha trobat alguna dificultat en la detecci´od’algunes de les 5 expressions associades amb la boca abans d’entrenar-les, per`oen general el nivell de precisi´o´es satisfactori un cop efectuat l’entrenament. Tamb´ees pot, per`o,

84 trobar dificultat en aquest cas i haver de repetir l’entrenament. L’entrenament de les diferents accions s’ha efectuat amb el programa

Control Panel, que permet tamb´eajustar els nivells de sensibilitat de cada acci´oper a una millor detecci´o. La detecci´ode les accions s’ha efectuant tan utilitzant el mateix programa de Control Panel com per mitj`ade l’API.

Suite s’estats afectius

La suite Affective analitza i d´ona informaci´osobre l’estat emocional de l’usua- ri. Les ones que detecta s´on universals i per tant no requereix d’entrenament, per`oper a poder oferir una major precisi´oel sistema emmagatzema l’historial de l’usuari. Les emocions que pot detectar aquesta suite s´on les seg¨uents: emoci´oinstant`ania, emoci´ode llarg termini, atenci´oo avorriment, frustraci´o i meditaci´o.

Suite d’accions cognitives

L’objectiu de la suite Cognitive ´es detectar la intenci´ode l’usuari de realitzar diferents accions f´ısiques sobre un objecte real o virtual. Aix`oho fa detectant l’activitat cerebral en diferents parts del crani. El sistema d´ona l’opci´ode treballar amb 13 accions diferents, de les quals 6 s´on moviments: emp`enyer, estirar, esquerra, dreta, amunt i avall. Sis m´es s´on relatives a la rotaci´o:

En el sentit de les agulles del rellotge, en el sentit contrari a les agulles del rellotge, cap a l’esquerra, cap a la dreta, cap endavant i cap enrere. Finalment n’hi ha una que no forma part de cap d’aquests dos grups, que ´es l’acci´ode

85 desapar`eixer. Tot i haver-hi aquestes 13 accions disponibles, el sistema permet escollir

4 accions per a ser reconegudes en un moment determinat. Aleshores, el sistema reportar`aquina d’aquestes quatre accions est`aactiva, tan sols una a la vegada, o l’estat neutral si cap d’elles est`aactiva, aix´ı com un valor que representa la certesa de que l’usuari tingui aquesta determinada intenci´o. S’ha de tenir en compte que a major nombre d’accions disponible, m´es dif´ıcil ´es dominar-les, pel que ´es recomanable comen¸car amb una i nom´es habilitar-ne d’altres a mesura que siguin dominades.

En les proves realitzades, s’ha trobat for¸ca dificultat en l’´us d’aquesta suite amb m´es d’una acci´ohabilitada.

Giroscopi

A banda de les funcions associades a les tres suites ja analitzades, el disposi- tiu Emotiv EPOC incorpora encara un altre tipus de sensor per a permetre un altre tipus de comunicaci´oentre l’usuari i l’aplicaci´o: el giroscopi. Mit- jan¸cant aquest giroscopi, es poden con`eixer els canvis en l’orientaci´odel cap de l’usuari, i per tant la seva posici´oabsoluta si es coneix la seva posici´o inicial. Un petit problema que s’ha observat en la utilitzaci´od’aquest tipus de sensor ´es que a mesura que el temps passa, si el que es pret´en saber ´es la posici´oabsoluta, s’arriba a acumular una quantitat d’error que fa tenir dades que no es corresponen amb la realitat, per`o´es un defecte que es pot atenuar

86 en bona part si el software que ho utilitza ho t´een compte.

3.1.6 Usos de l’API

S’han provat diverses combinacions en l’entrada per a poder controlar el joc utilitzant el dispositiu Emotiv EPOC.

Rotaci´o

Un dels usos m´es simples, naturals i amb millor funcionament que s’han trobat ha estat el d’utilitzar el giroscopi per a controlar la rotaci´ode la c`amera. L’objectiu era que l’usuari pogu´es canviar la rotaci´ode la c`amera respecte els eixos X i Y realitzant rotacions equivalents al seu cap. Les dades de les que es partia eren els moviments relatius que l’API transmet.

En primer lloc es va provar de transformar directament aquests movi- ments relatius en una rotaci´ode la c`amera. D’aquesta manera s’aconseguia una relaci´odirecta entre els moviments que l’usuari feia amb el cap i la rota- ci´ode la c`amera. Aquesta t`ecnica, per`o, no ´es satisfact`oria per al control del joc, ja que la pantalla roman quieta, i l’usuari ha de mantenir una mateixa rotaci´odel seu cap per a observar-la, per la qual cosa dins del prototip la c`amera sempre tendeix cap a la mateixa orientaci´o.

Cal utilitzar, doncs, un sistema que no transmeti els canvis de forma directa. L’opci´oadoptada ha estat la d’utilitzar un acumulador que tingui en compte la posici´odel cap de l’usuari de forma absoluta, i utilitzar aquesta dada per a realitzar la rotaci´o, en comptes d’utilitzar la difer`encia de rotaci´o

87 en cada moment. D’aquesta manera, si l’usuari mant´eel cap amb una rotaci´o cap la dreta, sense moure’l, la c`amera es mantindr`aamb una velocitat de rotaci´oconstant, cap a la dreta. El funcionament d’aquest sistema ´es intu¨ıtiu en general per`o t´ealguns problemes a polir. En primer lloc, donat que l’orientaci´ode l’usuari mai acaba de ser completament centrada, aquest va observant una constant rotaci´ode la c`amera, que encara que pot ser d’una magnitud petita, resulta molesta.

Per altra banda, ´es molt inc`omode realitzar canvis r`apids d’orientaci´o, i per a aconseguir-ho cal girar tant el cap que es deixa d’observar correctament la pantalla, es perd la refer`encia de l’orientaci´ode la c`amera i es perd el control de l’aplicaci´o.

Com a agreujant, les solucions m´es intu¨ıtives per a aquests dos problemes es contradiuen entre s´ı. Per a evitar els efectes de la rotaci´oquan l’usuari no vol rotar podria reduir-se l’efecte de la rotaci´odel cap respecte la rotaci´ode la c`amera. Per a poder aconseguir unes rotacions de la c`amera m´es r`apides sense desviar la vista de la pantalla, en canvi, caldria d’incrementar l’efecte de la rotaci´odel cap. Per a solucionar ambd´os problemes s’ha optat per combinar dues solu- cions, una referent a cada problema. En primer lloc, per a solucionar el problema de les rotacions existents quan l’usuari no vol que n’hi hagi, es defineix un cert marge de permissi´oal voltant del centre per sota del qual no es realitza cap rotaci´o. En segon lloc, per a possibilitar una rotaci´ogran de forma r`apida i f`acil,

88 sense que l’usuari hagi d’apartar la vista de la pantalla, s’aplica una transfor- maci´ode forma quadr`atica a la quantitat a rotar, amb l’objectiu de permetre, a la vegada, precisi´oper a permetre rotacions petites i rapidesa per a efectuar rotacions de m´es amplada.

Un petit detall a millorar d’aquesta soluci´o´es que si el jugador aparta per algun motiu la vista de la pantalla, es produeix una velocitat de rotaci´o extremadament alta, degut al gran angle i a la transformaci´o que s’aplica.

Aquesta velocitat de rotaci´oprodueix mol`esties i ´es desagradable. Per a solucionar aquest detall, s’ha establert un l´ımit en la velocitat de rotaci´o, a partir del qual un angle major no comporta una major velocitat de rotaci´o. Per a evitar situacions estranyes i irreals, es limita tamb´el’angle de rotaci´o en l’eix X, de forma que l’usuari no pugui fer voltes sobre s´ımateix en aquest angle. Amb aquests ´ultims detalls, s’obt´eun sistema altament satisfactori pel que fa a la seva intu¨ıtivitat i usabilitat per a aquest tipus de joc. El conjunt d’aquesta interacci´oes veu reflexada a la gr`afica de la Figura 3.1.6.

Moviment

Per al control del moviment del personatge, s’han estudiat diverses possibili- tats. En un primer moment, el m`etode provat ha estat el d’utilitzar la suite

Cognitiv per a aconseguir aquest moviment. El moviment m´es necessari per a la navegaci´o´es el d’avan¸car, i per tant aquest ha estat el primer en ser estudiat. En primera inst`ancia s’ha provat a

89 Figura 3.3: Gr`afica de la funci´oque associa l’angle del dispositiu amb la velocitat de rotaci´ode la c`amera. associar l’acci´ocognitiva d’emp`enyer a l’aven¸cdel personatge, i posteriorment l’acci´ocognitiva d’estirar. Els resultats d’ambdues accions han estat similars, encara que lleugera- ment millors per a l’acci´od’estirar. El principal problema que s’ha trobat ha estat la dificultat en el reconeixement d’accions entrenades en sessions ante- riors. Es´ a dir, la precisi´ode reconeixement s’ha trobat acceptable durant la mateixa sessi´oen la que s’ha entrenat l’acci´o, per`ono en accions posteriors. Aix`opot dur a la inconveni`encia d’haver d’entrenar cada cop cada acci´o, d’uns 5-10 minuts de durada. Tamb´es’ha provat d’utilitzar la suite Expressiv per a realitzar el movi- ment del personatge. Concretament s’ha associat l’acci´ode somriure a l’acci´o d’avan¸car del personatge. Aquest m`etode representa alguns avantatges i al- guns inconvenients respecte l’anterior.

90 El principal avantatge ´es la fiabilitat del reconeixement, m´es prec´ıs i f`acil de dominar que utilitzant el m`etode cognitiu. Aquesta precisi´oes redueix sensiblement si hi ha m´es accions del grup d’accions de la boca entrenades, doncs aleshores el reconeixement no ´es tan bo.

Un altre avantatge ´es que, tot i que es pot entrenar aquesta expressi´o, l’entrenament no ´es necessari, no cal repetir l’entrenament a cada sessi´oi el temps que comporta aquest entrenament ´es molt m´es curt, inferior a 30 segons. Entre els inconvenients que comporta aquest m`etode hi ha una freq¨u`encia de notificaci´ode la informaci´ol’estat per part de l’API que pot ser molt baixa depenent de factors com la inexist`encia de notificacions d’una acci´o cognitiva. Aquesta baixa freq¨u`encia pot ser problem`atica si es vol evitar l’efecte de moviments bruscs per part del personatge. Un altre inconvenient d’aquest m`etode ´es la necessitat de mantenir l’ex- pressi´ode somriure, que pot suposar una important incomoditat si el temps d’´us ha de superar uns pocs minuts.

Atac

Una altra acci´oque realitza el personatge ´es la d’atacar amb l’arma, en aquest cas una arma de foc. Es tracta d’una acci´ode tipus discret encara que ´es convenient poder fer-ho de forma continuada. S’ha provat a realitzar aquesta acci´oamb diferents expressions de la suite Expressiv.

Una de les accions amb les que s’ha provat ´es arronsant les celles. Aquesta

91 acci´odisposa d’un bon reconeixement per part del dispositiu, i disposa tamb´e de l’avantatge que permet realitzar l’acci´ode forma continuada. El principal inconvenient d’aquesta acci´o´es la impossibilitat de realitzar aquesta expressi´o i la de somriure a la vegada. En el cas que l’acci´ode somriure fos el m`etode actiu per al moviment del personatge, aix`oimpossibilitaria disparar mentre es mou el personatge. Una altra expressi´oamb la que s’ha provat d’associar l’acci´od’atac per part del personatge ´es la de parpelleig. El nivell de reconeixement d’aquesta acci´o´es acceptable per`oinferior al de l’expressi´oanterior d’arronsar les celles.

Com a inconvenient d’aquest m`etode respecte l’anterior tamb´ecal comentar que per la naturalesa de l’expressi´o, no ´es possible de realitzar-la de forma continuada com s´ıque es pot mantenir l’expressi´od’arronsar les celles de forma continuada. En la banda positiva, el parpelleig es pot realitzar satisfact`oriament a la vegada que l’expressi´ode somriure, pel que no cal aturar-se per a disparar.

Salt en portals

El salt entre portals ´es una acci´oque mou el personatge, de forma immediata, d’un portal fins al seg¨uent en l’ordre en que aquests hagin estat definits en el mapa.

A difer`encia de les accions anteriors, ´es un tipus d’acci´o on ´es m´es conve- nient una interacci´ode tipus discret en comptes de continua, ´es a dir, volem fer un ´unic canvi, o un nombre concret de canvis de portal.

92 Blink R.Wink L.Wink Look R.Brow F.Brow Smile Clench R.Smirk L.Smirk Laugh Blink 4, 4 - - - 3, 3 4, 2 4, 3 2, 2 3, 4 3, 4 4, 4 R.Wink - 3, 2 - - 3, 2 2, 2 2, 2 2, 1 2, 3 1, 2 3, 2 L.Wink - - 2, 2 - 2, 2 2, 2 3, 2 1, 2 1, 2 2, 3 2, 2 Look - - - 2, 3 1, 2 1, 2 2, 3 2, 2 2, 2 2, 2 2, 2 R. Brow - - - - 3, 4 - 1, 1 1, 2 1, 2 1, 1 1, 1 F. Brow - - - - - 2, 2 0, 1 2, 1 1, 1 1, 2 0, 0 Smile - - - - 1, 2 2, 1 3, 4 - - - - Clench - - - - 0, 0 1, 1 - 2, 2 - - - R.Smirk - - - - 1, 0 2, 1 - - 4, 4 - - L.Smirk - - - - 0, 0 1, 1 - - - 4,4 - Laugh - - - - 0,0,(-) 1, 1 - - - - 3,3

Taula 3.2: Resultats de les proves realitzades a les accions expressives.

Per aquest motiu s’ha aprofitat aquesta naturalesa d’interacci´o de tipus discret que tenen les expressions relacionades amb el tancament d’ulls de la suite Expressiv, concretament les expressions de parpellejar o clicar un dels dos ulls.

3.1.7 Proves de precisi´o

S’han realitzat un conjunt de proves per a avaluar la precisi´o amb la que el sistema reconeix diferents tipus d’entrades. Aquestes entrades han consistit tant en l’´us d’una sola suite, com en la combinaci´ode m´es d’una suite de for- ma simult`ania. Tamb´es’ha provat a executar m´es d’una acci´o d’una mateixa suite quan aix`oha estat possible.

Accions expressives

Mostrem les dades adquirides a la Taula 3.2. Els valors de la taula estan entre 0 i 5, on 5 representa una precisi´o perfecta i 0 representa una precisi´onul·la. Quan no ´es possible combinar diferents elements, es marca la casella amb un gui´o(-). Els dos valors que

93 apareixen a cada casella fan refer`encia a dos jocs de proves que s’han efectuat. En les caselles on coincideix la mateixa expressi´oa files i columnes signifi- ca la precisi´ode realitzar aquella expressi´osense realitzar-ne cap altra. Quan s´on expressions diferents, indica la precisi´oen el reconeixement de l’expressi´o indicada per la fila mentre es realitza l’expressi´oindicada per la columna. Les expressions de la boca funcionen correctament quan no estan totes entrenades, per`ola seva precisi´oempitjora considerablement si totes elles tenen entrenament. La detecci´ode les accions de la suite Cognitiv tenen la mateixa precisi´o.

Tot i aix`o, hi ha accions m´es f`acils d’imaginar i d’altres que no ho s´on tant. En diferents moments tamb´ela detecci´opot variar considerablement.

Accions cognitives

En els resultats mostrats a la Taula 3.3 valorem la precisi´oen el funciona- ment d’accions cognitives primer individualment i posteriorment en parelles d’accions oposades. Tots els valors estan expressats en una escala de0a5,i representen el valor mitj`aobtingut despr´es de 6 rondes de prova efectuades en diferents dies. S’ha efectuat per a cada acci´ouna prova individual de l’acci´oi una prova de combinaci´oamb la seva acci´ooposada. Com es pot observar, la variaci´oen la precisi´ode diferents accions no ´es massa gran, especialment si es diferencien en els grups d’accions de translaci´o, amb una mitjana de 3.1, i d’accions de rotaci´o, en aquest cas amb una mitjana de 2.4. Aquesta difer`encia es pot explicar tenint en compte que les accions

94 Acci´ocognitiva Prova individiual Prova combinada Push 3.5 2 Pull 3.2 ” Lift 2.8 1.3 Drop 3.3 ” Left 2.6 1.5 Right 3 ” Rotate Left 3 1.6 Rotate Right 2.3 ” Rotate Clockwise 2.5 1 Rotate Anti-clockwise 2.5 ” Rotate Forward 2.2 1.6 Rotate Reverse 2.2 ” Disappear 2.5 -

Taula 3.3: Resultats de les proves realitzades a les accions cognitives. de translaci´os´on menys confuses per a la ment que les de rotaci´o. On es pot observar una major difer`encia ´es en la valoraci´oentre les acci- ons individuals i les accions combinades, amb uns valors de 2.7 i 1.5 respec- tivament. Aix`oes deu a la major complexitat en la detecci´ode dos accions diferents per part del dispositiu, ja que els patrons que les identifiquen poden estar parcialment solapats.

Combinaci´od’accions expressives i cognitives

Aquestes proves, a difer`encia de les anteriors, s’han provat utilitzant el proto- tip, ja que utilitzant el panell de control no es poden observar simult`aniament les lectures de les suites Expressiv i Cognitiv.

95 Push / Smile En primer lloc s’ha fet la prova amb la combinacio que associa l’acci´ocognitiva push a avan¸car i l’acci´oexpressiva smile a disparar.

La resposta a cada una de les instruccions per separat ´es bona. Ara b´e, no ´es possible realitzar les dues accions simult`aniament, ´es a dir, per a que el jugador dispari cal que s’aturi. Per a fer aquesta prova, s’ha esborrat l’entrenament de totes les expres- sions bucals excepte la de somriure. D’aquesta manera s’ha aconseguit un reconeixement m´es clar d’aquesta expressi´o.

Push / Pull / Smile En aquest cas s’ha assignat a l’acci´ocognitiva push la instrucci´od’avan¸car, tal i com a l’anterior estudi. A m´es, s’ha associat l’acci´ocognitiva pull amb la instrucci´ode retrocedir el personatge. De forma tamb´esimilar a l’anterior estudi, en aquest cas l’expressi´o smile tamb´es’ha associat amb la instrucci´ode disparar. El resultat d’aquesta combinaci´om´es complexa, sense ser completament inusable, ha estat d’una qualitat inferior que a l’anterior. La combinaci´o de les dues accions cognitives comporta una baixa usabilitat, ja que l’acci´o d’estirar s’activa de forma m´es f`acil que la d’emp`enyer, arribant a activar- se de forma involunt`aria en certs casos, cosa que implica que el personatge tendeix a retrocedir, i es fa dif´ıcil la navegaci´o.

En aquest cas, com en l’anterior estudi, tamb´es’ha configurat l’entrena- ment de la suite Expressiv de forma que l’´unica expressi´obucal entrenada, i per tant activa, era la de somriure.

96 Push / Raise Brow / Smile Finalment s’ha realitzat de nou un estudi combinant una acci´ocognitiva amb una acci´oexpressiva. D’igual manera a la primera prova, en aquest cas l’acci´ocognitiva ´es push i est`aassociada amb el moviment cap endavant del personatge. La difer`encia amb la primera prova rau en l’´us de l’acci´oexpressiva Raise Brow associada a l’acci´ode disparar del personatge, aix´ıcom l’acci´oexpressiva Smile que passa d’estar associada amb l’atac a estar associada amb els portals, un ´us on no es requereix simultaneitat amb el moviment. El canvi d’acci´oexpressiva representa una millora en els resultats respecte l’anterior prova. Mantenint la resta de resultats similars, en aquest cas s´ı que s’han pogut activar de forma simult`ania les dues accions, l’expressiva

Raise Brow i la cognitiva, on interessava poder activar-les a la vegada per tal d’obtenir un ´us m´es natural.

3.2 OpenGL

OpenGL ´es un est`andar que especifica una API amb l’objectiu d’ajudar al desenvolupament d’aplicacions amb un component gr`afic i aprofitar el maqui- nari espec´ıfic per a obtenir un millor rendiment, especialment quan aquest ´es de tipus tridimensional. Alguns tipus d’aquestes aplicacions s´on programes de disseny assistit, realitat virtual, visualitzaci´ocient´ıfica o videojocs. [95] L’API ´es independent tant pel que fa al hardware sobre el que s’executa, pel que fa al sistema operatiu, aix´ıcom tamb´edel sistema de finestres.

97 Figura 3.4: Arquitectura de la m`aquina d’estats d’OpenGL.

3.2.1 Arquitectura

L’arquitectura d’OpenGL est`abasada en una m`aquina d’estats segmentada en diverses etapes (Figura 3.2.1).

El funcionament b`asic d’OpenGL ´es convertir les primitives d’entrada que se li proporcionen, que s´on punts, l´ınies i pol´ıgons, en un conjunt ordenat de p´ıxels en forma d’imatge i que est`apreparat per a ser mostrat a l’usuari. Aquest proc´es s’anomena renderitzat, i el seu funcionament exacte dep`en de com es configuri la m`aquina d’estats. Des de la introducci´od’OpenGL 2.0, en algunes de les etapes es pot executar codi facilitat pel programa, per tal d’obtenir una major flexibilitat l’´us de la tecnologia.

D’una manera simplificada, els pasos que es realitzen en el proc´es de renderitzaci´od’una primitiva en OpenGL s´on els seg¨uents[96]:

• Avaluaci´o: Si ´es necessari, s’aproximen les funcions polin`omiques que

98 defineixen certes superf´ıcies, per tal de renderitzar-les mitjan¸cant punts.

• Operacions de v`ertex: S’apliquen les transformacions necess`aries a ca-

da v`ertex per separat, per tal d’adequar-los a l’actual configuraci´ode l’aplicaci´o, com per exemple la c`amera o la il·luminaci´o.

• Rasteritzaci´o: Es converteixen les primitives a p´ıxels, tamb´eanomenats fragments. Algunes de les dades dels v`ertexs es transmeten als p´ıxels associats mitjan¸cant interpolaci´o.

• Operacions de fragment: S’apliquen les operacions que l’aplicaci´ohagi definit sobre cada p´ıxel o fragment. Algunes d’aquestes operacions

poden ser seleccionar si el p´ıxel ser`avisible o no, o el color que tindr`a derivat d’una textura.

• Emmagatzematge: Els resultats que surtin de l’etapa anterior s´on em-

megatzemats al frame buffer, d’on posteriorment es treur`ala informaci´o a mostrar en pantalla o fer-ne qualsevol altre ´us.

3.2.2 Us´

Durant el desenvolupament del prototip s’ha utilitzat OpenGL per tal de poder mostrar a l’usuari un entorn tridimensional on poder interactuar uti- litzant el dispositiu Emotiv EPOC com a sistema d’entrada. Algunes dels ´usos espec´ıfics pels que s’ha utilitzat s´on els seg¨uents:

99 • Renderitzat de pol´ıgons. Tot el que l’usuari veu s´on poligons renderit- zats mitjan¸cant OpenGL.

• Texturitzaci´ode pol´ıgons. Gaireb´ela totalitat de pol´ıgons renderitzats utilitzen textures per obtenir una visualitzaci´osimilar a la de l’objecte

que representen.

• Il·luminaci´ode pol´ıgons. S’il·luminen els pol´ıgons per tal d’obtenir una millor percepci´oespacial dels objectes.

• Transpar`encies. Els portals utilitzen transpar`encies, per que siguin visibles als usuaris per`oa la vegada deixar entreveure a l’usuari que es

poden traspassar amb el jugador.

100 Cap´ıtol 4

Model de requeriments

A continuaci´oes mostren els diferents requeriments que s’han establert per a la construcci´odel prototip. Aquests s’han determinat despr´es de mantenir diverses reunions amb els directors del projecte.

4.1 Requeriments no funcionals

• El prototip ha de ser desenvolupat en llenguatge C++.

• Ha de ser possible interactuar amb el prototip mitjan¸cant el dispositiu

Emotiv EPOC.

• Degut a la disponibilitat dels drivers de l’Emotiv EPOC ´unicament

sota el sistema operatiu Microsoft Windows, el prototip ha de poder funcionar en aquesta plataforma.

101 • El prototip ha d’utilitzar OpenGL com a est`andar de visualitzaci´oper a l’entorn tridimensional.

• L’aplicaci´oha de ser capa¸cde carregar mapes creats per l’usuari basant-

se en un format degudament especificat i documentat.

• El prototip ha de ser completat en el nombre d’hores especificat per als

PFC.

• El prototip ha d’estar acompanyat de la documentaci´ocorresponent, incloent informaci´osobre la seva especificaci´o, el seu disseny i la seva implementaci´o.

4.2 Requeriments funcionals

• El sistema ha de mostrar a l’usuari l’entorn tridimensional tenint en compte la posici´odel personatge controlat pel jugador, en perspectiva

de primera persona o de tercera persona segons tri¨ıl’usuari.

• El sistema ha de permetre a l’usuari navegar pel mapa amb total lli- bertat, tenint en compte les possibles col·lisions amb les parets.

• El sistema ha de permetre canviar d’ubicaci´oall`aon hi hagi un portal, permetent a l’usuari anar directament a la posici´oun altre portal.

• El sistema ha de permetre a l’usuari l’´us de l’arma de la que el perso- natge disposa, i si hi ha col·lisi´oamb un enemic, que aquest mori.

102 Cap´ıtol 5

Especificaci´o

L’especificaci´opret´en definir de forma clara un sistema software, a partir de l’an`alisi de requeriments, encara que sense determinar com es far`a. Serveix de base per a la resta d’etapes en el desenvolupament del sistema. Per al desenvolupament d’aquesta etapa s’utilitzar`ael llenguatge UML

(Unified Modeling Language) per a la definici´ode l’especificaci´o. Aquest llenguatge proporciona una descripci´ovisual de les funcionalitats del sistema i del seu comportament. Segons la nomenclatura d’UML, els usuaris del sistema s´on els actors i les interaccions entre ambd´os s´on els casos d’´us.

103 Figura 5.1: Actor del sistema.

5.1 Actors del sistema

En el prototip a desenvolupar tan sols hi interactua un usuari, per tant aquest ser`al’´unic actor del sistema (Figura 5.1). Les seves responsabilitats s´on iniciar l’aplicaci´o, interactuar amb ella com consideri oport´ui finalitzar l’execuci´ode l’aplicaci´o.

5.2 Casos d’´us

Detallem els passos concrets duts a terme per l’usuari i pel sistema en els diferents casos d’´us. Podem veure’ls a la Figura 5.2.

5.2.1 Iniciar aplicaci´o

Cas d’´us: Iniciar aplicaci´o.

104 Figura 5.2: Casos d’´us del sistema.

Actor: Usuari. Resum: L’aplicaci´ofa els passos necessaris per preparar el seu correcte funcionament. Curs t´ıpic d’esdeveniments: Actor Sistema

El cas d’´us s’inicia quan l’usuari execu-

ta l’aplicaci´o

El sistema fa les inicialitzacions ne-

cess`aries i carrega el mapa emmagat- zemat al fitxer especificat.

El sistema mostra l’entorn en el que es troba el personatge.

L’usuari visualitza la finestra amb el

contingut renderitzat per l’aplicaci´o.

105 Curs alternatiu d’esdeveniments: Si el mapa no t´eel format correcte es produeix un error i es finalitza l’aplicaci´o.

5.2.2 Finalitzar aplicaci´o

Cas d’´us: Finalitzar aplicaci´o.

Actor: Usuari. Resum: L’aplicaci´oallibera els recursos utilitzats i finalitza la seva execuci´o. Curs t´ıpic d’esdeveniments: Actor Sistema

El cas d’´us s’inicia quan l’usuari prem

la tecla per finalitzar l’aplicaci´o.

El sistema allibera aquells recursos que

ha reservat i que cal alliberar.

El sistema finalitza la seva execuci´o.

L’usuari visualitza que la finestra s’ha

tancat i el sistema torna a l’estat en el que es trobava abans de l’execuci´ode l’aplicaci´o.

5.2.3 Navegar

Cas d’´us: Navegar pel mapa.

106 Actor: Usuari. Resum: L’usuari mou el personatge pel mapa. Curs t´ıpic d’esdeveniments: Actor Sistema

El cas d’´us s’inicia quan l’usuari d´ona

una instrucci´ode moviment.

El sistema canvia la posici´odel perso-

natge.

El sistema mostra l’entorn vist des de

la nova ubicaci´odel personatge.

L’usuari visualitza l’entorn des de la nova posici´odel personatge.

Curs alternatiu d’esdeveniments: Si el personatge no es pot moure all`aon l’ordre diu, perqu`ehi ha algun objecte que ho impedeixi, aquest no es mou.

5.2.4 Saltar portal

Cas d’´us: Saltar portal. Actor: Usuari.

Resum: El personatge canvia d’ubicaci´ode forma instant`ania mit- jan¸cant un portal. Curs t´ıpic d’esdeveniments:

107 Actor Sistema

El cas d’´us s’inicia quan l’usuari d´ona una instrucci´ode saltar portal.

El sistema detecta el portal en el que es

troba l’usuari, en busca un altre i mou el personatge a aquella posici´o.

El sistema mostra l’entorn vist des de la nova ubicaci´odel personatge.

L’usuari visualitza l’entorn des de la nova posici´odel personatge.

Curs alternatiu d’esdeveniments: Si el personatge no es troba ini- cialment en cap portal, aquest no canvia d’ubicaci´o.

5.2.5 Disparar

Cas d’´us: Disparar. Actor: Usuari.

Resum: El personatge dispara la seva arma. Curs t´ıpic d’esdeveniments:

108 Actor Sistema

El cas d’´us s’inicia quan l’usuari d´ona una instrucci´ode disparar l’arma.

El sistema emet un tret des de l’arma

del personatge.

L’enemic que estigu´es en front del per-

sonatge, sense obstacles entremig, mor.

L’usuari visualitza l’entorn amb l’ene-

mic abatut.

Curs alternatiu d’esdeveniments: Si no hi ha cap enemic directament enfront del personatge, el tret no t´econseq¨u`encies.

5.3 Model conceptual

Presentem el model conceptual del programa, en el que es poden observar els diferents elements que el conformen (Figura 5.3).

109 Figura 5.3: Model conceptual del sistema.

110 Cap´ıtol 6

Disseny

Un cop s’ha descrit l’especificaci´ode les funcionalitats de les que ha de dis- posar el sistema, es procedeix a discutir les decisions de disseny sobre com el sistema ha de resoldre aquestes funcionalitats. D’igual manera que en l’especificaci´o, s’utilitzar`ala notaci´oUML per a representar el disseny desenvolupat.

6.1 Diagrama de classes

A partir del model conceptual, creem un diagrama de classes que tingui en compte les diferents interaccions i detalls que cal tenir en compte a l’hora de la implementaci´o. Podem veure’l a la Figura 6.1.

111 Figura 6.1: Diagrama de classes.

112 Figura 6.2: Diagrama de seq¨u`encia del bucle principal.

6.2 Diagrames de seq¨u`encia

Incloem els diagrames de seq¨u`encia, detallats amb una explicaci´o, de les ope- racions m´es importants que realitza l’aplicaci´o. A continuaci´o, a la Figura 6.2 veiem el del bucle principal.

6.2.1 Bucle principal

El proc´es comen¸ca a la classe cGame, i el primer que fa ´es comprovar si hi ha entrada d’informaci´oper part de l’usuari. Si n’hi ha, es tracta en un cas d’´us diferent. A continuaci´oes procedeix al renderitzat de l’escena. Per a fer aix`o, en

113 Figura 6.3: Diagrama de seq¨u`encia del salt de portal. primer lloc es crida a la c`amera per a que es situi, i posteriorment s’ordena a l’escena que renderitzi el seu contingut. Aquesta fa el mateix amb els elements que cont´e, que s´on el mapa, el personatge principal, els enemics i els portals. Finalment crida al personatge i als enemics per a que es moguin segons la velocitat que tinguin.

6.2.2 Salt de portal

A la Figura 6.3 observem el diagrama de seq¨u`encia de l’operaci´odel salt de portal. L’acci´ocomen¸ca quan la classe cEmotivInput detecta que s’ha dispa- rat l’acci´ode saltar de portal. Aquesta ho comunica a la classe responsable

114 del personatge, que a la vegada demana a la classe cScene, responsable de l’escena, si est`adins d’algun portal, i quin ´es el seg¨uent portal en aquest cas. En el cas que el jugador fos dins d’un portal, actualitza la seva posici´o amb les coordenades del seg¨uent portal, informaci´odonada per la classe de l’escena.

6.2.3 Disparar

L’acci´ode disparar, amb el diagrama de seq¨u`encia a la Figura 6.4, tamb´e s’inicia quan es detecta una entrada per part de l’usuari que ordena disparar, que ho comunica a la classe que representa el jugador. Aquesta, consultant- ho al mapa, comprova la dist`ancia en l´ınia recta, en la direcci´odel jugador, a la que es troba el primer obstacle del mapa. Fa el mateix comprovant si hi ha algun jugador davant seu, i a quina dist`ancia. Si la dist`ancia amb l’enemic m´es proper amb el que hi ha col·lisi´o´es menor a la dist`ancia de col·lisi´o amb una paret, l’enemic mor.

6.3 Disseny de la interf´ıcie

En aquesta aplicaci´oel viewport d’OpenGL ocupa la totalitat de la finestra, pel que no existeix cap element per interactuar amb el joc a la pantalla. Tota la interacci´os’aconsegueix mitjan¸cant el dispositiu Emotiv EPOC, o amb teclat i ratol´ıde manera alternativa.

115 Figura 6.4: Diagrama de seq¨u`encia de l’acci´ode disparar.

116 Figura 6.5: Diagrama de l’arquitectura general del sistema 6.4 Arquitectura general del sistema

Per al correcte funcionament del sistema s´on necessaris diversos components que interact´uen entre ells, del que el prototip nom´es n’´es un. Analitzem ara l’arquitectura general del sistema, de la que en trobem el diagrama a la

Figura 6.5. Aqueste s´on les interaccions:

• L’usuari transmet informaci´oal casc, a trav´es del seu cuir cabellut, i aquest llegeix les dades pertinents.

• El casc transmet la informaci´ollegida al receptor USB, per mitj`ad’ones electromagn`etiques.

117 • El receptor USB llegeix la informaci´oenviada pel casc i la transmet als drivers del sistema Emotiv EPOC.

• Aquests drivers processen la informaci´oque els hi arriba, en busca dels patrons que consideren oportuns. Les senyals obtingudes s´on transmes-

ses al component que estigui escoltant-les, que pot ser b´eel programa Control Panel o el prototip directament.

• En el cas en que el receptor directe de les dades que envia el driver sigui

el programa Control Panel, aquest mostra per pantalla algunes de les dades m´es rellevants. Tamb´ereenvia al prototip les dades que rep.

• El prototip rep les dades que li interessen ja sigui a trav´es del driver directament o del programa Control Panel.

El proc´es d’interacci´ocomen¸ca amb l’usuari, que transmet informaci´oal casc

Emotiv EPOC.

118 Cap´ıtol 7

Implementaci´o

En aquest apartat es detallen alguns dels aspectes de la fase d’implementaci´o del prototip, concretament en all`oque fa refer`encia a la integraci´oamb l’API del sistema Emotiv EPOC.

7.1 API del sistema Emotiv EPOC

Una API, que s´on unes sigles que signifiquen Application Programming Inter- face, ´es una interf´ıcie que una biblioteca de funcions cedeix a un altre sistema per tal de possibilitar una integraci´oentre ambd´os sistemes. En aquest cas, l’API del sistema Emotiv EPOC ´es aquell conjunt de funcions que els creadors del sistema Emotiv EPOC han posat a disposici´o nostra per tal de poder interactuar amb el driver del sistema i con`eixer quins patrons aquest ha detectat.

119 7.1.1 Connexi´o

El primer que hem de fer per tal de que el nostre programa interactu¨ıamb el dispositiu ´es connectar-nos al driver, ja sigui de forma directa o a trav´es del programa Control Panel.

La primera opci´o´es connectar de forma directa amb el driver. Per a aconseguir-ho s’utilitza la funci´o EE EngineConnect(). Aquesta funci´ono admet par`ametres.

L’altra opci´o´es connectar-nos a trav´es del programa Control Panel. En aquest cas ser`anecessari tenir el programa obert, i com a avantatge podrem veure en la seva finestra els valors de totes les entrades que genera el disposi- tiu. La funci´oa utilitzar ser`a EE EngineRemoteConnect(), i els par`ametres necessaris s´on una adre¸ca i un port a on connectar-se. Per a aquest cas d’´us l’adre¸ca ser`asempre la local, ´es a dir, 127.0.0.1, i el port on escolta el programa Control Panel ´es el 3008.

Ambdues funcions retornen el valor EDK OK en cas d’aconseguir el seu prop`osit amb `exit.

7.1.2 Enquesta

Un cop el nostre programa s’ha connectat satisfact`oriament amb el driver, voldrem obtenir la informaci´oque el dispositiu pot proporcionar-nos. El m`etode pel qual la podem obtenir ´es el d’enquesta, que significa que serem nosaltres els que haurem d’anar consultant cont´ınuament al sistema si hi ha

120 nova informaci´oque ens pugui transmetre. En aquest cas els arquitectes del sistema recomanen fer la consulta un m´ınim de 10-15 cops per segon.

Els passos a seguir per a realitzar aquesta enquesta s´on els seguents:

• Crear un objecte on es puguin emmagatzemar els events que ens envia

el dispositiu. Aquest objecte ser`ade tipus EmoEngineEventHandle i podem crear-lo amb la funci´o EE EmoEngineEventCreate(), que no rep

cap par`ametre.

• Crear un objecte que representi l’estat de l’entrada del dispositiu. En aquest cas l’objecte ser`adel tipus EmoStateHandle i la funci´oque el

crea ´es EE EmoStateCreate(). Aquesta funci´otampoc rep cap par`ametre.

• Procedir a l’enquesta, mitjan¸cant la funci´o EE EngineGetNextEvent().

A aquesta funci´oli passarem com a par`ametre l’objecte de tipus event anteriorment creat. Si hi havia un nou event a transmetre, retorna el valor EDK OK, i retorna EDK NO EVENT en cas contrari.

• Un cop tenim l’event a tractar, volem saber de quin tipus d’event es tracta. Aix`oho podem aconseguir a trav´es de la funci´o

EE EmoEngineEventGetType(), a la que passarem com a ´unic par`ametre l’event emmagatzemat. De totes les possibilitats d’event, ens interessen

aquells el tipus del qual sigui EE EmoStateUpdated.

121 7.1.3 Obtenci´ode dades

Arribats al punt en el que disposem d’un event del tipus que ens interessa, podem procedir a extreure’n les dades que necessitem. Diferenciarem el pro- cediment d’extracci´ode les dades que ens interessen segons l’apartat al qual pertanyen.

Dades expressives

Dins d’aquesta secci´oles dades es separen segons l’expressi´osigui pr`opia dels ulls, de la part superior de la cara o de la part inferior de la cara.

• Per con`eixer l’expressi´oactiva a la part superior de la cara, podem uti-

litzar la funci´o ES ExpressivGetUpperFaceAction(). Per a con`eixer el grau d’activitat tenim la funci´o ES ExpressivGetUpperFaceActionPower(). Aquesta funci´oretorna un valor entre 0 i 1.

• La interacci´oper a con`eixer l’estat de les expressions a la part inferior de

la cara ´es molt similar al punt anterior. La difer`encia recau en les funci- ons utilitzades, que en aquest cas s´on ES ExpressivGetLowerFaceAction()

i emphES ExpressivGetLowerFaceActionPower().

• Les accions expressives relacionades amb els ulls es diferencien de les altres en que no s´on graduals. Per a saber quines d’elles estan ac- tives cal consultar independentment utilitzant les funcions seg¨uents:

ES ExpressivIsBlink(), ES ExpressivIsLeftWink(), ES ExpressivIsRightWink(), ES ExpressivIsLookingLeft() i ES ExpressivIsLookingRight().

122 Dades cognitives

Per a consultar l’actual acci´ocognitiva, si n’hi ha cap, utilitzem en primer lloc la funci´o ES CognitivGetCurrentAction(), que rep l’estat actual i ens retorna quina acci´ocognitiva est`aactiva, en la forma d’un valor a consultar a trav´es dels valors predefinits amb nom COG PUSH, COG PULL, COG LEFT, etc. Si no hi ha cap acci´ocognitiva activa el valor retornat ´es COG NEUTRAL. Per a con`eixer el valor de la for¸ca de l’expressi´oactiva podem utilitzar la funci´o ES CognitivGetCurrentActionPower(), que tamb´erep l’estat actual.

Dades del giroscopi

Per a obtenir les dades del giroscopi no ´es necessari el pas anterior d’obtenir un event i l’estat del dispositiu. La funci´o EE HeadsetGetGyroDelta() ens comunica la rotaci´oactual del dispositiu respecte la posici´o neutral, que es defineix b´ecom l’estat inicial del dispositiu a l’iniciar-se o b´ecom l’´ultim moment en que es crida la funci´o EE HeadsetGyroRezero().

7.1.4 Desconnexi´o

Abans de finalitzar l’execuci´odel nostre programa cal alliberar els recur- sos que s’han reservat anteriorment. Els pasos concrets a realitzar s´on els seg¨uents:

• Alliberar l’estat reservat, mitjan¸cant la funci´o EE EmoStateFree(). Com a argument passarem l’estat a alliberar.

123 • Alliberar l’event anteriorment reservat. Per a aconseguir-ho utilitzarem la funci´o EE EmoEngineEventFree(). L’´unic argument ser`al’event que

volem alliberar.

• Finalment haurem de finalitzar la connexi´oiniciada anteriorment. La

funci´oa utilitzar, que no admet cap par`ametre, ´es EE EngineDisconnect()

124 Cap´ıtol 8

Planificaci´o

En tot projecte amb una m´ınima envergadura es fa necessari realitzar una planificaci´ode les tasques que s’han de dur a terme per tal de poder finalitzar- lo. La planificaci´otamb´e´es ´util per tal de determinar els diferents rols que hi han de prendre part i la c`arrega de treball que aquests assumeixen.

Al tractar-se d’un projecte realitzat per una sola persona que desenvolu- pa tots els rols, aix`orepercuteix en l’execuci´odel projecte en que totes les activitats es realitzen de forma seq¨uencialment. De totes maneres, all`aon hi ha la possibilitat de realitzar tasques en paral·lel aix´ıs’expressa. A continuaci´opresentem la planificaci´oinicial del projecte, indicant el nombre de dies previstos en les diferents tasques. Per a presentar les dades d’una forma m´es gr`afica utilitzem diagrames de Gantt. Per acabar, es pre- senten les tasques el temps d’execuci´ode les quals s’ha desviat m´es de la planificaci´oinicial.

125 8.1 Rols

Com a primer pas definim els diferents rols que participaran del projecte. Cada tasca posterior anir`aassociada a un d’aquests rols.

• Cap de projecte

• Analista

• Dissenyador

• Programador

• Provador

8.2 Tasques

El llistat de tasques, juntament amb el seu responsable i el nombre de dies planificat ´es el definit a la Taula 8.1:

La suma total del nombre de dies de les tasques ´es 116. Com que hem considerat un dia de feina com 5 hores, el total d’hores planificades ´es de 580.

Tot seguit es mostra el diagrama de Gantt corresponent (Figura 8.1):

8.3 Desviaci´ode la planificaci´o

Com ´es natural la planificaci´ono s’ha ajustat completament als temps que posteriorment ha requerit cada tasca. A continuaci´ollistem les principals

126 Tasca Rol Dies An`alisi d’antecendets Cap de projecte 25 Familiaritzaci´oamb el dispositiu Emotiv EPOC Cap de projecte 7 Planificaci´o Cap de projecte 1 Pressupost Cap de projecte 1 Model de requeriments Analista 3 Cas d’´us iniciar aplicaci´o Analista 1 Cas d’´us finalitzar aplicaci´o Analista 1 Cas d’´us navegar Analista 2 Cas d’´us saltar portal Analista 2 Cas d’´us disparar Analista 2 Model conceptual Analista 1 Diagrama de classes Dissenyador 2 Disseny del bucle principal Dissenyador 3 Disseny acci´ode disparar Dissenyador 3 Disseny acci´ode saltar portal Dissenyador 3 Disseny del format de fitxer del mapa Dissenyador 2 Implementaci´oc`arrega mapa Programador 2 Implementaci´onavegaci´o Programador 3 Implementaci´oanimaci´opersonatge Programador 3 Implementaci´oportals Programador 3 Implementaci´odisparar Programador 4 Implementaci´ointeracci´oentrada Emotiv EPOC. Programador 3 Proves del programa Provador 8 Proves de precissi´odel reconeixement expressiu Provador 3 Proves de precissi´odel reconeixement cognitiu Provador 3 Proves de precissi´ocombinades Provador 5 Redacci´ode la mem`oria Cap de projecte 20

Taula 8.1: Planificaci´ode les tasques

127 128

Figura 8.1: Diagrama de Gantt amb la planificaci´oinicial. desviacions respecte la planificaci´oinicial.

• An`alisi d’antecedents: El camp que aquest an`alisi tracta ha resultat ser m´es extens del que s’esperava, passant finalment el nombre de dies

invertits de 25 a 35.

• Proves precissi´od’accions cognitives: La necessitat d’un major nombre de proves del que inicialment s’havia previst, juntament amb el fet de

la poca velocitat amb la que es poden realitzar aquestes, ha portat aquesta tasca a allargar-se des dels 3 dies previstes inicialment fins a 12 dies.

• Proves de precissi´ocombinades: En aquest cas la desviaci´oha estat

pels mateixos motius que en l’anterior tipus de proves. De 5 dies s’ha passat a 10.

• Redacci´ode la mem`oria: La redacci´ode la mem`oria tamb´e ha resultat

ser una tasca m´es llarga i lenta del que s’havia previst, passant dels 20 dies previstos inicialment a 31 dies.

Aix´ı, finalment la c`arrega de treball ha estat de 149 dies, equivalent a 745 hores.

8.4 C`arrega de treball per rol

Tenint en compte la distribuci´ode les tasques segons els diferents rols, i la quantitat de feina que cada una d’aquestes tasques representa, calculem la

129 c`arrega de treball que hi ha per cada rol:

• Cap de projecte: 54 dies (270 hores).

• Analista: 12 dies (60 hores).

• Dissenyador: 13 dies (65 hores).

• Programador: 18 dies (90 hores).

• Provador: 19 dies (95 hores).

130 Cap´ıtol 9

Estudi econ`omic

A l’hora de realitzar l’estudi econ`omic d’aquest projecte s’ha de tenir en compte que aquest es troba en un `ambit d’investigaci´oi no ´es un subjecte susceptible de tenir una venda directa. La seva viabilitat econ`omica dep`en, doncs, de la viabilitat ´ultima de l’objectiu pel qual es dugui a terme aquest estudi. Tot i aix`o, s’efectua un an`alisi del cost econ`omic de l’an`alisi del producte i del desenvolupament del prototip tenint en compte els preus de mercat dels suposats empleats contractats, aix´ıcom el cost dels materials adquirits. El nombre d’hores per cada rol i tasca segueix all`odeterminat en la secci´o de planificaci´odel projecte.

131 Activitat Hores Cost/hora Cost Cap de projecte 270 hores 60 €/hora 16200 € Analista 60 hores 50 €/hora 3000 € Dissenyador 65 hores 50 €/hora 3250 € Programador 90 hores 40 €/hora 3600 € Provador 95 hores 25 €/hora 2375 € Total 580 hores 28425 €

Taula 9.1: Taula de costs en salaris 9.1 Cost en personal

El cost per hora de feina pressupostats per a cada rol s´on els seg¨uents:

• Cap de projecte: 60 €/hora.

• Analista: 50 €/hora.

• Dissenyador: 50 €/hora.

• Programador: 40 €/hora.

• Provador: 25 €/hora.

Com a resultat d’aix`o, obtenim el costs en salaris a la Taula 9.1.

9.2 Costos materials

Alguns dels costos materials i de manteniment no es poden avaluar exac- tament ja que bona part del projecte s’ha dut a terme en instal·lacions

132 de l’Universitat Polit`ecnica de Catalunya. A continuaci´os’exposen aquests costos materials quan es poden calcular i una aproximaci´oen cas contrari:

• Dispositiu: S’ha adquirit la versi´oeducativa del dispositiu Emotiv EPOC, que inclou el hardware i diverses eines d’an`alisi i configuraci´o.

El seu cost ´es de 1926 €(equivalent a $2500) [97].

• Maquinari: Es calcula un cost de manteniment d’uns 500 €anuals, su- posant el sistema operatiu Microsoft Windows incl`os en el cost d’ad-

quisici´o. Per tant, per un projecte de 6 mesos, el cost del maquinari ´es de 250 €.

• Instal·lacions i manteniment: Suposem un cost anual de 3000 €que inclogui el lloguer, el manteniment i els serveis necessaris. Per tant,

per a 6 mesos representa un cost de 1500

• Software: L’´unic programa de pagament que s’ha utilitzat, m´es enll`a del sistema operatiu i del software espec´ıfic del dispositiu, que ja s’han

comentat, ha estat la suite de desenvolupament Microsoft Visual Studio 2008 Professional Edition. El seu cost ´es d’uns 540 €(uns $700).

La suma del cost de tots aquests elements materials ´es la que trobem a la Taula 9.2

Finalment, tenint en compte tant els costos personals com els costos ma- terials, obtenim els costs totals a la Taula 9.3:

133 Element Cost Dispositiu 1926 € Maquinari 250 € Instal·lacions i manteniment 1500 € Software 540 € Total 4216 €

Taula 9.2: Cost dels diferents elements maeterials.

Costos personals 28425 € Costos materials 4216 € Total 32641 €

Taula 9.3: Suma dels diferents costs del projecte.

134 Cap´ıtol 10

Perspectives de futur

Un cop coneixem l’estat en el que actualment es troba aquesta tecnologia, procedim a intentar preveure quines perspectives de futur t´e: quines tasques pot ajudar a solucionar, tant en l’estat actual de la tecnologia com amb petites evolucions previsibles.

10.1 Donar ordres

Una de les principals possibilitats d’explotaci´od’aquest sistema ´es facilitant la creaci´od’ordres a un altre sistema. Un camp on aix`opot ser especial- ment ´util ´es l’assist`encia a persones amb mobilitat redu¨ıda, habitualment per malalties o lesions com tetrapl`egia, parapl`egia, par`alisi cerebral o algun tipus d’esclerosi. Algunes de les possibles aplicacions concretes d’aquest tipus s´on les seg¨uents:

135 • Control d’una cadira de rodes automatitzada: Els elements necessaris serien:

– Una cadira de rodes el`ectrica, del tipus que s’utilitza actualment amb un joystick per persones que no poden moure una cadira de

rodes convencional.

– Un dispositiu Emotiv EPOC.

– Un computador, preferiblement de mida petita perqu`epugui integrar- se b´eamb la cadira.

El computador disposaria d’un receptor USB pel mitj`adel qual re- bria les senyals enviades pel dispositiu Emotiv EPOC, i d’un port de

sortida que s’integraria amb la maquin`aria de la cadira de rodes, subs- titu¨ınt la funcionalitat del joystick. Executant-se al computador hi hauria un programa encarregat de llegir les dades enviades pel dispo-

sitiu, analitzar-les i generar la sortida adequada per a que la cadira de rodes faci l’acci´oque l’usuari indicava.

La interacci´oper part de l’usuari podria ser mitjan¸cant tant accions expressives com accions cognitives. Tot i que aquestes ´ultimes requeri-

rien de m´es entrenament, presentarien l’avantatge sobre el primer que no caldria mantenir una expressi´ofor¸cada durant molt de temps, doncs la naturalesa de l’´us de la cadira de rodes requereix ordres sostingudes

de manera prolongada en el temps.

Aquest sistema aconseguiria augmentar de forma notable la llibertat

136 de moviment del col·lectiu que no t´ecapacitat de controlar una cadira de rodes el`ectrica mitjan¸cant el joystick habitual.

• Control del computador: L’objectiu seria permetre utilitzar un compu- tador a persones sense la capacitat de gestionar les entrades habituals

de teclat i ratol´ı, utilitzant en comptes d’aquests dispositius l’Emotiv EPOC. Els elements necessaris serien:

– Ordinador a utilitzar.

– Un dispositiu Emotiv EPOC.

Es podria utilitzar el giroscopi per a controlar la posici´odel cursor, i accions expressives per a algunes ordres com fer clic. Per tal de poder

escriure caldria utilitzar algun dels teclats virtuals ja existents.

• Control de robots: En aquest cas l’objectiu seria permetre a persones amb mobilitat redu¨ıda el control de diversos aparells que els ajud´essin

a realitzar feines de casa. Els elements necessaris serien:

– Dispositiu Emotiv EPOC.

– Ordinador.

– Robot a controlar.

L’usuari utilitzaria el dispositiu Emotiv EPOC per donar ordres de ti-

pus expressiu o cognitiu al computador, que les analitzaria i transmitria

137 les ordres corresponents al robot mitjan¸cant una interf´ıcie construida per a l’ocasi´o.

Fora del camp de l’assist`encia a persones amb mobilitat redu¨ıda, una possible aplicaci´od’aquesta tecnologia per a donar ordres es pot donar en el camp de la realitat augmentada. En els usos en que s’utilitza un Head- mounted Display es podria aconseguir un ´us m´es natural, al no ser necessari per a que l’usuari interactu¨ı amb el sistema cap dispositiu de tipus m´es tradicional, en el que l’usuari ha d’utilitzar les mans.

10.2 Detecci´ode la son

Utilitzant el dispositiu Emotiv EPOC seria possible trobar els patrons d’ac- tivitat cerebral que es produeixen en el moment en que un usuari s’adorm, o els que emet en diferents fases de la son. A continuaci´oes detallen algunes de les possibles aplicacions pr`actiques d’aquestes deteccions.

10.2.1 Somnol`encia durant la conducci´o.

Cada any moren aproximadament 1.2 milions de persones al m´on degut a accidents de tr`ansit [98]. Tot i que no es disposa de dades a nivell global, l’American Academy of Sleep Medicine estima que la son ´es un factor deter- minat al 20% dels accidents greus als EUA [99]. Aix`oens mostra que la son al volant es tracta d’un greu problema, i una soluci´oa aquest problema seria molt beneficiosa.

138 Incloent un dispositiu similar a l’Emotiv EPOC als vehicles, per a l’´us del conductor, es podria analitzar la seva activitat cerebral i detectar una fase pr`evia a la son, per a aleshores generar algun tipus d’av´ıs que evit´es que el conductor continu´es el seu proc´es d’adormiment i aix´ıevitar el perill que suposa aquesta situaci´o.

10.2.2 Induir somnis l´ucids

Un somni l´ucid ´es un tipus de somni en el que s’´es conscient que s’est`a somniant. Aquest ´es un camp interessant per diferents grups de gent, per motius que van des de q¨uestions espirituals fins a un m`etode pel que reduir la problem`atica que es pot tenir amb els malsons. Actualment existeix un dispositiu que assegura poder convertir un somni normal en un somni l´ucid, donant una indicaci´olluminosa a l’usuari en el moment en el que detecta que entra en l’estat de la son REM [100]. Aquest dispositiu, per`o, no utilitza un dispositiu d’interf´ıcie ment-computador, amb el que tamb´eseria possible detectar l’estat REM, possiblement de manera m´es precisa.

139 10.3 Detecci´ode la resposta emotiva d’un usu-

ari

Un altre camp en el que es podrien trobar aplicacions per a un dispositiu del tipus de l’Emotiv EPOC ´es aquell en el que s’utilitza la resposta emotiva que es produeix en l’usuari al ser-li presentat algun tipus de situaci´oo context. Alguns exemples concrets s´on els que es mostren a continuaci´o.

10.3.1 Evoluci´od’imatges

L’objectiu d’aquesta aplicaci´oseria generar imatges que maximitzessin algu- na emoci´oen l’usuari. El proc´es seria el seg¨uent:

• Inicialment es presentaria una imatge generada de manera procedural, amb un important component d’aleatorietat, que s’establiria com a

base.

• A continuaci´oes mostrarien diverses variants d’aquesta imatge. Per a

cada una d’elles es detectaria, mitjan¸cant el dispositiu Emotiv EPOC, el valor de l’emoci´oseleccionada que t´el’usuari.

• Un cop esgotat el conjunt de variants per a la imatge base, es triaria

la que maximitz´es el valor de l’emoci´oseleccionada i s’establiria com a imatge base.

• Es repetirien els passos anteriors. El proc´es es podria repetir un nombre

140 fixat de cops o fins que cap imatge variant super´es el valor de la imatge base, de forma similar a un algorisme de cerca local del tipus Hill

Climbing.

Al finalitzar aquest proc´es s’aconseguiria una imatge que gener´es una certa emoci´odeterminada en l’usuari.

10.3.2 Usos judicials i d’investigaci´o

L’´us d’aquest tipus de dispositius tamb´epodria ser ´util en el camp de la investigaci´ojudicial i resoluci´ode culpabilitat d’un acusat. Es presenten dues aplicacions concretes amb possibilitats d’´us.

Detecci´ode mentides

Analitzant l’activitat cerebral durant l’interrogatori efectuat a un acusat, se- ria possible detectar patrons que diferenci´essin els casos en els que el subjecte de l’interrogatori contest´es respostes honestes dels casos en els que falt´es a la veritat.

Detecci´ode situacions familiars

L’objectiu d’aquesta aplicaci´oseria detectar la familiaritat de l’acusat amb el lloc del crim. A la vegada que tindria un dispositiu Emotiv EPOC o similar en ´us, se li mostrarien imatges de diverses situacions i contextos, entre les que estarien barrejades imatges del lloc del crim. Si l’acusat ´es culpable, ho

141 reconeixer`ai es produir`aen la seva ment una resposta emotiva que podr`a ser reconeguda mitjan¸cant el dispositiu. En canvi, si l’acusat ´es innocent no tindr`afamiliaritat amb el lloc del crim, i tamb´ees podr`a observar aix`oper a determinar la seva condici´ode no culpable.

Un producte similar a aquest existeix actualment, desenvolupat per la companyia Brain Fingerprinting Laboratories [101]

10.3.3 Classificaci´ode pel·l´ıcules

Normalment les pel·l´ıcules es cataloguen pel seu g`enere o `epoca, per`oun altre tipus de classificaci´oes podria realitzar amb un dispositiu que detecti les emocions que l’usuari genera durant la visualitzaci´od’una pel·l´ıcula. L’aplicaci´odetectaria diverses emocions, com l’alegria, la tristesa, la ten- si´oo la por, i compartiria els resultats amb un servidor central, que podria construir una base de dades i on es podria consultar les caracter´ıstiques de ca- da pel·l´ıcula en aquests termes o es podria fer una cerca segons les emocions que genera.

10.3.4 Resposta personalitzada de sistemes d’IA

Utilitzant un dispositiu Emotiv EPOC per a jugar a un videojoc, a banda de poder aprofitar les seves capacitats d’entrada d’informaci´outilitzant els m`etodes cognitiu o expressiu, es podria detectar l’estat an´ımic de l’usuari, i la resposta an´ımica a diferents successos en el joc per a oferir una resposta

142 de la intel·lig`encia artificial adaptada a l’usuari i a la situaci´oparticular.

143 144 Cap´ıtol 11

Conclusions

En aquest cap´ıtol es descriuen els objectius assolits en aquest PFC i les conclussions sobre les possibilitats del dispositiu.

11.1 Objectius assolits

Al cap´ıtol introductori d’aquesta mem`oria es presentava de forma general els objectius d’aquest projecte. A continuaci´oenumerem de forma m´es detallada els objectius espec´ıfics que s’han assolit:

• S’ha realitzat un estudi hist`oric sobre els m`etodes d’entrada a videojocs i entorns de realitat virtual.

• S’han estudiat les caracter´ıstiques del dispositiu Emotiv EPOC.

• S’ha estudiat la precissi´odel dispositiu Emotiv EPOC en el seu camp

145 d’accions expressives i cognitives, de forma separada i de forma con- junta.

• S’ha constru¨ıt un prototip de videojoc que ´es capa¸cd’utilitzar la infor- maci´oque rep del disposiu Emotiv EPOC com a ´unica entrada.

• S’ha estudiat quines perspectives de futur t´eaquest tipus de dispositiu.

11.2 Conclusions sobre el dispositiu

Durant el temps que ha durat el desenvolupament del projecte, s’ha pogut experimentar les caracter´ıstiques del dispositiu Emotiv EPOC. A continuaci´o s’exposen les principals conclussions a les que s’ha arribat despr´es d’aquest proc´es. Com es pot deduir de diversos punts de la mem`oria, i en especial de la

Secci´o2.1, dedicada al dispositiu Emotiv EPOC, aquest funciona i ´es possible utilitzar-lo per a determinades tasques. Tot i aix`o, el seu ´us implica diversos inconvenients, el m´es important dels quals ´es la relativa poca precissi´odel reconeixement d’accions cognitives, especialment quant se n’activen dues o m´es a la vegada. Es´ previsible, per`o, que en el futur ser`apossible millorar aquest reconeixement i dotar al dispositiu d’un bon reconeixement d’accions cognitives, aix´ıcom d’estats emotius, funcionalitat que tamb´erequereix d’una millora per a ser plenament usable. Un altre aspecte a destacar que dificulta l’adopci´od’aquest dispositiu per

146 un mercat majoritari ´es el temps requerit al principi de cada sessi´oen que s’utilitzar`a. Calen aproximadament 10 minuts abans de poder utilitzar-lo, principalment degut al proc´es d’humitejar les esponges i cargolar-les al casc. Aquest problema es pot veure alleugerit d’una manera important amb els sensors secs de pol´ımer en els que la companyia Emotiv est`atreballant i que preveu poder comen¸car a distribuir en un futur proper [102]. Per a segons quins mercats una dificultat que pot trobar l’adopci´ode l’Emotiv EPOC ´es el seu preu, que ´es de $299 en la seva versi´oper al consum [103]. Aquest cost pot ser assumible per al seu ´us en entorns de realitat virtual i usos per part d’empreses o acad`emics, per`o´es massa elevat per a la majoria d’usuaris de videojocs. Es´ previsible que la magnitud d’aquest problema vagi baixant a mesura que una major quantitat de fabricaci´opermeti que el preu disminueixi. Per acabar, un altre problema amb el que es troba l’adopci´od’aquest dispositiu ´es un del tipus de l’ou o la gallina, ja que la mateixa manca d’a- dopci´odel dispositiu provoca que hi hagi molt poc software preparat per a utilitzar-lo. Per a trencar aquesta din`amica la companyia encarregada del dispositiu ha creat el programa EmoKey, comentat tamb´ea la Secci´o2.1, i que permet utilitzar el dispositiu en programes no preparats expl´ıcitament per a utilitzar-lo, encara que els resultats que s’aconsegueixen no s´on equi- valents a una integraci´ovolunt`aria per part dels creadors del programa a utilitzar. D’aquesta manera, es pot resumir la situaci´oen que el dispositiu t´epoten-

147 cial per a canviar de forma important la manera en la que s’interactua amb entorns gr`afics. T´emolt cam´ıper avan¸car on trobar`aimportants dificultats d’adopci´o, encara que cap d’elles sembla irresoluble en aquests moments.

148 Ap`endix A

Manual d’´us

Per a aquest manual d’´us es pressuposa que tant els drivers del dispositiu com el prototip han estat correctament instal·lats amb anterioritat. Tamb´e es presuposa que es disposa d’un dispositiu Emotiv EPOC.

A.1 Preparaci´odel dispositiu

El primer que cal realitzar per a utilitzar el prototip ´es preparar el dispositiu Emotiv EPOC per a la seva utilitzaci´o. Els passos per a preparar-lo s´on els seg¨uents:

• Treure el casc, el receptor sense fils, el pot de l´ıquid conductor i les

esponges dels electrodes de la capsa.

• Connectar el receptor sense fils a un port USB del computador. Com- provar que emet llum mitjan¸cant un LED de color verd.

149 • Humitejar, amb el dispensador de gotes del pot de l´ıquid conductor, les 16 esponges de la caixeta.

• Inserir i enroscar les 16 esponges als corresponents espais del casc.

• Engegar el casc. Comprovar que la bateria no estigui descarregada. En

cas que ho estigui, carregar-la mitjan¸cant el cable USB.

• Col·locar el casc al cap, procurant que tots els sensors facin contacte amb el cuir cabellut.

• Executar el programa Control Panel del dispositiu. A la pestanya inicial, comprovar que la senyal de tots els sensors sigui bona (color

verd).

• Si algun sensor no rep bona senyal, intentar adaptar la seva posici´oma- nualment. Si el problema persisteix, retirar el casc del cap, desenroscar

el sensor, humitejar-lo m´es i repetir els passos anteriors.

Un cop tots els sensors rebin bon senyal, el dispositiu estar`apreparat per a ser utilitzat.

A.2 Entrenament

Si no s’han entrenat anteriorment les funcions cognitives del dispositiu, caldr`a fer-ho en aquest moment. Els pasos a realitzar s´on els seg¨uents:

150 • Si no actiu tenim el programa Control Panel, que hem executat abans, el seleccionem.

• Comprovar que tenim el nostre perfil seleccionat. Si no en tenim, en

creem un. A continuaci´oel seleccionem com actiu.

• Dins d’aquest programa, seleccionem la pestanya indicada amb el nom

Cogntiv Suite. Un cop all`aseleccionem la subpestanya Training

• A continuaci´opitjem el bot´omarcat amb Record Neutral, i no ens

concentrem amb cap acci´oconcreta, per tal d’entrenar l’estat neutral de la ment. Aquest entrenament t´euna durada de 30 segons.

• Un cop entrenat l’estat neutral de la ment, procedim a entrenar l’acci´o cognitiva que utilitzarem. Al men´udesplegable, seleccionem l’opci´o

Push i fem clic al bot´oindicat com Start Training. Durant els seg¨uents segons ens concentrem en el moviment cap endavant del cub que es pot

veure. Si al final d’aquests segons l’entrenament ha estat bo, ´es a dir, no ens hem distret, acceptem l’entrenament quan ens ho demani.

• Despr´es d’aix`oens dirigim a la pestanya Action i mirem el nivell d’en- trenament que hem assolit (valor de la barra de progr´es amb el nom

Skill Rating). Tornem al pas anterior i el repetim juntament amb aquest fins que aquest valor no hagi arribat a un m´ınim del 80

• Quan hem finalitzat l’entrenament de l’acci´ocognitiva, ens disposem a entrenar l’acci´oexpressiva. Seleccionem la pestanya Expressiv Suite, i

151 dins d’all`ala pestanya Training.

• De totes les accions del men´udesplegable, seleccionem Raise Brow i pitjem el bot´o Start Training. Durant els seg¨uents segons ens mantenim amb les celles elevades, fins que se’ns indiqui que l’entrenament ha

acabat.

• Repetim el pas anterior, per`oaquest cop amb l’acci´oexpressiva Smile.

A.3 Us´ del prototip

En aquest moment ja tenim el dispositiu preparat i entrenat per a executar el prototip. Per tant, el seg¨uent pas ´es l’execuci´ode la seva aplicaci´o. Aquesta s’obrir`aen mode pantalla completa, i ens trobarem en el rol del jugador en primera persona. Els controls, mitjan¸cant el dispositiu Emotiv EPOC s´on els seg¨uents:

• Rotar el cap, tant de manera vertical com horitzontal, per aconseguir una rotaci´oequivalent de la c`amera.

• Acci´ocognitiva d’emputjar per moure el personatge, i la c`amera, cap

endavant.

• Acci´oexpressiva d’al¸car les celles per a disparar. Aquesta acci´oes

mantindr`ade forma repetida mentre les celles es mantinguin al¸cades.

• Acci´oexpressiva de somriure per activar el salt als portals.

152 Utilitzant aquests controls es pot navegar pel mapa. Repartits pel mapa hi ha una s`erie d’enemics, als quals podem matar disparant-los. Observem tamb´eun conjunt d’esferes transparents verdes, que anomenem portals. En aquests portals tenim l’opci´ode transportar-nos de forma immediata a un altre portal.

153 154 Ap`endix A

Format de l’arxiu del mapa

A continuaci´os’especifica el format que ha de tenir l’arxiu del mapa que es carrega a l’inici de l’aplicaci´o. Recordem que el mapa consisteix en una matriu de cubs que poden tenir qualsevol dels seus costats s`olids, amb una textura a convenir. Al mapa hi ha altres elements com portals.

Els elements a contenir, en l’ordre indicat, s´on els seg¨uents:

• Dos nombres enters a la primera fila, que representen la mida del mapa

en l’eix x i z respectivament.

• Un nombre enter en una fila, que indica el nombre de diferents textures que s’utilitzen, amb un m`axim de 9.

• Una fila indicant el nom de l’arxiu que la cont´eper cada textura, de les que n’hi ha el nombre indicat anteriorment.

155 • Una fila amb quatre nombres decimals que indiquen les quatre compo- nents de la llum del mapa. Si el quart valor ´es 0, la llum ser`adireccional.

Si ´es 1, es tractar`ad’una llum posicional.

• Un nombre enter, en una nova l´ınia, que indicar`ael nombre de models

de cub diferents que contindr`ael mapa.

• Per cada model de cub, un nombre de 6 xifres, en el que cada una de les sis xifres indica la textura que s’utilitzar`aen una cara diferent. Un

valor de 0 representa la manca d’una cara s`olida en aquella posici´o. Un valor entre 1 i 9 representa l’´ındex de la textura que s’utilitzar`a, en

l’ordre especificat anteriorment. L’ordre de les cares ´es X+ Z+ Y+ X- Z- Y-.

• Una matriu de la mida del mapa, en la que cada element indica el cub

que s’utilitzar`aen aquella posici´o, dels diferents cubs definits anterior- ment, amb un ´ındex que s’inicia en 0.

• Un nombre enter, en una nova l´ınia, que indica el nombre de portals que hi ha al mapa.

• Per cada portal existent, un parell de valors decimals que indiquen les coordenades x i z de cada portal.

156 Bibliografia

[1] 1Up.com, Videogames turn 40 years old, http://www.1up.com/do/ feature?pager.offset=2&cId=3159462, consultat el dia 06/11/2009.

[2] Wikipedia, Joystick, http://en.wikipedia.org/wiki/Joystick, consultat el dia 06/11/2009.

[3] Wikipedia, Galaga, http://en.wikipedia.org/wiki/Galaga, con- sultat el dia 02/12/2009.

[4] Wikipedia, Microsoft flight simulator, http://en.wikipedia.org/

wiki/Microsoft_Flight_Simulator, consultat el dia 02/12/2009.

[5] Wikipedia, Light gun, http://en.wikipedia.org/wiki/Light_gun,

consultat el dia 06/11/2009.

[6] HowStuffWorks, How does the light gun for a video game work?, http:

//electronics.howstuffworks.com/question273.htm, consultat el dia 06/11/2009.

157 [7] Wikipedia, Magnavox odyssey, http://en.wikipedia.org/wiki/ Magnavox_Odyssey, consultat el dia 06/11/2009.

[8] Cnet, Fun with plastic–peripherals that changed gaming, pg 5, http: //news.cnet.com/2300-27076_3-10001507-5.html, consultat el dia

13/11/2009.

[9] Wikipedia, Guncon, http://en.wikipedia.org/wiki/GunCon, con- sultat el dia 06/11/2009.

[10] Wikipedia, Duck hunt, http://en.wikipedia.org/wiki/Duck_Hunt, consultat el dia 03/12/2009.

[11] Wikipedia, Time crisis, http://en.wikipedia.org/wiki/Time_ Crisis, consultat el dia 02/12/2009.

[12] Wikipedia, , http://en.wikipedia.org/wiki/Game_

controller, consultat el dia 09/11/2009.

[13] Wikipedia, Gamepad, http://en.wikipedia.org/wiki/Gamepad,

consultat el dia 09/11/2009.

[14] J. Honniball, Evolution of the game pad, http://www.gifford.co.

uk/˜coredump/gpad.htm, consultat el dia 09/11/2009.

[15] Wikipedia, Nintendo entertainment system, http://en.wikipedia. org/wiki/Nintendo_Entertainment_System, consultat el dia

09/11/2009.

158 [16] Wikipedia, Analog stick, http://en.wikipedia.org/wiki/Analog_ stick, consultat el dia 09/11/2009.

[17] A. Museum, Atari 2600 rc joysticks, http://www.atarimuseum. com/videogames/consoles/2600/2600rc.html, consultat el dia

09/11/2009.

[18] Wikipedia, Wivebird, http://en.wikipedia.org/wiki/WaveBird, consultat el dia 09/11/2009.

[19] Wikipedia, Xbox 360 controller, http://en.wikipedia.org/wiki/ Xbox_360_Controller, consultat el dia 09/11/2009.

[20] Wikipedia, Wii remote, http://en.wikipedia.org/wiki/Wii_ Remote, consultat el dia 09/11/2009.

[21] Cnet, Fun with plastic–peripherals that changed gaming, pg 3, http:

//news.cnet.com/2300-27076_3-10001507-3.html, consultat el dia 09/11/2009.

[22] Wikipedia, Apple pippin, http://en.wikipedia.org/wiki/Apple_ Pippin, consultat el dia 10/11/2009.

[23] Wikipedia, Super mario bros., http://en.wikipedia.org/wiki/

Super_Mario_Bros., consultat el dia 03/12/2009.

[24] Wikipedia, Tomb raider (video game), http://en.wikipedia.org/

wiki/Tomb_Raider_(video_game), consultat el dia 04/12/2009.

159 [25] Wikipedia, Fifa (series), http://en.wikipedia.org/wiki/FIFA_ (series), consultat el dia 04/12/2009.

[26] directory—M, Input devices, http://articles.directorym.com/ Input_Devices-a42.html, consultat el dia 10/11/2009.

[27] Wikipedia, Keyboard (computing), http://en.wikipedia.org/ wiki/Keyboard_(computing), consultat el dia 10/11/2009.

[28] PCGuide, 101-key enhanced keyboard layout, http://www.pcguide.

com/ref/kb/layout/stdEnh101-c.html, consultat el dia 10/11/2009.

[29] Wikipedia, First person shotter, http://en.wikipedia.org/wiki/

First_Person_Shooter, consultat el dia 10/11/2009.

[30] Buzzle.com, First person shooters: The mouse is king, http://www. buzzle.com/articles/first-person-shooters-mouse-king.html,

consultat el dia 10/11/2009.

[31] Wikipedia, Real-time strategy, http://en.wikipedia.org/wiki/

Real-time_strategy, consultat el dia 10/11/2009.

[32] Wikipedia, Mouse (computing), http://en.wikipedia.org/wiki/ Mouse_(computing), consultat el dia 10/11/2009.

[33] Wikipedia, Vtech socrates, http://en.wikipedia.org/wiki/VTech_ Socrates, consultat el dia 10/11/2009.

160 [34] G. Matthew Rorie, 2008 gaming mouse roundup, http://www. gamespot.com/features/6184762/index.html, consultat el dia

10/11/2009.

[35] Wikipedia, Racing wheel, http://en.wikipedia.org/wiki/http://

en.wikipedia.org/wiki/Racing_wheel, consultat el dia 11/11/2009.

[36] Frex, Force feedback wheel, http://www.frex.com/gp/ffbwheel/, consultat el dia 11/11/2009.

[37] Wikipedia, Wii launch, http://en.wikipedia.org/wiki/Wii_ launch, consultat el dia 12/11/2009.

[38] Cnet, Fun with plastic–peripherals that changed gaming, pg 16, http://news.cnet.com/2300-27076_3-10001507-16.html, consul- tat el dia 13/11/2009.

[39] I. Matt Casamassina, Making sense of the sensor bar, http://wii. ign.com/articles/748/748011p1.html, consultat el dia 12/11/2009.

[40] A. D. Howard Wisniowski, Analog devices and nintendo collaborati- on drives video game innovation with imems motion signals proces-

sing technology, http://www.analog.com/en/press-release/May_ 09_2006_ADI_Nintendo_Collaboration/press.html, consultat el dia 12/11/2009.

161 [41] Nintendo, Wii technical details, http://www.nintendo.co.uk/NOE/ en_GB/systems/technical_details_1072.html, consultat el dia

12/11/2009.

[42] Wikipedia, Wii sports, http://en.wikipedia.org/wiki/Wii_

Sports, consultat el dia 11/12/2009.

[43] G. Aaron Thomas, Medal of honor heroes 2 review for wii, http://www.gamespot.com/wii/action/medalofhonorheroes2/

review.html?om_act=convert&om_clk=gssummary&tag=summary;

read-review, consultat el dia 11/12/2009.

[44] Wikipedia, Let’s tap, http://en.wikipedia.org/wiki/Let’s_Tap, consultat el dia 11/12/2009.

[45] Wikipedia, Touchscreen, http://en.wikipedia.org/wiki/

Touchscreen, consultat el dia 13/11/2009.

[46] E. D. Hal Philipp, Please touch! explore the evolving world of touchs-

creen technology, http://electronicdesign.com/Articles/Index. cfm?AD=1&AD=1&ArticleID=18592, consultat el dia 13/11/2009.

[47] Wikipedia, Multi-touch, http://en.wikipedia.org/wiki/ Multi-touch, consultat el dia 13/11/2009.

[48] Wikipedia, Guncon, http://en.wikipedia.org/wiki/IPhone, con-

sultat el dia 06/11/2009.

162 [49] Wikipedia, Nintendo ds, http://en.wikipedia.org/wiki/ Nintendo_DS, consultat el dia 13/11/2009.

[50] Wikipedia, Pictochat, http://en.wikipedia.org/wiki/PictoChat, consultat el dia 14/12/2009.

[51] I. Levi Buchanan, Let’s golf iphone review, http://wireless.ign. com/articles/965/965051p1.html, consultat el dia 15/12/2009.

[52] Wikipedia, Accelerometer, http://en.wikipedia.org/wiki/

Accelerometer, consultat el dia 13/11/2009.

[53] E. Pietila, Wooden labyrinth 3d, http://www.elias.pietila.

fidisk.fi/labyrinth/Home.html, consultat el dia 11/12/2009.

[54] Wikipedia, Wii balance board, http://en.wikipedia.org/wiki/ Wii_Balance_Board, consultat el dia 13/11/2009.

[55] Cnet, Fun with plastic–peripherals that changed gaming, pg 2, http: //news.cnet.com/2300-27076_3-10001507-2.html, consultat el dia

13/11/2009.

[56] Wikipedia, Wii fit, http://en.wikipedia.org/wiki/Wii_Fit, con- sultat el dia 11/12/2009.

[57] Wikipedia, Dance pad, http://en.wikipedia.org/wiki/Dance_pad, consultat el dia 16/11/2009.

163 [58] Cnet, Fun with plastic–peripherals that changed gaming, pg 6, http: //news.cnet.com/2300-27076_3-10001507-6.html, consultat el dia

16/11/2009.

[59] Cnet, Fun with plastic–peripherals that changed gaming, pg 15,

http://news.cnet.com/2300-27076_3-10001507-15.html, consul- tat el dia 16/11/2009.

[60] Wikipedia, Drummania, http://en.wikipedia.org/wiki/

DrumMania, consultat el dia 16/11/2009.

[61] Wikipedia, Samba de amigo, http://en.wikipedia.org/wiki/

Samba_de_Amigo, consultat el dia 16/11/2009.

[62] Wikipedia, Dj hero, http://en.wikipedia.org/wiki/DJ_Hero, con- sultat el dia 16/11/2009.

[63] Cnet, Fun with plastic–peripherals that changed gaming, pg 17, http://news.cnet.com/2300-27076_3-10001507-17.html, consul-

tat el dia 16/11/2009.

[64] Wikipedia, Guitar hero, http://en.wikipedia.org/wiki/Guitar_

Hero, consultat el dia 14/12/2009.

[65] Wikipedia, Rock band, http://en.wikipedia.org/wiki/Rock_Band, consultat el dia 14/12/2009.

164 [66] Wikipedia, , http://en.wikipedia.org/wiki/ Game_Boy_Camera, consultat el dia 16/11/2009.

[67] NaturalPoint, How trackir works, http://www.naturalpoint.com/ trackir/02-products/product-how-TrackIR-works.html, consul-

tat el dia 16/11/2009.

[68] Wikipedia, Trackir, http://en.wikipedia.org/wiki/TrackIR, con- sultat el dia 16/11/2009.

[69] Freetrack, How does it work?, http://www.free-track.net/ english/freetrack/comment-ca-marche.php, consultat el dia

16/11/2009.

[70] G. Tom Kim, In-depth: Eye to eye - the history of eyetoy, http://www.

gamasutra.com/php-bin/news_index.php?story=20975, consultat el dia 17/11/2009.

[71] Wikipedia, Eyetoy, http://en.wikipedia.org/wiki/EyeToy, con- sultat el dia 17/11/2009.

[72] Cnet, Fun with plastic–peripherals that changed gaming, pg 13, http://news.cnet.com/2300-27076_3-10001507-13.html, consul-

tat el dia 17/11/2009.

[73] Cnet, Fun with plastic–peripherals that changed gaming, pg 18,

http://news.cnet.com/2300-27076_3-10001507-18.html, consul- tat el dia 17/11/2009.

165 [74] Wikipedia, Playstation motion controller, http://en.wikipedia. org/wiki/PlayStation_Motion_Controller, consultat el dia

17/11/2009.

[75] Cnet, Fun with plastic–peripherals that changed gaming, pg 20,

http://news.cnet.com/2300-27076_3-10001507-20.html, consul- tat el dia 17/11/2009.

[76] B. Dudley, E3: Microsoft xbox throws down gauntlet with

natal controller, http://seattletimes.nwsource.com/html/ technologybrierdudleysblog/2009286427_microsoft_xbox_

throws_down_gau.html, consultat el dia 17/11/2009.

[77] Microsoft, Project natal 101, http://download.microsoft. com/download/A/4/A/A4A457B3-DF5D-4BF2-AD4E-963454BA0BCC/

ProjectNatalFactSheetMay09.zip, consultat el dia 17/11/2009.

[78] Wikipedia, Project natal, http://en.wikipedia.org/wiki/

Project_Natal, consultat el dia 17/11/2009.

[79] G. Carrie Gouskos, Eyetoy: Play, http://www.gamespot.com/ps2/

action/eyetoy/review.html, consultat el dia 14/12/2009.

[80] G. Tim Tracy, Eyetoy: Kinetic, http://www.gamespot.com/ps2/ sports/eyetoykinetic/review.html?tag=tabs;reviews, consultat

el dia 14/12/2009.

166 [81] Wikipedia, Tony hawk’s american wasteland, http://en.wikipedia. org/wiki/Tony_Hawk’s_American_Wasteland, consultat el dia

14/12/2009.

[82] J. C. Lee, Projects - wii, http://johnnylee.net/projects/wii/, consultat el dia 21/12/2009.

[83] Wikipedia, Augmented reality, http://en.wikipedia.org/wiki/ Augmented_reality, consultat el dia 17/11/2009.

[84] Wikipedia, Head-mounted display, http://en.wikipedia.org/wiki/ Head_Mounted_Display, consultat el dia 17/11/2009.

[85] B. A. Parviz, Augmented reality in a contact lens, http://spectrum.ieee.org/biomedical/bionics/

augmented-reality-in-a-contact-lens/0, consultat el dia 17/11/2009.

[86] N. Y. Ryuhei Tenmoku, Masayuki Kanbara, A wearable augmen- ted reality system for navigation using positioning infrastructures

and a pedometer, http://delivery.acm.org/10.1145/950000/ 946812/20060344.pdf?key1=946812&key2=6811458521&coll=

GUIDE&dl=GUIDE&CFID=63604291&CFTOKEN=17565512, consultat el dia 18/11/2009.

[87] B. Sterling, Augmented reality: Nokia indoor positio- ning, http://www.wired.com/beyond_the_beyond/2009/09/

167 augmented-reality-nokia-indoor-positioning/, consultat el dia 18/11/2009.

[88] U. of South Australia, Arquake, http://wearables.unisa.edu.au/ arquake/index.html, consultat el dia 18/11/2009.

[89] Wikipedia, Speech recognition, http://en.wikipedia.org/wiki/ Speech_recognition, consultat el dia 18/11/2009.

[90] Wikipedia, Singstar, http://en.wikipedia.org/wiki/SingStar,

consultat el dia 18/11/2009.

[91] Wikipedia, Socom: U.s. navy seals, http://en.wikipedia.org/wiki/

SOCOM:_U.S._Navy_SEALs, consultat el dia 09/12/2009.

[92] Wikipedia, Comparison of consumer brain-computer interface de- vices, http://en.wikipedia.org/wiki/Comparison_of_consumer_

brain-computer_interface_devices, consultat el dia 18/11/2009.

[93] Wikipedia, Emotiv systems, http://en.wikipedia.org/wiki/

Emotiv_Systems, consultat el dia 18/11/2009.

[94] Starlab, The portable wireless eeg system, http://www.starlab.es/ products/enobio, consultat el dia 01/07/2010.

[95] OpenGL.org, Opengl overview, http://www.opengl.org/about/ overview/, consultat el dia 14/09/2010.

168 [96] K. A. Mark Segal, The opengl graphics system specification, http:// www.opengl.org/registry/doc/glspec21.20061201.pdf, consultat

el dia 14/09/2010.

[97] E. Systems, Emotiv epoc software development kit - education edi-

tion, http://www.emotiv.com/apps/sdk/181/, consultat el dia 29/07/2010.

[98] O. M. de la Salut, Informe mundial sobre prevenci´on de los trauma-

tismos causados por el tr´ansito, http://www.who.int/violence_ injury_prevention/publications/road_traffic/world_report/

es/index.html, consultat el dia 20/09/2010.

[99] M. Hoeffel, Lack of sleep caused 250,000 vehicle accidents last year, http://www.examiner.com/work-life-balance-in-mesa/

lack-of-sleep-caused-250-000-vehicle-accidents-last-year, consultat el dia 20/09/2010.

[100] L. Institute, Novadreamer lucid dream induction device, http://www. lucidity.com/novadreamer.html, consultat el dia 21/09/2010.

[101] B. F. Laboratories, Brain fingerprinting - executive summary, http: //www.brainwavescience.com/ExecutiveSummary.php, consultat el dia 21/09/2010.

169 [102] E. Systems, Comentari d’un membre d’emotiv relatiu als sen- sors de pol´ımer., http://www.emotiv.com/forum/messages/forum4/

topic646/message3702/#message3702, consultat el dia 20/10/2010.

[103] E. Systems, Epoc neuroheadset, http://www.emotiv.com/store/

hardware/299/, consultat el dia 20/10/2010.

170