ver/abrir - Repositório do Departamento de Ciência da Computação
Transcrição
ver/abrir - Repositório do Departamento de Ciência da Computação
Universidade de Brasília Instituto de Ciências Exatas Departamento de Ciência da Computação O controle em suas mãos: a evolução da interação entre jogador e videogame Ricardo Tavares Medeiros Monograa apresentada como requisito parcial para conclusão do Curso de Computação Licenciatura Orientador Prof. Dr. Marcus Vinicius Lamar Coorientador Prof. Ms. Ticiano Augusto Callai Bragatto Brasília 2011 Universidade de Brasília UnB Instituto de Ciências Exatas Departamento de Ciência da Computação Curso de Computação Licenciatura Coordenador: Prof. Dr. Homero Luiz Piccolo Banca examinadora composta por: Prof. Dr. Marcus Vinicius Lamar (Orientador) CIC/UnB Prof. Ms. Ticiano Augusto Callai Bragatto (Coorientador) CIC/UnB Prof. Dr. Carla Denise Castanho CIC/UnB CIP Catalogação Internacional na Publicação Medeiros, Ricardo Tavares. O controle em suas mãos: a evolução da interação entre jogador e videogame / Ricardo Tavares Medeiros. Brasília : UnB, 2011. 96 p. : il. ; 29,5 cm. Monograa (Graduação) Universidade de Brasília, Brasília, 2011. 1. jogo eletrônico, 2. controlador, 3. reconhecimento de gestos, 4. interação homem-computador, 5. interfaces CDU 004.4 Endereço: Universidade de Brasília Campus Universitário Darcy Ribeiro Asa Norte CEP 70910-900 BrasíliaDF Brasil Universidade de Brasília Instituto de Ciências Exatas Departamento de Ciência da Computação O controle em suas mãos: a evolução da interação entre jogador e videogame Ricardo Tavares Medeiros Monograa apresentada como requisito parcial para conclusão do Curso de Computação Licenciatura Prof. Dr. Marcus Vinicius Lamar (Orientador) CIC/UnB Prof. Ms. Ticiano Augusto Callai Bragatto (Coorientador) Prof. Dr. Carla Denise Castanho CIC/UnB CIC/UnB Prof. Dr. Homero Luiz Piccolo Coordenador do Curso de Computação Licenciatura Brasília, 14 de fevereiro de 2011 Dedicatória Quando penso em alguém só penso em você... iv Agradecimentos Primeiramente ao deus Crom, que, do alto de sua montanha, me ajudou não enviando nenhum raio para me fulminar. Ao caríssimo professor Lamar, não apenas por dividir seus conhecimentos e propor desaos interessantes, mas por ser a pessoa certa, na hora certa, com uma senha de root. Ao professor Ticiano, que me mostrou que a melhor forma de tirar uma dúvida é frente a frente e que 0,001 é uma quantidade que pode fazer toda a diferença. À professora Carla, não apenas por sua espetacular revisão, mas também por, numa única reunião, lançar alguns dos alicerces deste trabalho. Ao meu lho Howard, o melhor modelo fotográco que já passou pela face da Terra. Ao meu irmão Marcos, o pior modelo fotográco que já passou pela face da Terra. A Carlos, Edward, Chris, Yang Hu e Paul Murray, por possibilitar que tediosas horas em trânsito fossem convertidas em proveitosos momentos de instrução. Ao comando de greve dos funcionários da Universidade de Brasília, por dar oportunidade para que este trabalho fosse nalizado após o lançamento de v Move e Kinect. Resumo Desde a criação dos primeiros jogos há uma preocupação real com o modo de interação com o jogador. A tecnologia evolui, as pessoas mudam e, consequentemente, os seguem na mesma linha. games E é preciso chegar a modos de interação que integrem todas as variáveis (tecnologia disponível, jogadores e tipos de jogos). Aí entra o controle de videogame. Evoluindo de componentes eletrônicos simples ora com mudanças triviais, ora com reestruturação total até o estágio atual (onde convivem numa paz desconfortável os controles tradicionais, os controles de captura de movimento e os controles de reconhecimento de gestos), os controles de videogame têm uma história fascinante que deve ser conhecida para que se possa saber quais serão os próximos passos. O passo mais recente é o do reconhecimento de gestos por visão computacional. Como tecnologia nova, surgem questões a responder, como a viabilidade deste tipo de interação e a possibilidade de adaptação de jogos que já existem para este novo tipo de interface. Assim, será proposta e analisada uma conversão para uma interface gestual de um tipo muito peculiar de jogo: os jogos de luta. Palavras-chave: jogo eletrônico, controlador, reconhecimento de gestos, interação homem- computador, interfaces vi Abstract Since the establishment of the rst games there is a real concern with the mode of interaction with the player. The technology evolves, people change, and consequently, the games follow the same line. And we must reach the modes of interaction that incorporate all the variables (available technology, players and game types). Then comes the video game controller. Evolving from simple electronic components now with trivial changes, sometimes with total restructuring until the current stage (where live in an uneasy peace the traditional controls, controls, motion capture and gesture recognition controls), controls videogame has a fascinating story that should be known so that we can know what the next steps. The latest step is the gesture recognition by computer vision. As new technology, there are questions to be answered, such as the feasibility of such interaction and the possibility of adapting games that already exist for this new type of interface. Thus, it is proposed and analyzed a conversion to a gestural interface to a very peculiar kind of game: ghting games. Keywords: videogame, gamepad, gesture recognition, HCI, interfaces vii Sumário 1 Introdução 1 1.1 Objetivo geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Objetivo especíco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.3 Organização do trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1 A pré-história: . . . . . . . 2.1.1 . . . . . . . 5 . . . . . . . 6 . . . . . . . . . . . . . . . . . . . . . . . . 8 2 A história dos controles de videogame 2.1.2 2.2 2.3 2.4 2.5 2.6 2.7 paddles e re buttons . . . . . . . . . . . . . . The rst well known action based computer game [72] Os arcades . . . . . . . . . . . . . . . . . . . . . . . . . Os videogames entram em cena 4 O primeiro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2.2 Um dos controles mais populares [79] . . . . . . . . . . . . . . . . 10 gamepad Zapper . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.3.1 Nintendo e o padrão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.3.2 Sega VS Nintendo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 shoulder buttons . . . . . . . . . estação de jogo da Sony . . . . . . . . . . Nintendo 64: alavancas, gatilhos e tremores 2.6.1 DUALSHOCK . . . . . . . . . . . . SNES e os . . . . . . . . . . . . . . . . . 15 A . . . . . . . . . . . . . . . . . 17 . . . . . . . . . . . . . . . . . 18 . . . . . . . . . . . . . . . . . 20 Fim de uma guerra, início de outras . . . . . . . . . . . . . . . . . . . . . . 21 DUALSHOCK 2 . . . . . . . cubo . . . . . . . . . . . . . 2.7.3 A caixa . . . . . . . . . . . . Xbox 360 e o início da geração atual . 2.8.1 Nintendo Wii e o Wii Remote 2.8.2 Playstation 3 e o SIXAXIS . . 2.7.1 2.9 4 2.2.1 2.7.2 2.8 2 O . . . . . . . . . . . . . . . . . . . . . 22 . . . . . . . . . . . . . . . . . . . . . 23 . . . . . . . . . . . . . . . . . . . . . 24 . . . . . . . . . . . . . . . . . . . . . 25 . . . . . . . . . . . . . . . . . . . . . 26 . . . . . . . . . . . . . . . . . . . . . 31 Portáteis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9.1 Virtual Boy: 33 34 2.9.2 O universo do portáteis em três letras: GBA [74] 2.9.3 DS: aprendendo com os erros . . . . . . . . . . 36 . . . . . . . . . . . . . . . . . . . . . . . . . . 37 . . . . . . . . . . . . . . . . . . . . . . . . . . 37 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 2.9.4 Dual Screen . . . Playstation de bolso 2.9.5 3DS e NGP 2.10 Guitarras de plástico 2.10.1 2.10.2 2.10.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Herói da Guitarra . . . . . . . . . Rock Band: mais instrumentos . . Rock Band 3: instrumentos reais . viii 40 . . . . . . . . . . . . . . . . . . . 41 . . . . . . . . . . . . . . . . . . . 42 . . . . . . . . . . . . . . . . . . . 44 2.10.4 Adaptações para portáteis 2.11 Novos controles 2.11.1 2.11.2 . . . . . . . . . . . . . . . . . . . . . . . 44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 . . . . . . . . . . . . . . 47 . . . . . . . . . . . . . . 48 Move e a terceira dimensão do movimento Kinect: o controle não está em suas mãos . 3 O poder da imagem 50 3.1 OpenCV 3.2 Protótipos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.2.1 Modelo base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.2.2 Protótipo 1: . . . . . . . . . . . . . . . . . . . . . . . . 52 3.2.3 Protótipo 2: . . . . . . . . . . . . . . . . . . . . . . . . 54 3.2.4 Protótipo 3: . . . . . . . . . . . . . . . . . . . . . . . . 55 3.2.5 Protótipo 4: . . . . . . . . . . . . . . . . . . . . . . . . 57 4 Resultados 4.1 4.2 4.3 4.4 BlueDot . . PongCV . . Kontornu . MotionCIC BlueDot . . PongCV . . Kontornu . MotionCIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 64 65 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4.4.1 Ações durante os saltos . . . . . . . . . . . . . . . . . . . . . . . . . 68 4.4.2 Abaixar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 4.4.3 Defesa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 5 Conclusão 5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Trabalhos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Referências A Denições B Código fonte do modelo base ix 70 71 73 77 80 Lista de Figuras 1.1 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 2.12 Cena do lme De volta para o futuro II [12]. Tennis for two [72]. . . . . . . . . . . . . . . . Fire button com o polegar direito [64]. . . . . . Paddle com a mão direita [64]. . . . . . . . . . Spacewar! [62]. . . . . . . . . . . . . . . . . . Controle de Spacewar! [72]. . . . . . . . . . . . Arcade de Computer Space [64]. . . . . . . . . Arcade de Pong [62]. . . . . . . . . . . . . . . Arkanoid [62]. . . . . . . . . . . . . . . . . . . Diversos arcades que simulam ações reais [63]. Brown Box [78]. . . . . . . . . . . . . . . . . . Controle do Odyssey 100 [64]. . . . . . . . . . Joystick do Atari 2600 [61]. . . . . . . . . . . 2.13 Posição obrigatória de uso [61]. 2.14 2.15 2.16 2.18 2.20 2.21 2.22 2.23 2.24 2.25 2.26 2.27 2.28 2.29 2.30 2.31 1 . . . . . . . . . . . . . . . . 5 . . . . . . . . . . . . . . . . 5 . . . . . . . . . . . . . . . . 5 . . . . . . . . . . . . . . . . 6 . . . . . . . . . . . . . . . . 6 . . . . . . . . . . . . . . . . 7 . . . . . . . . . . . . . . . . 7 . . . . . . . . . . . . . . . . 7 . . . . . . . . . . . . . . . . 8 . . . . . . . . . . . . . . . . 9 . . . . . . . . . . . . . . . . 9 . . . . . . . . . . . . . . . . 11 . . . . . . . . . . . . . . . . . . . . . . . . 11 . . . . . . . . . . . . . . . . . . . . . . . . . 11 . . . . . . . . . . . . . . . . . . . . . . . . . 12 . . . . . . . . . . . . . . . . . . . . . . . . . 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Joystick do Atari 5200 [5]. . . Portátil Game & Watch [64]. . O primeiro gamepad [61]. . . . 2.17 Polegares livres [61]. 2.19 . . . . . . . . . . . . . . . . . Joystick do Atari 7800 [9]. . . . . . . . . . . . . . . . . . . Zapper [7]. . . . . . . . . . . . . . . . . . . . . . . . . . . . Gamepad do Master System [61]. . . . . . . . . . . . . . . Gamepad do Mega Drive [62]. . . . . . . . . . . . . . . . . Gamepad do Super Nintendo [61]. . . . . . . . . . . . . . . Shoulder buttons [61]. . . . . . . . . . . . . . . . . . . . . . Multitap [62]. . . . . . . . . . . . . . . . . . . . . . . . . . Super Scope [64]. . . . . . . . . . . . . . . . . . . . . . . . Super NES Mouse [64]. . . . . . . . . . . . . . . . . . . . . Gamepad de seis botões do Mega Drive [62]. . . . . . . . . Gamepad do Atari Jaguar[62] . . . . . . . . . . . . . . . . Primeiro gamepad do Playstation [61]. . . . . . . . . . . . . Shoulder buttons duplicados [61]. . . . . . . . . . . . . . . Os símbolos adotados nos re buttons do gamepad como . . . . . . . . . 12 . . . . . . . . . 13 . . . . . . . . . 14 . . . . . . . . . 14 . . . . . . . . . 15 . . . . . . . . . 15 . . . . . . . . . 16 . . . . . . . . . 16 . . . . . . . . . 16 . . . . . . . . . 16 . . . . . . . . . 16 . . . . . . . . . 17 . . . . . . . . . 17 identidade da marca [66]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Playstation usados universalmente (assim como Pac-Man) [4, 61]. Gamepad do Saturn [64]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nintendo 64: quatro entradas para gamepad [62]. . . . . . . . . . . . . . . 18 2.32 Símbolos do 18 2.33 18 2.34 x 19 2.35 2.36 2.37 2.38 2.39 2.40 2.41 2.42 2.43 2.44 2.45 2.46 2.47 2.48 2.49 2.50 2.51 2.52 2.53 2.54 2.55 2.56 2.57 2.58 2.59 2.60 2.61 2.62 2.63 2.64 2.65 2.66 2.67 2.68 2.69 2.70 2.71 2.72 2.73 2.74 2.75 2.76 2.77 2.78 2.79 Gamepad do Nintendo 64 [61]. . . . . . . . . . . . . . . . . . . . . . . . . . Slot para acessórios e o trigger button Z [61]. . . . . . . . . . . . . . . . . . Primeira forma de utilização do Gamepad do Nintendo 64 [61]. . . . . . . . Segunda (e mais utilizada) forma de utilização do Gamepad do Nintendo 64 [61]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rumble Pak [64] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gamepad do Saturn para o jogo NiGHTS into Dreams... [62]. . . . . . . . . Dual Analog Controller [62]. . . . . . . . . . . . . . . . . . . . . . . . . . . Dualshock [17]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gamepad do Dreamcast [61]. . . . . . . . . . . . . . . . . . . . . . . . . . . Slots para acessórios [61]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Quatro portas para gamepads [62]. . . . . . . . . . . . . . . . . . . . . . . . DUALSHOCK 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EyeToy [64]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gamepad do GameCube [61] . . . . . . . . . . . . . . . . . . . . . . . . . . Botão Z reposicionado [61]. . . . . . . . . . . . . . . . . . . . . . . . . . . . Primeira versão do gamepad de Xbox [62]. . . . . . . . . . . . . . . . . . . . Segunda versão do gamepad de Xbox [62]. . . . . . . . . . . . . . . . . . . . Gamepad do Xbox 360 [36]. . . . . . . . . . . . . . . . . . . . . . . . . . . . Chatpad [64]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Wii Remote. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Trigger button B. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Movimentos captados pelo Wii Remote [44]. . . . . . . . . . . . . . . . . . Wii Remote como gamepad. . . . . . . . . . . . . . . . . . . . . . . . . . . Classic Controller [62] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Classic Controller Pro [64]. . . . . . . . . . . . . . . . . . . . . . . . . . . . Compatibilidade com o gamepad do GameCube [44]. . . . . . . . . . . . . . Nunchuck. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Formato anatômico e trigger buttons. . . . . . . . . . . . . . . . . . . . . . Frente do Wii Wheel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Verso do Wii Wheel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Wii Zapper [64]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Envólucros diversos para Wii Remmote[62]. . . . . . . . . . . . . . . . . . . SIXAXIS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Trigger buttons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Teclado wireless para PS3. . . . . . . . . . . . . . . . . . . . . . . . . . . . Microvision [64]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Game Boy [62]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Lynx [74]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Game Gear [74]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nomad [74]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Virtual Boy [62]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Game Boy Color [64]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Game Boy Advance [64]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . Game Boy Advance SP [62]. . . . . . . . . . . . . . . . . . . . . . . . . . . Game Boy micro [62]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi 19 19 19 19 20 20 21 21 22 22 22 23 23 24 24 25 25 26 26 26 28 28 29 30 30 30 31 31 32 32 32 32 33 33 33 34 34 34 35 35 35 35 36 36 36 Nintendo DS [62]. . . . . . . . . . . . . . . . . . . . . . . . . . Nintendo DS Lite [64]. . . . . . . . . . . . . . . . . . . . . . . 2.82 Playstation Portable [62]. . . . . . . . . . . . . . . . . . . . . . 2.83 PSP Go [62]. . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.84 Nintendo 3DS [62]. . . . . . . . . . . . . . . . . . . . . . . . . 2.85 NGP dois direcionais analógicos e tela sensível a toque. [62]. 2.86 NGP touch pad na parte traseira. [62]. . . . . . . . . . . . . 2.87 Arcade de Guitar Freaks [63]. . . . . . . . . . . . . . . . . . . 2.88 Guitarra de Guitar Freaks [63]. . . . . . . . . . . . . . . . . . 2.89 Guitarra de Guitar Hero para PS2 [62]. . . . . . . . . . . . . . 2.90 Guitarra de Guitar Hero II para Xbox 360 [64]. . . . . . . . . 2.91 Guitarra de Guitar Hero 3 para Wii [62]. . . . . . . . . . . . . 2.92 Instrumentos de Rock Band [64]. . . . . . . . . . . . . . . . . . 2.93 Instrumentos de Guitar Hero World Tour [64]. . . . . . . . . . 2.94 Instrumentos MIDI reais de Rock Band 3 [62]. . . . . . . . . . 2.95 Bateria de Band Hero para DS [64]. . . . . . . . . . . . . . . 2.96 Guitarra de Band Hero para DS [62]. . . . . . . . . . . . . . 2.97 Move [62]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.98 Navigation Controller [64]. . . . . . . . . . . . . . . . . . . . . 2.99 Acessório de tiro para Move [62]. . . . . . . . . . . . . . . . . 2.100 Kinect [61]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.101Jogo de dança para Kinect [61]. . . . . . . . . . . . . . . . . . 2.80 . . . . . . . 38 2.81 . . . . . . . 38 . . . . . . . 39 . . . . . . . 39 . . . . . . . 40 . . . . . . . 40 . . . . . . . 40 . . . . . . . 41 . . . . . . . 41 . . . . . . . 42 . . . . . . . 42 . . . . . . . 42 . . . . . . . 43 . . . . . . . 43 . . . . . . . 45 . . . . . . . 46 . . . . . . . 46 . . . . . . . 47 . . . . . . . 48 . . . . . . . 48 . . . . . . . 49 . . . . . . . 49 3.1 Fundo em escala de cinza. 3.2 Imagem de interesse. 3.3 Imagem de interesse em escala de cinza. . . . . . . . . . . . . . . . . . . . 53 3.4 Diferença entre o fundo e a imagem (em escala de cinza). . . . . . . . . . . 54 3.5 Limiarização. 54 3.6 Erosão. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 3.7 Dilatação. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 3.8 Contorno. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 . . . . . . . . . . . . . . . . . . . . . 55 3.10 Rebatida na bola. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 3.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pong com reconhecimento de gestos. 3.11 Linhas delimitadoras da área de jogo. . . . . . . . . . . . . . . . . . . . . . 56 3.12 Assistente de captura de contorno. . . . . . . . . . . . . . . . . . . . . . . 56 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 3.13 Contorno capturado. 3.14 Tela do jogo Kontornu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 3.15 Pontos a comparar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 3.16 Margem de erro ampliada. . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 3.17 Enquadramento inicial com contorno. . . . . . . . . . . . . . . . . . . . . . 60 3.18 Enquadramento inicial. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 3.19 Soco com contorno. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 3.20 Soco. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 3.21 Chute com contorno. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 3.22 Chute. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 3.23 Salto com contorno. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 xii 3.24 Salto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 3.25 Abaixado com contorno. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 3.26 Abaixado. 3.27 Soco abaixado com contorno. 3.28 Soco abaixado. . . . . . . . . . . . . . . . . . . . . . . . . . 62 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 4.2 Trapaça possível em PongCV. Bola presa no contorno. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 4.3 Taxa de erro alta: contornos bem diferentes. . . . . . . . . . . . . . . . . . 67 4.1 . . . . . . . . . . . . . . . . . . . . . . . . . 66 xiii Capítulo 1 Introdução De volta para o futuro II [12], quando Marty McFly (que viajou no DeLorean voador) está no Café Anos 80, depara-se com dois garotos que conseguem fazer funcionar um antigo arcade do jogo Wild Gunman [2]. Vendo que os garotos não sabem como o game ou a máquina funcionam, Marty se Em uma cena do lme tempo até 2015 num automóvel oferece para demonstrar: empunha com destreza a pistola que compõe o gabinete e acerta 1 quatro inimigos com tiros certeiros, deixando clara sua familiaridade com o jogo . Os garotos, no entanto, com expressões de desdém, argumentam: Garoto 1: Quer dizer que tem que usar as mãos? Garoto 2: É igual a um brinquedo de bebê... A expressão que Marty faz é de que não entende como eles podem falar algo assim de um jogo tão interessante quanto aquele. E, certamente, foi o mesmo sentimento que muitos outros gamers da época tiveram ao assistir a essa cena2 , resumida na Figura 1.1. Ainda que tenha se formado, nos últimos anos, uma forte relação entre cinema e videogames, detalhada em outros trabalhos [67, 74], o ponto mais importante da cena, dentro desta análise, é a previsão, com acurária considerável, do rumo que tomariam as tecnologias alternativas para a interação entre jogador e jogo. O lme sugere que, em 2015, não será preciso ter nenhum acessório nas mãos para jogar. Não é indicada como seria essa interface, mas é certo que o reconhecimento de gestos é uma das opções. Esta tecnologia, entre outras, é utilizada hoje nos consoles de videogame das empresas Playstation 3) e Microsoft (responsável pelo Xbox 360), que recentemente lançaram novos periféricos (Move e Kinect, respectivamente, detalhados na Seção Sony (fabricante do 2.11) que substituem os controles tradicionais em determinados jogos (ao que tudo indica, em resposta ao sucesso alcançado pela Nintendo, com seu console que capturam os movimentos do usuário, denominados Wii e seus controles Wii Remotes, conforme será visto na Seção 2.8.1). 1 A escolha desse jogo foi estratégica, já que o fato de Marty jogá-lo preservou uma característica notória da série De volta para o futuro: ter cenas parecidas em contextos diferentes. Por exemplo, na De volta para o futuro III [13], Marty também demonstra sua destreza com uma sequência desse lme, arma real, além de participar de um duelo no estilo do jogo. 2 Como várias outras desse lme, esta sequência é uma brincadeira do diretor Robert Zemeckis, que cita ou mostra como seriam (ou como deixariam de ser) muitas coisas no ano de 2015 em comparação com 1985 (ano em que o primeiro lme da série estreou). 1 Figura 1.1: Cena do lme De volta para o futuro II [12]. Apesar de não ser algo novo (a Sony já havia tentado algo semelhante anteriormente, como veremos na Seção 2.7.1), o reconhecimento de gestos por meio de imagens parece vir, em sua essência, para conquistar jogadores casuais, público-alvo da Nintendo desde o lançamento do Wii [82]. Sony e Microsoft, no entanto, esforçam-se para mostrar que essa evolução também beneciará os jogadores Playstation 3 e Xbox 360. hardcore, cuja preferência é disputada entre Assim, inevitavelmente, outros estilos de jogos, voltados para esse público mais exigente e tradicional (que, via de regra, não vê essas mudanças com bons olhos), começarão a ser testados e produzidos para uso com as novas interfaces. 1.1 Objetivo geral Neste trabalho serão vericadas as soluções empregadas na interação entre jogador e videogame, por meio de um levantamento histórico e análise das especicações dos principais controles. Essa trajetória culmina no lançamento mais recente o 2 Kinect , que faz uso de reconhecimento de gestos. A partir daí, também será vericado quão viável é o uso dessa tecnologia em jogos eletrônicos. 1.2 Objetivo especíco games, também será analisada a possibilidade de conversão de um tipo especíco de jogo os games de luta Além de avaliar a viabilidade do uso de reconhecimento de gestos em para que os métodos convencionais de entrada (botões e direcionais) sejam substituídos por gestos. C, Para isso, foram desenvolvidos quatro protótipos em linguagem uso da biblioteca de visão computacional OpenCV3 executados em um computador equipado com uma capturadas as imagens). O primeiro protótipo o BlueDot com o [65] (apresentada na Seção 3.2.5), webcam padrão (com a qual serão tem o objetivo primário de mover um ponto horizontalmente, de acordo com a movimentação dos elementos focados pela webcam. Apesar da simplicidade, este protótipo tem a função de mostrar, passo a passo, as técnicas utilizadas em todos os protótipos. O segundo protótipo o PongCV é uma conversão, para uso de reconhecimento de gestos, de um dos primeiros (e, também, mais simples) jogos de sucesso: ser conhecido na Seção 2.1.2). Os elementos que representam os jogadores no Pong (a game são substituídos pela imagem das mãos do jogador, obedecendo às mesmas regras. Kontornu , totalmente baseado nas características das técnicas apresentadas no protótipo BlueDot. O objetivo é capturar O terceiro protótipo introduz um jogo original o um contorno prévio de um elemento da imagem e, num segundo momento, igualar este contorno em outra imagem. O quarto protótipo o MotionCIC é um simulador de eventos de um jogo de luta de estilo tradicional, com uso de reconhecimento de gestos. O objetivo é identicar gestos especícos do jogador (como socos, chutes e saltos) e convertê-los em entradas correspondentes no simulador. O jogo escolhido para ter seus eventos analisados foi o ers [86], a ser descrito na Seção 3.2.5. CICFight- O protótipo, no entanto, não é, de nenhuma forma, integrado ao jogo. Um ponto, como no protótipo BlueDot, movimenta-se horizontalmente, mas também possui outras ações (como mudar de cor) de acordo com as ações do jogador. 1.3 Organização do trabalho Este trabalho é dividido, além desta introdução, em outros quatro capítulos. O Capítulo 2 faz uma revisão histórica das formas de interação entre o jogador e o videogame para identicação de padrões adotados em cada época. No Capítulo 3 é apresentada a biblioteca OpenCV e descritos os protótipos criados para estudo. No Capítulo 4 são analisados os resultados dos testes nos protótipos e o Capítulo 5 tem as conclusões e sugestões de trabalhos futuros. São utilizadas, nesta análise, palavras e expressões (em português ou não) que são jargões do contexto dos jogos eletrônicos e seus usuários. São usados, também, termos 3 Um estudo mais aprofundado da biblioteca OpenCV e de diversas técnicas de reconhecimento de gestos com uso de visão computacional pode ser visto em [71]. 3 com sentidos amplos, mas de forma especíca. Uma lista, com as denições que serão consideradas no escopo deste trabalho, pode ser consultada no apêndice A. No que se refere ao protótipo MotionCIC, é fato que alguns movimentos, como socos e chutes, são intuitivos e captam bem a essência de um jogo de luta. Mas isso é suciente para substituição de direcionais e botões? 4 Capítulo 2 A história dos controles de videogame Este capítulo resgata os principais fatos na história dos controles de videogame. É um assunto vasto, ainda que, normalmente, seja coadjuvante em trabalhos relacionados a games, ou sequer haja uma menção explícita a respeito. Os trabalhos sobre controles são escassos, mas mostram que há muito que se estudar a respeito. Diversas reportagens e notícias em revistas voltadas a assuntos tecnológicos, informática e ciência ajudaram na reconstrução desta linha do tempo. Cabe menção honrosa ao artigo de James Gilmor [75], que rememora os principais controles, apresentando comentários e opiniões muito bem feitos (ainda que, infelizmente, não informe suas fontes). Vale, no entanto, citar uma de suas frases: Foram-se os dias em que os controles eram tão crus quanto os avatares manip- ulados, quando Y era o único eixo com que controle sem o signicava sintonizar o seu você precisava se preocupar e quando rádio em Desert Island Discs1 . Mas, para descobrir para onde estamos indo, precisamos, primeiro, estabelecer de onde viemos. 2 É uma máxima sensata. E é por onde este trabalho começa. 2.1 A pré-história: paddles e re buttons O primeiro jogo de computador foi nis for Two [sic] Tennis Programming3 , também conhecido como Tên- [74] (Figura 2.1). Para interagir, o jogador tinha em mãos uma caixa de controle improvisada com dois botões (um paddle e um de botão de ação), ligada ao computador por um o. 1 Desert Island Discs é um programa de rádio criado em 1942 no Reino Unido e que, até hoje, traz, a cada programa, um convidado que escolhe oito álbuns musicais que levaria para um ilha deserta. 2 Tradução livre. 3 Tennis for Two foi feito como demonstração para deixar mais interessantes as visitas ao National Laboratory (onde foi desenvolvido). Brookhaven Um jogo de tênis era mostrado de uma perspectiva lateral. Um ponto brilhante (com um rastro que evidenciava sua trajetória recente) representava a bola, que se movimentava de um lado para o outro. Uma pequena linha vertical no eixo Y do osciloscópio em que era exibido representava a rede (onde a bola podia bater), outra linha na parte de baixo, paralela ao eixo X, representava o solo (onde a bola podia quicar). Tinha regras semelhantes à do tênis original, mas sem cômputo de pontos. Não havia um elemento na tela que representasse o tenista: bastava que a bola chegasse ao lado da tela dominada pelo jogador para que pudesse ser rebatida. 5 Com o botão giratório ajustava-se o ângulo em que a bola seria rebatida para o outro lado da quadra. O re button dava o comando para rebater. Era necessário segurar o controle com uma das mãos de forma que o polegar casse livre para usar o botão de ação. A outra mão dedicava-se exclusivamente ao paddle. Vale ressaltar que, conforme Cummings [72], Os primeiros jogos baseados em computador não tiveram nenhum equipamento especial projetado. Rodavam no que estivesse disponível na instituição onde eram desenvolvidos (normalmente computadores ou ociloscópios) e usavam interruptores digitais ou botões ligados a resistores variáveis como entrada. 4 Um aspecto interessante é que o jogador tinha liberdade para escolher como o seguraria. Independente da posição do controle, as funções dos botões permaneciam inalter- 5 adas . Além de uma questão de preferência, era uma característica inclusiva, já que pouco importava se o jogador era destro ou canhoto: bastava segurar o controle da forma que achasse mais conveniente, sem a obrigatoriedade de usar determinado botão com uma mão especíca, conforme Figuras 2.2 e 2.3. Figura two [72]. 2.1: Tennis for Figura Fire button 2.2: com o polegar direito [64]. Figura 2.3: Paddle com a mão direita [64]. Mesmo com o relativo sucesso que o jogo fez entre os visitantes do Brookhaven National Laboratory, Willy Higinbothan nunca patenteou o jogo ou controle [74]. 2.1.1 The rst well known action based computer game [72] Spacewar!6 , conforme Como o computador DEC PDP-1 do MIT (Massachusetts Institute of Tecnology, Um pouco mais complexo e especializado era o controle utilizado em Figura . onde o jogo foi criado) não tinha mais que simples interruptores no console frontal (o que fazia com que um jogador atrapalhasse a visão do outro), foi desenvolvido, conforme Figura 2.5, um controle composto de duas alavancas de duas vias e um botão simples: cinco funções distintas. A nave podia movimentar-se para a frente (mais especicamente, 4 Tradução livre. 5 Para o botão de ação isso é bem claro, mas também ocorria com o paddle, onde o que importava eram os movimentos em sentido horário e anti-horário, que não mudam independente da posição do controle 6 Criado em 1962 por Stephen Russel, Peter Samson, Dan Edwards, Martin Graetz, Alan Kotok, Steve Piner e Robert A. Saunders (assim como Tennis for Two, com o intuito de estimular o interesse das pessoas pela informática nascente) [74], era um jogo em que duas naves espaciais moviam-se pelo campo gravitacional de uma estrela, lançando torpedos para acertar o adversário e evitando o contato com o astro. 6 para onde apontasse sua parte frontal), girar em seu eixo nos dois sentidos, soltar torpedos e usar um hyperspace (função que gerava um movimento aleatório da nave para fugir de um ataque, por exemplo) [72]. É importante notar que há uma semelhança com o jogo Tennis for Two, considerando que ambos pre- cisam prover um tipo de controle rotacional. Num primeiro momento, pode-se questionar o motivo de não usar um paddle também para Spacewar!, dada a praticidade que essa forma de controle gerava no jogo criado por Higinbothan. O fato é que a nave espacial não poderia ter um limite de movimentação que era característico (ou, pelo menos, não era um empecilho) Figura 2.4: Spacewar! [62]. na escolha do ângulo no jogo de tênis. Outra comparação que pode ser feita entre for Two e Spacewar! Tennis é que, no segundo caso, o jogador tem um avatar que se move na tela. Não é, no entanto, uma movimentação intuitiva, já que ir para a esquerda, por exemplo, não é uma ação simples: é preciso girar a nave em um sentido (que será escolhido de acordo com a posição atual da nave e da urgência envolvida), atentando para não passar do ponto, e depois acelerar. É algo um tanto complicado num primeiro momento, evidenciando que a facilidade de interação não foi um aspecto de peso no desenvolvimento do game. Um jogo recente que usou um conceito de movimentação semelhante foi Resident Evil7 . O personagem do jogo só se movimenta para frente e para trás. Os comandos de movimentação lateral faziam com que o avatar girasse em seu eixo até car de frente para o lado para o qual se desejava ir. Era algo desajeitado e lento, e a sensação era mais como dirigir um tanque de guerra que controlar uma pessoa [72]. Seriam necessários mais alguns anos para que os jogos de computador deixassem de ser curiosidades e chegassem ao público como meio de entrenimento. E, como computadores ainda eram absurdamente caros, era necessário que fossem criadas versões com a função exclusiva de jogar. Figura 2.5: Spacewar! [72]. Controle de A ideia do aparelho de videogame doméstico estava surgindo. Mas, antes, os jogos eletrônicos começaram a se popularizar por meio de outros equipamentos. 2.1.2 Os arcades Stanford desenvolveram, em 1971, uma versão do jogo SpaceGalaxy Game, onde o jogador precisava inserir moedas na máquina para Foi o primeiro arcade de que se tem notícia, já com tela de CRT (cathode Estudantes da Universidade war!, chamada poder jogar. ray tube, tubo de raios catódicos). No mesmo ano, o estadunidense Nolan Bushnell também criou sua versão do jogo, Computer Space (Figura 2.6), que foi o primeiro arcade produzido em massa. O jogo era controlado de forma semelhante aos vários botões de 7 Capcom, 1996. 7 Spacewar!. Dada a já citada complexidade dos controles de movimentação da nave, não fez muito sucesso. Mas abriu caminho para este tipo de entretenimento. No ano seguinte, após o desenvolvimento do jogo Pong [1] (Figura 2.7), Bushnell e Ted Dabney fundaram a empresa Atari. É importante notar que um dos motivos do grande sucesso desse game foi a simplicidade tanto do jogo quanto dos controles: a interação se dava por meio de um paddle para cada um dos dois jogadores, que só precisavam se preocupar com um único eixo de movimentação. O jogo simulava a visão superior de uma partida de tênis de mesa (ou ping pong). Uma bola era rebatida de um lado ao outro da tela (por cima de uma rede representada por uma linha vertical que, diferente do jogo real ou até do clássico Tennis for Two , não interage de nenhuma forma com a bola) por traços móveis nas laterais da tela que representavam o jogador. Foi, de certa forma, um retrocesso em relação aos jogos já citados, já que o visual do jogo foi simplicado ao extremo (diferente da detalhada nave do jogo feito no MIT, o avatares não têm qualquer relação com mesatenistas e a bola era quadrada), além da movimentação restrita (só era possível mover-se para cima ou para baixo, diferente da nave de Spacewar!, que podia ir para qualquer ponto da tela). A assimilação quase imediata do modo de controle do jogo Pong, entretanto, garantiu-lhe um papel bem mais relevante na história dos jogos eletrônicos. Esse conceito de simplicidade nunca deixou de ser considerado, sobretudo em mais simples. Um bom exemplo é o jogo games Arkanoid [8], cujo objetivo é rebater uma bola com uma espécie de plataforma na parte de baixo da tela até acertar todos os elementos mostrados na tela sem deixar que a bola caia (Figura 2.8). Arcade de Computer Space [64]. Figura 2.6: Figura 2.7: Pong [62]. Arcade de Figura 2.8: Arkanoid [62]. Nos anos seguintes surgiriam jogos onde a movimentação era feita não por meio de paddles (ainda que esses meios não tenham sido descartados), mas com o uso manche, o joystick. Na prática, nada mais era que uma forma simplicada de botões ou de um acessar quatro botões para as direções cima, baixo, esquerda e direita, com a vantagem 8 8 de deixar o acesso às diagonais variedade de movimentos (em mais otimizado. Spacewar! e em Se, numa primeira análise, perdeu-se Tennis For Two podia-se escolher, em tese, qualquer ângulo de movimentação da nave ou da bola, respectivamente), ganhou-se 9 extrema precisão . joystick O também impedia que funções de movimentação inversa fossem acessadas concomitantemente. Os re buttons mantiveram suas funções, apenas variando em quantidade. 10 Em outros gêneros , começaram a surgir máquinas cada vez mais elaboradas, com o intuito não apenas de hospedar o jogo, mas de transportar o jogador para o universo do game. Começaram a surgir máquinas gigantescas que simulam carros, motos e outros veículos em jogos de corrida (com volantes, pedais, marchas e equivalentes). Jogos de tiro (como o já citado Wild Gunman [2]) com pistolas, espingardas e metralhadoras idênticas skate, snowboard, futebol, dança e muitos outros surgiram com às reais. Jogos de turfe, experiências de interação quase reais, com controles especialmente adaptados aos jogos, conforme Figura 2.9. A popularização dos consoles domésticos, no entanto, minou pouco a pouco esse ramo. Hoje, os arcades foram quase esquecidos fora do Japão (onde não apenas sobrevivem, mas têm popularidade crescente [87]). A maioria dos bons jogos migrou para os videogames e 11 muitos outros só não caíram no esquecimento por esforços de emulação desses games em outras plataformas, sobretudo o computador. As ideias diferenciadas de interação com o jogador, porém, nunca foram deixadas de lado. 2.2 Os videogames entram em cena Os bons resultados do jogo Pong mostraram que o entrenimento eletrônico era algo a ser explorado. Mesmo antes disso, o alemão Ralph Baer já havia patenteado, em 1968, o Brown Box, o primeiro protótipo de um videogame (que incluía até uma espécie de espingarda como acessório para jogos de tiro) [78], conforme Figura 2.10. Baer apresentou seu invento a diversas empresas estadunidenses de eletrônicos. E a Magnavox investiu em sua ideia. 2.2.1 O O primeiro Odyssey 100 foi lançado em 1972 pela empresa Magnavox. Seu controle consistia de uma caixa de cor bege com dois paddles em posições opostas [79], conforme Figura 2.11. reset, que tinha funções variadas conforme Na parte superior havia um outro botão, o o jogo (saque da bola no jogo de tênis, por exemplo, mas a maioria dos jogos não o utilizava). 8 O uso de movimentação em diagonal começou a ser cada vez mais comum nos jogos. Uma movimentação com botões independentes requereria o apertar simultâneo de dois deles. 9 As possibilidades resumiram-se a oito ângulos ou direções: as quatro básicas dos eixos do plano de uma tela bidimensional e as quatro diagonais 10 Há divergências quanto à classicação dos jogos [67, 74], havendo, inclusive, diculdades atuais de fazer tal denição, dada a mistura ou alternância de experiências de jogo dos games atuais. 11 Há uma série de aspectos legais e de direitos autorais envolvidos em emulação de jogos que não serão tratadas neste trabalho. 9 Figura 2.9: Diversos arcades que simulam ações reais [63]. O videogame não foi bem aceito, apesar das boas vendas iniciais. Um grande avanço foi a adoção de um sistema unicado para vários jogos, trocados por meio de cartuchos: os jogos tinham que ser desenvolvidos de acordo com as vantagens e limitações do controle. Entretanto teve, também, grandes retrocessos, como o fato de não computar os pontos 10 Figura 2.10: Brown Box [78]. Figura 2.11: Controle do Odyssey 100 [64]. (os jogos, num total de doze, vinham com formulários padronizados para contagem de placar) e gráco pobres (também eram fornecidos Os paddles horizontal [79]. serviam para movimentação. overlays12 ) [74]. Um provia movimento vertical e o outro, Mais uma vez, o jogador tinha liberdade para escolher com que mão usaria cada botão. Apesar do pouco sucesso e dos jogos ruins, pela primeira vez (mesmo antes que os arcades) um controle utilizou um esquema de movimentação que hoje parece óbvio, mas que levou anos para ser adotado: cima, baixo, esquerda e direita. 2.2.2 Um dos controles mais populares [79] Atari VCS (Video Computer System), posteAtari 2600. Esse console fez enorme sucesso após a adaptação de games populares dos arcades para o aparelho doméstico. Em 1977 a Atari de Bushnell lança o console riormente renomeado para Em seu estudo sobre a violência nos jogos eletrônicos, Lynn Alves [67] entrevista alguns jovens identicados sob pseudônimos. Segundo um dos jovens, [...] Outro dia, quando instalei um emulador de Atari, Caótico, consegui que meu pai jogasse comigo. [...] Antes ele jogava comigo, mas hoje ele tem preconceito com os jogos recentes porque têm muito comando [...] é muita concentração [...] Atari não: você tem um botão, um direcional, e você desenvolve o jogo todo, não precisa nem fazer pontos [...] O conceito de sucesso como consequência de simplicidade não cou restrito aos primeiros jogos. E simplicidade era a característica primordial do controle do Atari 2600: um manche para a movimentação nas quatro direções do plano da tela e um único botão de ação, conforme Figura 2.12. Por denição, um joystick. Cabe uma observação importante: o jogador era obrigado a reservar a mão esquerda para o botão e a direita para o manche [3], conforme Figura 2.13. Pela primeira vez, o jogador teria formas de aprendizagem diferenciadas, dependendo de qual fosse sua mão dominante. O jogador precisaria se adaptar ao controle e não o inverso. Para os jogos da época, o manche como o clássico 13 e um re button eram sucientes. Alguns jogos, Pac-Man [4], sequer faziam uso do botão de ação. 12 Plásticos coloridos que simulavam o ambiente do jogo, que deviam ser colocados na tela da TV. No jogo de tênis, por exemplo, havia um overlay verde que representava a quadra. Spacewar! 13 Toda a sequência de movimentos necessários para levar a nave de trocados por um único movimento na alavanca direcional 11 para a esquerda foram O controle também tinha pouca durabilidade [79]. 5200, Uma versão posterior, o Atari já tinha um controle mais reforçado (que tinha a interessante possibilidade de ser guardado dentro do console) e dois re buttons (possibilitando jogos um pouco mais complexos) [5]. A independência de mão dominante do jogador voltou a ser considerada, 14 já que os botões cavam nas laterais, dois de cada lado, com as mesmas funções . Tinha, também, duas mudanças consideráveis: a adoção de um teclado numérico (estilo telefone, usado em alguns jogos, mas que posteriormente caiu em desuso) e a inclusão de três botões adicionais: start (para iniciar um jogo), pause (para pausar e retomar o jogo) e reset (para cancelar um jogo e reiniciá-lo), conforme Figura 2.14. Essas mudanças davam ao jogador maior liberdade, tanto de car mais distante do console (já que poderia reiniciar o jogo diretamente do joystick e não no console, como ocorria no anterior) e poderia parar o jogo por um momento e retomá-lo depois. Figura 2.13: Posição obriFigura 2.12: Joystick Atari 2600 [61]. do gatória de uso [61]. Figura 2.14: Atari 5200 [5]. Joystick do Esse transporte de funções de gerenciamento (e não apenas execução) do jogo para o controle seria uma constante a partir daí. Mas essa ideia não chegou a ser amplamente divulgada, já que o Atari 5200, mesmo com capacidade para rodar jogos melhores, não fez muito mais que adaptar os jogos já lançados. O chamado crash dos videogames15 se aproximava. 2.3 Nintendo e o padrão gamepad Uma antiga empresa japonesa de fabricação de cartas de baralho, a Nintendo, entrou no mercado de games no nal dos anos 1970 [68], começando com anos 1980, a Nintendo lançou o portátil Game & Watch arcades. No início dos (detalhado na Seção 2.9), que trazia uma característica muito especial: com o portátil encaixado nas palmas das mãos, a movimentação era feita por meio de um direcional digital em forma de cruz, conforme 14 Foi uma solução inclusiva, mas não, necessariamente, sensata, já que, a não ser em uma residência com gamers destros e canhotos, dois botões sempre cariam ociosos. 15 Período por volta de 1984 em que o mercado foi saturado de jogos de péssima qualidade e o com- putador pessoal começou a se tornar uma realidade. Como o PC tinha muito mais funcionalidades que um videogame e também poderia ser utilizado como plataforma de jogo, por um preço equivalente, os consumidores perderam o interesse por consoles. 12 Figura 2.15. Era, na verdade, uma peça que unia quatro botões, um para cada direção dos dois eixos da tela. Posicionado à esquerda da face do aparelho, era utilizado com o polegar correspondente. Os re buttons e option buttons, na parte oposta, eram acessados pelo outro polegar. Essa disposição dos botões impedia o jogador de escolher como jogar: posicionar as mãos e dedos era imposta. Como os a forma de re buttons exigiam rapidez, destreza e precisão nas ações [81], a mão dominante deveria ser reservada para usá-los. Para a movimentação, que, normalmente, consistia de pressões prolongadas nos direcionais e poucas mudanças, cou a outra mão. posições, os Como o modelo não permitia o uso em outras gamers canhotos voltaram a ser desconsiderados. O que é inegável é que o ganho em precisão foi fantástico, pois uma única peça substituiu o que, até então, era a função de dois paddles. Esse conceito foi mantido quando, em 1983, a Nintendo lançou no Japão o console Famicom (acrônimo de family computer). Seu controle, extremamente simples, era retan- Game & Watch: um direcional digital em forma de cruz à esquerda e dois re buttons (A e B), à direita, conforme Figura 2.16. Dois option buttons cavam no centro [6]. O modo de segurar este controle o primeiro que se pode chamar de gamepad também era análogo, com o controle encaixado nas palmas gular e mantinha o padrão usado nos portáteis das duas mãos de forma a deixar os dois polegares livres para utilizar os botões, conforme a Figura 2.17. Figura Figura 2.15: Portátil 2.16: O gamepad [61]. primeiro Figura 2.17: Polegares livres [61]. Game & Watch [64]. Nintendo Entertainment System, ou simplesmente NES , teve algumas modicações em seu design. As mudanças, tanto no console quanto no gamepad, foram apenas estéticas (no caso do úlQuando o console foi lançado nos Estados Unidos, com o nome de 16 timo, apenas na cor). Entretanto essa foi a versão desse controle que, efetivamente, cou 17 para a história . Um ponto importante a salientar: os option buttons. Esse botões, que antes cavam exclusivamente nos consoles, já estavam migrando para os controles, logo seu uso e suas gamepad do NES, estes botões receberam as denominações de select (à esquerda), que deveria herdar a função análoga da chave game select do Atari funções não eram novidade. No 16 No Brasil, este console é conhecido entre os gamers, até hoje, como Nintendinho. 17 No jogo Wii Music [50], onde o jogador simula o uso de diversos instrumentos musicais com os Wii Remote e do Nunchuck (descritos na Seção 2.8.1), há um instrumento de sopro gamepad do NES. O som emitido lembra os utilizados nos primeiros jogos da Nintendo. movimentos do formato do 13 no 2600 (mudar o nível de diculdade de um mesmo jogo [5, 6]), e start (à direita), que assumiria a função de iniciar a partida. Este tipo de botão já era utilizado no do Atari 5200 (Figura 2.14), mas a versão posterior, o Atari 7800, joystick teve uma redução drástica na quantidade de botões do controle (dispensando o teclado numérico e os botões duplicados (Figura 2.18), além de substituir os em telas especícas [9]). Os option buttons por comandos com o joystick option buttons começaram a extrapolar esses co- mandos básicos e universais para assumir funções especícas que variavam conforme o game. O botão start, por exemplo, tornou-se o botão padrão para a função de pausa durante o jogo e, posteriormente, acesso a um menu de opções durante uma pausa. O uso de menus em lista (percorridas com o direcional digital e com opções selecionadas por um re button ou o botão camente dispensou o uso do botão select. start) prati- Mas seu uso durante os jogos conferiu-lhe tal importância que, mesmo Figura 2.18: 7800 [9]. Joystick do Atari tendendo a ser o botão menos utilizado do gamepad, não foi dispensado. Como já explicado, um botão de ação a mais proporcionava maior complexidade aos jogos: no jogo Super Mario 3 [11], em condições normais, um botão servia para pular e o outro, para aumentar a velocidade de movimentação do personagem - ambas as funções poderiam ser usadas ao mesmo tempo. Mas, conforme o avatar do jogador coletava itens ou acessava determinadas áreas, as funções mudavam. O botão de pulo poderia servir para nadar ou voar, conforme o ambiente ou o item coletado. O botão de velocidade servia para segurar determinados itens, abrir baús em fases especiais, soltar poderes e dar golpes como consequência da coleta de um item especial. Eventualmente, o uso de funções simultâneas acessadas por um mesmo botão - soltar uma bola de fogo enquanto corre, por exemplo poderia ajudar o jogador, mas seria algo impossível de fazer com aquele gamepad. Esse foi um ponto (dentre muitos) que levaria ao desenvolvimento de uma nova plataforma de jogo. 2.3.1 Zapper Foi lançada, como acessório para o NES, uma pistola de plástico para uso em jogos de tiro, chamada Zapper. Ligada à entrada do se- gundo gamepad [7], era composta de um único botão o gatilho, conforme Figura 2.19 e tinha um sensor especial na parte que imitava o cano da arma. Seu funcionamento consistia de apontar para o alvo (que variava conforme o jogo) e atirar. O modo de funcionamento deste controle foge um pouco ao que se pode imaginar, num primeiro momento. Tudo está relacionado com emissão e captação de luz. Mas a arma, 14 Figura 2.19: Zapper [7]. ao invés de emissora, como é natural que se imagine, é a receptora da luz. Quando o gatilho é pressionado, toda a tela muda numa fração de segundo, de modo que os alvos continuam emitindo luminosidade, mas todo o fundo ca negro. Se o sensor estiver apontado para a luz, capta esta informação e envia ao console, que interpreta que o alvo foi atingido [78]. Como botões extras e um controle direcional em uma pistola deixariam a experiência menos real, havia o problema de utilizar um único botão para controlar o jogo (não apenas para mais comandos no jogo, como a recarga da arma, mas também funções de seleção e início de partida). Uma solução foi atribuir o uso do gatilho com a pistola apontada para fora da tela como um segundo comando. Logo, na tela de escolha de modo de jogo, um tiro para fora mudava a seleção e um na tela, selecionava a opção [7]. Durante um jogo, a pressão do gatilho apontado para a tela era o comando natural para a simulação de um tiro no jogo. Para fora, o comando para recarga do pente de balas. Jogos desse estilo já existem desde a década de 1930, inicialmente emitindo feixes de Brown Box adotava o mesmo processo usado no NES Zapper. luz a ser captados por alvos. O já citado tinha uma tipo de espingarda que O uso de controles semelhantes persiste até hoje, sobretudo em arcades. A adoção em consoles passou a ser algo raro, dadas as enormes quantidade de comandos extras necessários nos jogos atuais: além de mirar e disparar, há movimentação e saltos por cenários, coleta e uso de itens, troca de arma, combate corpo-a-corpo, etc. 2.3.2 Sega VS Nintendo arcades, lançou o videogame Master System em 1985, tentando aproveitar o sucesso que o NES estava alcançando. A empresa Sega, que, assim com a Nintendo, trabalhava com Seu controle não trazia novidades, muito próximo ao do NES. Na verdade, houve re buttons à direita, 1 e 2, e um direcional option buttons, conforme Figura 2.20. É fato que esses um retrocesso, já que, mesmo com dois digital à esquerda, não tinha botões poderiam facilmente ter suas funções subtituídas pelos botões de ação antes do jogo começar, mas, iniciada a partida, comando preciosos relacionados aos option buttons cavam complicados ou não existiam nos jogos do console. O console foi mal-sucedido nos Estados Unidos, mas obteve relativo sucesso na Europa e foi muito bem recebido no Brasil [74], onde é comercializado até hoje 18 . O mal resultado, entretanto, estimulou a Sega a lançar, em 1988, o primeiro console da geração seguinte: o Genesis, conhecido no Brasil como Mega Drive. Seu controle tinha um formato curvado, como um quarto de lua, com a concavidade para baixo, conforme Figura 2.21. O formato dava mais segurança ao manuseio e era mais confortável. O gamepad persistiu, mas agora com três re buttons (A, B e C) e um inédito option button: start. padrão Essa disputa fez com que, em 1990, fosse lançado o sucessor do NES. 18 O sucesso foi tal que muitos jogos foram localizados traduzidos para português e outros, adaptados. Wonder Boy in Monster Land [10] , que teve a arte alterada e cou conhecido Mônica no Castelo do Dragão, com os tradicionais personagens do desenhista brasileiro Um exemplo clássico é o jogo no Brasil como Maurício de Sousa. 15 Figura 2.20: tem [61]. Gamepad do Master SysFigura Gamepad 2.21: Drive [62]. do Mega 2.4 SNES e os shoulder buttons Lançado em novembro de 1990, o Super Nintendo Entertainment System se tornaria o videogame mais vendido da história por um bom tempo. Milhares de jogos foram lançados, aproveitando a maior capacidade de processamento [74]. Seu controle foi uma evolução direta do gamepad do NES. O direcional digital e os option buttons foram mantidos, com start já padronizado como botão para pausar o jogo [14]. Teve o número de botões triplicado, conforme Figura 2.22. Foram incluídos dois re buttons à face do controle, denominados X e Y (além dos legados A e B). E a grande novidade: a introdução dos shoulder buttons, botões alongados que, como o nome sugere, cam nos ombros do controle. Esses novos botões deveriam ser apertados com os dedos indi- cadores (Figura 2.23), diferentemente dos demais botões via de regra, acessados com os polegares. Figura 2.22: tendo [61]. Gamepad do Super Nin- Figura 2.23: Shoulder buttons [61]. O modo como os controladores anteriores eram segurados menosprezava os dedos indicadores. Sua movimentação não altera em nada a estabilidade do acessório nas mãos. shoulder button (right). O da esquerda foi chamado de L Uma outra característica interessante deste (em referência a gamepad left) e o direito, de foi que os novos R re buttons tinham um formato côncavo e a disposição dos botões foi alterada, de forma que também cassem numa formação em cruz, como o D-pad. Essa conguração facilitava o processo já trivial herdado de alguns jogos de NES (como a franquia 16 Mario) de manter um botão pressionado com a ponta do polegar e, sem soltá-lo, pressionar um segundo re button Y/B com a parte central do mesmo dedo. Isso cou facilitado para os conjuntos de botões X/A. Havia um modelo para o mercado americano e outro para Europa e Japão, mas, exceto pela cor, não havia diferenças entre os gamepads. Muitos jogos tiveram acessórios diferenciados no SNES. A evolução da pistola Zapper para NES foi chamada de Super Scope, com a mesma função aprimorada, conforme Figura 2.26. Também foi desenvolvido um mouse, chamado Super NES Mouse, idêntico a um tradicional, que servia para alguns jogos, com destaque para Mario Paint [15]. Também havia acessórios chamados multitap, que possibilitavam que mais gamepads fossem ligados ao console, já que alguns jogos permitiam maior número de jogadores (como o jogo Super Bomberman [16]. e Figura 2.24: Multitap [62]. Figura 2.25: Super Scope [64]. re buttons de gamepad podiam oferecer. Assim, lançou uma versão do controle com seis botões de ação na face, incluindo X, Y e Z, conforme Figura 2.27. Já a Atari rendeu-se ao padrão gamepad e lançou, em 1993, seu último console: o Jaguar. Com um D-pad, três re buttons e dois option buttons, seu diferencial foi o retorno dos botões estilo teclado telefônico, conforme Figura 2.28. A Sega percebeu que os jogos começavam a exigir mais do que os três seu Figura 2.26: Mouse [64]. Super NES Figura 2.27: de botões seis Drive [62]. Gamepad Mega do Gamepad Atari Jaguar[62] Figura 2.28: do Os bons resultados do SNES começaram a exigir jogos cada vez mais complexos. Coisa que os cartuchos de jogos tinham diculdade de acompanhar. Assim, a Nintendo buscou parceria com a Sony para desenvolvimento de um acessório para leitura de CDs (que oferecia maior capacidade de armazenamento e custos menores, ainda que com velocidades de acesso reduzidas). A parceria não deu certo [74]. Foi o ponto chave para que a Nintendo deixasse de liderar as vendas de consoles. 17 2.5 A estação de jogo da Sony Apesar da parceria com a Nintendo não ter evoluído, a Sony desenvolveu o leitor de CD. E resolveu lançá-lo, no nal de 1994, como um console completamente novo: o Playstation, também conhecido como PS, PS1 ou PSone (após o lançamento de uma versão de carcaça menor [23]), ou, popularmente no Brasil, Play 1. Além de aproveitar-se da ideia da Nintendo, adotou o padrão do gamepad do SNES, com algumas alterações. O direcional digital em cruz foi quebrado em quatro botões, o option button start teve seu formato modicado para um formato triangular (o símbolo play) e os re buttons tiveram suas denominações alteradas das já tradicionais letras para 19 guras geométricas: Y virou um quadrado rosa; X, um triângulo verde; B, uma cross azul e A, um círculo vermelho, conforme Figura 2.29. Estes símbolos, em conjunto, passariam a ser ícones dos consoles da Sony e serviços relacionados 20 , conforme Figura 2.31. A maior mudança no controlador foi a introdução de um segundo par de shoulder buttons, logo abaixo dos tradicionais, recebendo os nomes de L1, R1, L2 e R2 (mantendo left e right) [17], conforme Figura 2.30. Isso foi facilitado pelo formato do gamepad: mais anatômico, encaixava melhor nas mãos e possibilitava ser rmado apenas a referência a com os dedos mínimo e anelar das duas mãos. Além dos dedos indicadores, também os dedos médios passavam a ser liberados para utilização dos botões Figura 2.29: Playstation [61]. Primeiro gamepad Figura 2.30: do R2 e L2. Shoulder buttons duplica- dos [61]. Os jogos da época caram mais complexos, sobretudo pela popularização dos jogos em 3D. A introdução de apenas mais dois botões ao gamepad não signicou que a quantidade de comandos não tenha sido incrementada: a opção (vez ou outra utilizada no SNES) de alterar a função dos (funcionando como re buttons quando utilizados em conjunto com os shoulder buttons uma espécie de shift) aumentou muito a diversidade de comandos possíveis. Megadrive: o Saturn. Seu controle apenas acompanhava o novo padrão, mantendo os botões A, B e C do sucessor e incluindo os re buttons X, Y e Z logo acima (praticamente o mesmo que o modelo do controle de Megadrive com seis botões) e dois shoulder buttons, além do option button start e o direcional digital, À mesma época, a Sega lançou o sucessor do conforme Figura 2.33. O formato recebeu poucas alterações. 19 Para evitar confundir a gura geométrica em forma de X adotada no Playstation e a própria letra X, cross. usada em diversos outros consoles, essa gura será chamada de 20 Note-se, pela Figura 2.32, que esses símbolos também foram adotados, em alguns casos, como ícones universais de jogos eletrônicos. 18 Figura 2.31: Os sím- re gamepad bolos adotados nos buttons como do identidade da marca [66]. Figura Figura 2.32: Símbolos do Playstation usados 2.33: turn [64]. Gamepad do Sa- universalmente (assim como Pac-Man) [4, 61]. O direcional digital (com suas oito direções possíveis) era, no entanto, ineciente para uma movimentação num ambiente tridimensional. Era necessário buscar uma solução. 2.6 Nintendo 64: alavancas, gatilhos e tremores Apesar do baque da entrada de um concorrente poderoso como a Sony, a Nintendo não cou parada. Lançou em 1996 o console superior ao Nintendo 64. Ainda que tivesse uma tecnologia Playstation, ainda utilizava cartuchos como mídia para os jogos. Seu controle teve mudanças drásticas em relação ao antecessor. recional digital e shoulder buttons modicado, conforme Figura 2.35. (semelhantes às do controle do Os tradicionais di- permaneceram inalterados, mas todo o restante foi A começar pelo formato: duas projeções laterais Playstation) para apoio das mãos e uma terceira na parte central [72]. Essa terceira projeção dava acesso a duas grandes novidades: um direcional trigger button, denominado Z, conforme Figura 2.36. Os re buttons, digamos, efetivos foram reduzidos a dois: os clássicos A e B. Outros quatro botões, que, em conjunto, formavam o botão C, funcionavam como um segundo direcional digital, só que do lado direito. Acabou-se criando as denominações D-Pad para o direcional digital e C-Pad, para o direcional formado pelos botões do complexo C. Possuia um slot na parte de baixo, onde acessórios poderiam ser conectados (Figura 2.36). O clássico option button select não mais aparece e o start mudou para um formato redondo. Uma característica importante deste console é que era possível conectar quatro gamepads analógico [76] e um diretamente (e não apenas dois, como era o padrão desde os primórdios), conforme Figura 2.34. gamepad proporcionava duas formas de manuseio: a tradicional, para D-Pad (Figura 2.37); e outra em que a mão esquerda se encaixava na projeção O formato do utilização do 19 Figura 2.34: Nintendo 64: quatro entradas gamepad [62]. para Figura 2.35: Gamepad Nintendo 64 [61]. Figura do 2.36: acessórios e o ton Z [61]. central do controle, para utilização do direcional analógico com o polegar e o Slot para trigger but- trigger button com o indicador (Figura 2.38). A primeira posição raramente era exigida [72]. Figura 2.38: Segunda (e mais utilizada) Figura 2.37: Primeira forma de utilização do forma de utilização do Gamepad do Nintendo 64 [61]. tendo 64 [61]. Gamepad do Nin- O direcional analógico facilitou imensamente a movimentação em jogos 3D. Primeiro, por não se limitar às oito direções do direcional digital (todos os 360 graus eram facilmente acessados). Segundo, por ser sensível à pressão: o exemplo clássico é o jogo Super Mario 64 [19], onde a velocidade do personagem é proporcional à pressão aplicada na alavanca21 . O trigger button Z também foi uma grande novidade, melhorando a experiência em jogos de tiro. A função principal dos botões direcionais C era mudar o ângulo de visão da câmera num ambiente 3D, o que se mostrava extremamente útil em jogos de exploração do ambiente (para localização de itens que estivessem fora do campo de visão normal) [72]. Um acessório que poderia ser conectado ao gamepad era o chamado Rumble Pak (Figura 2.39). Esse equipamento fazia o controle vibrar de acordo com as ações de jo- 21 Uma mudança drástica, levando em consideração que, nos jogos anteriores da franquia, era necessário segurar um botão durante a movimentação para correr. 20 gos compatíveis (bater o carro, por exemplo). Os controles passariam a ser, também, periféricos de saída. Requeria energia de pilhas para funcionar. gamepads posteriores. E foram melhoradas. Pouco depois do lançamento do Nintendo 64, foi lançado o jogo NiGHTS into Dreams... para Sega Saturn, que vinha com um gamepad com uma alavanca analógica acima do direcional Todas estas ideias inspiraram os digital, conforme Figura 2.40. Tinha a vantagem de que ambos os direcionais poderiam ser acessados sem necessidade de grandes mudanças na posição da mão esquerda, como acontecia com o controle para o console da Nintendo. radical no formato do controle e a substituição dos É importante frisar a mudança shoulder buttons por trigger buttons analógicos (com sensibilidade à pressão). Figura 2.39: Rumble Pak [64] Gamepad do Saturn para o NiGHTS into Dreams... [62]. Figura 2.40: jogo 2.6.1 DUALSHOCK Para acompanhar as mudanças, a Sony lançou, em 1997, o controle Dual Analog Controller com as mesmas funções do controle anterior, mas com duas alavancas analógicas mais gamepad, acessadas com os polegares, conforme Figura 2.41. Foi necessário incluir um novo option button, o analog, que servia para ativar ou desativar a abaixo e ao centro do função das alavancas (para manter a compatibilidade do controle com os jogos anteriores) e cava localizado entre os dois sticks, logo acima de um led adicionado para indicar se o recurso estava ligado. A alavanca analógica direita, além de manter a simetria do as funções atribuídas, no gamepad, passaria a assumir Nintendo 64, aos botões C, como ajustar o ângulo de visão [72]. DUALSHOCK. Ele diferia do Este novo controle logo foi substituído pelo modelo predecessor por incluir a função de vibração nativa (sem necessidade de um acessório ou alimentação externa) [17]. Ao invés de um, o controle possuia dois motores: uma para vibração fraca e outro para vibração forte (daí o nome DUALSHOCK), localizados nas projeções do controle que encaixam nas palmas das mãos. As alavancas analógicas, que tinha o topo côncavo, passaram a ser convexas e revestidas de material que evitava que 21 sticks escapem, conforme Figura 2.42. Essas alavancas também passaram a poder ser re button, passando a ter as denominações L3 e R3. Outra mudança menos notável é que o option button ANALOG cou menos pronunciado, para evitar uso os apertadas como um acidental. Figura 2.41: troller [62]. O Dual Analog Con- Figura 2.42: Dualshock [17]. design desse gamepad se tornaria, na próxima geração, um ícone universal. 2.7 Fim de uma guerra, início de outras Dreamcast foi lançado pela Sega no m de 1998. O gamepad era muito semelhante ao último modelo de controlador lançado para o Saturn: os já clássicos direcionais digital e analógico (este último acima), dois trigger buttons analógicos, um option button start (com um novo formato triangular) e o formato arredondado, conforme Figura 2.43. Os re buttons, no entanto, foram diminuídos para quatro, com as mesmas denominações O console que o padrão do controlador do SNES (com a preocupação de inverter a ordem das letras). slots na parte de baixo (no mesmo Nintendo 64) para encaixar acessórios (um deles com uma tela LCD para exibir As grandes novidades foram a inclusão de dois estilo do informações dos acessórios e do jogo), conforme Figura 2.44. conectores para gamepads diretamente no console (Figura 2.45). Também possuia quatro Foi o primeiro videogame a vir com um modem interno para acesso à internet (por meio de navegador próprio) e jogos gamepad online22 [74]. Já nesse momento cou claro que um 23 é ineciente para digitação de texto . Assim, havia um teclado e um mouse, idênticos aos de um computador, especícos para essas funções. 22 Ainda que alguns consoles anteriores tivessem acessórios para funções semelhantes, eram pouco ecientes. 23 O padrão de um teclado virtual onde se move o cursor com os direcionais e os botões servem para seleção e funções especiais já era adotado há muito tempo em jogos onde era necessário informar, por exemplo, o nome do seu avatar ou registrar uma pontuação alta. Eram situações bem mais raras, logo as deciências desse sistema (como a lentidão) eram pouco sentidas. Isso começou a mudar com a nevegação web, onde escrever é uma ação corriqueira. 22 Figura Figura 2.43: Gamepad Dreamcast [61]. 2.44: Slots para acessórios [61]. Figura 2.45: do tas para Quatro por- gamepads [62]. Mesmo pioneira em tecnologia, a Sega amargou derrotas com a concorrência mais acirrada após a chegada do Playstation. Foi o último console da empresa japonesa, que passaria a se dedicar somente ao desenvolvimento de jogos 2.7.1 24 . DUALSHOCK 2 Playstation 2 (também conhecido como PS2 ou, popularmente no Brasil, Play 2). Seu gamepad, o DUALSHOCK 2, a princípio, não parece ter nenhuma alteração em relação à útima versão do console anterior (os novos controles também serviam no Play 1). Além da cor Aproveitando o sucesso do seu primeiro console, a Sony lançou, em 2000, o console padrão (que mudou para preto, conforme Figura 2.46), as diferenças efetivas só eram percebidas em alguns jogos: todos os botões passaram a ser analógicos, com sensibilidade à pressão. Era uma característica interessante, mas que, dada a profundidade dos botões, era quase imperceptível. Diferente do padrão adotado pelos concorrentes, o console possuia apenas duas entradas nativas para gamepads [22], continuando a depender de multitaps para jogos que permitiam mais jogadores. Dada aceitação que este console teve nos anos seguintes, seu gamepad se tornou símbolo informal de jogos de videogame. Mas, além de jogos, este console também reproduzia lmes em DVD e CDs de música. A ideia era tornar mais compensadora a compra do aparelho, que podia substituir um player de DVD. Com shoulder buttons para navegação entre faixas e um menu com diversas opções, os gamepads não decepcionavam no controle. Ainda assim, o console possuia um receptor de infravermelho para uso de um controle remoto [21] (acessório opcional, apenas para as funções de CD e DVD, mas incluindo os botões do gamepad). O aparelho possuia entradas USB para conexão de acessórios [22]. interessantes era uma câmera, o EyeToy [82] Um dos mais (Figura 2.47). Utilizada em alguns poucos jogos, capturava a imagem do jogador para interação, por meio de gestos, com os elementos da tela. Primeiras experiências efetivas com uso de visão computacional, os jogos eram extremamente simples e divertidos, mas a tecnologia envolvida ainda era pobre [72]. 24 Com isso, a Sega passou a desenvolver jogos também para consoles da Nintendo, o que possibilitou um encontro impossível de se cogitar alguns anos antes: Mario (mascote da Nintendo) e Sonic (mascote da Sega) juntos num jogo. 23 Figura 2.47: Figura 2.46: 2.7.2 O DUALSHOCK 2. cubo No ano seguinte, 2001, a Nintendo lançou o seu console concorrente, o gamepad, EyeToy [64]. GameCube. diferentemente de seu complexo antecessor, buscou a simplicidade. Seu Com um DUALSHOCK, tinha os direcionais à esquerda (analógico acima do digital), um option button start no centro e trigger buttons R e L (ao invés de shoulder buttons) com sensibilidade à pressão, conforme Figura 2.48. O C-Pad do controle do Nintendo 64 foi convertido em uma alavanca analógica do lado direito, com as mesmas funções, cor e denominação [24]. Quanto aos re buttons, X e Y retornam e a posição dos botões é modicada: o botão A passou a ser bem maior, circundado pelos demais (B ainda redondo e os demais, num formato curvo, acompanhando a circunferência de A). O trigger button Z do Nintendo 64 foi convertido em um shoulder button sobre o gatilho R (Figura 2.49). Foi lançada, em 2002, uma versão sem o do gamepad, chamada WaveBird [29], formato próximo do estilo sem alterações signicativas. O console possuia entradas para quatro controladores [28]. O GameCube tinha o estigma de ser considerado um console para crianças (ao contrário do concorrente) e não podia rodar lmes em DVD nem CDs de músicas (não mais usava os obsoletos cartuchos, mas um formato próprio de disco óptico), o que diminuiu sua popularidade [74]. Era necessário evocar o antigo costume de inovação da centenária empresa japonesa. Figura 2.48: Cube [61] Gamepad do Figura 2.49: Botão Game- 24 Z reposicionado [61]. No mesmo ano, a Microsoft entrou no mercado de videogames. 2.7.3 A caixa gamepad era muito semelhante ao controle do Dreamcast: mesmo formato, mesmos re buttons (posição e denominação), mesmos direcionais, mesmos shoulder buttons, mesmo slots para conexão de acessórios. Em 2001, a Microsoft lançou o console Xbox. Seu As diferenças eram a inclusão de um segundo direcional analógico à direita (no estilo DUALSHOCK), de um novo option button com função exclusiva de cancelamento (BACK) e de mais dois botões de ação (sem denomicação especíca, diferenciados pela cor: um preto e outro branco), conforme Figura 2.50. Os e as alavancas digitais tinham o topo côncavo. re buttons passaram a ser elípticos Era bem maior que os controles dos concorrentes [74]. Adotou-se o novo padrão de conectar até quatro gamepads diretamente ao console. Uma segunda versão, menor, foi lançada algum tempo depois (Figura 2.51). tamanho exigiu a realocação dos O option buttons de sua tradicional posição central para a parte abaixo do direcional analógico e à esquerda do direcional digital. Os botões preto e branco foram colocados abaixo dos demais Figura 2.50: Primeira gamepad de Xbox [62]. versão re buttons (todos em formato redondo). Figura 2.51: Segunda versão do do de Xbox [62]. Essa alteração tornou o controle mais parecido com o como já o era o controle do formato gamepad. gamepad gamepad do Playstation 2 (assim GameCube), mostrando que esse padrão se tornou o auge dos Isso era, de certa forma, uma necessidade para o mercado, já que boa parte das produtoras de jogos fazia versões para todas as plataformas (e ter métodos de entrada semelhantes era um fator facilitava o trabalho). Ainda assim haveria algumas alterações nesse padrão. E a Nintendo, mais uma vez, inovaria. 25 2.8 Xbox 360 e o início da geração atual Em 2005 a Microsoft lançou a versão mais atual do seu console: o Xbox 360. O gamepad é uma evolução do predecessor, com as mesmas características básicas. Quanto às mu- trigger buttons analógicos, coloshoulder buttons (aumentando, ainda mais, a semelhança com o DUALSHOCK 2), conforme Figura 2.52. Foi incluído um conector para headset [34] e não há slots. Os option buttons voltaram para a parte central do controle e o logo foi subtituido danças, os botões preto e branco foram substituidos por cados abaixo dos por um novo botão, com a marca simplicada e maior que os demais. Uma das funções desse último botão é ligar e desligar o console. principal é acessar as opções do sistema operacional do aparelho 25 Mas sua função [39]. Já há algum tempo os videogames deixaram de servir exclusivamente para jogos, servindo também para funções multimídia. Um option button o Guide dedicado ao acesso desses novos serviços foi a grande contribuição deste console. Outra novidade nativa do console da Microsoft foi a opção de gamepads sem o, ali- mentados por pilhas ou uma bateria recarregável [36].O o, presente desde os primeiros videogames, passou a ser opcional. Mas, sem conexões visíveis, como identicar os con- leds (dispostos num anel em volta do botão Guide) que identicam cada um dos quatro gamepads que podem ser troles, caso haja mais de um conectado? Para isso, existem quatro conectados ao mesmo tempo. Esse tipo de conexão também exige uma conguração prévia entre controle e console (necessária apenas uma vez, para evitar que outros acessórios ou aparelhos sem o interram na comunicação), o pareamento; para isso, há um pequeno botão na parte traseira do gamepad. Outro acessório é um pequeno teclado que se acopla ao controlador, o (Figura 2.53). A maior integração do console com a navegação Chatpad [33] web exigiu essa adaptação. E se o usuário achar que as pequenas teclas são desconfortáveis, é possível conectar qualquer teclado padrão a uma das entradas USB do console. Também há um controle remoto especíco para as funções de centro de mídia do console [35]. Figura 2.52: Gamepad do Xbox 360 [36]. Figura 2.53: Chatpad [64]. 25 Nessa geração, muitas congurações dos jogos, como resolução da tela e idioma, antes ajustadas diretamente nas opções do game, passaram a ser centralizadas diretamente no sistema operacional do console. 26 2.8.1 Nintendo Wii e o Wii Remote No m de 2006, a Nintendo lançou o revolucionário console Wii. Ainda que o poder de pro- cessamento do console seja inferior ao dos concorrentes numa batalha que a Nintendo tinha pouca chance de ganhar [82], o mesmo não se pode dizer quanto ao dispositivo de entrada. Desde os primeiros anúncios, o estranho controle que já não se pode classicar direta- gamepad chamou atenção. Chamado Wii Remote, ou Wiimote, seu formato mente como um diferenciado [80] lembra um controle remoto comum, inclusive no modo como é segurado (na posição vertical). O exigido re button A cou em destaque (a exemplo do que já acontecia no GameCube, O botão B trigger button colocado na conforme Figura 2.54). foi convertido em um parte de trás do controle, conforme Figura 2.55. Logo acima do botão A foi colocado um dire- cional digital. Nessa conguração, em situações normais de jogo, o polegar da mão dominante tem as funções de apertar o botão D-pad A e usar o (obrigatoriamente utilizado pelo polegar Figura 2.54: esquerdo no padrão anterior). O termo mão dominante Wii Remote. foi empregado propositadamente: não há, nesse modo de segurar o controle, diferença efetiva entre a mão direita e a mão esquerda. muitos anos sob o jugo do padrão pouco abaixo do botão A, gamepad, Depois de os canhotos voltaram a ter opção. foram adicionados os botões denominados variados, assumindo, inclusive, as funções dos extintos operacional ofereça bem menos opções de multimídia start e select. 26 - e +, Um com usos Ainda que seu sistema , também é possível acessá-lo por home, menos pronunciada que os demais botões (para evitar uso acidental), situada entre os botões - e +. Na parte superior há o option button power, exclusivo para ligar e desligar o console. meio de uma tecla dedicada, Também é disposto de forma a evitar uso acidental, mas poderia ser dispensado, já que, a exemplo do gamepad do Xbox 360, a função de ligar e desligar o console pode ser assumida, sem problemas, pelo botão de acesso ao sistema operacional. Não há opção de mente wireless. Wii Remote com o: alimentado por duas pilhas comuns, é exclusiva- Assim sendo, também tem, na parte inferior, quatro leds para identicar os até quatro possíveis controles. Um pequeno botão dentro do compartimento das pilhas serve para pareamento [44]. Possui a já padronizada vibração, mas amplia sua função como periférico de saída: inclui um pequeno alto-falante para efeitos sonoros simples e individualizados. 26 Trabalha bem com fotos, mas é restrito quanto a formatos de música e vídeo. Seu leitor não reconhece o formato CD e, apesar de sua mídia dos jogos ser o DVD tradicional, não é possível ver lmes. 27 Todas essas características já mostram uma revolução na forma de jogar. princípio, parece um retrocesso o diminuto número de botões do controle. Mas, a Isso é com- pensado pela maior inovação deste dispositivo: os movimentos do jogador, e não apenas o apertar de botões, são o principal método de entrada de comandos no console [82], conforme Figura 2.56. Figura 2.55: ton B. Trigger butFigura 2.56: mote [44]. Movimentos captados pelo Wii Re- Isso é possível graças a um acelerômetro: é um sistema interno do controle composto de um o de silicone dentro de um campo elétrico mantido por capacitores [70]. A cada movimento ou mudança de posição do controle, esse o também se move no campo elétrico. Esse dado é interpretado pelo console e usado para interação com os jogos o 27 . Por padrão, Wii Remote vem acompanhado de uma capa de silicone e uma correia para prendê-lo ao pulso: tudo para evitar acidentes causados pela movimentação do controle. Antes de cada jogo há uma tela que instrui o jogador a manter distância de objetos e outras pessoas. Ainda que alguns jogos exijam combinações complexas de movimentos, é algo mais natural que o apertar de botões. tradicionais 28 E, dada a complexidade alcançada pelos controles , era algo muito mais simples de ser aprendido. Isso atraiu um público que, até então, fora negligenciado pelo mercado de videogames e aí está a chave do sucesso desse console até os dias atuais. Outra característica marcante do controle do Wii é ser um dispositivo apontador [77]. Em sua parte superior há um emissor de infravermelho. Um receptor colocado junto à tela interpreta esse sinal para que um cursor seja mostrado na tela, acompanhando os movimentos da mão como um mouse de computador. Esse recurso é amplamente utilizado nos jogos, mas também ajuda bastante na navegação web, que ca semelhante à do computador. Também ca mais fácil o uso do teclado virtual. Também é possível utilizar um teclado padrão de computador através das duas portas USB disponíveis no console. 27 Num jogo de tênis, por exemplo, o jogador, ao invés de simplesmente apertar um botão para rebater a bola, deve fazer o movimento de swing com o braço, como se o controle fosse uma raquete. DUALSHOCK 2 28 Se considerarmos o direcional digital como quatro botões separados, o possuia 17 botões, que ainda poderiam ser utilizados em conjunto para uma innidade de funções diferentes. 28 Mas a Nintendo, mesmo propondo uma mudança radical na forma de jogar, não dis- gamepad, que ela própria havia iniciado e ajudado a forjar. Daí a estranha presença dos botões 1 e 2 no controle. Os option buttons continuavam sendo acessados facilmente pelo polegar (à exceção do botão POWER, usado raramente), mas os botões 1 e 2 não podem ser utilizados de forma simples: segurando o controle na forma padrão, é pensou o padrão necessário movimentar toda a mão para isso. Por que não foram colocados numa posição mais estratégica? Na verdade, esse dois nesta conguração re buttons estão numa posição estratégica. Também o termo foi usado de propósito. Em determinados jogos, o controle pode ser utilizado também na posição horizontal, como um bom e velho à esquerda, os botões gamepad, com direcional 1 e 2 à direita e os option buttons ao centro, conforme Figura 2.57. gamepad Conguração muito semelhante justamente ao primeiro controle do padrão: o de NES. O número reduzido de botões continua compensado pela posibilidade do uso do acelerômetro (o controle pode ser chacoalhado e inclinado, por exemplo). Os botões B continuam podendo ser utilizados, ainda que a posição não seja propícia. Figura 2.57: Ae Wii Remote como gamepad. Acessórios versáteis Wii Remote possui, na parte de baixo, um conector para acessórios. Um desses Classic Controller, é um gamepad clássico, usado em determinados games, 29 como os retrocompatíveis jogos de GameCube [44]. É, de certa forma, a adaptação do controle de GameCube para o estilo do controle do antigo mas ainda reverenciado SNES. Estão presentes o direcional digital, os quatro re buttons (com as mesmas denominações, mas com letras minúsculas) e os dois shoulder buttons, conforme Figura 2.58. Foram incluídos os dois direcionais analógicos, mas na mesma posição do DUALSHOCK 2. Os option buttons - e + assumiram as funções dos renascidos select e start, respectivamente. Entre eles, o botão home. O botão Z foi dividido em dois shoulder buttons diferentes: redondos, ao lado dos tradicionais L e R, denominados ZL e ZR. Em 2009 foi lançada uma nova versão, o Classic Controller Pro, com alterações que o tornaram quase uma cópia do DUALSHOCK: projeções laterais para encaixe das mãos, ZL e ZR em formato padrão de shoulder button e colocados acima do par L e R (transformados em trigger buttons analógicos) e o o do controle saindo da parte de cima (e não de baixo, O acessórios, o como na versão anterior), conforme Figura 2.59. 29 Retrocompatibilidade é a possibilidade de utilizar jogos de consoles anteriores num mais atual. 29 GameCube podiam ser jogados no Wii. Assim, o console gamepads do predecessor (Figura 2.60). Esses controles podem, assim como o Classic Controller, ser utilizados em alguns jogos feitos para Wii. Como dito acima, os jogos de tem quatro entradas para os Figura 2.58: troller [62] Classic Con- Figura 2.59: Classic Con- troller Pro [64]. Figura 2.60: Compatibilidade gamepad Cube [44]. Ainda há um outro acessório que pode ser conectado ao com o do Wii Remote: o Game- Nunchuck (Figura 2.61). Exigido em muitos jogos, é uma outra forma de aproximação com o padrão gamepad: trigger button, Z, além direcional analógico do gamepad possui um direcional analógico e retorna com o um pequeno botão, o C (nenhuma relação com o GameCube), conforme a Figura 2.62. de de Também possui acelerômetros para reconhecimento de movimentos. Possui um formato especial para encaixar perfeitamente na mão. Não há obrigatoriedade de uso em determinada mão: a natureza ambidestra do controle principal é mantida no conjunto. Figura Figura 2.61: 2.62: anatômico e Nunchuck. Formato trigger buttons. Tudo isso indica que a Nintendo não queria apostar tudo nos controles de captura de movimento: caso a aceitação fosse abaixo do esperado, haveria várias opções no padrão 30 antigo. Não foi, no entanto, o que aconteceu. O console fez imenso sucesso, já que seus comandos eram mais intuitivos, o que atraiu outros públicos, como mulheres e idosos. E ajudou a diminuir o estereótipo de que o videogame é inimigo da atividade física. Outro acessório que ajudou nesse sentido foi a Wii Balance Board. Trata-se de uma espécie de balança onde o jogador faz determinados exercícios, como fazer ioga e esquiar, sempre com movimentos o mais próximo possível dos reais. Wii Remote, cou claro que essa característica poderia Nintendo lançou um acessório chamado Wii Motion Plus. Apesar da boa sensibilidade do ser melhorada: em 2009 a Conectado ao controle principal (o que não impede que outros acessórios possam ser utilizados ao mesmo tempo), aumenta a sensibilidade a ponto de reproduzir elmente os movimentos do controle (e não apenas reconhecer uma certa quantidade de gestos pré- Wii Remote que já inclui as funções do Wii Motion Plus, mas com o mesmo tamanho do controle original, chamado Wii Remote Plus. denidos). Em 2010 foi lançado um Outros, nem tanto Wii Remote facilita há o Wii Wheel, um O formato de paralelepípedo do o seu encaixe nos mais diversos envólucros. volante para jogos de corrida Dentre os ociais, conforme Figura 2.63. 30 , Não há nenhuma função adicional: ainda que possa ajudar na adaptação, é totalmente dispensável. O controle é colocado no vão com a face voltada para fora, para que os re buttons sejam acessados. O trigger button B, no entanto, ca escondido. Isso é resolvido com um botão móvel na parte de trás do volante Figura 2.64. Outro acessório do tipo é o 31 , conforme Wii Zapper. Inspirado nas versões dos consoles antigos, Wii Remote e o Nunchuck são encaixados para mas não passa de uma peça plástica onde o lembrar uma metralhadora (Figura 2.65). Também é totalmente dispensável, como uma miríade de peças plásticas não ociais que tranformam o controle em pistola, raquete, taco de golfe, etc (Figura 2.66). Figura Figura 2.63: Frente do Wii Wheel. 30 Usar o Figura 2.64: do Verso Wii Wheel. Wii Figura 2.66: Envólucros versos para Remmote[62]. di- Wii Wii Remote, na posição horizontal, esterçando-o como um volante, é o padrão para os jogos Wii. uma vantagem do Wii Wheel, já que facilita o acesso ao botão B quando o controle está na de corrida no 31 Essa é 2.65: Zapper [64]. horizontal. 31 Playstation 3 2.8.2 e o SIXAXIS Wii, a Sony também lançou o seu console mais recente: gamepad, chamado SIXAXIS, era, externamente, idêntico ao À mesma época do lançamento do Playstation 3. O novo DUALSHOCK 2, conforme Figura 2.67. o Mas tinha diferenças importantes: os motores de vibração foram retirados e acelerômetros foram adicionados. Assim, o controle, além das quases duas dezenas de botões, podia ser inclinado e girado em diversas posições e eixos daí o novo nome , conforme a necessidade do jogo. Não é uma opção muito utilizada pela produtoras de jogos [83]. Os shoulder buttons R2 e L2 foram convertidos em trigger buttons analógicos (Figura ANALOG e seu LED (desnecessários, 2.68), moles e sensíveis talvez demais [83]. O botão já que todos os jogos passaram a ser compatíveis com os direcionais analógicos) foram substituídos por um console 32 option button o botão PS para acesso às funcionalidades do , além de ligar e desligar o aparelho [42]. Totalmente wireless, possui um botão na parte inferior para pareamento e quatro LEDs gamepads33 . Diferente dos controles dos concorrentes, esse para identicação de até sete gamepad possuia bateria interna recarregável por uma conexão USB na parte frontal. Quanto às novidades do SISAXIS, a opinião do editor da revista Edge é contundente: (...) Quando o SISAXIS foi revelado na coletiva de imprensa da Sony na E3 34 de 2006, o rufar de tambores foi seguido não por gritos entusiasmados, mas pelo burburinho confuso da plateia. (...) Não, ele não ofereceu valor ao consumidor. Em vez disso, cometeu o erro de reproduzir um tipo de funcionalidade já demonstrado por uma concorrente e, assim, para os detratores, foi considerado irrelevante e sem propósito. Uma piada, até. No ano seguinte, foi lançado o gamepad DUALSHOCK 3. SIXAXIS com a função de vibração, que passou a ser o padrão. Trata-se tão somente do Há um mini teclado, que pode ser acoplado ao controle, para facilitar a navegação web [43], conforme Figura 2.69. A exemplo dos concorrentes, é possível conectar um teclado padrão a uma das entradas USB do console (quatro nos primeiro modelos, duas nos mais recentes) ou por conexão Bluetooth. 2.9 Portáteis Por uma linha diferente, mas com não menos mudanças, os videogames portáteis também tiveram sua evolução. O primeiro foi o Microvision, lançado em novembro de 1979 pela Milton Badley Company. Com um formato alongado, ainda utilizava um paddle para movimentação e quatro re buttons, conforme Figura 2.70. Apesar do pouco sucesso (principalmento por causa da falta de suporte [74]), criou o padrão seguido até hoje: controles no próprio aparelho, tela de cristal líquido, jogos em cartuchos e alimentação por baterias. 32 É o único console capaz de exibir lmes em Blu-ray Discs. 33 Um detalhe interessante é que se seguiu o padrão de apenas quatro LEDs indicadores. Assim, o quinto ao sétimo gamepads são identicados por dois LEDs, correspondendo à soma das posições (o sexto controle, por exemplo, é identicado pelos LEDs dois e quatro, ao mesmo tempo). 34 E3 refere-se à Electronic Entertainment Expo, considerada a maior feira internacional dedicada a jogos eletrônicos, realizada anualmente em Los Angeles, nos Estados Unidos. 32 Figura 2.67: Figura 2.68: tons. SIXAXIS. Trigger butFigura 2.69: Teclado less para PS3. wire- Por toda a década de 1980 a Nintendo vinha desenvolvendo a linha de videogames portáteis Game & Watch. Seus jogos faziam bastante sucesso, mas, para ter as dezenas de títulos, era preciso ter o mesmo número de aparelhos (os jogos não podiam ser trocados). Como já dito anteriormente, os controles desse aparelho, extremamente versáteis, foram a base para o padrão gamepad. E sua eciência foi mantida na evolução deste portátil. Game Boy. Com controles idênticos re buttons à direita e os option buttons Aproveitando o grande sucesso do NES, surge o ao seu console start e select irmão (D-pad à esquerda, dois ao centro), encaixados em um gabinete em formato retangular (pequeno o bastante para ser guardado no bolso e com boa autonomia de bateria [74]), usado na vertical (Figura 2.71), fez grande sucesso, principalmente pela quantidade de títulos: seus jogos podiam ser trocados por meio de cartuchos. O portátil possuia um pequeno LCD monocromático e um alto falante. Era necessário que os componentes do aparelho fossem de qualidade superior, já que a arquitetura não era modular como no console: caso houvesse um problema num periférico do NES ( gamepad ou mesmo a própria TV), havia a possibilidade de troca imediata por outro semelhante; o mesmo não se pode dizer de um dispositivo onde tudo é montado em um único aparelho. A qualidade dos jogos da Nintendo a manteve na liderança desse segmento mesmo Lynx, o primeiro portátil com tela colorida. Também gamepad, mas com quatro re buttons e seis option buttons, era usado com o lançamento, em 1990, do adotando o padrão na horizontal, com a tela na parte central, conforme Figura 2.72. Apesar do pioneirismo, a baixa qualidade dos jogos não ajudou. Game Gear. Também no estilo gamepad, usado na horizontal e com a tela entre o D-pad e os dois re buttons (Figura 2.73). Em 1991, a Sega também entra nessa briga com o Era grande para um portátil e consumia bastante energia. Mais uma vez a quantidade de jogos disponíveis não foi páreo para a biblioteca do Game Boy ainda que o portátil da Sega tenha mantido o segundo lugar por vários anos. Game Gear foi o menos conhecido Nomad, lançado em 1995. Nos controles, a evolução foi semelhante à ocorrida entre Master System e Mega Drive: aumento no número de re buttons, não apenas para três, mas seis (A, B, C, X, Y e Z), conforme A evolução do Figura 2.74. Os controles parecidos não eram por acaso: o portátil era compatível com a enorme biblioteca de jogos do Genesis. Mesmo assim, esses jogos já pareciam ultrapassa- dos na época e o videogame não fez sucesso também por sua pouca eciência quanto à bateria. 33 Figura 2.70: Microvision [64]. Figura Figura 2.72: 2.71: Game Boy [62]. Figura 2.73: Lynx [74]. Game Gear [74]. Figura 2.74: Virtual Boy: 2.9.1 Nomad [74]. aprendendo com os erros Com tecnologia bem avançada para a época, mas também com preço muito alto, o portátil 35 Virtual Boy, lançado pela Nintendo em 1995, foi o maior fracasso da Nin- tendo. Aproveitando a febre quanto ao conceito de realidade virtual que havia na época, o console tinha jogos em 3D (mas apenas nas cores preto e vermelho numa tela cansativa, não recomendada para crianças menores de sete anos). GameCube, possui grandes projeções para as mãos, os re buttons A e B à direita, os option buttons select e start em posições espelhadas à esquerda (inclusive no inusitado formato circular) e os shoulder buttons L e R, conforme Figura 2.75. O diferencial estava na presença de dois direcionais digitais, um de cada lado do gamepad. Sua função era tentar compensar as diculdades 36 de movimentação num ambiente 3D com um único D-pad . Nem todos os jogos davam Seu gamepad, que parece ter inspirado o controle do funções diferenciadas aos dois direcionais, que acabavam tendo as mesmas funções o que se tornava uma boa opção para jogadores canhotos. Na parte central, acima, cava a chave que ligava ou desligava o aparelho. 35 A classicação de portátil é forçosa, já que era preciso jogar com o aparelho apoiado em uma mesa. 36 Cuja solução, como vimos, foi a adoção de um direcional analógico a partir do Nintendo 64. 34 Somente em 1998 a Nintendo lança o Game Boy Color. Com pouquíssimas alterações visuais, é o mesmo protátil, só que com tela colorida e compatível com os jogos anteriores (Figura 2.76). Figura 2.75: 2.9.2 Figura 2.76: Virtual Boy [62]. Color [64]. Game Boy O universo do portáteis em três letras: GBA [74] A evolução efetiva do portátil se deu em 2001, com o lançamento do Game Boy Advance, mais conhecido como GBA. Deixando o antiquado formato anterior, adotou o padrão da tela (maior e em formato widescreen) posicionada entre o D-pad à esquerda e os re buttons à direita, utilizado na horizontal [25], conforme Figura 2.77. do Game Boy Color, foram adicionados os Além dos mesmos botões shoulder buttons L e R37 . Seu hardware mais potente proporcionou não apenas a adaptação, mas melhora de jogos do SNES (ainda que a quantidade menor de botões exigisse algumas mudanças na forma de jogar). Um controle de volume e um botão para ligar completava o aparelho. Uma característica óbvia de um portátil é que você joga sozinho. Isso foi mudado no Game Link cable [26]) que conectava dois aparelhos por uma interface especíca e, em determinados games, era possível jogar de forma competita ou cooperativa. Da mesma forma, por meio do GameCube cable [27], era possível conectar o portátil ao console GameCube, para troca de informações entre determinados jogos. Em 2003, a Nintendo lançou uma nova versão do GBA: o Game Boy Advance SP [30]. GBA: havia um cabo (o Uma mudança brusca, ainda que apenas estrutural: o portátil passou a ser dobrável, o que diminuiu seu tamanho fechado e passou a proteger a tela, exclusiva na parte superior. Os botões caram inalterados, a não ser pela leve mundança de posição, na parte inferior 37 Como o GBA também era compatível com os jogos de tinham funções especícas nesses games. Game Boy e Game Boy Color, L e R não Serviam, no entanto, para alternar o modo da tela (original, com tarjas pretas nos cantos, ou esticada, preenchedo toda a tela). 35 shoulder buttons caram mais discretos, acompanhando as GBA SP. A tela passou a ter iluminação própria (o que fazia muita falta do aparelho (Figura 2.78). Os novas linhas do no GBA) e uma bateria recarregável passou a fazer parte do conjunto. Foi incluído um botão exclusivo para ligar e desligar a iluminação da tela. Outra versão de GBA, lançada em 2005, foi o Game Boy micro [37]. Mudanças também apenas na estrutura. Menor ainda, voltava a ser usado na vertical, com a tela ao centro, mas apenas com os re buttons e o direcional digital na face, conforme Figura 2.79. Os option buttons passaram para a parte de baixo do aparelho. Figura 2.77: Advance [64]. 2.9.3 DS: Game Boy Game Boy Advance SP [62]. Figura 2.78: Figura 2.79: micro [62]. Game Boy Dual Screen Game Boy micro, a Nintendo lançou, em 2004, o portátil DS. Com o mesmo formato de notebook do Game Boy Advance SP, tinha os mesmo controles do SNES: os clássicos botões Y, X, A, B, start, select, L e R [31]. As grandes novidades eram Antes mesmo do um microfone, para interação por sons em determinados jogos e, além da tela principal, na parte de cima, uma tela secundária, abaixo (Figura 2.80). Mais que aumentar a área visível (seja com duas imagens complementares, seja com uma tela de menu sempre 38 aberta), a tela inferior possuia tecnologia de sensibilidade ao toque . A tecnologia, já usada há algum tempo por outros dispositivos [69], usa uma série de camadas de diferentes materiais que entram em contato quando a tela é pressionada, gerando a informação do local onde ocorreu o toque. Isso aumentou muito as possi- bilidades de interação do jogador, seja aumentando a quantidade de botões, seja com técnicas diferenciadas (como desenhar diretamente na tela e reconhecimento de escrita). Um inconveniente é que o portátil é feito para ser segurado como um gamepad. O uso da tela sensível ao toque com os polegares não é nada prático, então é preciso mudar a posição das mãos para poder utilizá-la. Para isso, há uma caneta especial, a stylus (diversos jogos fazem pouco uso dos botões, aproveitando as possibilidades da tela). Diferente de seu antecessor, o DS não precisava de cabos para se conectar com outros aparelhos. Munido de uma conexão wi-, não apenas dois, mas vários portáteis podem se conectar (conforme o jogo). O próprio sistema operacional do DS permite comunicação por meio de um tipo de chat. A conexão wi- 38 O portátil vinha com uma caneta de plástico, a também permite jogar on-line. Também stylus, exclusiva para interação com essa tela especial. Essa caneta cava guardada numa fenda especíca na parte de trás do aparelho. 36 é possível, em alguns jogos, conectar o portátil com o console especial, acessar a web. Em 2006, foi lançada a versão reetruturada DS Wii e, com um cartucho Lite [41], sem grandes mudanças nos controles (Figura 2.81). Em 2009 foi lançado o DSi [52], versão com várias aprimoramentos internos, mas com nenhuma mudança efetiva nos controles. O mesmo se pode dizer do DSi XL [53], no mesmo ano, cuja única mudança foi o aumento do tamanho das telas (ainda que as resoluções não tanham sido alteradas). O DSi e o DSi XL são os portáteis atuais da Nintendo. Figura 2.80: Nintendo DS [62]. Figura 2.81: 2.9.4 Playstation Nintendo DS Lite [64]. de bolso Playstation Portable, conhecido como PSP [32]. Usado na horizontal, no padrão gamepad, possui uma tela generosa em formato widescreen, conforme Figura 2.82. Estão presentes os re buttons símbolo do console da Sony (quadrado, triângulo, círculo e cross), mas as sem cores que os diferenciam na família DUALSHOCK. Possui apenas um par de shoulder buttons. Alinhados abaixo da tela, estão os tradicionais option buttons start, select e HOME. Junto a eles foram À mesma época do lançamento do DS, a Sony lançou o adicionados um botão para ajuste do brilho da tela, outro para escolha de equalizações 39 pré-denidas (ou desligar o som) e dois botões para controle de volume . À esquerda, o já tradicional direcional digital e um estranho direcional analógico: ao invés de ter uma alavanca, trata-se de um botão móvel para todas as direções. Além da chave de ligar e desligar na lateral direita, há uma outra chave na parte superior para ligar ou desligar o wi-. Belíssimo, o PSP tem capacidades bem superiores ao primeiro Playstation, ainda que não se compare ao PS2. Essa característica levou à adaptação de muitos jogos da primeira plataforma para o portátil. Mesmo jogos para Playstation 2 foram adaptados. Houve, no entanto, alguns problemas, já que o portátil possui apenas um direcional analógico 39 O controle de volume de forma digital mostra uma indicação na tela no sistema operacional do aparelho ou durante a reprodução de mídia, mas não durante os jogos. Um sistema analógico, como o do DS, poderia ser mais prático 37 e um par de shoulder buttons (ao invés dos dois pares do DUALSHOCK). Muitas ações precisaram ser revistas, sobretudo quanto à movimentação da câmera. hardware Com mídia 40 muito superior ao concorrente, o PSP possui funções avançadas de e conectividade. Navega na web com aplicativo próprio, ainda que seja sofrível digital endereços longos em teclados virtuais. Foram lançadas duas versões sem mudanças efetivas no a versão PSP Go design ou nos botões. Somente [54] teve alterações na estrutura: a tela é deslizante, escondendo ou mostrando os botões da face (enfatizando suas funções de mídia, já que os controles são pouco necessários, por exemplo, durante a execução de um lme) (Figura 2.83). Menor, mais leve, com conectividade bluetooth (o que permite utilizar um DUALSHOCK 3 como acessório). A não ser por leves mudanças de posição, os botões não foram alterados. É a última versão lançada atualmente. Figura 2.82: Playstation Portable [62]. Figura 2.83: 2.9.5 PSP Go [62]. 3DS e NGP Desde 2010 a Nintendo vem anunciando seu novo portátil, o Nintendo 3DS. A data pre- vista de lançamento é 26 de fevereiro de 2011. O nome do novo portátil é uma junção do já consagrado título DS com o conceito de 3D 41 . Na questão dos controles, o que tem sido divulgado até o momento não mostra re buttons, D-pad e shoulder buttons do DS, conforme Figura 2.84. O botão de ligar, antes um slide na lateral, passa a car destacado abaixo dos botões de ação. Os option buttons start e select mudaram de formato (agora alongados nenhuma mudança quanto aos o suciente para abrigar seus nomes) e foram posicionados abaixo da tela inferior. Entre esses dois, entra o novíssimo home (o DS era o único videogame dessa geração que não possuia esse recurso). A tela sensível ao toque permanece inalterada. As duas novidades efetivas nos controles, divulgadas até o momento, são a inclusão de um direcional analógico que lembra o do PSP, denominado 40 O botão para ligar o console, se usado no sentido inverso, trava Slide Pad, e acelerômetros o uso dos botões. Como o portátil também é um centro de mídia, esse recurso impede que botões sejam utilizados por acidente durante a execução de vídeos ou músicas. 41 A grande novidade nesse novo aparelho é a presença de tecnologia de 3D esteoscópico, sem necessidade de uso de um óculos especial. 38 e giroscópios. Esse últimos servirão para que o portátil seja sensível aos movimentos realizados pelo jogador. É importante notar que este tipo de interação, a princípio, não será tão versátil num portátil quanto é num console, já que a tela (principal periférico de saída em um jogo eletrônico) deixará de ser visualizada em caso de movimentos mais amplos. Certamente será algo que tornará a experiência de jogo mais efetiva, mas não deve passar muito de inclinações e chacoalhadas leves. Quanto ao direcional analógico, côncavo (que deve facilitar o uso com o polagar) e logo acima do direcional digital, não há muito a acrescentar: é um padrão já universal desde o Nintendo 64 e que fez falta nos jogos 3D do DS. Sem contar o fato de que muitos jogos 64 estão sendo relançados, o que torna esse controle absolutamente necessário. do próprio A respeito da Sony, após muitas especulações, foi apresentado o sucessor do PSP: o Next Generation Portable lançamento. ou NGP. O título é provisório e ainda não há previsão de Mas do pouco que foi apresentado já se podem notar diversas mudanças quanto aos controles. Foi incluído um segundo direcional analógico (a mudança mais solicitada pelos usuários do PSP), aproximando-o ainda mais do padrão gamepad (Figura 2.85). Ainda assim, a princípio, a adaptação de jogos de PS2, por exemplo, ainda não será perfeita, já que shoulder buttons. Outra novidade é que a tela passa a ser sensível ao toque, como na família do Nintendo DS. O toque de originalidade, porém, está na adoção de um touch pad (como os de noteboos) continua havendo só um par de à parte traseira do portátil, para uso com os dedos indicadores ou médios (Figura 2.86). É algo inédito em consoles de videogame. As possibilidades são interessantes, já que pode funcionar bem para substituir botões ou movimentos leves (tarefa que também pode ser feito pela tela sensível ao toque, mas com prejuízo de visibilidade). Mas é cedo para avaliar como o recurso será utilizado nos jogos. Figura Figura 2.84: 3DS [62]. Nintendo 2.85: NGP dois direcionais analógicos e tela sensível a toque. [62]. Figura 2.86: NGP touch pad na parte traseira. [62]. 2.10 Guitarras de plástico Em 1999 a empresa Konami lançou, para arcade, o jogo Guitar Freaks [20]. jogo era simular o uso de uma guitarra durante uma música. Para isso, o dois controles na forma do instrumento, mas sem cordas 42 Simulando guitarras Fender Jazzmaster ou Fender Mustang. 39 42 O objetivo do arcade possuia , conforme Figura 2.87. Ao invés fret buttons strum bar, e um paddle (Figura disso, possuia, no braço, três botões (um vermelho, um verde e um azul) os e, no corpo, um tipo de interruptor em forma de paleta, o 2.88). Conforme o ritmo da música e indicações da tela, as teclas são pressionadas com 43 os dedos da mão esquerda ao mesmo tempo em que o strum bar é utilizado (para cima paddle ou para baixo) com a mão direita, simulando um acorde numa guitarra real. O servia para modicar os efeitos do som do jogo. O mais importante era a paletada: apenas pressionar o botão correspondente à indi- cação da tela não era suciente. Havia acordes em que mais de um botão deveriam ser pressionados. Também havia situações em que era necessário manter as teclas pressionadas por um tempo, conforme as intruções do jogo (não sendo necessário, no entanto, fazer o mesmo com o interruptor que simula as paletadas). Em certas situações de jogo era possível aumentar a pontuação com um movimento de tilt (levantar rapidamente o braço da guitarra) havia um sensor que captava esse movimento. arcades vêm decaindo nos últimos tempos. game nunca teve um grande apelo junto aos jogadores (ainda que, até hoje, Como já mencionado na Seção 2.1.2, os Assim, esse sejam lançadas novas versões). Sua real importância, no entanto, foi servir de inspiração para outro jogo. Esse, sim, de grande sucesso. Figura 2.88: Guitarra de Figura 2.87: Arcade Guitar Freaks [63]. 2.10.1 Guitar Freaks [63]. de Herói da Guitarra Em 2005 a RedOctane Guitar Hero [38] para o console Playstation 2. O Guitar Freaks. Assim, foi desenvolvida uma réplica Gibson SG para ser usada como controle44 , com algumas lançou o jogo modo de jogar era idêntico ao jogo de guitarra inspirada na 43 O jogador é livre para utilizar quaisquer dedos, mas, na forma como uma guitarra é segurada, não é possível utilizar os polegares situação estranha, considerando o domínio do padrão gamepad. 44 Pela semelhança física dos instrumentos, o controle também podia simular o uso de um baixo. 40 modicações: possuia cinco fret buttons 45 (adicionados os botões amarelo e laranja , o que aumentava a diculdade, já que apenas quatro dedos da mão esquerda podiam ser paddle foi substituído por uma whammy bar46 e foram incluídos os option buttons start e select ao corpo da guitarra (Figura 2.89). O uso era, também, análogo ao utilizados), o acessório do jogo da Konami. Também era possível jogar com o DUALSHOCK 2: os quatro 47 riam ser pressionados conforme uma ordem de correspondência apenas no nível de diculdade mais alto, era substituída pelo shoulder buttons deve- . A tecla laranja, exigida re button cross. A forma de jogar também era alterada: bastava pressionar os botões correspondentes, sem neces- paletada (o que dispensava a conversão do strum bar para o gamepad). A whammy bar era substituída pelo analógico esquerdo e o movimento de tilt, pelo uso do botão select (o que também era possível com o uso da guitarra). Esse jogo fez um grande sucesso. Tanto que a segunda versão, Guitar Hero II [40], foi convertida para Xbox 360. Na versão para PS2 não houve nenhuma alteração na guitarra. sidade de uma A versão para o console da Microsoft, no entanto, tinha um formato exclusivo, baseado Gibson X-Plorer (bem mais parecida com uma guitarra real que a do console da Sony, conforme Figura 2.90), e foram incluídos o option button home e um direcional na guitarra digital ao corpo da guitarra. Os acessórios, obviamente, só eram compatíveis com seu respectivo console. Guitar Hero III: Legends of Rock [46], foi lançada para os consoles PS2, Xbox 360, PS3 e Wii. Para todos os consoles foram desenvolvidas réplicas da guitarra Les Paul, com um D-pad no corpo da guitarra, próximo ao início do braço. Para as versões de Play 3 e Xbox 360 foi incluído o botão home. A guitarra de Wii era peculiar: idêntica às demais, mas com uma cavidade onde o Wii Remote deveria ser encaixado (Figura 2.91). O acessório, conectado à porta auxiliar do controle do Wii, utilizava seus recursos nativos A terceira versão, 48 de conectividade sem o e captura de movimentos , o que seria o padrão em todas as versões posteriores de instrumentos para o Wii. 2.10.2 Rock Band: mais instrumentos Harmonix, que desenvolveu os primeiros jogos da série Guitar Hero, passou a trabalhar MTV Games. Lançou, no mesmo estilo, o jogo Rock Band [48] (Figura 2.92). Sua guitarra, baseada no modelo Fender Stratocaster, tinha como novidade a marcação das A com a cores na parte de cima do braço, para facilitar a visualização pelo jogador. Também havia mais cinco botões, nas mesmas cores e disposição, na parte do braço mais próxima ao corpo do acessório (os dois conjuntos de botões tinham a mesma função; o jogador optava por usar qualquer um, numa tentativa de simular as opções de acorde de uma guitarra real). O título do jogo, banda de rock, tinha seus motivos: aproveitando a possibilidade dos consoles atuais de conexão de vários jogadores ao mesmo tempo, além do controle em forma de guitarra, foi lançada uma bateria e um microfone, conforme Figura 2.92. 45 A nova ordem de cores é verde, vermelho, amarelo, azul e laranja. 46 Alavanca que serve para distorcer o som emitido por uma guitarra. A 47 L1 correspondia à tecla verde; R1, à tecla vermelha; R2, à amarela; L2, à azul. 48 Os acessórios para PS3 e Xbox 360 tinham um sistema próprio para conexão sem o, necessitando de um receptor que é conectado a uma porta USB do console. 41 Figura 2.90: Guitarra Figura 2.89: Guitarra de Guitar Hero para Guitar Hero II para Xbox 360 [64]. de Figura 2.91: Guitarra de Hero 3 para Wii [62]. Guitar PS2 [62]. bateria, composta de quatro grandes sensores (simulando caixas e pratos) e um pedal (simulando o bumbo), era o acessório mais simples: com baquetas, deveria-se bater nos sensores coloridos correspondentes de acordo com as intruções do jogo. O pedal, utilizados com um dos pés, também tinha uma indicação especíca. Incluía, na parte de baixo, os controles básicos do gamepad: D-pad, re buttons, start, select e home. O microfone funcionava como um karaokê, onde o jogador deveria cantar a música no mesmo timbre do cantor original, com a letra indicada na tela. Ligado na USB do console, era exatamente igual a um microfone convencional, sem qualquer botão (a escolha de opções devia ser feita com o controle padrão). Oferecia, no entanto, uma possibilidade inédita: um único jogador atuar como dois, já que, ainda que complicado, era perfeitamente possível tocar um instrumento e cantar a música ao mesmo tempo. Em Rock Band não é possível jogar com um gamepad comum. Como mencionado, o controle só é utilizado como complemento do microfone, para escolha de opções. No ano seguinte foi lançado implantadas em Guitar Hero World Tour [49] (igura 2.93). Rock Band foram prontamente adotadas: A modicações adoção de microfone e bateria (que inclui um sensor a mais e com clara distinção entre pratos e caixas); a guitarra teve o D-pad substituído por uma alavanca (com o option button home no topo) e o botão select, também utilizado para ativar recursos durante o jogo, cou maior. Ao invés de incluir um segundo conjunto de botões no braço da guitarra, como em Rock Band, na mesma área foi colocado um sensor para funções adicionais: podia ser dedilhada em partes especícas 42 Figura 2.92: Band [64]. Instrumentos de Rock Figura 2.93: Instrumentos de Hero World Tour [64]. das músicas (sem necessidade de paletadas), substituir o strum bar Guitar (bastando dar um pequeno toque) e distorcer notas longas (arrastando os dedos). gamepad também só passou a sevir como auxiliar para escolha de opções com o microfone, como já ocorria com Rock Band. A partir desta versão, o Não houve alterações signicativas nesses acessórios tanto que, dentro da mesma plataforma, todos os instrumentos são compatíveis (inclusive entre jogos de séries diferentes). Pelo menos não até o lançamento da terceira versão de Rock Band 3: 2.10.3 A jogabilidade básica de Rock Band. instrumentos reais Rock Band 3 [60] permanece inalterada: os instrumentos ante- riores continuam compatíveis. A diferença está no modo Pro. Conforme a Figura 2.94, esse modo exige o uso de instrumentos especiais: uma guitarra, uma bateria e o estreante teclado 49 . A bateria evoluiu para três pratos e quatro caixas, além do bumbo. O teclado possui re buttons e option keytar, com um braço que possibilita seu duas oitavas de teclas em tamanho natural com direcional digital, buttons acima, à direita. Possui um formato de 50 uso em posição semelhante a uma guitarra . No braço há um botão para distorção do select. Fender Mustang, som e um outro com a mesma função de A guitarra, baseada no modelo possui seis cordas individuais que terminam ainda no corpo do instrumento. No braço há seis botões para cada uma das 17 trates: incríveis 102 fret buttons. Tudo para simular com maior precisão a posição dos dedos nas trastes a cada acorde. Com previsão de lançamento para março de 2011, uma segunda versão de guitarra, baseada no modelo Fender Squier Stratocaster, será diferente. Com seis corda individ- uais até o braço, como uma guitarra real. Apenas a presença de um D-pad diferenciará de uma guitarra elétrica comum. 49 Todas as referências dessa Seção baseiam-se em [85]. 50 Em outros modos, é possível tocar as músicas de teclado com a guitarra convencional 43 no corpo a Figura 2.94: Instrumentos MIDI reais de Rock Band 3 [62]. Esses instrumentos não se tratam de simples réplicas adaptadas para uso em um videogame (ainda que possam ser usados em outros modos de jogo, de forma simplicada). São instrumentos MIDI reais, que podem ser utilizados fora do jogo. Também há um acessório que permite que instrumentos MIDI compatíveis possam ser utilizados como controladores no jogo. Pro é como uma ponte entre o jogo e o aprendizado de música de verdade. de jogo mais difícil, Expert Pro, a notação coincide com a de um instrumento O modo No nível convencional. Quão longa é essa ponte só o tempo dirá. Conforme o diretor da Harmonix, Daniel Sussman: Consideramos o modo Pro como uma experiência diferente da simulação de cinco botões, mas não necessariamente um caminho para o domínio completo dos instrumentos reais. 2.10.4 Adaptações para portáteis Controles que simulam instrumentos têm tamanhos consideráveis (sobretudo as baterias). Não são opções para um portátil. Nem por isso os jogos das franquias Band deixaram de ser lançados nessas plataformas. Guitar Hero e Rock A solução mais simples é uma adaptação semelhante à que ocorria nas duas primeiras versões de Guitar Hero, onde era possível jogar com um gamepad comum. Sem necessidade de acordes, bastava apertar os botões correspondentes às indicações na tela. A versão de Rock Band para PSP, com o sugestivo subtítulo os botões para cima e para a esquerda do interação. notas D-pad Unplugged [55], utiliza e os botões triângulo e círculo para A simplicação para apenas quatro possibilidades foi necessária, já que as só podiam ser acessadas com os polegares. Diferente de todas as outras versões, o jogador controla todos os instrumentos, um de cada vez, conforme as instruções do game. Deve tocar toda uma sequência predeterminada sem erros para trocar para outro 44 instrumento (guitarra, baixo, bateria ou vocal). A troca é feita com os cross O botão shoulder buttons. ou o direcional para baixo também são utilizados, com a mesma função, para ativar uma opção para aumento de pontuação. É importante notar que essa forma de jogar independe do jogador ser destro ou canhoto situação rara de ocorrer em consoles gamepad. Nintendo DS, o jogo Band Hero[51], que utilizam o padrão Para também da franquia Guitar Hero, utiliza interface semelhante para controlar a bateria: direcional digital para a esquerda e para baixo e os re buttons B e A. Existe, como opção, uma capa de silicone a ser colocada em volta da parte de baixo do portátil (Figura 2.95). Essa capa cobre todos os controles e tem quatro botões (com as mesmas cores das indicações da tela) que se encaixam apenas nos comandos necessários. Para o controle da guitarra, há um estranho acessório com quatro botões que é encaixado no slot para cartuchos de GBA. O portátil deve ser segurado de lado, de forma que a tela sensível ao toque que à direita, conforme Figura 2.96. Com a mão atada por tira especiais ao acessório, o jogador dedilha os botões com os dedos indicador, médio, anelar e mínimo da mão esquerda, enquando, com a mão direita, dá paletadas com uma stylus em formato apropriado na tela de toque. A posição estranha funciona, ainda que o próprio jogo advirta que devem ser tomados cuidados para evitar dores no pulso. Figura 2.95: Bateria de Band Hero Figura 2.96: para DS [64]. Guitarra de Band Hero para DS [62]. 2.11 Novos controles O público-alvo dos consoles hardcore. O Xbox 360 e Playstation 3 era, preferencialmente, os jogadores Wii, com capacidades grácas muito inferiores aos concorrentes, evitou essa disputa e buscou públicos alternativos, os jogadores casuais. E vem dominando essa fatia de jogadores desde seu lançamento. A Microsoft e a Sony demoraram um bocado para perceber as possibilidades desse nicho. Mas criaram, em 2010, suas ferramentas para concorrer com a Nintendo. 45 2.11.1 Move e a terceira dimensão do movimento É difícil, após analisar os últimos controles, não concluir que as soluções da Nintendo são bem mais que inspiração para a Sony. O mesmo aconteceu quanto ao novo controle de movimento para PS3: o Move51 (Figura 2.97). Move [62]. Figura 2.97: Possui o mesmo formato alongado, para ser segurado como um bastão pela mão dominante [58]. Tem um grande e exclusivo botão na parte superior, privilegiando seu acesso com o polegar (como o inferior, o A do Wii Remote). Também possui um trigger button na parte T, para ser usado com o dedo indicador (como o B do controle da Nintendo). 52 A captura de movimentos (que usa um giroscópio, um magnetômetro e acelerômetros) é tão precisa quanto o Wii Remote Plus. Feito para ter as mesmas propriedades do uso do DUALSHOCK, os quatro re buttons padrão foram colocados em volta do botão principal, em posição semelhante à do gamepad, mas com cerca de metade do tamanho dos botões do DUALSHOCK 3. Os option buttons select e start cam, respectivamente, nas laterais esquerda e direita do controle. O botão de acesso ao sistema operacional está posicionado no centro do controle. Também tem uma correia para prendê-lo ao pulso. Seria injusto, no entanto, não frisar a grande novidade deste acessório: a esfera luminosa. Mole mas não esponjosa, pode assumir diversas (para identicar os jogadores, por exemplo), mas sua função principal é fornecer a posição do acessório num espaço tridimensional. O controle funciona em conjunto com a câmera da EyeToy), Playstation Eye (evolução que identica a imagem da esfera e determina a distância em que ela se encontra da câmera em função de seu tamanho relativo. O Wii Remote não é capaz de fazer essa determinação. Nas palavras de Shuhei Yoshida, chefe de produção de jogos da Sony, comparado ao Wii, a maior vantagem [do Move] é a precisão no reconhecimento e na orientação; podemos incorporar movimentos muito súbitos nos jogos. Outra vantagem do Move percebem com os jogos com o é que não é possível como jogadores experientes logo Wii Remote enganar grandes movimentos em leves torsões de pulso. o console ao converter esperados Os grandes movimentos também são detectados em todos os eixos. 51 Exceto quanto indicado em contrário, as referências desta Seção são baseadas em [83] 52 Um magnetômetro serve para medir intensidade, direção e sentido de campos magnéticos. 46 O formato cilíndrico do controle não o torna naturalmente como o Wii Remote. encaixável em acessórios, Mas já há dispositivos com esta função [56] (Figura 2.99) tão dispensáveis quanto com o controlador da Nintendo. Há um acessório chamado Navigation Controller [59] (Figura 2.98). Trata-se de um Move, mas sem sensores de movimento nem esfera lumi- controle com o mesmo formato do nosa. Possui um direcional analógico na parte de cima, um direcional digital logo abaixo, e os re buttons circulo e cross entre eles. Esses dois botões servem, tradicionalmente, cross) ou cancelar (círculo) uma ação53 . Também possui um trigger button. Trata-se de uma opção ao uso do gamepad padrão com uma única mão como auxiliar do Move. É difícil não compará-lo com o Nunchuck. para conrmar ( Figura Figura 2.98: 2.99: Move [62]. Navigation Controller [64]. Move e Wii Remote possuem, no cerne, a mesma função. Acessório de tiro para Tanto que a Sony não nega a possibilidade de adaptar jogos lançados para o console da Nintendo, já que ideias que não puderam ser alcançadas com o Wii poderiam ser realizadas no Move, pela tecnologia diferente. 2.11.2 Kinect: o controle não está em suas mãos A Microsoft seguiu uma linha diferente para cativar os jogadores casuais. Ainda que a Sony já tenha experimentado o reconhecimento de gestos por meio de imagens com a EyeToy (e notado as limitações de fazer jogos sem um controle) [83], como vimos 54 na Seção 2.7.1, foi lançado o acessório Kinect para o Xbox 360 em novembro de 2010 . câmera A premissa é a mesma: interagir com o jogo apenas com gestos, sem ter nada nas mãos. Uma transição mais brusca, no entanto, em relação ao O acessório (não dá para chamar de Move e ao Wii Remote [83]. controle) possui duas câmeras (Figura 2.100): uma capta imagens e outra, funciona como um sensor de profundidade do ambiente. Possui, também, um microfone. Tudo funcionando com software próprio. Não há muito mais a descrever: sem nenhum objeto nas mãos, sem botões [57], mas com uma innidade de movimentos que podem ser executados o corpo inteiro de até dois jogadores, reconhecido em todas as sua partes: um esqueleto digital é criado, em três dimensões, com dezenas de articulações. 53 Essas funções são invertidas nos consoles e jogos de origem japonesa. 54 Exceto quando indicado o contrário, todas as referências desta Seção são baseadas em [84] 47 salto, andar para o andar para o lado, independente do jogo. Mas há outras situações menos especícas. Desde o NES, por exemplo, apertar o botão start é a ação padrão para pausar um jogo. Como o Kinect não possui esse (e nenhum outro) botão acessível ao jogador, o gesto Obviamente, há consenso em determinados gestos: um salto é um lado é padrão para uma pausa (e consequente exibição de um menu de opções) é esticar o braço direito junto ao corpo e manter a mão esquerda levantada. Os option buttons, de certo modo, foram substituídos por esse gesto, comandos por voz e seleção de opções com as palmas das mãos estendidas. Os jogadores também podem ser identicados por meio do reconhecimento de faces nativo do acessório. Os gestos são automaticamente reconhecidos se o jogador estiver em pé. dúvida levantada por muitos jogadores antes do lançamento do Mas uma Kinect era se seria possível jogar sentado. De fato, é possível, ainda que, na fase de desenvolvimento, tenham ocorrido problemas em determinados jogos se o jogador sentasse no chão, por exemplo. A jogabilidade desse tipo de interação se encaixa perfeitamente em determinados tipos de jogos. Um deles é o jogo de dança (Figura 2.101). Restrito até então ao reconhecimento Wii Remote), esse gênero dos pés (com equipamentos ou tapetes especícos) ou das mãos ( passa a ser mais completo, já que o passo de dança pode ser avaliado como um todo: movimento e posição de todas as partes do corpo, o que aumenta o desao para o jogador. Figura 2.100: Há um lag, Kinect [61]. Figura 2.101: Kinect [61]. Jogo de dança para uma diferença perceptível, entre a ação do jogador e seu representante no jogo, já que o processamento da imagem é bem mais complexo que o apertar de um botão. Não é, no entanto, um fator impeditivo na experiência dos jogos já lançados e é algo que tende a diminuir em novos títulos. Diferente do e o Move (que já foi adaptado para uso em alguns poucos jogos hardcore) Wii Remote (que também teve diversas experiências com esse público mais exigente), Kinect só possui, até o momento, jogos considerados casuais. Seu poder, enquanto interface de jogo, está claro. Mas ainda falta a adaptação ou criação de um jogo para público não casual para que todo o seu desempenho possa ser avaliado. Este é, de forma simplicada, o objetivo deste trabalho. 48 Capítulo 3 O poder da imagem Como vimos no Capítulo 2, após muitos anos dependendo do padrão gamepad, os jogos de consoles de videogame começaram a explorar outras formas de interação. A captura de movimentos iniciada e popularizada com o Wii e adotada de forma crescente pelo PS3 já não é apenas uma promessa, mas uma opção a ser considerada de forma séria, ainda que não ameace o padrão vigente. O reconhecimento de gestos com uso de visão computacional, no entanto, é uma tecnologia relativamente nova em consoles e seus precedentes (conforme vimos na Seção 2.7.1) não são muito bons pelo menos no aspecto comercial. Kinect, ícone máximo dessa empreitada, tem se mostrado sólido, com avançadas e jogos interessantes. Há games completamente novos, que ex- Ainda assim, o técnicas mais ploram bem as características especícas da nova interface. E também há pelo menos um caso de sucesso de adaptação de um tipo de jogo que já existia anteriormente para este novo tipo de interação. Também já existem experiências interessantes em jogos de luta. Mas, exceto pelo objetivo, são jogos muito diferentes do clássico combate visto em visão lateral. Nesse capítulo serão apresentados quatro protótipos desenvolvidos para análise das características da interação em jogos por meio de gestos. De início, serão mostradas as técnicas utilizadas e serão analisados os aspectos da conversão de um jogo mais simples para uma interface gestual. Em seguida, será proposto um jogo totalmente baseado nas vantagens e deciências deste tipo de interação. Por m, o reconhecimento de gestos com uso de visão computacional será utilizado como método de entrada em um simulador de jogo de luta. Como o desenvolvimento de software para uso com as interfaces de reconhecimento de 1 gestos em consoles da atualidade requer o uso de licenças especiais, os protótipos serão executados num terminal de computador com uma webcam. Como o objeto de análise será a interação e não o equipamento, não haverá nenhum problema quanto a isso. Isso também possibilita o uso de uma poderosa ferramenta: a biblioteca OpenCV. 3.1 OpenCV OpenCV, acrônimo para Open Source Computer Vision Library, é, como o nome sugere, uma biblioteca para as linguagens de programação C/C++ (também com suporte a outras 1 Além do Kinect, também as câmeras Eyetoy e Playstation Eye fazem uso de reconhecimento de gestos, ainda que de forma menos avançada. 49 linguagens) que trata de visão computacional [71]. Foi desenvolvida pela empresa Intel em 2000 e possui o código aberto (licença BSD). Dispõe de centenas de funções para processamento de imagens e vídeo; interface básica com o usuário; controle de câmera, mouse e teclado; estruturas de dados e álgebra linear. Bem documentada [65], possibilita 2 a criação rápida de aplicações sosticadas . 3.2 Protótipos Desenvolvidos em linguagem C e com uso da biblioteca OpenCV, de forma que o jogador não precise ter nada em mãos, os quatro protótipos são relacionados entre si, numa escala crescente de complexidade. O primeiro apresenta as técnicas utilizadas para extração de informações úteis das imagens. O segundo é a conversão de um dos primeiros jogos com seus controles extremamente simplicados para uma interface gestual. O ter- ceiro protótipo, por outro lado, apresenta um jogo exclusivo, baseado nas características identicadas no reconhecimento de gestos. As experiências obtidas nos três primeiros protótipos servem de alicerce para o quarto, cujo objetivo é avaliar a viabilidade de uma interface gestual para um jogo de luta de perspectiva lateral. Com base nos eventos possíveis de um jogo já existente, o quarto protótipo é uma simulação de interface que converte ações típicas de um jogo de luta (movimentação, saltos, golpes), realizadas pelo próprio jogador, em comandos especícos de entrada de dados. Todos os protótipos têm, no entanto, uma base comum que engloba as técnicas principais de reconhecimento de gestos com uso de visão computacional: o 3.2.1 modelo base3 . Modelo base webcam comum. Trata-se de uma sucessão de quadros, loop controlado, podem ser alterados e fornecem dados básicos (como a largura e altura da imagem, que podem variar conforme o tipo de webcam utilizada). Comandos de controle são dados por entradas especícas de teclado. A tecla ESC foi As imagens são capturadas por uma que, um a um, em um adotada como padrão para nalização dos protótipos. Após os devidos tratamentos, as imagens são exibidas em janelas. Da mesma forma, se essa apresentação ocorrer num loop, o resultado é uma sequência de vídeo. Como é mais natural para o jogador visualizar sua imagem como se estivesse olhando para um espelho, é importante que elas sejam invertidas horizontalmente. Existem várias técnicas para identicação de elementos de interesse nas imagens. Nos protótipos aqui mostrados, será utilizada a subtração de fundo. Segmentação de fundo Como o nome sugere, a ideia é retirar de uma imagem todos os elementos do fundo, restando somente aquilo que é diferente (por denição, os 2 Um estudo mais aprofundado da biblioteca OpenCV objetos de interesse). A técnica e de diversas técnicas de reconhecimento de gestos com uso de visão computacional pode ser visto em [71]. 3 O código-fonte deste modelo, bem como uma explicação das funções utilizadas, pode ser vericada no Apêndice B. 50 de subtração de fundo estático possui uma restrição óbvia: o fundo da imagem deve ser previamente conhecido. Dessa forma, a primeira ação de todos os protótipos é a captura, pela câmera, do fundo onde ocorrerá a ação. O usuário deverá ajustar a câmera (sejam congurações, seja a posição) até que o fundo ideal, estabilizado e sem objetos de interesse, seja escolhido. f renovado frame capturado também A tecla padrão para escolha do fundo é a . O fundo escolhido (que pode ser a qualquer momento) é convertido para escala de cinza. Cada é convertido para escala de cinza e, ponto a ponto, é feita uma subtração entre as duas imagens. O resultado é que toda a área da imagem que seja igual ao fundo é substituída por pontos negros, destacando apenas aquilo que não faz parte da imagem de fundo: os objetos de interesse. Limiarização, erosão e dilatação A partir do resultado (em escala de cinza) da diferença entre a imagem a ser tratada e o fundo, é possível (por meio de uma vericação baseada num determinado valor, o limiar4 ) chegar a uma imagem binária, onde os objetos de interesse aparecem em branco e o fundo, em preto. É possível, também, obter dados a partir desta imagem, mas, antes, é necessário fazer alguns tratamentos. Conforme certos fatores (como a complexidade do fundo escolhido e variações de luminosidade), podem aparecer ilhas de pontos brancos no resultado da limiarização (não pertencentes aos objetos de interesse). Um ajuste no valor do limiar pode minimizar este efeito, mas também pode degrar os objetos de interesse. A aplicação do processo de erosão ajuda na diminuição deste efeito, já que elementos minúsculos do resultado são descartados. Após esse processo, pode-se aplicar o processo de dilatação ao resultado, que faz o inverso da erosão: os elementos que não foram descartados são encorpados. Fica claro que a ordem em que esses dois processos são executados é importante. Contorno A partir dessa imagem binária é possível encontrar os pontos dos contornos dos objetos de interesse. Pode-se desenhar esses contornos mas, mais importante, a chave para as ações de cada um dos protótipos são as análises das posições de pontos especícos desses contornos. 3.2.2 Protótipo 1: BlueDot O objetivo deste primeiro programa é trivial: mover um ponto horizontalmente na tela a partir de uma imagem capturada pela webcam. Sua função nesta análise, no entanto, é mais importante. Servirá para mostrar, passo a passo e visualmente, as técnicas utilizadas em todos os protótipos. 4 Como o fundo inuencia diretamente na qualidade da extração dos objetos de interesse, é importante que o limiar seja ajustável em tempo de execução. chamados trackbars, para ajuste deste valor. Há controles utilizados com o ponteiro do mouse, 51 A diferença desse protótipo em relação ao modelo base é que cada fase tem uma imagem independente alocada e uma trackbar para escolher entre essas fases. Segue a imagem mostrada de acordo com o valor da barra Fase: • 0: Um ponto azul num fundo branco que se move lateralmente de acordo com o movimento dos objetos de interesse; • 1: Fundo escolhido em escala de cinza (Figura 3.1); • 2: Imagem de interesse (Figura 3.2); • 3: Imagem de interesse em escala de cinza (Figura 3.3); • 4: Diferença entre a imagem de interesse em escala de cinza e o fundo no mesmo espaço de cor (Figura 3.4). • 5: Resultado da limiarização (Figura 3.5); • 6: Resultado da erosão (Figura 3.6); • 7: Resultado da dilatação (Figura 3.7). Figura 3.1: Fundo em es- cala de cinza. Figura 3.2: Imagem de in- Figura 3.3: Imagem de in- teresse. teresse em escala de cinza. Figura 3.4: Diferença entre o fundo e a Figura 3.5: Limiarização. imagem (em escala de cinza). 52 Figura 3.6: Erosão. Figura 3.7: Dilatação. Figura 3.8: Contorno. A movimentação do ponto azul é dada pela determinação do ponto do contorno de menor coordenada y y, 5 ou seja, o ponto do contorno mais alto na tela . ca xa e a coordenada x tem o mesmo valor do ponto mais alto. incluída para, opcionalmente, destravar o eixo y, A coordenada Uma trackbar foi fazendo com que o ponto tenha as mesmas coordenadas que o ponto mais alto do contorno. 2 na trackbar correspondente), é possível (Figura 3.8) através do ajuste da trackbar Quando é mostrada a imagem original (valor desenhar o contorno dos objetos de interesse 5 O eixo y das imagens é contado de cima para baixo, assim, quanto maior seu valor, mais ponto está na tela, e vice-versa. 53 baixo um especíca. 3.2.3 Protótipo 2: PongCV Como já citado na Seção 2.1.2, o jogo Pong foi um dos primeiros jogos comerciais de sucesso. Com interface extremamente simples, tem, aqui, uma versão com reconhecimento de gestos por visão computacional. Uma característica primordial do é respeitada: a bola é quadrada. como no original, A game rede, apenas divide a tela (sem nenhum tipo de interação). Uma pontuação é gerada na parte de cima de 6 cada campo de jogo (a fonte, infelizmente, difere bastante da original). O fundo, ao invés de negro, é o própria imagem capturada (com a bola e a pontuação em preto, conforme Figura 3.9). tenistas (ou raquetes, ou paredes com rodas, ou seja lá o que se possa imagOs inar que aquelas barras verticais representem) são substituídos pela mão de cada jogador, uma de cada lado do campo de visão Figura 3.9: da câmera. gestos. Pong com reconhecimento de A bola movimenta-se em linha reta, 7 sem nenhuma interferência . Se toca a linha superior (coordenada y igual a zero) ou inferior (coordenada y igual à altura da tela), sua movimentação vertical é invertida. Se toca a linha da esquerda (coordenada x igual zero), o jogador 2 ganha um ponto. Se toca a linha da direita (coordenada x igual à largura da tela), o jogador 1 ganha um ponto. Quando a bola toca qualquer ponto do contorno, a movimentação horizontal é invertida (Figura 3.10). Há trackbars para mostrar ou não o contorno, alterar o tamanho da bola, variar a velocidade da bola (na horizontal e na vertical) e desabilitar os jogadores (caso apenas um jogador queira jogar a bola contra uma parede). Ao mostrar o contorno, são mostradas, também, linhas que limitam a ação dos jo- fundo da quadra. Isso não é algo primordial ao jogo, mas serve para preservar a jogabilidade do Pong original, onde só há liberdade de movimengadores a uma área próxima ao tação no eixo vertical (Figura 3.11). Também serve para economizar recursos da máquina, já que a comparação com os pontos dos contornos só ocorrem dentro dessas áreas. O funcionamento é análogo ao game original. Não há necessidade de diferenciar os contornos, já que isso é irrelevante, em situações normais de jogo, para a ação da bola. 6 A função da biblioteca OpenCV utilizada para escrever numa imagem pode receber uma variável com texto, mas não uma variável inteira. Foi necessária uma trabalhosa adaptação entre inteiros e caracteres, logo a pontuação vai apenas de zero a nove. 7 Como sugestão, outras versões podem incluir mudanças em função de atrito, gravidade, força da rebatida, etc. 54 Figura 3.11: Figura 3.10: Rebatida na bola. 3.2.4 Linhas delimitadoras da área de jogo. Kontornu Protótipo 3: Inspirado em certos programas de TV, onde pessoas têm que passar por paredes onde só há um buraco com o formato aproximado de uma silhueta humana em posições mais difícies a cada rodada, A ideia é Kontornu é um jogo de comparação de silhuetas. comparar dois contornos. Após a captura de fundo, um novo assistente (Figura 3.12) mostra o contorno dos objetos de interesse e, quando pronto, a tecla c deve ser pressionada (Figura 3.13). O contorno escolhido é desenhado na tela e deve ser igualado (Figura 3.14). Quando for, é liberada a determinação de um novo contorno para comparação. Igualar todos os pontos dos contornos seria irreal não computacionalmente, claro, mas quase impossível de ser feito pelo jogador (não apenas pela posição, mas também pelas leves modicações, a cada frame, no contorno em decorrência dos processos de erosão e dilatação, além de even- Figura 3.12: Assistente de captura de contorno. tuais mudanças leves de fundo e iluminação). A comparação, nesse caso, é feita por intermédio de determinados pontos do contorno: o mais alto, o mais baixo, o mais à direita, o mais à esquerda e um ponto central (Figura 3.15). Esses pontos são determinados por comparações com todos os pontos do contorno. O ponto mais alto terá a menor coordenada mais à direita, a maior coordenada calcular a coordenada x; y; o mais baixo, a maior coordenada o mais à esquerda, a menor coordenada x. y; o Para x do ponto central, as coordenadas x de todos os pontos do contorno são somadas e esse resultado, dividido pela quantidade de pontos (em outras palavras, a média, com o valor truncado quando não for inteiro). O mesmo é feito para a coordenada 55 Figura 3.13: Contorno capturado. Figura 3.14: Tela do jogo Kontornu. y do ponto central. Esses cinco pontos são comparados nos dois contornos. Ainda assim, é complexo margem de erro variável é usada, determinada como a distância mínima entre os dois pontos A e B (Figura 3.16). Para isso, utiliza-se a seguinte relação: (ainda que bem mais provável) fazer com que os cinco pontos coincidam. Uma dist(A, B) = q (A.x − B.x)2 + (A.y − B.y)2 (3.1) dist(A, B) corresponde à distância entre os pontos A e B. A.x é a coorx do ponto A (caso análogo a A.y, B.x e B.y) Na equação, denada Para o ponto central, se essa distância for menor que o erro estipulado, a posição é considerada válida. Para os demais pontos há uma condição adicional: para tornar o jogo mais próximo dos que o inspiraram, é preciso privilegiar os pontos que estejam do primeiro contorno. dentro Além do resultado dessa equação ter que ser menor que o erro estipulado, o ponto mais alto do segundo contorno precisa ter uma coordenada y maior y menor; o ponto mais à direita, uma coordenada x menor; o ponto mais à esquerda, uma coordenada x maior. que o do primeiro contorno; o ponto mais baixo, uma coordenada Figura 3.15: Pontos a comparar. Figura 3.16: Margem de erro ampliada. 56 Também não basta que os cinco pontos estejam numa posição válida. É preciso manter essa condição por, no mínimo, dez Na janela do jogo há trackbars frames consecutivos. para mostrar ou não o contorno, mostrar ou não os pontos de interesse dos dois contornos, ajuste da taxa de erro e do limiar. Na janela de denição do primeiro contorno há trackbars para mostrar os pontos de interesse e ajustar o limiar. 3.2.5 Protótipo 4: MotionCIC Com a introdução de novos modos de interação com os jogos, começa a surgir a necessidade de adaptações de jogos já existentes para esse novo modelo. O gênero de jogos de luta nasceu e se desenvolveu em torno de manches dos q arcades e dos direcionais digitais dos gamepads. re buttons e dos Tal como é, com uma perspectiva lateral, movimentação rápida, saltos e golpes diversos, mostra-se como um desao interessante a criação de uma interface de reconhecimento de gestos usando visão computacional. O intuito desse protótipo é simular ações possíveis em um jogo de luta tradicional. O jogo escolhido para ter suas ações simuladas no teste (sem que haja, no entanto, nenhum acomplamento entre o protótipo e o jogo estudado) é o CICFighters [86]. CICFighters Python, pelos irmãos Danilo e Leandro Gaby Andersen Construção de Peças Multimídia (ministrado pela Castanho na Universidade de Brasília), CICFighters é um jogo Criado em 2009, em linguagem Trindade como trabalho da disciplina professora Carla Denise em que dez docentes do Departamento de Ciência da Computação da UnB 8 se enfrentam em disputas onde o melhor professor será decidido por uma luta até a morte. O título é uma junção de UnB) com CIC (sigla do Departamento de Ciência da Computação da Street Fighter (uma das mais consagradas franquias de jogos de luta). Durante o jogo, existem diversas ações que o jogador pode realizar para controle de seu lutador: 1. Mover-se lateralmente. 2. Abaixar-se. 3. Saltar (podendo mover-se lateralmente durante o salto). 4. Dar um soco em posição normal. 5. Dar um soco abaixado. 6. Dar um soco durante o salto. 7. Dar um chute em posição normal. 8. Dar um chute abaixado. 8 Na versão disponível na página do projeto (http://code.google.com/p/cicghters/, acessada em 14/02/2011) é possível jogar com os professores: Berger, Bordim, Brandão, Carla, Fernando, Gondim, Ladeira, Lamar, Li e Ralha. 57 9. Dar um chute durante o salto. 10. Dar um golpe especial em posição normal. 11. Dar um golpe especial abaixado. 12. Dar um golpe especial durante o salto. 13. Defender em posição normal. 14. Defender abaixado. 15. Defender durante o salto. Há alguns aspectos importantes: • Não há um botão especíco para defesa. Essa ação ocorre quando, pouco antes de receber um golpe do oponente, o jogador faz com que seu lutador ande para trás (direção oposta à que o avatar está voltado). • Não é possível se mover enquanto se está abaixado. • Não é possível se mover se o adversário estiver bloqueando sua passagem. Essas serão as ações e restrições que uma interface de reconhecimento de gestos deverá tratar. Interface Um jogador movimenta-se dentro da área visualizada pela câmera, de forma a ser totalmente enquadrado e ter movimentação livre na imagem. Fica de lado, na mesma posição que o lutador 1 no jogo (Figuras 3.17 e 3.18). Se zer um movimento de soco (Figuras 3.19 e 3.20), chute (Figuras 3.21 e 3.22) ou salto (Figuras 3.23 e 3.24), o lutador também o faz. Também é identicado se o jogador está em pé ou abaixado (Figuras 3.25 e 3.26), com contrapartida do avatar no jogo. Figura 3.17: Enquadramento inicial com Figura 3.18: Enquadramento inicial. contorno. 58 Figura 3.19: Soco com contorno. Figura 3.20: Soco. Figura 3.21: Chute com contorno. Figura 3.22: Chute. Figura 3.23: Salto com contorno. Figura 3.24: Salto. Tudo é feito de acordo com comparações com pontos especícos do contorno. Numa posição normal de luta, o vericar a coordenada ponto mais alto corresponderá à cabeça do jogador. Basta y desse ponto em comparação com uma altura predeterminada: se está abaixo, o jogador está abaixado (considerando a restrição de que, nessa posição, não 59 Figura 3.25: Abaixado com contorno. pode se mover). Analogamente, o Figura 3.26: Abaixado. ponto mais baixo está em seus pés. Se esse ponto está mais alto que uma outra altura predeterminada, o jogador deu um salto. Para caracterizar um soco ou um chute é preciso identicar dois pontos: o mais à direita na parte de cima do contorno (o ponto soco) e o mais à direita na parte de baixo ponto chute). Uma outra altura predeterminada limita essas duas áreas. É Camera Kombat9 [73], que implementa uma solução interessante para a emissão de bolas de fogo. O ângulo entre a ponta do braço esticado, a cabeça e a do contorno (o usada a solução do jogo metade da altura do contorno é medido. A ação é determinada a partir de um certo valor desse ângulo. Â entre o y e a linha formada pelo ponto alto (PA) e o ponto soco (PS). Para isso, basta usar Uma ideia semelhante será utilizada: para um soco, será calculado o ângulo eixo a seguinte relação: Â = atan( P A.x − P S.x ) P A.y − P S.y (3.2) Se esse ângulo for superior a um determinado valor, o soco é caracterizado 3.19 e 3.20). O processo é análogo para o chute, mas utilizando o ponto chute, 10 (Figuras ponto mais baixo e o ainda que seja possível identicar o soco com o jogador abaixado (Figuras 3.27 e 3.28), mas não o chute abaixado. Há uma condição adicional para o chute: o ponto chute deve estar mais alto que uma altura predeterminada. Todas as alturas citadas são ajustáveis por trackbars, de forma que cada jogador atribua os valores convenientes a suas capacidades físicas. Os ângulos analisados para as ações de soco e chute são representados por linhas que ligam os pontos especícos, conforme pode ser vericado em todas as guras mostradas nessa seção. Este protótipo faz com que as ações na imagem do jogador movimentem e modiquem um ponto em uma janela (analogamente ao protótipo BlueDot). Com o jogador em pé, a 9 Criado em 2006 por Luis Roberto Pereira de Paula e Renato Bonini Neto, é um jogo de luta que OpenCV para que as imagens de dois jogadores apareçam em um cenário do jogo Mortal Kombat 3 [18], tendo que lançar magias para acertar o adversário e desviar-se das que vêm contra. 10 Note-se que, se as coordenadas y do ponto alto e do ponto soco forem iguais, a equação que determina o usa a biblioteca ângulo para caracterização do soco encontrará uma divisão por zero. Essa condição precisou ser adicionada na determinação do ponto soco, já que não é possível impedir, sicamente, o jogador de provocar essa situação. 60 Figura 3.27: Soco abaixado com con- Figura 3.28: Soco abaixado. torno. coordenada y do ponto é xa na metada da tela. ponto (simulando a movimentação do lutador y 11 O ponto alto determina a coordenada x do ). Caso o jogador se abaixe, a coordenada do ponto aumenta para 3/4 da altura da tela 12 . Se o jogador saltar, o ponto realiza uma breve animação de salto. Com um soco, o ponto muda para a cor vermelha. Com um chute, o ponto ca verde. Em resumo, dentre as quinze ações possíveis no jogo simuladas pelo protótipo Kontornu: CICFighters, seis são plenamente movimentar-se lateralmente, abaixar-se, saltar, dar soco em posição normal, dar soco abaixado e dar chute em posição normal. Outras três ações não foram implementadas por simplicação: dar chute abaixado, dar um golpe especial em posição normal e dar um golpe especial abaixado. De forma análoga à ações simuladas, pontos do contorno de poses especícas do jogador podem ser utilizados para determinação dessas ações. Há, no entanto, as ações que ocorrem no ar e as variações de defesa, que, por testes preliminares durante o desenvolvimento, não foram convertidas. Há questões mais amplas a serem discutidas durante a análise dos resultados dos testes no Capítulo 4. 11 Essa é uma solução bem diferente do que é feito no jogo CICFighters, que faz uso do padrão gamepad: o avatar é movido com um direcional digital (convertido em entradas de um teclado de computador, mas, note-se, numa disposição semelhante), com oito direções possíveis. Uma alternativa, claro, seria analisar a posição de algum ponto do contorno para prover movimentação lateral. Não haveria, no entanto, uma forma prática de sincronizar a posição do jogador na imagem com o lutador na tela de jogo. O máximo que poderia ser feito é que, digamos, o jogador casse em determinada posição (por exemplo, com o corpo inclinado em certo ângulo) para indicar que deseja seu avatar se movimente em dada direção. Não é algo, entretanto, que dê real uso à visão computacional: seria o equivalente a jogar num o corpo todo. 12 Não se pode esquecer que, quanto maior a coordenada 61 gamepad gigante com y, mais baixo ela é representada na imagem. Capítulo 4 Resultados Neste capítulo são descritos os testes realizados com os protótipos, bem como os resultados obtidos. Antes de executar qualquer dos programas, são necessários alguns preparativos: 1. O fundo deve ser o menos complexo possível. A quantidade de elementos na imagem de fundo, a princípio, não é um problema, mas qualquer diferença será percebida no resultado e a probabilidade de modicações é proporcional a essa quantidade. O ideal é que o fundo tenha uma única cor sólida, diferente das cores dos elementos cujos movimentos serão capturados. 2. A incidência de luz deve ser constante, pois quaisquer variações serão consideradas como diferenças. As webcams atuais, via de regra, possuem controles automatizados de compensação de luminosidade, que são um ótimo recurso para uso normal, mas são um problema para identicação de objetos de interesse em visão computacional. Caso seja possível, esse controle automático deve ser desativado. Se não for possível, é conveniente que algum objeto de interesse apareça na imagem antes da captura para que os ajustes automáticos sejam feitos antes de capturar o fundo. 3. Não deve haver nenhum objeto de interesse na imagem. 4. Sombras e reexos também serão considerados objetos de interesse. É preciso analisar os pontos de onde vem a luz, evitar proximidade com paredes e cobrir pisos reexivos. 5. Há uma distância mínima de cerca de três metros entre o jogador e a câmera para que ele apareça inteiro na imagem. Os testes foram feitos em um netbook com processador Intel Atom N270 com 1 GiB de RAM. É uma conguração modesta nos padrões atuais, o que mostra que os protótipos podem ser utilizados em praticamente qualquer computador atual. A tela de 10 polegadas (com resolução máxima de 1024x600 pixels), no entanto, foi insuciente para exibição de várias janelas. Para a captura das imagens, foi utilizada uma câmera Microsoft LifeCam VX-500, com resolução de 640x480 pixels. Alguns testes, porém, foram feitos com a câmera embutida no próprio netbook, de qualidade de imagem inferior, mas com resultados semelhantes1 . 1 Na verdade, câmeras que captam menos detalhes podem ser melhores nessas situações, já que a determinação do contorno dos objetos de interesse é prejudicada quando variações mínimas são percebidas. 62 4.1 BlueDot O intuito do protótipo BlueDot é, antes de aplicar o reconhecimento de gestos num jogo, apresentar como os gestos serão reconhecidos. Assim, não se trata de um jogo e seu objetivo primário (mover um ponto horizontalmente) é relativamente simplório. Seu grande trunfo, no entanto, é mostrar, visualmente, cada passo envolvido no processo de identicação de elementos numa imagem. Como é aplicação direta do modelo base, o BlueDot não apresentou problemas, qual- quer que fosse o objeto de interesse. Uma constante durante os testes foi a necessidade de renovação do fundo, já que a câmera utilizada é bastante precisa e mínimas variações de iluminação prejudicavam as comparações (não sendo possível desligar sua compensação de luminosidade). A partir desse problema foi necessário criar a chamada, durante a execução, do procedimento de nova captura de fundo por meio da tecla f, para evi- tar reiniciar o protótipo sempre que fosse necessário renovar o fundo. Como o processo funcionou perfeitamente, foi incorporado ao modelo base. As janelas, por causa baixa resolução da tela, tendem a se sobrepor, atrapalhando a visão da movimentação do ponto. Mas não chega a ser um problema. Fazer os testes mostrando uma das mãos para a câmera mostrou-se tão efetivo quanto o corpo inteiro, com a vantagem de que o controle das trackbars pode ser feito sem ajuda de outra pessoa. Todas as fases do processo de segmentação de fundo foram mostradas de forma clara (ainda que as diferenças após a erosão e a dilatação sejam mínimas com a escolha de um fundo menos problemático). O protótipo serviu bem para o seu modesto objetivo. 4.2 PongCV A primeira experiência desta análise no uso de gestos como entradas para jogos foi a conversão de um dos jogos mais simples de que se tem notícia: Pong. O objetivo era adquirir experiência para os protótipos seguintes, mais avançados. Como veremos, acreditar que a simplicidade dos controles com paddles signica o mesmo em uma interface gestual foi uma conclusão precipitada. Um erro, até. O jogo Pong original proporciona uma grande limitação para o jogador: a movimenavançar para a rede numa estratégia de tação do avatar é num único eixo. Não é possível jogo diferenciada. Deve-se esperar, pacientemente, que a bola chegue à sua linha de ação, tentando prever sua posição. Da forma como essa adaptação foi concebida, essa limitação não existe. O jogador é livre para mover a mão em qualquer direção (não apenas para cima e para baixo). Pode aumentar sua vantagem aproximando a mão da câmera, por exemplo (gerando um contorno maior, que pode até cobrir todo o fundo da quadra para eliminar a necessidade de movimentação, conforme Figura 4.1). Não há, na verdade, nada que possa impedir o jogador de aparecer de corpo inteiro na imagem. O jogo é refém da ética dos jogadores em seguir regras simples: mostrar apenas uma das mãos em movimentos verticais e manter a mesma distância da câmera. A solução do protótipo de testar a colisão da bola com o contorno somente quando próximo às linha de fundo da quadra é boa para evitar proibitivos avanços à rede, mas possui um outro problema: a bola pode car presa dentro de um contorno, se começar a 63 identicar a colisão nessa situação (com o contorno da mão dividido pela linha delimitadora), conforme Figura 4.2. Figura 4.1: PongCV. Trapaça possível em Figura 4.2: Bola Por mais intessante que possa parecer um jogo de presa no contorno. Pong com imagens reais é lúdico e funciona muito bem se as regras forem seguidas , não é algo que possa ser feito com as mesmas regras do original. Não é possível limitar, sicamente, as ações do jogador. Uma boa solução para uma outra versão seria identicar algum ponto especíco em cada um dos dois contornos, que serviria para mover uma raquete como a original apenas verticalmente. Todos os controles funcionam de forma satisfatória, mas, como está, o jogo não pode oferecer as restrições necessárias para que o jogador siga as regras. 4.3 Kontornu O objetivo deste protótipo era introduzir um jogo completamente novo, baseado exclusivamente nas possibilidades oferecidas pelo modelo base, que limita-se a encontrar os pontos do contorno dos objetos interesse. A ideia de comparar dois contornos é quase imediata, lembrando certas provas de programas de domingo (em que é preciso passar por um buraco com formato de uma silhueta humana em uma parede móvel). O jogo já nasceu com certos problemas, pois o fato de ter que capturar a imagem de fundo antes de começar a ação (característica do modelo base) já pode ser algo que o jogador não vá aceitar bem. Ter que gerar um contorno num segundo passo pode ser ainda menos estimulante. O ideal seria que, numa versão posterior, contornos pré-denidos já existissem. Por outro lado, há a situação em que o contorno é gerado por uma pessoa e deve ser igualado por outra. O nível de diculdade aumenta e a interação entre pessoas tão pregada nos anúncios de Wii Remote, Move e Kinect pode ser a chave para que esse jogo simples se torne muito divertido. A dinâmica de jogo muda completamente quando os pontos a aproximar nos dois contornos são mostrados. Sem o conhecimento desses elementos, o jogador não tem nenhum direcionamento além do próprio contorno: imitar o perl o mais elmente possível ainda 64 é a melhor opção. Ao se mostrar os pontos, no entanto, o jogo muda. O contorno deixa de ser importante e a preocupação passa a ser com a localização de certas partes do corpo. O jogador perceberá que não é necessário, na prática, igualar os dois contornos para chegar 2 ao objetivo , conforme Figura 4.3. Figura 4.3: Taxa de erro alta: contornos bem diferentes. Apesar disso, o jogo mostrou-se desaador, mesmo em níveis de diculdade médios. Em níveis avançados, com a taxa de erro cada vez menor, a tarefa é quase impossível, mesmo para dois contornos feitos pela mesma pessoa. Com algumas adaptações, como os já citados contornos pré-denidos e um contador de tempo decrescente para que o jogador iguale a posição, o jogo pode se tornar muito interessante. Pode ser usado, também, para aprendizado de determinadas posições ou poses (como ioga). 4.4 MotionCIC Wii Sports [45] é uma coletânea de jogos de esporte lançado junto com o Nintendo Wii para demonstrar as capacidades do Wii Remote (fazia parte do pacote padrão dos O jogo primeiros consoles). Um desses jogos é o boxe. O jogador, numa perspectiva de primeira pessoa, deve fazer movimentos de soco com o Wii Remote e o Nunchuck nas mãos. Era 2 A inclusão do ponto central do contorno tenta minimizar esse efeito, já que contornos com diferenças marcantes tendem a ter um centro de massa bem distinto. 65 possível dar socos diretos, cruzados e ganchos, além de desviar dos golpes do oponente. Era uma fórmula que funcionou relativamente bem. Por outro lado, para o mesmo console, foi lançada uma versão do jogo bat: Armageddon Mortal Kom- [47]. Com perspectiva lateral, fazia um uso diferenciado dos sensores de movimento: certos comandos sequenciais foram substituídos movimentos especícos do Wii Remote com o trigger button B pressionado. Bem diferente do que um jogador efetivamente esperaria, como imitar as poses dos lutadores para, por exemplo, soltar uma magia. Esses são dois exemplos de jogos de luta com interfaces diferentes do padrão No primeiro caso, os resultados foram bons. um controle de GameCube ou um gamepad. No segundo, a melhor solução era usar Classic Controller para jogar do modo tradicional. Motivos: o primeiro jogo foi criado a partir das características do controle, levando em consideração suas vantagens e limitações; o segundo jogo já existia e usava um sistema de adaptado a novas formas de controle. MotionCIC, seis ações analisadas funcionaram perfeitamente: movimentação lat- controle totalmente diferente, precisando ser Em eral, abaixar, salto, soco em pé, soco abaixado e chute. Ações como golpes especiais e chute abaixado, como mencionado, são análogas ao que já foi implementado. Entretanto há questões a discutir quanto às restrições do jogo, as ações combinadas com saltos e o processo de 4.4.1 defesa de golpes. Ações durante os saltos A implementação do salto, como visto, é relativamente simples: o jogador salta, de forma que todo o seu contorno que acima de uma linha ajustável. Pode-se, inclusive, saltar para a frente e para trás, já que a movimentação lateral (dada pela coordenada x do ponto mais alto) independe de o jogador estar em pé ou saltando. Mas há a questão das ações que podem ocorrer, no jogo, durante um salto. No padrão gamepad é bem simples efetuar um chute durante um salto (vulgo voadora): aperta-se, em conjunto, o direcional digital para cima e para a direita ou esquerda (diagonal) para que o avatar salte e, antes que ele volte ao solo, aperta-se o botão correspondente ao chute. Essa composição de ações (salto seguido de chute) não é complicado de implementar. Na verdade, da forma como o protótipo está já é possível fazer isso. outro. Em uma interface de reconhecimento de gestos, uma 3 é natural . Uma voadora é um único movimento. O ponto principal é composição de movimentos não É possível ajustar a interface de modo a reconhecer uma ação desse tipo, mas não é viável exigir que um jogador a realize. O mesmo ocorre quanto ao soco durante o salto. Para que a interface se torne viável, seria necessário que as ações durante o salto, no jogo, fossem inibidas. O salto serviria somente para movimentação ou desvio de golpes. 4.4.2 Abaixar A interface possibilita que todas as ações ocorram, também, quando o jogador está abaixado. Pode parecer uma vantagem, mas é um problema. 3 Mais uma vez, é possível a comparação com o ato de jogar com o corpo inteiro em um gigante. 66 gamepad Socos, chutes e magias podem ser usados enquanto o jogador está abaixado, mas há uma restrição importante: o lutador não se move nessa posição. É possível, como ocorre CICFighters e neste protótipo, travar a posição do avatar quando abaixado. No padrão gamepad isso não é um problema, já que, caso o jogador acesse, ao mesmo tempo, o D-pad no para a direita ou para a esquerda, nada acontece. Mas o que acontece se o jogador se move enquanto está abaixado? Mais uma vez, não é possível impedir que o jogador faça isso. No protótipo, se ele desce para 1/4 da altura da tela e ca parado (a coordenada x deixa de depender do ponto alto) até que o jogador se levante (podendo, no máximo, mudar de se abaixa, o ponto cor com um soco). O jogador, entretanto, é livre para mover-se lateralmente enquanto está abaixado, sem contrapartida do ponto. É bem mais simples fazer com que o ponto abaixado, continue se movendo, mesmo na posição CICFighters e da maioria dos jogos de luta. mas isso fere uma das restrições do Na prática, uma implementação desse tipo daria uma vantagem ao jogador que estivesse utilizando a interface gestual: poderia se abaixar, mover-se para uma outra posição estratégica e levantar-se, sendo teletransportado para a nova posição. A viabilidade da interface dependeria da modicação do jogo, de forma que os lutadores também se movessem abaixados. 4.4.3 Defesa O padrão de defender andando para trás é clássico nos jogos de luta. interessante, já que recuar diante de um golpe é, de certa forma, É uma solução instintivo. É algo que pode ser bem aproveitado numa interface gestual. Mas há um pequeno problema. Para defender com o gamepad, basta segurar o direcional para o lado oposto ao que o lutador está virado. Mas, numa interface gestual, o movimento se dá pela variação de posição do jogador. Não é possível segurar para trás. O jogador precisaria mover-se um pouco na iminência de receber o golpe. Isso certamente seria um problema nos limites de ação da câmera, onde o jogador não poderia se mover mais para não sair da imagem. Além disso, como tudo no jogo, há pequenas animações de acordo com os eventos do game. Durante a defesa, o avatar assume uma certa posição para deter o golpe. Nessa animação ele não se move. É período curto, mas o suciente para que o jogador mude de posição: isso geraria novo efeito de teleporte quando a animação chegasse ao m. Dessa forma, seria necessário que a animação pudesse ocorrer com o avatar em movimento. Para eliminar o efeito seria necessário alterar o jogo de forma que não fosse mais possível utilizar a defesa. Essa, claro, seria uma solução drástica. adotada nos jogos de luta da franquia Mortal Kombat, Uma outra solução, é o uso de um botão especíco para a defesa. Bastaria que determinada posição do jogador fosse identicada como tal. Mas isso geraria um problema ainda pior. A posição de defesa é vantajosa, já que o lutador perde pouca ou nenhuma vitalidade. Mas, tradicionalmente, vem em conjunto com alguma restrição, normalmente de movimento: enquanto o lutador está defendendo, não pode se mover. É algo que deve ser feito para equilibrar o jogo, já que, se é possível defender e se mover ao mesmo tempo, não há motivos para se mover sem defender. Mais uma vez, é o tipo de restrição que não se pode impor, sicamente, ao jogador. Se há uma posição especíca de defesa onde o avatar ca 67 travado, o jogador permanece livre para se mover (também gerando o efeito teletransporte quando parar de defender). E, se é possível defender e se mover ao mesmo tempo, não há necessidade de implementar a movimentação sem defesa que será algo inútil. De um modo geral, há uma série de eventos do jogo CICFighters que podem ser plenamente convertidas, mas há outras que exigiriam mudanças algumas drásticas na dinâmica de jogo para que pudessem funcionar, sobretudo na questão da movimentação. Tal qual o game é, uma interface gestual oferece recursos que transcendem as limitações necessárias do estilo e restringe as ações a aquilo que o jogador é capaz de executar sicamente. 68 Capítulo 5 Conclusão As coisas mudam. A evolução é a ordem natural das coisas vemos isso o tempo todo. Mas, dicilmente, algo muda sem que haja uma necessidade envolvida. Isso aconteceu com a interação do jogador com o videogame. No começo, o controle era criado junto com o jogo, um completando o outro. Novo jogo, novo controle. Depois, com a exploração comercial, mostrou-se mais barato criar um hardware único, com controles padronizados, a partir dos quais os games passaram a ser desenvolvidos de acordo as vantagens e restrições das interfaces disponíveis. Primeiro, paddles e re buttons eram sucientes. Mas a complexidade aumentou e, com ela, a necessidade de mais botões. Aí vieram, além de maior quantidade de botões option buttons, shoulder buttons, trigger buttons 1 . A única dimensão controlada pelo paddle precisou evoluir para as duas do D-pad. O direcional digital logo se mostrou de ação, ineciente numa terceira dimensão e vieram os direcionais analógicos. Tudo ao alcance dos polegares e indicadores, num acessório com vibração e sem o que encaixa bem nas palmas das duas mãos. Em volta desse estranho acessório, por cerca de vinte anos, foi desenvolvido todo um legado de jogos toda uma cultura. Todas as necessidades que surgiam eram sanadas com mudanças algumas leves, outras radicais num mesmo padrão. DUALSHOCK 3, cou acrescentar ao padrão gamepad que não perfumarias. Quando a Sony lançou o claro que não havia muito mais a Ele estava em seu ápice. Perfeito? É difícil dizer. O fato é que permanece estável até hoje. Qualquer jogo antigo criado para gamepad pode ser jogado, sem problemas, com um atual. mudança iniciada pela Nintendo sempre ela , ao introduzir uso em um A controles que re- conhecem movimentos, não parecia ter um motivo especíco. O padrão gamepad vinha atendendo bem as necessidades de desenvolvedores de jogos e dos próprios jogadores. A questão era: quem eram os próprios jogadores? Inicialmente uma curiosidade acadêmica, depois passatempo para crianças e adolescentes, os tion 2. games passaram a ter um público mais adulto a partir do lançamento do Playsta- Mas, ainda, voltado para o público masculino, dentro de limitada faixa etária. A necessidade vista pela Nintendo, que vinha amargando derrotas nos consoles desde o Nintendo 64, foi buscar um público diferenciado. Um público que só não jogava por causa do legado complexo do emaranhado de botões e direcionais do padrão 1 Em resposta e provocação ao Kinect, a http://www.yaybuttons.com/, acessado em 07/02/11. 69 Sony enaltece a gamepad. necessidade de botões em incursão da Nintendo não tinha pretensão de substituir Wii Remote mais pareciam um opcional, possibilidades de adaptação ao padrão gamepad. O fato é que o Mas sempre cou claro que a o padrão atual tanto que os acelerômetros do diante das diversas resultado foi extremanente positivo: públicos que tradicionalmente não se importavam com videogames passaram a comprar consoles e jogos. Demorou, mas as concorrentes Sony e Microsoft entraram na briga. A Sony na mesma linha da Nintendo. A Microsoft numa outra, completamente distinta, já enveredada pela Sony: o reconhecimento de gestos. Há necessidade de mudança? É uma questão interessante. Se não há, a empreitada do Kinect tende ao fracasso como já ocorreu em outras ocasiões, com outros consoles, com outros acessórios. O mais certo é que, como aconteceu com os sensores de movimento, o reconhecimento de gestos não vai substituir, mas, sim, se tornar uma opção ao padrão atual. Mas ainda é cedo para qualquer previsão e os precedentes não são muito bons. Mas não se pode descartar a possibilidade de que a interação gestual se torne o novo talvez único padrão de interação com jogos eletrônicos, como previsto, para 2015, no lme volta para o futuro II. De Se isso acontecer e o gamepad virar uma peça de museu (como já ocorre com o joystick Atari 2600), uma coisa é certa: os jogos de luta, como são hoje, deixarão de existir. O gênero luta permanecerá, claro, mas mudará para algo muito diferente. Como vimos nos testes, há peculiaridades nos jogos feitos para gamepad que não podem ser convertidas do para uma interface de reconhecimento de gestos. O controle em suas mãos, já adianta que há é preciso empunhar algo, seja o gamepad, seja um controle com acelerômetros O título de duplo sentido deste trabalho, jogos em que e giroscópios. Conforme Pfutzenreuter, com vantagem para o segundo caso: Na vivência com um objeto, aquilo que faz com que ele adquira o poder de representar algo é a ação que ele permite. [80] Independente de substituir ou não o padrão atual de interação, o reconhecimento de gestos tem inúmeras vantagens. É ainda mais simples que os controles com sensores de movimentos que, invariavelmente, necessitam dos botões e direcionais do padrão gamepad (já que, por si só, um acelerômetro tem a mesma deciência na movimentação que uma interface gestual). Só é preciso que os jogos sejam criados na ordem natural: baseados nos controles a que estarão submetidos. A adaptação de jogos já existentes será algo extremamente complexo e, na maioria dos caso, não terá bons resultados. Também podem ser desenvolvidos jogos voltados para a saúde, a exemplo do que já acontece com o Wii. E jogos educacionais: a análise de posições precisa pode ajudar, por exemplo, estudantes de artes marciais no treinamento de posições de Kata ou jogos lúdicos para aprendizado dos movimentos de Tai Chi Chuan ou ioga. Fica claro que a aplicação de interfaces gestuais em jogos eletrônicos é viável, desde que os jogos sejam desenvolvidos especialmente para uso desta tecnologia. Devem ser feito estudos para adaptação de jogos já existentes, mas alguns gêneros, como o jogo de luta de perspectiva lateral, dicilmente farão parte deste grupo. 5.1 Trabalhos futuros Jogos de luta tradicionais não são plenamente adaptáveis a interfaces gestuais, mas outros tipos, como os jogos de dança, são claramente beneciados por esta tecnologia. 70 Quais outros tipos de jogos seriam incompatíveis e quais outros, favorecidos pelo reconhecimento de gestos? A técnica de subtração de fundo estático mostrou-se problemática em ambientes com variação de luminosidade e fundo complexo. Uma interface onde as áreas de fundo são renovadas automaticamente, adaptando-se a mudanças leves, certamente resultaria num melhor desempenho. Como o código do CICFighters é aberto, seria interessante comprovar ou refutar os testes realizados neste trabalho não com um simulador, mas com uma interface integrada ao jogo, com a vantagem de que a OpenCV é compatível com a linguagem Python. Neste trabalho foi levantada a história da interação do jogador com consoles de videogame e, brevemente, arcades. Mas há diversas outras plataformas que não foram analisadas, como os onipresentes computadores principal reduto dos jogadores de gêneros como MMORPG e shooters e celulares. Abordada com brevidade neste trabalho, a simplicidade de comandos em jogos é uma questão interessante a discutir, sobretudo com o advento de jogos em redes sociais em que todo o necessário para interação é o clique do mouse. 71 Referências [1] Pong. [2] Wild Gunman. [3] Atari 2600: Manual do usuário. [4] Pac-Man. [5] Atari 5200: Manual do usuário. [6] Nintendo Entertainment System: Manual do usuário. [7] Zapper: Manual do usuário. [8] Arkanoid. [9] Atari 7800: Manual do usuário. Atari Inc., 1972. 7 Nintendo, 1974. 1, 8 Atari, 1977. 10 Namco, 1980. x, 10, 18 Atari, 1982. x, 10, 11, 12 Nintendo, 1983. 11, 12 Nintendo, 1985. x, 13 Taito, 1986. 7 Atari, 1986. x, 12 [10] Wonder Boy in Monster Land. [11] Super Mario Bros. 3. [12] De volta para o futuro II. Universal Studios e U-Drive Productions, Inc., 1989. x, 1 [13] De volta para o futuro III. Universal Studios e U-Drive Productions, Inc., 1990. 1 [14] Super Nintendo Entertainment System: Manual do usuário. [15] Mario Paint. [16] Super Bomberman. [17] Playstation: Manual do usuário. [18] Mortal Kombat 3. [19] Super Mario 64. [20] Guitar Freaks. [21] Controle Remoto de DVD para Playstation 2: Manual do usuário. [22] Playstation 2: Manual do usuário. Sega, 1987. 14 Nintendo, 1988. 13 Nintendo, 1990. 15 Nintendo, Intelligent Systems, Jupiter Corp, 1992. 16 Hudson Soft, 1993. 16 Sony, 1994. xi, 17, 21 Midway Games, 1995. 60 Nintendo, 1996. 20 Bemani, 1999. 40 Sony, 2000. 23 72 Sony, 2000. 23 [23] Playstation (PSone): Manual do usuário. [24] Controle do GameCube: Manual do usuário. [25] Game Boy Advance: Manual do usuário. [26] Game Link Cable: Manual do usuário. [27] GameCube GBA Cable: Manual do usuário. [28] GameCube: Manual do usuário. [29] WaveBird: Manual do usuário. [30] Game Boy Advance SP: Manual do usuário. [31] Nintendo DS: Manual do usuário. [32] Playstation Portable: Manual do usuário. [33] Chatpad: Manual do usuário. [34] Controle do Xbox 360: Manual do usuário. [35] Controle Remoto do Xbox 360: Manual do usuário. [36] Controle Wireless do Xbox 360: Manual do usuário. [37] Game Boy micro: Manual do usuário. [38] Guitar Hero. [39] Xbox 360: Manual do usuário. [40] Guitar Hero II. [41] Nintendo DS Lite: Manual do usuário. [42] Playstation 3: Manual do usuário. [43] Teclado Wireless para PS3: Manual do usuário. [44] Wii: Manual do usuário. [45] Wii Sports. [46] Guitar Hero III: Legends of Rock. [47] Mortal Kombat: Armageddon. [48] Rock Band. [49] Guitar Hero World Tour. [50] Wii Music. Sony, 2000. 17 Nintendo, 2001. 23 Nintendo, 2001. 36 Nintendo, 2001. 36 Nintendo, 2001. 36 Nintendo, 2001. 24 Nintendo, 2002. 24 Nintendo, 2003. 36 Nintendo, 2004. 37 Sony, 2004. 37 Microsoft, 2005. 26 Microsoft, 2005. 25 Microsoft, 2005. 26 Microsoft, 2005. xi, 25, 26 Nintendo, 2005. 36 Harmonix, 2005. 41 Microsoft, 2005. 25 Harmonix, 2006. 42 Nintendo, 2006. 37 Sony, 2006. 32 Sony, 2006. 32 Nintendo, 2006. xi, 27, 28, 29, 30 Nintendo, 2006. 67 Neversoft, 2007. 42 Midway Games, 2007. 67 Harmonix, 2007. 42 Neversoft, 2008. 43 Nintendo, 2008. 12 73 [51] Band Hero DS. [52] Nintendo DSi: Manual do usuário. [53] Nintendo DSi XL: Manual do usuário. [54] Playstation Portable: Manual do usuário. [55] Rock Band Unplugged. [56] Acessório de Tiro para Move: Manual do usuário. [57] Kinect: Manual do usuário. [58] Playstation Move: Manual do usuário. [59] Playstation Navigation Controller: Manual do usuário. [60] Rock Band 3. [61] Exposição História dos Games. Vicarious Visions, 2009. 46 Nintendo, 2009. 37 Nintendo, 2009. 37 Sony, 2009. 38 Harmonix, 2009. 45 Sony, 2010. 47 Microsoft, 2010. 48 Sony, 2010. 47 Sony, 2010. 47 Harmonix e Backbone Entertainment, 2010. 44 Brasília, DF, 2011. x, xi, xii, 11, 12, 14, 15, 17, 18, 19, 22, 24, 49 [62] A História do Videogame. http://jogos.uol.com.br/reportagens/historia/, 2011. x, xi, xii, 6, 7, 14, 16, 19, 20, 21, 22, 25, 30, 32, 34, 35, 36, 38, 39, 40, 42, 45, 46, 47, 48 [63] HotZone. [64] The Hystory Of Video Games. Brasília, DF, 2011. x, xii, 8, 41 http://www.bmigaming.com/videogamehistory.htm, 2011. x, xi, xii, 5, 7, 9, 12, 16, 18, 20, 23, 26, 30, 32, 34, 35, 36, 38, 42, 43, 46, 48 [65] OpenCV 2.1 C Reference. http://opencv.willowgarage.com/documentation/c/index.html, 2011. 2, 51 [66] Playstation Web Site. http://us.playstation.com/, 2011. x, 18 [67] Lynn Rosalina Gama Alves. Game over: jogos eletrônicos e violência. Editora Futura, São Paulo, SP, 2005. 1, 8, 10, 78 [68] Théo Azevedo. Nintendo: a volta por cima. Gamemaster, (37):2231, Fevereiro 2008. 11 [69] Fernando Badô and Greg. Como funciona o palmtop. Como as coisas funcionam, (81-A):51, Novembro 2008. [70] Victor Bianchin and Cássio Bittencourt. Mundo Estranho apresenta: 37 Como funciona o nintendo wii. Estranho apresenta: Como as coisas funcionam, (81-A):50, Novembro 2008. [71] Ana Helena Ozaki Rivera Castillo and Fernando Machado Mendonça. mento de gestos usando Visão Computacional. DF, 2009. 2, 51, 82 74 Mundo 27 Reconheci- Universidade de Brasília, Brasília, The Evolution of Game Controller and Control Schemes and their Eect on their games. University of Southampton, Southampton, UK, 2007. [72] Alastair H. Cummings. viii, x, 5, 6, 18, 19, 20, 21, 23, 79 [73] Luis Roberto Pereira de Paula and Renato Bonini Neto. Livre para Jogos. Camera Kombat - Interação Centro Universitário Senac, São Paulo, SP, 2006. 60 [74] Givaldo dos Reis. Videogame: história, gêneros e diálogo com o cinema. UNIMAR, Marília, SP, 2005. viii, xi, 1, 4, 5, 8, 9, 14, 15, 17, 22, 24, 33, 34, 35, 36, 78 [75] James Gilmor. It's In Our Hands. http://ready-up.net/features/its-in-our-hands/, 2009. 4 From chasing dots to reading minds: the past, present and future of video game interaction, volume 13. ACM, New [76] Damien Marshall, Tomas Ward, and Séamus McLoone. York, NY, USA, 2006. 18 Wiimote vs. Controller: Electroencephalographic Measurement of Aective Gameplay Interaction. University of Saskatchewan, 2010. 28 [77] Lennart E. Nacke. [78] Fernando Tió Neto and Greg. Como funciona uma pistola de videogame. Mundo Estranho apresenta: Como as coisas funcionam, (81-A):7879, Novembro 2008. x, 8, 9, 13 [79] Gustavo Petró. Linha do tempo. Gamemaster, (37):7071, 2008. viii, 9, 10 [80] Edson P. Pfutzenreuter. Magia e imaginário nos controles baseados em gestos. Brazilian Symposium On Games and Digital Entertainment, VIII pages 158163, 2009. 26, 71 [81] Edson P. Pfutzenreuter and Roger Tavares. Dedões - corpo - gestos: A inteligência corporal no design dos jogos digitais. VII Brazilian Symposium On Computer Games and Digital Entertainment - SBGAMES, pages 1924, 2008. 11 [82] Joshua B. Purvis. Industry. The Impact of Emergent Control Systems on the Video Game University of North Carolina, Chapel Hill, NC, USA, 2009. 2, 23, 26, 27 [83] Fabio Santana and Felipe Azevedo. Luzes, câmera, ação. Edge Games Brasil, (12):46 55, 2010. 32, 47, 48 [84] Fabio Santana and Felipe Azevedo. Prepare a sala. Edge Games Brasil, (15):4049, 2010. 48 [85] Fabio Santana and Felipe Azevedo. Rompendo os limites. Edge Games Brasil, (16):3847, 2010. 44 [86] Danilo Gaby Andersen Trindade and Leandro Gaby Andersen Trindade. Game Book. CiC Fighter Universidade de Brasília, Brasília, DF, 2009. 3, 58 [87] Bruno Vasone. O iperama não morreu. 2009. 8, 77 75 Superinteressante, (273):8083, Dezembro Apêndice A Denições 3D Adaptações às imagens para dar noção de profundidade numa tela bidimensional. Exceto quando citado, não há nenhuma relação com as tecnologias com óculos ou telas especiais em que a sensação de profundidade tende à real. Analógico Característica do botão ou alavanca sobre os quais a pressão exercida gera resultados diferenciados. Arcade Também conhecido no Brasil como iperama [87]. Trata-se de um gabinete, nor- malmente de madeira, onde é montada uma estrutura de videogame, com sistema de som, vídeo e controles acoplados. Em sua maioria possuem controles com manches e botões, mas também podem ser construídos em formatos especiais para simular as situações dos jogos (como ter volantes e aceleradores em jogos de corrida de carros). Avatar Representação do gamer no jogo (seja um personagem, um veículo ou qualquer el- emento, personicado ou não, pelo qual o jogador interage com os demais elementos da narrativa), ainda que não seja um elemento obrigatório. Botão de ação Qualquer botão, normalmente de formato circular, que seja pressionado, em condições normais, pelos polegares para interações no jogo. É a classe de botões mais comum. O mesmo que Cartucho re button. Mídia de armazenamento principal dos jogos nos primeiros consoles (antes da adoção do CD). Utilizado até hoje em portáteis, é uma pequena peça com de silício num envólucro plástico, que guarda as informações do game. chips Pode, tam- bém, incluir funções ao console, como memória para salvar o progresso em jogos longos, processadores adicionais, sensores, entre outros. Acessa as informações mais rapidamente que as mídias óticas, mas tem capacidade de armazenamento inferior. Casual 1: O inverso de hardcore. 2: Jogo pouco desaante, focado em objetivos ou tarefas relativamente simplórias, mas de fácil aprendizagem (com maior ênfase na diversão direta que nas conquistas de médio e longo prazo). Via de regra, tem enredo mínimo (ou inexistente) e grácos menos elaborados. Tende a não ter um nal predeterminado, apenas desaos crescentes. públicos tradicionalmente não- gamer. 3: Em sua maioria, voltados para Jogador que prefere jogos casuais, ou que tem pouco interesse pelo assunto, ou que nunca jogou (mas tem interesse em começar), ou que não se adaptou à complexidade dos jogos atuais. 76 Console Hardware de videogame de uso doméstico, o próprio aparelho, sem acessórios (como os controles), em contraste com outros tipos de plataformas, como videogames portáteis e arcades. Controle Hardware Digital utilizado para interação direta entre o jogador e o jogo. Conecta-se ao console por o ou conexão wireless. Característica do botão ou direcional em que só há uma ação especíca atribuída, independente da forma como é pressionado. D-pad Direcional digital. Emulação Conversão via software que faz com que um jogo feito para determinada plataforma seja executado em outra. Fire button O mesmo que botão de ação. Fret button Botões especícos que cam nos braços de réplicas de guitarras usadas como controles em jogos especícos. São acessados, via de regra, com os dedos indicador, médio, anelar e mínimo da mão esquerda. Game Jogo eletrônico. Gamepad Controle de videogame ou computador caracterizado por um direcional digital na face esquerda, botões de ação na face direita, podendo ter botões especiais em outras partes. É usado com as duas mãos. Gamer Jogador de jogos eletrônicos. Hardcore 1: O inverso de casual. 2: Jogo que exige dedicação por parte do jogador, normalmente com enredo rico e grau de diculdade médio a alto. Tem objetivos principais claros, mas também objetivos secundários ou paralelos (nem sempre obrigatórios) para incremento da experiência de jogo. Tem, normalmente, começo, meio e m bem delimitados, além da maior atenção aos detalhes grácos. Oferece poucas recompensas (apenas o suciente para não frustrar o jogador e mantê-lo interessado). Desaa constantemente. Não é restrito ao jogos com grácos muito próximos do real (muitos jogos antigos ou com grácos simples podem ser classicados como tal, sobretudo os do gênero RPG). 3: Jogador que tem preferência por jogos Jogo hardcore, ou joga com muita frequência. Jogo eletrônico (há análises detalhadas do conceito e importância do jogo não restritas ao escopo dos videogames em Alves [67] e Reis [74]). Joystick Controle caracterizado por uma alavanca ou manche analógico e botões de ação em sua base. Uma das mãos comanda exclusivamente o manche, enquanto a outra segura o controle e usa botões da base. Objeto de interesse Qualquer elemento de uma imagem do qual se queira obter infor- mações. Neste trabalho, corresponderá às diferenças entre a imagem capturada por uma câmera e uma imagem do fundo, previamente selecionada. 77 Option button Botões utilizados exclusivamente para ações de controle e gerenciamento do jogo (iniciar, pausar, acessar menus, etc.) ou do hardware (principalmente em portáteis, como volume e brilho da tela). Nas últimas versões dos consoles, alguns fornecem acesso a menus especícos do sistema operacional do console. Paddle Controle giratório, normalmente ligado a um resistor variável [72] e com um arco de ação limitado (para de girar em determinado ponto). Provê uma movimentação em apenas um eixo. Plataforma Hardware Portátil que roda um jogo, via de regra não compatível com outras. Videogame portátil. Shoulder button Botão de ação que se localiza nos ombros de um gamepad, ou seja, em sua parte superior, normalmente aos pares (um à direita e outro à esquerda, com o padrão de ser identicados como L e R, em referência a left e right). Possui formato alongado e, em situações normais, é utilizado com o dedo indicador ou médio da mão mais próxima. Trigger button Botão em forma de gatilho em um gamepad. Pode estar em locais es- tratégicos do controle, mas tende a car logo abaixo de um Videogame Console de videogame. 78 shoulder button. Apêndice B Código fonte do modelo base A base para o desenvolvimento de todos os protótipos foi o código a seguir: (01) #include "cv" (02) #include "highgui.h" (03) (04) (05) (06) (07) (08) (09) (10) (11) CvCapture* captura = cvCaptureFromCAM(0); IplImage* quadro = cvQueryFrame(captura); IplImage* fundo = cvCreateImage(cvGetSize(quadro), 8, 1); int res_x = quadro->width; int res_y = quadro->height; int lim = 30; CvSeq* contorno = 0; CvPoint baixo = cvPoint(res_x/2, res_y); CvMemStorage* memoria = cvCreateMemStorage(0); (12) void novo_fundo(){ (13) cvDestroyAllWindows(); (14) IplImage* fundo_aux = cvCreateImage(cvGetSize(quadro), 8, 3); (15) while (1){ (16) fundo_aux = cvQueryFrame(captura); (17) cvFlip(fundo_aux, NULL, 1); (18) cvShowImage("Assistente de captura de fundo", fundo_aux); (19) if (cvWaitKey(10) == 'f'){ (20) cvCvtColor(fundo_aux, fundo, CV_BGR2GRAY); (21) break; }; }; (22) cvDestroyAllWindows(); } (23) void base(IplImage* imagem, int cont){ (24) baixo = cvPoint(res_x/2, res_y); (25) IplImage* quadro_cinza = cvCreateImage(cvGetSize(quadro), 8, 1); (26) cvCvtColor(imagem, quadro_cinza, CV_BGR2GRAY); 79 (27) (28) (29) (30) (31) (32) (33) (34) (35) (36) (37) (38) (39) (40) (41) } cvAbsDiff(quadro_cinza, fundo, quadro_cinza); cvThreshold(quadro_cinza, quadro_cinza, lim, 255, CV_THRESH_BINARY); cvErode(quadro_cinza, quadro_cinza, NULL, 1); cvDilate(quadro_cinza, quadro_cinza, NULL, 1); cvFindContours(quadro_cinza, memoria, &contorno, sizeof(CvContour), CV_RETR_TREE, CV_CHAIN_APPROX_SIMPLE, cvPoint(0,0)); CvSeq* contorno_aux = contorno; for (; contorno_aux != 0; contorno_aux = contorno_aux->h_next){ for (int i = 0; i < contorno_aux->total; i ++){ CvPoint ponto = *(CvPoint*)cvGetSeqElem(contorno_aux, i); if (ponto.y < baixo.y) baixo = ponto; }; }; if (cont == 1){ contorno_aux = contorno; for (; contorno_aux != 0; contorno_aux = contorno_aux->h_next){ cvDrawContours(quadro, contorno_aux, CV_RGB(0, 255, 0), CV_RGB(0, 255, 0), -1); }; }; cvReleaseImage(&quadro_cinza); (42) int main(){ (43) cont = 1; (44) novo_fundo(); (45) cvNamedWindow("Imagem"); (46) cvCreateTrackbar("Limiar", "Imagem", &lim, 64, NULL); (47) cvCreateTrackbar("Contorno", "Imagem", &cont, 1, NULL); (48) while (1){ (49) quadro = cvQueryFrame(captura); (50) cvFlip(quadro, NULL, 1); (51) base(quadro, cont); (52) cvCircle(quadro, baixo, 10, CV_RGB(255, 0, 0), -1); (53) cvShowImage("Imagem", quadro); (54) int key = cvWaitKey(10); (55) if (key == 27) break; (56) if (key == 'f') novo_fundo(); }; (57) cvDestroyAllWindows(); (58) cvReleaseCapture(&captura); (59) cvReleaseMemStorage(&memoria); (60) cvReleaseImage(&quadro); (61) cvReleaseImage(&fundo); } 80 O módulo principal da OpenCV é a biblioteca cv.h (linha 01). A interface com o usuário e o controle dos dispositivos de entrada estão na biblioteca highgui.h (linha 02). webcam comum. Para isso, é necessário criar uma variável do tipo CvCapture, própria da OpenCv. Sem interface pública, só é utilizada como parâmetro para funções de captura de vídeo. A função cvCaptureFromCAM() aloca e inicializa a estrutura CvCapture para leitura de uma sequência de vídeo a partir da As imagens serão capturadas por uma câmera (linha 03). O parâmetro da função é um índice para escolha de equipamento, caso haja mais de um ligado ao computador. A liberação de memória dessa estrutura deve ser feita com a função cvReleaseCapture(), 58). com o nome da variável como parâmetro (linha OpenCV que será amplamente utilizada é Intel Image Processing Library. Nesta estrutura é armazenada Outra estrutura de dados especíca da IplImage, acrônimo para uma imagem, além de informações diversas dessa imagem. A liberação de memória dessa estrutura deve ser feita com a função cvReleaseImage(), com o nome da variável como parâmetro (linhas 41, 60 e 61). CvCapture, pode-se utilizar a função cvQueryFrame(), que captura, descomprime e retorna um frame da câmera. Pode-se armazenar esse quadro em uma variável do tipo IplImage (linha 04), a partir do qual podem ser feitas alterações A partir de uma estrutura do tipo e de onde se podem extrair informações. cvCreo tamanho (usando a estrutura CvSize, que Também é possível alocar diretamente uma estrutura ateImage(). São necessários três parâmetros: engloba a largura e altura), a profundidade de cor uso da função cvGetSize() 1 IplImage com a função e o número de canais da imagem. O retorna o tamanho da imagem usada como parâmetro (linha 05). Como há muitos tipos de webcam no mercado, com resoluções variadas, é uma boa opção ter esta informação para uso no programa. Assim, com as informações contidas na estrutura IplImage, é possível armazenar a largura (linha 06) e altura (linha 07) da gura em variáveis inteiras para uso posterior. Existem várias técnicas para identicação de elementos de interesse nas imagens. Nos protótipos aqui mostrados, será utilizada uma das mais simples: a subtração de fundo. Como o nome sugere, a ideia é retirar de uma imagem todos os elementos do fundo, restando somente aquilo que é diferente (por denição, os objetos de interesse). A técnica de subtração de fundo estático possui uma restrição óbvia: o fundo da imagem deve ser previamente conhecido. Dessa forma, a primeira ação de todos os protótipos é a captura, pela câmera, do fundo onde ocorrerá a ação. No código acima, esse é o objetivo do procedimento (linhas 12 a 22). Pega-se um frame da câmera (linha 16) cvFlip() (linha 17) 2 . novo_fundo() e faz-se a inversão horizontal dessa imagem por meio da função A apresentação de uma imagem deve ser feita em uma janela. A biblioteca OpenCV possui funções especíca de construção dessas estruturas. A função cvShowImage() cria uma janela (que recebe o nome do primeiro parâmetro) e exibe a imagem (segundo 1 Quantidade de bits usados para representar a cor de um pixel da imagem [71]. O padrão utilizado neste trabalho é 8. 2 Todas as imagens são invertidas horizontalmente para que possam ser vistas como num espelho. É a forma mais natural de ver os próprios movimentos ou imitar movimentos de outrem , conforme pode ser visto em jogos atuais. 81 parâmetro) (linha 18). O comando cvDestroyAllWindows() é utilizado para desativar as janelas (linhas 22 e 57). Como os comandos para recuperar, inverter e exibir a imagem estão em um loop (linhas 15 a 21), o efeito é uma sequência de vídeo mostrada na janela. O usuário poderá ajustar a câmera (sejam congurações, seja a posição) até que o fundo ideal, estabilizado e sem objetos de interesse, seja escolhido. Para sair do laço, há um condicional (linhas 19 a 21). Utiliza-se a função cvWaitKey() (linha 19), que aguarda uma entrada de teclado no tempo (em milissegundos) indicado como parâmetro. Caso o usuário aperte a tecla 21). O procedimento base() f (minúscula), o loop é quebrado 3 (linhas 23 a 41) faz a segmentação. parâmetro a imagem a ser tratada. (linha Recebe como primeiro O primeiro passo é a aplicação do procedimento cvAbsDi(), que, pixel a pixel, verica as diferenças entre as duas imagens informadas como os dois primeiros parâmetros e coloca o resultado na gura informada como terceiro 4 parâmetro . O resultado é que toda a área da imagem que seja igual ao fundo é substituída por pontos negros, destacando apenas aquilo que não faz parte da imagem de fundo: os objetos de interesse. Há, no entanto, uma condição que deve ser seguida para que o passo seguinte possa ser executado. As imagens devem estar em escala de cinza. Por isso, antes do m do captura de fundo, a função cvCvtColor() é acionada (linha 20). loop de Ela serve para converter imagens em diferentes espaços de cor. No caso acima, a última imagem registrada pela webcam será convertida para escala de cinza e armazenada em uma estrutura IplImage previamente alocada (linha 05). É importante notar que a variável alocada para o fundo tem apenas um canal de cor. As imagens padrão capturadas pela câmera têm três canais. Só é possível aplicar o procedimento cvAbsDi() em imagens de mesmo espaço de cor. Assim, deve ser alocada uma imagem auxiliar com esta característica (linha 25) e a imagem recebida como parâmetro deve, também, ser convertida (linha 26). A partir do resultado (em escala de cinza) da diferença entre a imagem a ser tratada e o fundo, é possível aplicar a função cvThreshold() (linha 28), que analisa uma imagem ponto a ponto e, a partir de um valor estipulado (o limiar), converte este ponto para preto ou branco. O resultado é uma imagem binária onde os objetos de interesse aparecem em branco e o fundo, em preto. É possível obter dados a partir desta imagem, mas, antes, é necessário fazer alguns tratamentos. Conforme o fundo escolhido, variações de luminosidade e outros fatores, podem aparecer ilhas de pontos brancos (não pertencentes aos objetos de interesse) na imagem após a limiarização. Um ajuste no valor do limiar pode minimizar este efeito, mas também pode degrar os objetos de interesse. A aplicação da função descarte destes pontos. Após esse processo, pode-se aplicar a função cvErode() (linha 29) ajuda no cvDilate() ao resultado (linha 30), para encorpar os elementos que não foram descartados pelo processo de erosão. 3 A escolha da letra f é uma referência a fundo, mas poderia ser utilizada outra tecla. cvWaitKey(10) > 0, por exemplo. tecla qualquer, com a condição Até mesmo uma cvAbsDi(), novo_fundo(), que gera o fundo, deve ser executado pelo menos uma vez antes da execução do procedimento base(). 4 Note-se que a variável que contém o fundo a ser retirado é o segundo parâmetro de logo o procedimento 82 A partir dessa imagem binária é possível encontrar o contorno dos objetos de inter- cvFindContours() esse por meio da função (linha 31). É preciso, antes, ter declarado uma área de memória para trabalho por meio do tipo de dado CvMemStorage (alocada cvCreateMemStorage() na linha 11 e desalocada na com a função cvReleaseMemStorage() na linha 59) e um outro tipo de dado especíco da OpenCV: CvSeq, com a função uma sequência dinâmica de qualquer outra estrutura de dados (linha 09). Os pontos dos contornos de todos os objetos de interesse são armazenados nesta estrutura. loop das linhas 33 a 36 serve para, contorno a contorno, ponto a ponto (cuja estrutura própria na OpenCV é CvPoint), obter dados do contorno. No código acima, um ponto O previamente alocado (linha 10) recebe as coordenadas do ponto do contorno de maior coordenada y (linha 36). Mas podem ser feitas diversas comparações, como veremos nos prótótipos. Um loop semelhante está mas linhas 38 a 40, onde cada um dos contornos é desen- hado por meio da função cvDrawContours(), que recebe a imagem onde o contorno será cvFindContours()) e a cor da desenhado, o próprio contorno (encontrado com a função linha. Esse laço está num condicional que depende do segundo parâmetro do procedimento base(). Assim, é possível denir se o contorno deverá ou não ser desenhado. O programa começa sua execução (linha 42) chamando o procedimento (requisito para o procedimento novo_fundo() base()) para que o usuário determine o fundo a segmentar. Como o fundo inuencia diretamente na qualidade da extração dos objetos de interesse, é importante que o limiar seja ajustável em tempo de execução. uma ferramenta para isso: as trackbar. A OpenCV oferece São barras colocadas em janelas que, ajustadas, modicam o valor de variáveis inteiras. São criadas com a função cvCreateTrackbar() (linha 46), recebendo o nome da barra, o nome da janela onde será colocada, o endereço da variável a alterar e o valor máximo que pode ser atribuído (o mínimo é, por padrão, zero). Assim, é necessário, antes, criar uma janela com a função cvNamedWindow() 5 (linha 45). Outro loop (linhas 48 a 56) dene o vídeo que será mostrado com as imagens tratadas. O primeiro passo é a captura de um quadro da câmera (linha 49). O quadro é invertido horizontalmente (linha 50) e usado como primeiro parâmetro para o procedimento base() (linha 51), que, conforme o valor do segundo parâmetro, desenhará ou não o contorno dos objetos de interesse em comparação ao fundo previamente capturado com o procedimento novo_fundo(). Dessa forma, é interessante criar uma trackbar para controlar a variável que determina se o contorno será desenhado ou não (linha 47). O ponto declarado na linha 10 também já estará determinado e a função cvCircle() (linha 52) desenhará, na imagem, um círculo centrado nesse ponto (de acordo com os parâmetros inseridos: imagem, ponto, raio, cor). A imagem, com o ponto e, se for o caso, o contorno, é mostrada na janela onde estão as trackbars (linha 53). O loop é nalizado quando a tecla ESC 6 é pressionada (linha 54 e 55). Eventualmente, pode acontecer de o fundo mudar durante a execução, inuenciando diretamente a determinação de contornos. Dessa forma, se a tecla cvShowImage() cria uma janela automaticamente, cvCreateTrackbar(). 6 ESC tem o valor 27 em unicode. 5 A função mesmo não se pode dizer de 83 f for pressionada (linha dispensando esse procedimento, mas o 56), o procedimento novo_fundo() é novamente chamado para que a imagem de fundo seja renovada. 84