UNIVERSIDADE FEDERAL DO PARÁ

Tamanho: px
Começar a partir da página:

Download "UNIVERSIDADE FEDERAL DO PARÁ"

Transcrição

1 UFPA UNIVERSIDADE FEDERAL DO PARÁ JOGO DA CABANAGEM: PROJETO E IMPLEMENTAÇÃO. FELIPE VAZ DOS REIS INSTITUTO DE TECNOLOGIA UNIVERSIDADE FEDERAL DO PARÁ BELÉM PARÁ 2009

2 i UNIVERSIDADE FEDERAL DO PARÁ INSTITUTO DE TECNOLOGIA PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA FELIPE VAZ DOS REIS JOGO DA CABANAGEM: PROJETO E IMPLEMENTAÇÃO TRABALHO SUBMETIDO AO COLEGIADO DO PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA PARA OBTENÇÃO DO GRAU DE MESTRE EM ENGENHEIRA ELÉTRICA. Belém PA 2009

3 ii JOGO DA CABANAGEM: PROJETO E IMPLEMENTAÇÃO. Este Trabalho foi julgado em / / adequado para obtenção de mestre em Engenheira Elétrica, e aprovado na sua forma final pela banca examinadora que atribuiu o conceito. Prof. Dr. Manoel Ribeiro Filho ORIENTADOR Prof. Dr. Roberto Célio Limão de Oliveira. CO-ORIENTADOR Prof. Dr. Carlos Renato Lisboa Francês MEMBRO DA BANCA EXAMINADORA Prof. Dr. Eloi Luis Favero MEMBRO DA BANCA EXAMINADORA Prof. Dr. Bianchi Serique Meiguins MEMBRO DA BANCA EXAMINADORA Prof. Dr. Marcus Vinicius A. Nunes COORDENADOR DO PROGRAMA DE PÓS- GRADUAÇÃO EM ENGEHARIA ELÉTRICA Belém PA 2009

4 iii Pedi e se vos dará. Buscai e achareis. Batei e vos será aberta. Porque todo aquele que pedir, recebe. Quem busca, acha. A quem bate, abrir-se-á. Mt 7, 7-8

5 iv AGRADECIMENTOS Primeiramente, quero agradecer a Deus por todas as conquistas da minha vida. A minha esposa Solange, por todo amor, carinho, compreensão e amizade que me proporciona. Aos meus pais, por todo carinho, compreensão, educação e amizade que me foram dados. A todos os professores que, de uma forma ou outra, contribuíram para minha formação acadêmica. A todos os meus amigos e colegas da Universidade Federal do Pará e em especial do LaRV (Laboratório de Realidade Virtual) que contribuíram direta ou indiretamente para o êxito deste trabalho. Felipe Vaz dos Reis

6 v RESUMO Esta dissertação descreve o desenvolvimento de um motor de jogo para uso educacional, construído usando ferramentas livres. Motor de jogo é um conjunto de bibliotecas e/ou programas que oferecem funcionalidades para o desenvolvimento de jogos eletrônicos. Motor de jogo é a parte principal de um jogo eletrônico, pois oferece os mecanismos para funcionamento de um jogo. O motor de jogo proposto neste trabalho é um motor de jogo puramente 3D que oferece recursos de simulação física, simulação sonora 3D, detecção de colisão, inteligência computacional e scripting usando a linguagem de programação lua. O motor foi todo desenvolvido usando ferramentas livres e utilizando a linguagem de programação C++. O objetivo deste motor é oferecer recursos e facilitar o desenvolvimento de jogos educativos. Como estudo de caso foi implementado um jogo educativo sobre a Revolução da Cabanagem. É descrito nesta dissertação um estudo sobre jogos eletrônicos e motores de jogos. Também é descrito o motor de jogo desenvolvido, mostrando a sua estrutura e funcionamento e no final mostras as conclusões sobre o desenvolvimento do motor e sobre os trabalhos futuros.

7 vi ABSTRACT This thesis describes the development of a game engine for educational use, built using free tools. Game engine is a set of libraries and / or software that provide functionality for the development of electronic games. Game engine is the main part of an electronic game, it offers mechanisms for the operation of a game. The game engine proposed in this paper is a purely 3D game engine that offers resources for physical simulation, 3D sound simulation, collision detection, computational intelligence and scripting programming language, using the moon. The engine was developed using all available tools and using the programming language C + +. The objective of this engine is to provide resources and facilitate the development of educational games. As a case study was implemented an educational game on the Revolution of Cabanagem. It is described in this thesis a study on electronic games and game engines. Also described is the engine of the game developed, showing its structure and operation, and at the end shows the findings on the development of the engine and on future work.

8 vii

9 viii SUMÁRIO CAPÍTULO 1 INTRODUÇÃO CAPÍTULO 2 JOGOS ELETRÔNICOS BREVE HISTORICO DEFINIÇÃO GÊNEROS OU TIPOS DE JOGOS ELETRONICOS Ação Aventura Estratégia RPG Esporte Simulação Quebra-Cabeça Passatempo Educacional JOGOS EDUCACIONAIS Exemplos de Jogos Educacionais Triade Games-To-Teach Laguna Aprendendo sobre a guerra do Paraguai com jogo educativo Jogo educativo sobre a Revolução da Cabanagem Fase Pré-Revolucionária CONSIDERAÇÕES FINAIS...34 CAPÍTULO 3 MOTOR DE JOGO BREVE HISTORICO DEFINIÇÃO Módulo gráfico Módulo de física Módulo de interface com usuario Módulo de som Módulo de Inteligência Computacional Módulo de rede ESTRUTURA TRABALHOS RELACIONADOS enjine Um motor de jogos educacionais em java... 42

10 ix J3DTOOL Um motor para desenvolvimento de jogos educacionais em Java3D STEAMie SAGE A simple academic game engine Alice Comparativo entre os motores CONSIDERAÇÕES FINAIS...46 CAPÍTULO 4 MOTOR PROPOSTO CARACTERISTICAS ARQUITETURA FRAMEWORK GERENCIADORES INTERFACES SISTEMAS Sistema de Renderização Gráfica e Interface Gráfica Sistema de Física Sistema de Intligencia Computacional Sistema de Som Sistema de Interface com usuario FUNCIONAMENTO DO MOTOR Instanciação do conteudo Inicialização do motor e sistemas Atualização do motor e sistemas CONSIDERAÇÕES FINAIS...74 CAPÍTULO 5 CONCLUSÕES REFERÊNCIAS BIBLIOGRÁFICAS APENDICE A ESTUDO DE CASO APENDICE B - DIAGRAMA DE CLASSES DO NÚCLEO DO MOTOR APENDICE C - DIAGRAMA DE CLASSES DO SISTEMA FUZZY APENDICE D - CÓDIGO FONTE EXEMPLO DO USO DO MOTOR PROPOSTO

11 x LISTA DE FIGURAS Figura 2.1 Space War Figura 2.2 Tênis para dois Figura 2.3 Computer Space Figura 2.4 Magnavox Odyssey Figura 2.5 Wolfstein 3D Figura 2.6 Doom III Figura 2.7 The Legendo of Zelda Figura 2.8 Age of Empire III Figura 2.9 Final Fantasy Figura 2.10 Winning Eleven Figura 2.11 Flight Simulator Figura 2.12 Tetris Figura 2.13 The Sims Figura 2.14 Jogo Brain Age Figura 2.15 Triade - Jogo educativo sobre a Revolução FrancesI Figura 2.16 Jogo Revolution Jogo sobre a guerra civil americani Figura 2.17 Imagens dos cenários da vila (a) e de uma das tribos (b) Figura 2.18 Jogo educativo sobre a revolução da cabanagem Fase Pré- Revolucionária Figura 3.1 Diagrama de um motor de jogo modular genérico Figura 3.2 Telas de jogos desenvolvidos com o motor enjine Figura 3.3 Jogo AITEM desenvolvido usando o motor J3DTOOL Figura 3.4 Image do jogo FORCE AND MOMENTUM Figura 3.5 Ned s Turkey Farm Figura 3.6 Alice editor Figura 4.1 Arquitetura do motor Figura 4.2 GameObject Figura 4.3 SceneObject do tipo Mesh Figura 4.4 Scene Object do tipo Luz Figura 4.5 Scene Object do tipo Terreno Figura 4.6 Diagrama de Classes do Sistema de Física...53 Figura 4.7 Sistema de Inteligência Computacional Figura 4.8 Diagrama de Classes do sistema de inteligência computacional... 59

12 xi Figura 4.9 IAObject Figura 4.10 Diagrama de Interação que mostra o ciclo de processamento realizado por um IAObject Figura 4.12 Raio do Sensor de Visão Figura 4.13 Cabanos com os seus sensores do tipo EyeSensor Figura 4.14 Relacionamento dos tipos de Behaviour Figura 4.15 Diagrama de classe do Módulo que implementa a maquina de estados finitos Figura 4.16 Diagrama de Classes do Módulo que implementa Sistema Fuzzy.. 65 Figura 4.17 Comparativo entre Som Estéreo e Som 3D: em (a) e (b) o som estéreo permanece constante independente da movimentação do usuário; em (c) e (d) o ponto de recepção do som é influenciado pelos movimentos do personagem e componentes do cenário Figura 4.18 Diagrama de Classes do Sistema de som Figura I.1 Gerenciador de Estado Figura I.2 Estado de Jogo Figura I.3 Diagrama de estados do jogo Figura I.4 - Fluxo do game loop Figura I.5 - Menu Principal Figura I.6 - Escolha das Missões Figura I.7 - Vídeo Introdutório da Missão Figura I.8 - Inventário da Missão Figura I.9 - Cenário da Missão Figura I.10 - Personagens da Missão: Cabano, escravo, lenhador e um soldado Figura I.11 - Inicio da Missão Figura I.12 - Personagem próximo ao objetivo Figura I.13 - Fim da Missão Belém I Figura I.14 - Tela introdutória da Missão Fundar o jornal O Paraense Figura I.15 - Inventário da Missão Figura I.16 - Cenário da Missão Figura I.17 - Personagens da Missão: Felipe Patroni, Batista Campos, soldado e um cabano... 87

13 xii Figura I.18 - Inicio da Missão Figura I.19 - Personagem próximo ao objetivo Figura I.20 - Felipe Patroni capturado por um soldado Figura I.21 - Fim da Missão Jornal O Paraense Figura I.22 - Tela introdutória da Missão Figura I.23 - Inventário da Missão Figura I.24 - Cenário da Missão Figura I.25 - Personagens da Missão: Batista Campos e um soldado Figura I.26 - Inicio da Missão Batista Campos Figura I.27 - Personagem Batista Campos remando num bote Figura I.28 - Personagem Batista Campos sendo morto por um soldado Figura I.29 - Fim da Missão Figura I.30 - Vídeo Introdutório da Missão Figura I.31 - Inventário da Missão do Acará Figura I.32 - Personagens da Missão: Cabano, Escravo, Lenhador, Fèlix Malcher e Francisco Vinagre Figura I.33 - Personagem Félix Malcher e a interface Figura I.34 - Viagem entre as fazendas Figura I.35 - Inventário da Missão Figura I.36 - Personagens da Missão: Cabano, Escravo, Lenhador, Soldado, Comandante, Francisco Vinagre e Angelim Figura I.37 - Angelim e vários cabanos indo atacar o quartel Figura I.38 - Vídeo sobre o ataque no Acará Figura I.39 - Vídeo introdutório da Missão Figura I.40 - Inventário da Missão Figura I.41 - Cenário da Missão Figura I.42 - Personagens da Missão Figura I.43 - Começo da missão Figura I.44 - Cabanos aguardando pelo Angelim Figura I.45 - Morte do presidente português

14 xiii

15 14 CAPÍTULO 1 INTRODUÇÃO Motor de jogo é o componente principal de um jogo eletrônico. O motor é responsável pelo funcionamento interno do jogo, abstraindo a complexidade de seu funcionamento, oferecendo funcionalidades para um bom desempenho de um jogo. Motores de jogos é um conjunto de bibliotecas e/ou programas que fornecem funcionalidades para o desenvolvimento de jogos eletrônicos. Ele permite que vários jogos possam ser criados com o uso de um mesmo motor de jogo e alguns ainda permitem o uso de ferramentas que auxiliam na produção de conteúdos de um jogo, tais como um editor de cenários, modeladores, exportadores de formatos 3D, entre outros. Para a produção de um jogo é necessário o uso de um motor de jogo, pois facilita o desenvolvimento, permitindo que o programador não precise saber os detalhes de implementação, mas apenas das funcionalidades fornecidas pelo motor. Contudo, utilizar um motor de jogo requer certo investimento financeiro, pois dependendo de seus recursos oferecidos, alguns motores possuem preços bastante altos, o que inviabiliza o projeto de jogos eletrônicos educacionais. Atualmente, existem alguns motores de jogos livres para uso educacional, contudo esses motores possuem varias limitação tanto em termos computacionais quanto em conteúdo. Por exemplo, podemos citar os motores enjine[37], J3DTOOL[33], SAGE[55], STEAMie[41] e Alice[1]. enjine é um motor de jogo desenvolvido usando a API Java3D, que oferece os recursos de som estéreo 2D, detecção de colisão, sistema de colisão e sistema de animação. Contudo, não oferece recursos de som 3D, simulação física e sistema de inteligência computacional. J3DTOOL é um motor também desenvolvido usando a API Java3D com recursos mais limitados que o motor Enjine, oferecendo apenas os recursos de animação e som 2D.

16 15 SAGE é um motor de jogo desenvolvido usando a API DirectX, oferecendo um sistema de animação, sistema de som estéreo 2D. Além de suas limitações, o motor foi desenvolvido para o aprendizado de desenvolvimento de jogos, ou seja, o objetivo deste motor é o aprendizado sobre o desenvolvimento de jogos. Alice é um motor de jogo desenvolvido usando a API Java3D, que possui os mesmos propósitos que o motor SAGE. Alice possui um editor no qual o aluno poderá construir o ambiente do jogo/simulação, aplicando os conceitos de linguagem de programação. STEAMie é um motor de jogo desenvolvido usando a API DirectX, oferecendo vários recursos, tais como: sistema de som estéreo, sistema de animação, sistema de física e detecção de colisão, sistema de interface gráfica entre outros. Esse motor é o mais completo do que todos os outros motores, contudo não oferece um sistema de inteligência computacional. Esses motores citados anteriormente não possuem todos os recursos necessários para o desenvolvimento de jogos, de forma que para desenvolver um jogo mais elaborado usando estes motores é necessária uma codificação sobre o código fonte deste e/ou também um estudo sobre uma biblioteca que forneça os recursos necessários. O objetivo deste trabalho é a proposta de um motor de jogo que permita o desenvolvimento de jogos eletrônicos com mais recursos computacionais que os motores citados anteriormente, tais como o uso de um sistema de renderização gráfica 3D, que suporte Shaders, CG, sistema de partículas, etc.um sistema de física realística com detecção de colisão e sistema de movimentação de personagens. Um sistema de som 2D e 3D estéreo. Um sistema de inteligência computacional através do uso de scripts, máquinas de estados finitos e sistema Fuzzy. De forma que possam ser desenvolvidos jogos eletrônicos com mais qualidade técnica e também facilitando o desenvolvimento de aplicações/jogos que possam utilizar o motor. Como estudo de caso foi desenvolvido um jogo educacional sobre a Revolução da Cabanagem, que é um jogo que mescla os estilos de aventura, ação, estratégia e educacional e tem como o objetivo mostrar ao jogador

17 16 através do uso do jogo a história da Revolução Cabana, através do controle e diálogos dos personagens que foram importantes para o movimento, do enredo que foi baseado nos acontecimentos históricos e das informações que são mostradas ao jogador. O motor foi desenvolvido usando as características de orientação a objetos, totalmente implementado usando a linguagem de programação C++ e com uma arquitetura flexível e modular, permitindo a expansão de suas funcionalidades. O motor utiliza diversas bibliotecas e APIs, tais como o Ogre3D[25] para a renderização gráfica 3D, NVidia PhysX[45] para a colisão de objetos e simulação física, FMOD[18] e OpenAL[43] para a simulação sonora, CEGUI[8] para a interface com usuário, a biblioteca OIS[42] para o controle da interface de entrada e saída com o usuário, utilização de scripts na linguagem Lua[32] para a configuração do comportamento dos personagens e opcionalmente possibilita a codificação do jogo/aplicação. O motor de jogo desenvolvido é uma parte do projeto sobre a construção de um Jogo Eletrônico Lúdico Educacional de Estratégia a Revolta da Cabanagem que foi financiado pela CHAMADA PÚBLICA: MCT/FINEP/MEC - Jogos Eletrônicos Educacionais 02/2006. Esta dissertação está dividida em fundamentação teórica, desenvolvimento e conclusões. No capítulo 2 é apresentada uma fundamentação teórica sobre jogos eletrônicos. É mostrado neste capítulo um breve histórico, definições e jogos tipos ou gêneros de jogos eletrônicos. Por último, mostra um estudo sobre jogos eletrônicos educativos, mostrando algumas considerações e uns exemplos de jogos educativos. No capítulo 3 é apresentado um estudo sobre motores de jogos. São mostrados neste capítulo um breve histórico, a definição e a estrutura de motores de jogos. Por último, são mostrados os trabalhos relacionados. No capítulo 4 é apresentado o motor de jogo proposto. São mostradas neste capítulo as características do motor desenvolvido, a arquitetura proposta.

18 17 O capítulo mostra os componentes que fazem parte do motor e no final mostra as etapas de funcionamento do motor. No capítulo 6 são apresentadas as conclusões finais sobre o presente trabalho e sobre os estudos e pesquisas realizadas. No apêndice A é apresentado o estudo de caso, que é o jogo eletrônico educacional sobre a revolução da cabanagem. É mostrado neste apêndice o processo de implementação, a estrutura do jogo e o jogo. No apêndice B é mostrado o diagrama de classes do núcleo do motor desenvolvido. No apêndice C é mostrado o diagrama de classes do sistema fuzzy desenvolvido para o subsistema de inteligência computacional. No apêndice D é mostrado um código fonte exemplo do motor desenvolvido.

19 18 CAPÍTULO 2 JOGOS ELETRÔNICOS Neste capítulo será mostrado um estudo sobre jogos eletrônicos mostrando um breve histórico, definição e tipos de jogos eletrônicos. Por fim é mostrado um breve estudo sobre jogos educativos BREVE HISTÓRICO A história dos jogos pode ser dividida em: antes da década de 70, décadas de 70, 80, 90 e 2000, e através das diferentes tecnologias utilizadas em diferentes épocas. Antes da década de 70, algumas empresas e pessoas já começavam a dar os primeiros passos na criação de jogos. Uma das principais empresas da indústria, a Nintendo, começou como uma empresa que fabricava cartas de baralho. Segundo a linha de tempo encontrada em [27] esse é o primeiro marco da história dos jogos eletrônicos (pelo fato que a Nintendo hoje está no mercado de jogos eletrônicos). Ainda, desde o início do século XX, [27] e [15] consideram máquinas como a Gottlieb Baffle Ball os precursores das máquinas de pinball, que hoje em dia são máquinas de jogos eletrônicos. O primeiro jogo eletrônico interativo criado na história foi o Spacewar, mostrado na Figura 2.1, um jogo onde duas pessoas controlavam dois tipos diferentes de espaço-nave que deveriam combater entre si. Esse jogo foi programado por um estudante do MIT, Steve Russell, em um computador PDP- 1 em 1961 [15]. Figura 2.1 Space War

20 19 Existem alguns historiadores, porém, que argumentam que o primeiro jogo eletrônico foi o Tênis para dois que foi criado por Willy Higinbotham, mostrado na Figura 2.2, um cientista do Brookhaven National Laboratory. Higinbotham programou, em 1958, um osciloscópio onde era possível jogar uma partida de tênis interativa [27]. Figura 2.2 Tênis para dois Em 1970, Nolan Bushnell começou a trabalhar em uma versão fliperama do jogo Spacewar, chamada Computer Space, mostrado na Figura 2.3. No ano seguinte, a empresa Nutting Associates comprou o jogo de Bushnell, colocando no mercado a primeira máquina de fliperama da história. Figura 2.3 Computer Space Em 1972, Bushnell abre sua própria empresa, a Atari, famosa pelo jogo Pong (criado pelo engenheiro Al Alcorn). Até o fim da dessa década, muitas empresas entraram no mercado de jogos, como Taito, Midway e Capcom, além da Magnavox lançar em 1972 o computador Odyssey, mostrado na Figura 2.4 [27].

21 20 Figura 2.4 Magnavox Odyssey Seguindo a linha de tempo dos jogos em [27], nos anos 80 as máquinas de fliperama estavam em seu auge, com muitos jogos sendo lançados (Donkey Kong, Tron e Q*Bert são alguns exemplos) ao mesmo tempo em que surgiram os primeiros videogames 8-bit: Famicom, da Nintendo e Master System, da SEGA (Service Games). Na área de jogos para computador, houve também um grande lançamento de jogos e criação de empresas, sendo a On-Line Systems (atual Sierra Online) uma das pioneiras no setor de jogos para computador [15]. Em março de 1986, Chris Crawford [11] reuniu alguns amigos desenvolvedores em sua casa para a primeira Computer Game Developers Conference (atual GDC), onde discutiram assuntos sobre game design e negócios. A década de 90 foi marcada pelo lançamento e batalhas de videogames de 16-bit (Sega Genesis e Super Famicom, da Nintendo), de 32-bit (PlayStation da Sony e Sega Saturn) e o lançamento de videogames como 3DO da Panasonic e Nintendo64 da Nintendo (esse de 64-bit) [27]. Um grande marco para a história de jogos para computador foi o lançamento do jogo Wolfstein 3D pela id Software em 1991, mostrado na Figura 2.5, o primeiro jogo de tiro em primeira pessoa, atualmente um dos gêneros de jogos mais famosos entre os jogadores [30].

22 21 Figura 2.5 Wolfstein 3D. No final da década de 90 para 2000, Sony e Nintendo divulgaram seus novos videogames de 128-bit (PlayStation 2 e GameCube, respectivamente), enquanto a Microsoft também entrou para esse segmento. Atualmente, a atenção da mídia e dos jogadores está voltada aos jogos online multiplayer massivos (centenas a milhares de pessoas jogando ao mesmo tempo num mundo virtual via internet) e aos videogames portáteis Sony PSP e Nintendo DS (esse inovando com duas telas, sendo uma delas sensíveis ao toque, como em PDA s). 2.2 DEFINIÇÃO Um Jogo eletrônico pode ser definido como um sistema composto de três partes básicas: enredo, motor e interface interativa. O sucesso de um jogo está associado à combinação perfeita destes componentes. [4]. O enredo define o tema, a trama, o(s) objetivo(s) do jogo, o qual através de uma série de passos o usuário deve se esforçar para atingir. A definição da trama não envolve só criatividade e pesquisa sobre o assunto, mas também a interação com pedagogos, psicólogos e especialistas no assunto a ser enfocado pelo jogo. A interface interativa controla a comunicação entre o motor e o usuário, reportando graficamente um novo estado do jogo. O desenvolvimento da interface envolve aspectos artísticos, cognitivos e técnicos. O valor artístico de uma interface está na capacidade que ela tem de valorizar a apresentação do jogo, atraindo usuários e aumentando a sua satisfação ao jogar. O aspecto cognitivo está relacionado à correta interpretação da informação gráfica pelo

23 22 usuário. Note-se que em termos de jogos educacionais, a interface deverá obedecer a critérios pedagógicos. O aspecto técnico envolve desempenho, portabilidade e a complexidade dos elementos gráficos. O motor do jogo é o seu sistema de controle, o mecanismo que controla a reação do jogo em função de uma ação do usuário. A implementação do motor envolve diversos aspectos computacionais, tais como, a escolha apropriada da linguagem de programação em função de sua facilidade de uso e portabilidade, o desenvolvimento de algoritmos específicos, o tipo de interface com o usuário, etc. 2.3 GÊNEROS OU TIPOS DE JOGOS Do fato que as pessoas são diferentes entre si, cada uma com seus gostos e opiniões, os jogos possuem a capacidade de envolver os mais diversos tipos de jogadores por serem diversificados em suas classes. Em continuidade, caracterizar um jogo como um conjunto de estilos é mais apropriado do que determiná-lo em uma só categoria. Ou seja, um jogo pode ser mais estratégico que o outro, além de permitir que um jogo seja de vários estilos diferentes. Os estilos propostos por [52], [44] e [54] podem ser caracterizados da seguinte forma: Ação: Representam uma grande faixa de estilos de jogos, podendo estes tanto ser encontrados com gráficos 3D, quanto com gráficos 2D. Geralmente eles são divididos em dois subgêneros: aqueles em que se atira e aqueles em que não se atira. As principais habilidades que este tipo de jogo explora no jogador são o tempo de reação e a coordenação entre a visão e as mãos do jogador em situações de pressão. Fazem parte desse gênero jogos de luta, como Street Fighter, jogos de tiro, como DOOM III mostrado na Figura 2.6, jogos tipo labirinto, como Pac-Man, Mario, dentre outros tipos de jogos;

24 23 Figura 2.6 Doom III Aventura: ao contrário dos demais gêneros, um jogo de aventura não é uma simulação ou uma competição. Ele é uma estória interativa sobre um determinado personagem que é controlado pelo jogador. Apesar do gênero ter sido alterado muito no decorrer dos anos, existem certas qualidades que caracterizam esse gênero: exploração, coleção ou manipulação de objetos, solução de quebra-cabeças e a ênfase reduzida quanto ao combate ou aos elementos de ação. Podemos citar jogos como The Legend of Zelda mostrado na Figura 2.7, Grim Fandango, Gabriel Knight etc. como do gênero; Figura 2.7. The Legendo of Zelda

25 Estratégia: jogos baseados nos jogos de tabuleiro. A grande maioria dos jogos deste gênero é lançada para PC, por sua grande capacidade de iteração entre usuário e jogo. Dividem-se em duas formas principais: baseado em turnos e em tempo real. Dentro desse gênero destacam-se títulos como Age of Empire, Civilization, Warcraft, Outlive, dentre outros. Na Figura 2.8, pode ser vista uma imagem do jogo Age of Empire III; Figura 2.8 Age of Empire III RPG: assim como os jogos de estratégia, os RPGs formam um gênero de jogo que também foi derivado dos jogos de papel e caneta. Geralmente os RPGs possuem duas características que os distinguem dos demais gêneros: Personagens de jogo configuráveis, que melhoram no decorrer do jogo, com o aumento da experiência; jogo. Estórias muito bem definidas e que desenvolvem no decorrer do A parte da estória é uma parte muito singular desse gênero. Nela, o jogador interage, de maneira que ele acaba se tornando uma parte muito real da mesma. Fazem parte desse gênero jogos do estilo Final Fantasy 13 mostrado na Figura 2.9, Dragon Quest, Diablo, Erinia, dentre outros;

26 25 Figura 2.9 Final Fantasy ESPORTE ao contrário dos outros gêneros, onde o mundo em que a estória se desenvolve é pouco conhecido pelos jogadores, nos jogos esportivos o mundo é bastante conhecido. Por exemplo, muitas pessoas conhecem como é o futebol profissional e as suas regras. Entretanto, isso não quer dizer que os jogos desse gênero são extremamente realistas. Fazem parte deste gênero jogos como Winning Eleven 7, NHL 2008, etc. Na Figura 2.10 mostra o jogo Winning eleven 7. Figura 2.10 Winning Eleven 7.

27 Simulação: trata-se de manipular e experimentar um modelo matemático que pretende reproduzir alguma situação ou artefato real. Através da experimentação o jogador vai aperfeiçoando suas ações de forma a dominar o modelo simulado. Os jogadores que irão jogar este tipo de jogo querem ter a experiência mais próxima possível de qual seria a sensação na realidade. Jogos como Grand Turism Prologe, Flight Simulator 2008 mostrado na Figura 2.11, dentre outros, fazem parte desse gênero. Figura 2.11 Flight Simulator Quebra-cabeça: também denominado de puzzle, tratam-se de problemas que precisam ser resolvidos com raciocínio lógico-matemático, principalmente o raciocínio dedutivo. Charles Blaster e Tetris são exemplos de quebra-cabeça. A Figura 2.12 mostra o jogo Tetris.

28 27 Figura 2.12 Tetris Passatempo: não envolvem condições de vitória ou derrota e não possuem um objetivo pré-determinado. Predomina as ações livres sob o artefato computacional. O jogo The Sims é um exemplo de jogo de passatempo. A Figura 2.13 mostra o jogo The Sims 3; Figura 2.13 The Sims 3.

29 Educacional: um jogo educacional pode envolver as características de qualquer um dos jogos anteriores. Por exemplo, um jogo de aventura pode envolver enigmas relativos a um templo maia ou a um castelo medieval e, assim, se tornar um jogo educacional sobre história antigi. Um simulador de vôo pode ser aperfeiçoado para treinar pilotos de avião. O que diferencia os jogos de educação ou treinamento dos jogos somente para diversão é que eles levam em conta critérios didáticos e pedagógicos associados aos conceitos que visam difundir. Um exemplo de jogos educacional é o jogo Brain Age: Train Your Brain in Minutes a Day!( Idade Mental! Treine seu cérebro em minutos por dia! ) mostrado na Figura 2.14, lançado para o videogame Nintendo DS que foi um sucesso entre os adultos, atraídos por pequenos jogos de raciocínio e memorização. Figura 2.14 Jogo Brain Age. É preciso dizer que apesar de terem sido citados exemplos de jogos digitais em cada estilo não significam que os jogos são de uma única classe. Um jogo como Zelda que enfatiza a aventura possui a combinação de estilos de ação e quebra cabeça. 2.4 JOGOS EDUCACIONAIS Os jogos são vistos como uma forma de estimular aprendizagens, ambientes colaborativos, exploração e manipulação ativa da informação,

30 29 criatividade e capacidade de resolução de problemas, comunicação, tomada de decisões, capacidade de planificação e pensamento estratégico. As experiências vividas nas situações de jogo afetam as expectativas dos aprendizes sobre as atividades de aprendizagem, sendo que estes preferem tarefas ativas, rápidas, de caráter exploratório e informação disponibilizada em vários suportes em paralelo [28]. Os jogos educativos concentram-se especificamente em áreas pedagógicas e são utilizados como forma de aprendizagem e desenvolvimento de conteúdos e competências. A qualidade, usabilidade e adequação varia de jogo a jogo. A gama de produtos disponíveis de jogos educativos vai de jogos de treino/memorização (drill and practice) a ambientes virtuais interativos. As deficiências comuns apontadas a estes jogos estão na inadequação dos conteúdos pedagógicos, mal projetados, baixa qualidade gráfica, pouca usabilidade, atividades limitadas e que estimulam apenas a repetição. Apontam-se também dificuldades técnicas, de adequação ao conteúdo, de adaptação ao contexto das aulas. Em parte, estas deficiências são devidas ao contexto de desenvolvimento destes jogos. Os profissionais e as instituições que os produzem não conseguem atingir os elevados valores de produção que são normais na indústria dos jogos, devido à falta de investimentos em projetos de cunho educacional. Segundo Amory [2], os jogos educativos devem possuir enredos atraentes, ligação adequada do enredo do jogo com o conteúdo a ser ensinado e acrescentar nestes jogos princípios narrativos que estabeleçam início, meio e fim. Por último, Amory acredita que os jogos computadorizados educativos disponibilizam uma forma onde o aprendiz pode estar envolvido em ambientes construtivistas, onde o aprendiz constrói o conhecimento sobre o assunto a ser ensinado jogando o jogo. Segundo Jenson & Castel [24], a meta principal do educador é engajar os aprendizes como agentes e arquitetos de sua própria educação. O maior desafio dos jogos com propósitos educacionais é oferecer para o aprendiz um ambiente que propicie o envolvimento, onde os usuários queiram estar, explorar e aprender da mesma forma que os aprendizes fazem nos jogos

31 30 computadorizados comerciais. Estes autores também concordam com a premissa que os jogos comerciais são extremamente atraentes para as crianças e jovens, com alta qualidade técnica. Mas infelizmente são considerados pela sociedade como jogos sem valor educacional que consideram o jogador como um mero comprador. Já os jogos educativos em geral não são atrativos, pois não criam uma sensação de imersão, trata o jogador como um estudante, pois possui uma forte abordagem educacional. Os jogos educacionais devem seguir a rota do sucesso dos chamados jogos comerciais pelo fato que estes permitem uma maior imersão, uma exploração do espaço e permite que o aprendiz interprete um personagem e explore um mundo virtual. Para Rieder [51], jogos educativos são atividades lúdicas que possuem objetivos pedagógicos voltados para o desenvolvimento do raciocínio e aprendizado do jovem. O principal objetivo de um jogo educativo deve ser o entretenimento aliado à apresentação de novos conhecimentos (ou o reforço daqueles já descobertos). Ainda, deve explorar por completo o processo de ensino e aprendizagem, proporcionando ao estudante interesse e motivação, afim de que ele possa aprender de forma divertida, assimilando fatos e resolvendo problemas no decorrer do jogo. Existem também jogos que são desenvolvidos como primordialmente lúdicos, mas com um potencial educacional, há muitos exemplos de produtos que se adéquam aos objetivos educacionais. Os jogos de aventura, estratégia e simulação são apontados como um grande potencial educativo, ao permitirem que os alunos controlem ambientes virtuais que os obrigam a desenvolver competências de resolução de problemas, tomada de decisões e pesquisa de informação relevante. Os motores gráficos e tecnologias interativas presentes nos jogos de computador são por vezes adaptados a jogos educativos, como por exemplo, os motores Doom Engine e Neverwinter Nights Engine [49][40][63][39]. O emergente campo dos mundos virtuais e MMORPGs (Massive Multi- User Online Role Playing Games) está a ser explorado por educadores que

32 31 desenvolvem pontos de encontro, aulas e recursos virtuais de exploração livre [21][56] Exemplos de jogos educacionais Nesta seção serão mostrados alguns exemplos de jogos educacionais Tríade Neste trabalho é apresentado o projeto de um jogo eletrônico voltado para o ensino-aprendizagem sobre a Revolução Francesa. O titulo do jogo chamado de TRIADE trata-se de Igualdade, Fraternidade e Liberdade, um jogo com estilo RPG single-player que leva o jogador para a França do século 18, na pele de Jeane de Vallois, filha do nobre aristocrata Henry de Vallois e integrante do movimento pré-revolucionário [57]. O jogo foi desenvolvido usando o motor de jogo Torque Engine, um motor de jogo comercial para desenvolvimento de jogos com estilo de ação. A Figura 2.15 mostra uma imagem do jogo mostrando a personagem Jeane de Vallois. Figura 2.15 Triade - Jogo educativo sobre a Revolução Francesa Games-To-Teach Pode-se citar o projeto Games-To-Teach [19] conduzido pelo Massachusetts Institute Technology que propõe uma série de novos estilos de

33 32 jogos voltados para uma nova geração de aprendizes. Na Figura 2.16 são mostrados dois screenshots do jogo Revolution que aborda a história da Guerra Civil Americana na forma de um MMORPG (Massive Multiplayer Online Role-Playing Games). O jogo foi desenvolvido usando o motor de jogo Neverwinter Nights Engine, um motor de jogo comercial para desenvolvimento de jogos do tipo RPG. Figura 2.16 Jogo Revolution Jogo sobre a guerra civil americana Laguna Aprendendo sobre a Guerra do Paraguai com jogo educativo Neste trabalho [37] é descrito o jogo Laguna, que narra os acontecimentos da retirada da Laguna, episódio da Guerra do Paraguai, que foi desenvolvido baseado nas premissas do construcionismo e com utilização de ferramentas de software livre. O objetivo do jogo é auxiliar no processo de ensino e aprendizagem de temas relacionados à História do Brasil, de uma forma atraente e divertida. O jogo foi implementado usando o motor de jogo Blender Engine, que é um motor de jogo gratuito disponibilizado para a criação de jogos. A Figura 2.17 mostra imagens de dois cenários do jogo: cenários da vila e de uma das tribos.

34 33 Figura Imagens dos cenários da vila (a) e de uma das tribos (b) Jogo educativo sobre a Revolução da Cabanagem Fase Pré- Revolucionária Neste trabalho [48] é mostrada a primeira etapa do jogo educativo sobre a revolução da cabanagem chamado de fase Pré-Revolucionária. Essa etapa se divide em três sub-etapas: Belém do Pará ( ), Felipe Patroni e Batista Campos. Na sub-etapa de Belém do Pará, o usuário terá que controlar um personagem que percorrerá a cidade na época da revolução, com o objetivo de conhecer alguns prédios e locais importantes no contexto histórico da Cabanagem. As outras sub-etapas descreverão a participação de dois personagens marcantes na fase preparatória da revolução, Felipe Patroni e Batista Campos. Esta etapa foi desenvolvida usando o motor proposto no capítulo 4 desta dissertação. A Figura 2.18 mostra o cenário da fase Pré- Revolucionária e um cabano.

35 34 Figura 2.18 Jogo educativo sobre a revolução da cabanagem Fase Pré-Revolucionária. 2.5 CONSIDERAÇÕES FINAIS Neste capítulo foi mostrado um breve estudo sobre jogos eletrônicos, mostrando o histórico, o conceito e tipos de jogos existentes. Também é mostrada uma breve discussão sobre jogos educativos mostrando as características destes jogos e dos benefícios do uso dos jogos educativos como ferramenta de ensino-aprendizado. Neste capítulo foram abordados os conceitos sobre jogos eletrônicos. No próximo capítulo será mostrado um estudo sobre motor de jogo, o componente principal de um jogo eletrônico.

36 35 CAPÍTULO 3 MOTOR DE JOGO Neste capítulo será mostrado um estudo feito sobre motores de jogos ou game engine, mostrando um breve histórico, definição e a estrutura de motores de jogos. Por último, são mostrados os trabalhos relacionados. 3.1 BREVE HISTORICO O termo "game engine" surgiu em meados da década de 1990, especialmente com o surgimento de jogos de tiro em primeira pessoi. Tal foi à popularidade da Id Software com os jogos Quake e DOOM que em vez de começar a desenvolver jogos a partir do "zero", outros desenvolvedores modificaram o núcleo desses jogos e construíram outros jogos com nova aparência, caracteres, armas e níveis(levels), como por exemplo o jogo Quake Soccer, que é um jogo de futebol que foi criado usando o núcleo do Quake. Ou seja, os programadores modificaram o núcleo dos jogos Quake e DOOM para que se adequassem aos seus próprios conteúdos [12][60]. Com isso, surgiram dois conceitos: motor de jogo (game engine) e conteúdo de jogo (game content). Fazendo uma analogia a um carro, game engine representa o motor do carro e o game content representa todo o resto tais como: banco, volante, CD - player, pára-choque, rodas, etc. Depois disso, jogos como Quake III Arena e Unreal da Epic Games em 1998 foram concebidos com esta perspectiva em mente, com o motor e o conteúdo sendo desenvolvido separadamente. O estilo de jogos de tiro em primeira pessoa FPS continua sendo o estilo mais predominante nos motores de jogos, mas agora eles estão também sendo estão sendo utilizados em outros estilos e também sendo projetados para ser usados para a criação de diversos estilos em um único motor. Por exemplo, o RPG Morrowind e o MMORPG Dark Age of Camelot são baseados no motor Gamebryo Engine que é um motor para jogos MMORPG, e o MMORPG Lineage II é baseado no Unreal Engine.

37 36 Embora o termo fosse utilizado pela primeira vez na década de 1990, existem alguns sistemas anteriores, na década de 1980 que são igualmente considerados como motores de jogos, tais como os sistemas AGI e SCI da SIERRA, o sistema SCUMM da LucasArts e o motor FreeScape da Incentivo Software's. No entanto, ao contrário de motores de jogos mais modernos, estes motores de jogo nunca foram utilizados em qualquer produtos de terceiros (exceto o sistema SCUMM que foi licenciado para ser utilizado pela Humongous Entertainment). 3.2 DEFINIÇÃO Um motor de um carro é responsável por fazê-lo andar. Ao dar a ignição do veículo, o motorista coloca o motor em funcionamento e começa a mover-se com ele, sem precisar saber como funciona todo o processo mecânico. A transferência do movimento dos eixos para as rodas, a sincronização das explosões dos pistões, a injeção de combustível na câmara de combustão, tudo fica a cargo do motor. Um engine para jogos basicamente segue o mesmo princípio de funcionamento. Dentro do conceito de engenharia de software trata-se da parte do projeto que executa certas funcionalidades para um programa. Dentro da área de jogos, um engine se encarregará por entender-se com o hardware gráfico, irá controlar os modelos para serem renderizados, tratará da simulação física e sonora, tratará das entradas de dados do jogador, tratará de todo o processamento de baixo nível e outras coisas que o desenvolvedor de jogos normalmente não deseja fazer ou não tem tempo para se preocupar. Existem inúmeras definições para um engine. Entretanto, estas definições convergem em algumas características: Permitir que o desenvolvedor possa criar diversos jogos diferentes, usando um mesmo motor de jogo. É comum, entretanto, que os motores sejam catalogados de acordo com os tipos de jogos para os quais eles foram concebidos [16]; Poder reaproveitar com facilidade o código desenvolvido em projetos anteriores;

38 37 Abstrair a manipulação de API s (embora, em muitos casos, o desenvolvedor irá usar as próprias API s dentro do ambiente do engine, para implementar funcionalidades específicas); Possibilitar uma fácil integração entre código e modelagem 3D. Para esta finalidade é comum que os engines apresentem editores de cenas. Segundo Lewis [31], o conceito de motor surgiu devido à necessidade de reduzir o tempo de desenvolvimento e custos na indústria de jogos, tendo em vista que a cada novo projeto não havia reaproveitamento de recursos utilizados em jogos anteriores, ou seja, recriavam-se tudo a partir do zero. Segundo Stang [61], um motor de jogo pode ser definido como um conjunto de módulos que desempenham tarefas especifica e necessárias ao desenvolvimento de um jogo. Segundo Bernades et all [5], alguns dos módulos comumente encontrados em motores de jogos são: Módulo gráfico para renderização 2D e 3D; Módulo de física; Módulo de reconhecimento de dispositivos; Módulo de som; Módulo de inteligência computacional; Módulo de rede. Nas seções subseqüentes, serão brevemente definidas as funções básicas de cada um destes módulos Módulo gráfico O Módulo gráfico ou renderizador gráfico é um dos componentes mais complexos de um motor, pois tem a responsabilidade de desenhar, com velocidade suficiente, os componentes visuais da aplicação formados por objetos 2D e 3D (estáticos ou dinâmicos).

39 38 Para que um bom desempenho seja obtido, o módulo gráfico geralmente utiliza diversas técnicas de otimização, que incluem diminuir o detalhamento dos objetos à medida que sua distância aumenta em relação ao observador (Level Of Detail) e não desenhar polígonos ocultos ou objetos que estejam fora do volume de visualização (Culling). Em ambientes formados por modelos complexos estas técnicas são importantes para garantir um desempenho aceitável, pois quanto mais polígonos tiverem que ser desenhados, mais lenta será a etapa de renderização. Além disso, existem casos em que o renderizador necessita ordenar os objetos a serem desenhados para que seja possível criar alguns efeitos como sombras e objetos transparentes Módulo de física O sistema de física tem por objetivo identificar se entidades virtuais estão em colisão, simular corpos rígidos, deformáveis e movimentos com aceleração, resistência e gravidade, que são fatores essenciais para que o realismo seja mantido Módulo de reconhecimento de dispositivos O Módulo responsável pelo reconhecimento de dispositivos tem a tarefa de monitorar e captar dados e eventos disparados pelos equipamentos utilizados pelo usuário para interagir com a aplicação, como mouse, teclado e joystick Módulo de som A renderização sonora é importante para determinar parâmetros como atenuação, volume e freqüência de um som com base na posição e orientação do usuário no ambiente virtual Módulo de inteligência computacional O Módulo de inteligência computacional deve oferecer mecanismos para que o desenvolvedor possa atribuir comportamentos a entidades controladas

40 39 pela aplicação. Um dos algoritmos freqüentemente é o "A Star" que considera diversos fatores para determinar o caminho de menor custo entre dois pontos [29]. Atualmente grande parte dos motores oferece também suporte a script com o qual é possível descrever o comportamento de uma entidade sem a necessidade de recompilar a aplicação Módulo de rede O Módulo de rede deve oferecer recursos para que seja possível realizar a comunicação entre computadores que participam de uma mesma simulação simultaneamente. Através deste Módulo é possível manter a consistência do mundo virtual utilizado em aplicações colaborativas. Como é possível observar, os módulos que compõem um motor não têm por objetivo especificar como deve ser o ambiente do jogo, ou mesmo a lógica que será empregada no jogo. Essa característica permite que diferentes jogos possam ser implementados com base em um mesmo motor, onde cada aplicação poderá utilizar alguns, ou todos os módulos oferecidos por um motor. Uma observação muito importante é que motores de jogos devem ser distinguidos de motores gráficos que vêm apenas com capacidades de renderização gráfica e também devem ser distinguidos dos Software Developer Kits (SDKs), que ajudam no desenvolvimento de jogos. Enquanto que o primeiro normalmente tem limitações quanto ao que e como as coisas podem ser incluídas em um jogo, este último é muito mais flexível, mas com um foco mais restrito. Por exemplo, Gamebryo é um motor de renderização proprietário muito flexível, mas não tem capacidade física ou colisão, ao contrário do Havok que é apenas um motor de física. 3.3 ESTRUTURA Um motor de jogo é um software que compõe o núcleo de um jogo eletrônico. Ele manipula a renderização gráfica (2D ou 3D), física, som, inteligência computacional, colisão, e outros aspectos de mecanismo do jogo. A Figura 3.1 ilustra os componentes de um motor de jogo genérico proposto por [31].

41 40 Figura 3.1. Diagrama de um motor de jogo modular genérico [56]. O mundo virtual (1) é o cenário, ou nível, no qual o jogador interage com o jogo. O cenário é o ambiente virtual de um jogo e é composto por um ou vários mapas, objetos, luzes, partículas, etc. Os níveis também podem ser criados pelos usuários e facilmente importados para o jogo através do uso de editores que alguns motores disponibilizam para o usuário. O script (2) representa o código fonte do jogo no qual contém a lógica do jogo. A lógica do jogo corresponde às regras e sobre o funcionamento do jogo. Scripting é uma forma de linguagem de programação em alto nível que permite ao usuário personalizar ainda mais o jogo, adicionando novos comportamentos de atores, animações, reações físicas, etc. O motor de jogo (3) coordena a renderização gráfica, a física, colisão de objetos, som, interface gráfica e outros elementos, a fim de fornecer as funcionalidades para o funcionamento do jogo. Um motor é basicamente divido em núcleo e subsistemas. O núcleo é responsável em registrar, identificar, iniciar e coordenar o funcionamento de todos os módulos e subsistemas que compõem o motor.

42 41 Assim, o núcleo caracteriza-se por oferecer uma série de serviços comumente utilizados pelos subsistemas, além de estabelecer as políticas aplicadas ao carregamento de mídias; ao gerenciamento de memória; ao tratamento das particularidades da plataforma corrente; ao escalonamento das tarefas executadas pelo motor; ao sistema de eventos, que trata a interação do usuário com os dispositivos de entrada; à manutenção do registro de atividades e erros do motor (log). Um subsistema representa um módulo específico do motor que é utilizado pelo jogo para a implementação de um conjunto de funcionalidades. Assim, um determinado subsistema é caracterizado pelo domínio de problemas para o qual é destinado e pelas tarefas que desempenha como módulo do motor, além das tecnologias que utiliza para desempenhar essas tarefas. O subsistema de renderização em tempo-real, por exemplo, caracteriza-se por sintetizar imagens a uma taxa de exibição interativa com base numa cena tridimensional e, dentre as tarefas que desempenha, estão: a determinação da visibilidade dos objetos na cena, a geração texturas e a especificação sistemas de coordenadas através de matrizes. Para tanto, é necessário que esse subsistema se atenha a tecnologias específicas, como técnicas para a eliminação de faces ocultas e renderização em baixo nível através de uma API 3D. Dessa maneira, cada subsistema é responsável por um aspecto específico da aplicação, bem como pela gerência desse aspecto em tempo de execução. Como componentes de software, os subsistemas são capazes de encapsular a complexidade de utilização de técnicas e subsistemas de baixo nível externos ao motor. Em alguns jogos, a rede está prevista (5) no qual permite uma experiência de jogos multiusuários. As API s fornecem funcionalidades básicas sobre os dispositivos que representam, como por exemplo, a API OpenGL que contem um conjunto de funcionalidades para a criação de ambientes gráficos. Todo este software interage com o sistema operacional do usuário (6).

43 TRABALHOS RELACIONADOS. Motores de jogos educacionais são motores que são desenvolvidos para permitir o desenvolvimento de jogos utilizando as funcionalidades deste. Nesta seção serão apresentados alguns motores educacionais desenvolvidos enjine Um motor de jogos educacionais em Java O motor enjine [38] visa oferecer um motor de jogo destinado ao aprendizado de computação gráfica e de programação de jogos. É um dos poucos motores para a plataforma JAVA / JAVA 3D, sendo que sua estrutura clara, simples e consistente, que facilitam o aprendizado e uso, o tornam diferenciado em aplicações didáticas. No momento encontra-se em desenvolvimento uma interface de programação que permitirá que o pacote seja utilizado pro professores e outros profissionais que não possuam conhecimento de programação. A Figura 3.2 apresenta algumas telas de jogos, baseados no enjine, desenvolvidos por alunos. Figura 3.2 Telas de jogos desenvolvidos com o motor enjine J3DTOOL Um motor para o desenvolvimento de jogos educacionais em Java3D J3DTOOL[33] é um motor destinado ao desenvolvimento de jogos educacionais em três dimensões. O motor é baseado na API gráfica Java 3D e

Introdução ao Aplicativo de Programação LEGO MINDSTORMS Education EV3

Introdução ao Aplicativo de Programação LEGO MINDSTORMS Education EV3 Introdução ao Aplicativo de Programação LEGO MINDSTORMS Education EV3 A LEGO Education tem o prazer de trazer até você a edição para tablet do Software LEGO MINDSTORMS Education EV3 - um jeito divertido

Leia mais

Sistemas de Informação I

Sistemas de Informação I + Sistemas de Informação I Dimensões de análise dos SI Ricardo de Sousa Britto rbritto@ufpi.edu.br + Introdução n Os sistemas de informação são combinações das formas de trabalho, informações, pessoas

Leia mais

LEAS ONLINE: PROTÓTIPO DE UM JOGO DE MMORPG

LEAS ONLINE: PROTÓTIPO DE UM JOGO DE MMORPG LEAS ONLINE: PROTÓTIPO DE UM JOGO DE MMORPG Wesllen de Oliveira Delfino, Larissa Pavarini da Luz wesllendelfino@hotmail.com,larissa.luz01@fatec.sp.gov.br Projeto de Iniciação Científica Larissa Pavarini

Leia mais

ENG1000 Introdução à Engenharia

ENG1000 Introdução à Engenharia ENG1000 Introdução à Engenharia Aula 02 Introdução ao Game Design Edirlei Soares de Lima Introdução O que é um jogo? Jogar uma bola contra uma parede pode ser considerado um jogo?

Leia mais

ENGENHARIA DE SOFTWARE I

ENGENHARIA DE SOFTWARE I ENGENHARIA DE SOFTWARE I Prof. Cássio Huggentobler de Costa [cassio.costa@ulbra.br] Twitter: www.twitter.com/cassiocosta_ Agenda da Aula (002) Metodologias de Desenvolvimento de Softwares Métodos Ágeis

Leia mais

15 Computador, projeto e manufatura

15 Computador, projeto e manufatura A U A UL LA Computador, projeto e manufatura Um problema Depois de pronto o desenho de uma peça ou objeto, de que maneira ele é utilizado na fabricação? Parte da resposta está na Aula 2, que aborda as

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

AULA 2. Aspectos Técnicos. Luciano Roberto Rocha. www.lrocha.com. MBA em Marketing Digital SOCIAL GAMES

AULA 2. Aspectos Técnicos. Luciano Roberto Rocha. www.lrocha.com. MBA em Marketing Digital SOCIAL GAMES MBA em Marketing Digital SOCIAL GAMES AULA 2 Luciano Roberto Rocha Aspectos Técnicos Ponta Grossa, 31 de agosto de 2013 ROTEIRO Papéis Processos Plataformas Ferramentas 2 PAPÉIS O desenvolvimento de um

Leia mais

Introdução à Computação

Introdução à Computação Aspectos Importantes - Desenvolvimento de Software Motivação A economia de todos países dependem do uso de software. Cada vez mais, o controle dos processos tem sido feito por software. Atualmente, os

Leia mais

Pesquisa com Professores de Escolas e com Alunos da Graduação em Matemática

Pesquisa com Professores de Escolas e com Alunos da Graduação em Matemática Pesquisa com Professores de Escolas e com Alunos da Graduação em Matemática Rene Baltazar Introdução Serão abordados, neste trabalho, significados e características de Professor Pesquisador e as conseqüências,

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

Sistema Tutor Inteligente baseado em Agentes. Pedagógicas da Universidade Aberta do Piauí. Prof. Dr. Vinicius Ponte Machado

Sistema Tutor Inteligente baseado em Agentes. Pedagógicas da Universidade Aberta do Piauí. Prof. Dr. Vinicius Ponte Machado Sistema Tutor Inteligente baseado em Agentes na Plataforma MOODLE para Apoio às Atividades Pedagógicas da Universidade Aberta do Piauí Prof. Dr. Vinicius Ponte Machado Parnaíba, 14 de Novembro de 2012

Leia mais

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos MÓDULO 7 Modelo OSI A maioria das redes são organizadas como pilhas ou níveis de camadas, umas sobre as outras, sendo feito com o intuito de reduzir a complexidade do projeto da rede. O objetivo de cada

Leia mais

Jogos em Inteligência Artificial

Jogos em Inteligência Artificial Jogos em Inteligência Artificial Inteligência Artificial I Ricardo Borges Cícero Augusto Mauricio Volkweis Professora Andrea Konzen Torres - RS, Junho de 2003 Sumário Introdução 1 Objetivos 2 Histórico

Leia mais

Jogos Eletrônicos. Aula 01 Jogos Eletrônicos e Game Design. Edirlei Soares de Lima <edirlei.lima@uniriotec.br>

Jogos Eletrônicos. Aula 01 Jogos Eletrônicos e Game Design. Edirlei Soares de Lima <edirlei.lima@uniriotec.br> Jogos Eletrônicos Aula 01 Jogos Eletrônicos e Game Design Edirlei Soares de Lima Introdução O que é um jogo? Jogar uma bola contra uma parede pode ser considerado um jogo? Introdução

Leia mais

Formação: o Bacharel em Sistemas de Informações (SI); o MBA em Tecnologia da Informação e Comunicação (TIC).

Formação: o Bacharel em Sistemas de Informações (SI); o MBA em Tecnologia da Informação e Comunicação (TIC). DOCENTE PROFESSOR CELSO CANDIDO Formação: o Bacharel em Sistemas de Informações (SI); o MBA em Tecnologia da Informação e Comunicação (TIC). Conhecimentos: o Web Designer; o Arquitetura de Máquina; o Implementação

Leia mais

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais Engenharia de Sistemas Detalhes no planejamento UNIVERSIDADE FEDERAL DE ALAGOAS Curso de Ciência da Computação Engenharia de Software I Prof. Rômulo Nunes de Oliveira Introdução Na aplicação de um sistema

Leia mais

PROJETO INFORMÁTICA NA ESCOLA

PROJETO INFORMÁTICA NA ESCOLA EE Odilon Leite Ferraz PROJETO INFORMÁTICA NA ESCOLA AULA 1 APRESENTAÇÃO E INICIAÇÃO COM WINDOWS VISTA APRESENTAÇÃO E INICIAÇÃO COM WINDOWS VISTA Apresentação dos Estagiários Apresentação do Programa Acessa

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA INTRODUÇÃO O projeto de um banco de dados é realizado sob um processo sistemático denominado metodologia de projeto. O processo do

Leia mais

Itinerários de Ônibus Relatório Final

Itinerários de Ônibus Relatório Final CENTRO UNIVERSITÁRIO SENAC Itinerários de Ônibus Relatório Final Grupo 5 Caio Roque Daniel Nunes Elise Roese José Caneiro Marcos Grignani São Paulo Junho de 2007 1 ÍNDICE 1. Introdução... 3 2. Desenvolvimento...

Leia mais

JOGOS ELETRÔNICOS CONTRIBUINDO NO ENSINO APRENDIZAGEM DE CONCEITOS MATEMÁTICOS NAS SÉRIES INICIAIS

JOGOS ELETRÔNICOS CONTRIBUINDO NO ENSINO APRENDIZAGEM DE CONCEITOS MATEMÁTICOS NAS SÉRIES INICIAIS JOGOS ELETRÔNICOS CONTRIBUINDO NO ENSINO APRENDIZAGEM DE CONCEITOS MATEMÁTICOS NAS SÉRIES INICIAIS Educação Matemática na Educação Infantil e nos Anos Iniciais do Ensino Fundamental (EMEIAIEF) GT 09 RESUMO

Leia mais

Wilson Moraes Góes. Novatec

Wilson Moraes Góes. Novatec Wilson Moraes Góes Novatec Copyright 2014 Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo,

Leia mais

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti.

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti. TI Aplicada Aula 02 Áreas e Profissionais de TI Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http:// Papéis... Um papel é uma definição abstrata de um conjunto de atividades executadas e dos

Leia mais

3 Jogos Sérios e Educação O avanço tecnológico tem transformado e contribuído para a melhoria da prestação de serviço em diversas áreas. No contexto educacional, novos sistemas e equipamentos têm sido

Leia mais

Um Driver NDIS Para Interceptação de Datagramas IP

Um Driver NDIS Para Interceptação de Datagramas IP Um Driver NDIS Para Interceptação de Datagramas IP Paulo Fernando da Silva psilva@senior.com.br Sérgio Stringari stringari@furb.br Resumo. Este artigo apresenta o desenvolvimento de um driver NDIS 1 para

Leia mais

Engenharia de Software

Engenharia de Software Engenharia de Software O que é a engenharia de software É um conjunto integrado de métodos e ferramentas utilizadas para especificar, projetar, implementar e manter um sistema. Método É uma prescrição

Leia mais

Apresentação 24/12/2014. Professor Wilker Bueno

Apresentação 24/12/2014. Professor Wilker Bueno Apresentação 1 Wilker Bueno Técnico em Magistério Colégio Estadual José Cipriano Varjão/GO Graduado em Administração de Empresas Universidade do Norte do Paraná Londrina/PR Especialista em RH e suas Atribuições

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Como usar a robótica pedagógica aplicada ao currículo

Como usar a robótica pedagógica aplicada ao currículo 1 Congresso sobre práticas inovadoras na educação em um mundo impulsionado pela tecnologia Workshop: Como usar a robótica pedagógica aplicada ao currículo Palestrante: João Vilhete Viegas d'abreu Núcleo

Leia mais

Roteiro sobre Projeto Final do curso Metodologia para Desenvolvimento de Objetos de Aprendizagem

Roteiro sobre Projeto Final do curso Metodologia para Desenvolvimento de Objetos de Aprendizagem Roteiro sobre Projeto Final do curso Metodologia para Desenvolvimento de Objetos de Aprendizagem Este roteiro tem como objetivo apresentar o projeto final do curso. Você deverá elaborar um projeto para

Leia mais

TÍTULO: AMBIENTE VIRTUAL PARA O ENSINO DE LÓGICA PARA CRIANÇAS CATEGORIA: EM ANDAMENTO ÁREA: CIÊNCIAS EXATAS E DA TERRA

TÍTULO: AMBIENTE VIRTUAL PARA O ENSINO DE LÓGICA PARA CRIANÇAS CATEGORIA: EM ANDAMENTO ÁREA: CIÊNCIAS EXATAS E DA TERRA TÍTULO: AMBIENTE VIRTUAL PARA O ENSINO DE LÓGICA PARA CRIANÇAS CATEGORIA: EM ANDAMENTO ÁREA: CIÊNCIAS EXATAS E DA TERRA SUBÁREA: COMPUTAÇÃO E INFORMÁTICA INSTITUIÇÃO: FACULDADE ANHANGUERA DE GUARULHOS

Leia mais

DESENVOLVIMENTO DE INTERFACE WEB MULTIUSUÁRIO PARA SISTEMA DE GERAÇÃO AUTOMÁTICA DE QUADROS DE HORÁRIOS ESCOLARES. Trabalho de Graduação

DESENVOLVIMENTO DE INTERFACE WEB MULTIUSUÁRIO PARA SISTEMA DE GERAÇÃO AUTOMÁTICA DE QUADROS DE HORÁRIOS ESCOLARES. Trabalho de Graduação DESENVOLVIMENTO DE INTERFACE WEB MULTIUSUÁRIO PARA SISTEMA DE GERAÇÃO AUTOMÁTICA DE QUADROS DE HORÁRIOS ESCOLARES Trabalho de Graduação Orientando: Vinicius Stein Dani vsdani@inf.ufsm.br Orientadora: Giliane

Leia mais

GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11

GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11 GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11 Índice 1. Importância do ERP para as organizações...3 2. ERP como fonte de vantagem competitiva...4 3. Desenvolvimento e implantação de sistema de informação...5

Leia mais

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como: Plano de Teste (resumo do documento) I Introdução Identificador do Plano de Teste Esse campo deve especificar um identificador único para reconhecimento do Plano de Teste. Pode ser inclusive um código

Leia mais

UML - Unified Modeling Language

UML - Unified Modeling Language UML - Unified Modeling Language Casos de Uso Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 24 de abril

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

UTILIZAÇÃO DE RECURSOS LÚDICOS NO PROCESSO ENSINO- APRENDIZAGEM DA MATEMÁTICA. Palavras-chave: Recursos lúdicos; ensino-aprendizagem; matemática.

UTILIZAÇÃO DE RECURSOS LÚDICOS NO PROCESSO ENSINO- APRENDIZAGEM DA MATEMÁTICA. Palavras-chave: Recursos lúdicos; ensino-aprendizagem; matemática. UTILIZAÇÃO DE RECURSOS LÚDICOS NO PROCESSO ENSINO- APRENDIZAGEM DA MATEMÁTICA Wallace Camargo Ferreira 1 IFRN, Campus Natal-Central wcf.ifrn@hotmail.com Resumo: A presente exposição tem como objetivo estimular

Leia mais

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Pós-Graduação em Gerenciamento de Projetos práticas do PMI Pós-Graduação em Gerenciamento de Projetos práticas do PMI Planejamento do Gerenciamento das Comunicações (10) e das Partes Interessadas (13) PLANEJAMENTO 2 PLANEJAMENTO Sem 1 Sem 2 Sem 3 Sem 4 Sem 5 ABRIL

Leia mais

EVIL ANGEL CHIBI - SCAPE OF DEATH

EVIL ANGEL CHIBI - SCAPE OF DEATH EVIL ANGEL CHIBI - SCAPE OF DEATH RAMARI, L.; FERNANDES, F.N. RESUMO O artigo apresenta o funcionamento de jogos na plataforma 2D, descrevendo os principais tipos de jogos e mostrando os passos básicos

Leia mais

Uso do Netkit no Ensino de Roteamento Estático

Uso do Netkit no Ensino de Roteamento Estático Uso do Netkit no Ensino de Roteamento Estático Nyl Marcos Soares Barbosa, Moisés Lima dos Anjos, Madianita Bogo Curso de Sistemas de Informação Centro universitário Luterano de Palmas (CEULP/ULBRA) Teotônio

Leia mais

REFLEXÕES SOBRE A PRÁTICA DE ENSINO EM UM CURSO DE FORMAÇÃO DE PROFESSORES DE MATEMÁTICA A DISTÂNCIA

REFLEXÕES SOBRE A PRÁTICA DE ENSINO EM UM CURSO DE FORMAÇÃO DE PROFESSORES DE MATEMÁTICA A DISTÂNCIA REFLEXÕES SOBRE A PRÁTICA DE ENSINO EM UM CURSO DE FORMAÇÃO DE PROFESSORES DE MATEMÁTICA A DISTÂNCIA Telma Aparecida de Souza Gracias Faculdade de Tecnologia Universidade Estadual de Campinas/UNICAMP telmag@ft.unicamp.br

Leia mais

Introdução a Computação

Introdução a Computação Introdução a Computação Aula 03 Profissões de TI Prof. MSc. Edilberto Silva edilms@yahoo.com http:// Papéis... Um papel é uma definição abstrata de um conjunto de atividades executadas e dos respectivos

Leia mais

Jogos Eletrônicos: mapeando novas perspectivas

Jogos Eletrônicos: mapeando novas perspectivas Organizadores: Anita Maria da Rocha Fernandes Esteban Walter Gonzalez Clua Lynn Alves Rudimar Luis Scaranto Dazzi Jogos Eletrônicos: mapeando novas perspectivas Visual Books Sumário Apresentação...13 1

Leia mais

1 Introdução. Sistemas de Autoria

1 Introdução. Sistemas de Autoria 1 Introdução Sistemas de Autoria O momento atual impulsiona a computação a lançar um novo olhar sobre a Educação, focados para as possibilidades da construção de um mundo de inovações onde as tecnologias

Leia mais

REALIDADE AUMENTADA APLICADA NA EDUCAÇÃO: ESTUDOS DOS SEUS BENEFÍCIOS

REALIDADE AUMENTADA APLICADA NA EDUCAÇÃO: ESTUDOS DOS SEUS BENEFÍCIOS REALIDADE AUMENTADA APLICADA NA EDUCAÇÃO: ESTUDOS DOS SEUS BENEFÍCIOS Kelly Cristina de Oliveira 1, Júlio César Pereira 1. 1 Universidade Paranaense (UNIPAR) Paranavaí PR Brasil kristhinasi@gmail.com,

Leia mais

INTELIGÊNCIA ARTIFICIAL E SUA APLICABILIDADE NOS JOGOS

INTELIGÊNCIA ARTIFICIAL E SUA APLICABILIDADE NOS JOGOS INTELIGÊNCIA ARTIFICIAL E SUA APLICABILIDADE NOS JOGOS Aline Ferraz da Silva 1 Carine Bueira Loureiro 2 Resumo: Este artigo trata do projeto de Trabalho

Leia mais

Cinco restrições de desenvolvimento/teste que afetam a velocidade, o custo e a qualidade dos seus aplicativos

Cinco restrições de desenvolvimento/teste que afetam a velocidade, o custo e a qualidade dos seus aplicativos Série de ebooks sobre desenvolvimento em paralelo ágil: Capítulo 2 Cinco restrições de desenvolvimento/teste que afetam a velocidade, o custo e a qualidade dos seus aplicativos Novas pressões, mais restrições

Leia mais

Segundo Pré-teste. Data de realização. 18 de Novembro de 2007. Local.

Segundo Pré-teste. Data de realização. 18 de Novembro de 2007. Local. Segundo Pré-teste Data de realização. 18 de Novembro de 2007. Local. Duas salas de aula da Pós-graduação do Departamento de Arquitetura e Urbanismo da EESC/USP. Duração: 4 horas. Dos objetivos. Envolveu

Leia mais

Processos Técnicos - Aulas 4 e 5

Processos Técnicos - Aulas 4 e 5 Processos Técnicos - Aulas 4 e 5 Trabalho / PEM Tema: Frameworks Públicos Grupo: equipe do TCC Entrega: versão digital, 1ª semana de Abril (de 31/03 a 04/04), no e-mail do professor (rodrigues.yuri@yahoo.com.br)

Leia mais

CLUBE DE PROGRAMAÇÃO NAS ESCOLAS: NOVAS ERSPECTIVAS PARA O ENSINO DA COMPUTAÇÃO. IF Farroupilha Campus Santo Augusto; e-mail: joaowinck@hotmail.

CLUBE DE PROGRAMAÇÃO NAS ESCOLAS: NOVAS ERSPECTIVAS PARA O ENSINO DA COMPUTAÇÃO. IF Farroupilha Campus Santo Augusto; e-mail: joaowinck@hotmail. CLUBE DE PROGRAMAÇÃO NAS ESCOLAS: NOVAS ERSPECTIVAS PARA O ENSINO DA COMPUTAÇÃO WINCK, João Aloísio 1 RISKE, Marcelo Augusto 2 AVOZANI, Mariel 3 CAMBRAIA, Adão Caron 4 FINK, Marcia 5 1 IF Farroupilha Campus

Leia mais

Tutorial Moodle Visão do Aluno

Tutorial Moodle Visão do Aluno Tutorial Moodle Visão do Aluno A P R E S E N T A Ç Ã O A sigla MOODLE significa (Modular Object Oriented Dynamic Learning Environment), em inglês MOODLE é um verbo que descreve a ação ao realizar com gosto

Leia mais

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1. ARCO - Associação Recreativa dos Correios Sistema para Gerenciamento de Associações Recreativas Versão Histórico da Revisão Data Versão Descrição Autor Página

Leia mais

Soluções Autodesk Transferência de Tecnologias. Parcerias tecnológicas, treinamentos e licenciamentos

Soluções Autodesk Transferência de Tecnologias. Parcerias tecnológicas, treinamentos e licenciamentos Soluções Autodesk Transferência de Tecnologias Parcerias tecnológicas, treinamentos e licenciamentos Soluções Autodesk na ENG AutoCAD 2010 - o software AutoCAD para arquitetos. Criação, coordenação e colaboração

Leia mais

Utilizando a ferramenta de criação de aulas

Utilizando a ferramenta de criação de aulas http://portaldoprofessor.mec.gov.br/ 04 Roteiro Utilizando a ferramenta de criação de aulas Ministério da Educação Utilizando a ferramenta de criação de aulas Para criar uma sugestão de aula é necessário

Leia mais

Arquitetura de Informação

Arquitetura de Informação Arquitetura de Informação Ferramentas para Web Design Prof. Ricardo Ferramentas para Web Design 1 Arquitetura de Informação? Ferramentas para Web Design 2 Arquitetura de Informação (AI): É a arte de expressar

Leia mais

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS O termo metodologia não possui uma definição amplamente aceita, sendo entendido na maioria das vezes como um conjunto de passos e procedimentos que

Leia mais

Engenharia de Requisitos

Engenharia de Requisitos Engenharia de Requisitos Introdução a Engenharia de Requisitos Professor: Ricardo Argenton Ramos Aula 08 Slide 1 Objetivos Introduzir a noção de requisitos do sistema e o processo da engenharia de requisitos.

Leia mais

ENGENHARIA DE SOFTWARE

ENGENHARIA DE SOFTWARE ENGENHARIA DE SOFTWARE Síntese de tópicos importantes PRESSMAN, Roger S. Conteúdo Componentes e tipos de software Problemas com o software e suas causas Mitologia que envolve o software Configuração de

Leia mais

Prof. José Maurício S. Pinheiro UniFOA 2009-2

Prof. José Maurício S. Pinheiro UniFOA 2009-2 Tecnologias WEB Virtualização de Sistemas Prof. José Maurício S. Pinheiro UniFOA 2009-2 Conceitos Virtualização pode ser definida como técnica que combina ou divide recursos computacionais para prover

Leia mais

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO AGOSTO DE 2013 SUMÁRIO STI/UFF - Sistema de Gerenciamento de Projetos do PDI SUMÁRIO... 2 1 Introdução... 3 1.1 O que é e qual a finalidade

Leia mais

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi 5 Conclusão Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi permitir que scripts Lua instanciem e usem

Leia mais

Aspectos técnicos do desenvolvimento baseado em componentes

Aspectos técnicos do desenvolvimento baseado em componentes Aspectos técnicos do desenvolvimento baseado em componentes Um novo processo de desenvolvimento O uso de componentes traz mudanças no processo de desenvolvimento Além de desenvolver um produto, queremos

Leia mais

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Definição Geral: Disciplina de Compiladores Prof. Jorge Bidarra (UNIOESTE) A especificação de requisitos tem como objetivo

Leia mais

INFLUÊNCIA DOS JOGOS NO CAMPO DA INTELIGÊNCIA ARTIFICIAL

INFLUÊNCIA DOS JOGOS NO CAMPO DA INTELIGÊNCIA ARTIFICIAL INFLUÊNCIA DOS JOGOS NO CAMPO DA INTELIGÊNCIA ARTIFICIAL Marcelo de Souza 1 bsi.marcelo@gmail.com Prof. Adilson Vahldick, Inteligência Artificial RESUMO: O desenvolvimento de jogos é um campo que atrai

Leia mais

CURSOS OFERECIDOS. seus objetivos e metas. E também seus elementos fundamentais de Administração, como: PLANEJAMENTO, ORGANIZAÇÃO E CONTROLE.

CURSOS OFERECIDOS. seus objetivos e metas. E também seus elementos fundamentais de Administração, como: PLANEJAMENTO, ORGANIZAÇÃO E CONTROLE. CURSOS OFERECIDOS Access 2007 Aproximadamente 20 horas O aluno aprenderá criar Banco de Dados de forma inteligente, trabalhar com estoques, número de funcionários, clientes etc. Conhecerá ferramentas aprimoradas

Leia mais

Organização e Arquitetura de Computadores I. de Computadores

Organização e Arquitetura de Computadores I. de Computadores Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização Básica B de Computadores

Leia mais

A PÁGINA DISCIPLINAR DE MATEMÁTICA DO PORTAL DIA A DIA EDUCAÇÃO

A PÁGINA DISCIPLINAR DE MATEMÁTICA DO PORTAL DIA A DIA EDUCAÇÃO A PÁGINA DISCIPLINAR DE MATEMÁTICA DO PORTAL DIA A DIA EDUCAÇÃO Resumo: Dolores Follador Secretaria de Estado da Educação do Paraná e Faculdades Integradas do Brasil - Unibrasil doloresfollador@gmail.com

Leia mais

Professor: Ronilson Morais Lobo. Salvador / 2015

Professor: Ronilson Morais Lobo. Salvador / 2015 Professor: Ronilson Morais Lobo Salvador / 2015 Introdução Motivação: Criar uma metodologia, Protótipar cenários reais, Proporcionar jogos divertidos, intuitivos e colaborativos. Tecnologia, Conceitos

Leia mais

Planejando o aplicativo

Planejando o aplicativo Um aplicativo do Visual FoxPro geralmente inclui um ou mais bancos de dados, um programa principal que configura o ambiente de sistema do aplicativo, além de uma interface com os usuários composta por

Leia mais

Cartilha para utilização do software GRAPHMATICA no ensino de Funções Polinomiais do 1º grau no 9º ano do Ensino Fundamental.

Cartilha para utilização do software GRAPHMATICA no ensino de Funções Polinomiais do 1º grau no 9º ano do Ensino Fundamental. Cartilha para utilização do software GRAPHMATICA no ensino de Funções Polinomiais do 1º grau no 9º ano do Ensino Fundamental. Autores: Alessandro Marques Calil Carlos Vitor de Alencar Carvalho Janaína

Leia mais

Virtual Welding. Treinamento do futuro

Virtual Welding. Treinamento do futuro Virtual Welding Treinamento do futuro Aprendizagem real via simulador 100% seguro Economia de recursos O pacote de sucesso GERAL O treinamento em soldagem tem agora um novo nome: Fronius Virtual Welding

Leia mais

MUDANÇAS NA ISO 9001: A VERSÃO 2015

MUDANÇAS NA ISO 9001: A VERSÃO 2015 MUDANÇAS NA ISO 9001: A VERSÃO 2015 Está em andamento o processo de revisão da Norma ISO 9001: 2015, que ao ser concluído resultará na mudança mais significativa já efetuada. A chamada família ISO 9000

Leia mais

As principais características da abordagem de um banco de dados versus a abordagem de processamento de arquivos são as seguintes:

As principais características da abordagem de um banco de dados versus a abordagem de processamento de arquivos são as seguintes: SGBD Características do Emprego de Bancos de Dados As principais características da abordagem de um banco de dados versus a abordagem de processamento de arquivos são as seguintes: Natureza autodescritiva

Leia mais

Sistemas Integrados de Gestão Empresarial

Sistemas Integrados de Gestão Empresarial Universidade Federal do Vale do São Francisco Curso de Administração Tecnologia e Sistemas de Informação - 05 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti

Leia mais

Governança de TI. ITIL v.2&3. parte 1

Governança de TI. ITIL v.2&3. parte 1 Governança de TI ITIL v.2&3 parte 1 Prof. Luís Fernando Garcia LUIS@GARCIA.PRO.BR ITIL 1 1 ITIL Gerenciamento de Serviços 2 2 Gerenciamento de Serviços Gerenciamento de Serviços 3 3 Gerenciamento de Serviços

Leia mais

Aprenda as melhores práticas para construir um completo sistema de teste automatizado

Aprenda as melhores práticas para construir um completo sistema de teste automatizado Aprenda as melhores práticas para construir um completo sistema de teste automatizado Renan Azevedo Engenheiro de Produto de Teste e Medição -Américas Aprenda as melhores práticas para construir um completo

Leia mais

UNIVERSIDADE ESTADUAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA DEPARTAMENTO DE QUÍMICA CURSO DE LICENCIATURA EM QUÍMICA LINDOMÁRIO LIMA ROCHA

UNIVERSIDADE ESTADUAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA DEPARTAMENTO DE QUÍMICA CURSO DE LICENCIATURA EM QUÍMICA LINDOMÁRIO LIMA ROCHA UNIVERSIDADE ESTADUAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA DEPARTAMENTO DE QUÍMICA CURSO DE LICENCIATURA EM QUÍMICA LINDOMÁRIO LIMA ROCHA FACILITADOR VIRTUAL DA APRENDIZAGEM EM QUÍMICA Campina Grande-

Leia mais

7.Conclusão e Trabalhos Futuros

7.Conclusão e Trabalhos Futuros 7.Conclusão e Trabalhos Futuros 158 7.Conclusão e Trabalhos Futuros 7.1 Conclusões Finais Neste trabalho, foram apresentados novos métodos para aceleração, otimização e gerenciamento do processo de renderização

Leia mais

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 UML 2 Guia Prático Gilleanes T.A. Guedes Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 Novatec capítulo 1 Introdução à UML A UML (Unified Modeling Language ou Linguagem de Modelagem

Leia mais

Implantação. Prof. Eduardo H. S. Oliveira

Implantação. Prof. Eduardo H. S. Oliveira Visão Geral A implantação de um sistema integrado de gestão envolve uma grande quantidade de tarefas que são realizadas em períodos que variam de alguns meses a alguns anos, e dependem de diversos fatores,

Leia mais

Processos de Desenvolvimento de Software

Processos de Desenvolvimento de Software Processos de Desenvolvimento de Software Gerenciamento de Projetos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e

Leia mais

IMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET

IMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET 1 IMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET Daniel da Silva Carla E. de Castro Franco Diogo Florenzano Avelino daniel.silva1@ext.mpsa.com

Leia mais

ATIVIDADES PRÁTICAS SUPERVISIONADAS

ATIVIDADES PRÁTICAS SUPERVISIONADAS ATIVIDADES PRÁTICAS SUPERVISIONADAS 6ª Série Teoria da Computação Ciência da Computação A atividade prática supervisionada (ATPS) é um método de ensinoaprendizagem desenvolvido por meio de um conjunto

Leia mais

Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software

Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Curso Técnico em Informática ENGENHARIA DE SOFTWARE Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Clayton Maciel Costa

Leia mais

Módulo 15 Resumo. Módulo I Cultura da Informação

Módulo 15 Resumo. Módulo I Cultura da Informação Módulo 15 Resumo Neste módulo vamos dar uma explanação geral sobre os pontos que foram trabalhados ao longo desta disciplina. Os pontos abordados nesta disciplina foram: Fundamentos teóricos de sistemas

Leia mais

Novas Tecnologias no Ensino de Física: discutindo o processo de elaboração de um blog para divulgação científica

Novas Tecnologias no Ensino de Física: discutindo o processo de elaboração de um blog para divulgação científica Novas Tecnologias no Ensino de Física: discutindo o processo de elaboração de um blog para divulgação científica Pedro Henrique SOUZA¹, Gabriel Henrique Geraldo Chaves MORAIS¹, Jessiara Garcia PEREIRA².

Leia mais

ESTUDO DE CASO WINDOWS VISTA

ESTUDO DE CASO WINDOWS VISTA ESTUDO DE CASO WINDOWS VISTA História Os sistemas operacionais da Microsoft para PCs desktop e portáteis e para servidores podem ser divididos em 3 famílias: MS-DOS Windows baseado em MS-DOS Windows baseado

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

GARANTIA DA QUALIDADE DE SOFTWARE GARANTIA DA QUALIDADE DE SOFTWARE Fonte: http://www.testexpert.com.br/?q=node/669 1 GARANTIA DA QUALIDADE DE SOFTWARE Segundo a NBR ISO 9000:2005, qualidade é o grau no qual um conjunto de características

Leia mais

IMPLANTAÇÃO DE UM SISTEMA DE AVALIAÇÃO DE DESEMPENHO NA UFG

IMPLANTAÇÃO DE UM SISTEMA DE AVALIAÇÃO DE DESEMPENHO NA UFG IMPLANTAÇÃO DE UM SISTEMA DE AVALIAÇÃO DE DESEMPENHO NA UFG Rosângela da Silva Nunes 1 Centros de Recursos Computacionais - CERCOMP Universidade Federal de Goiás UFG Campus II, UFG, 74000-000, Goiânia

Leia mais

Prof. Esp. Lucas Cruz

Prof. Esp. Lucas Cruz Prof. Esp. Lucas Cruz O hardware é qualquer tipo de equipamento eletrônico utilizado para processar dados e informações e tem como função principal receber dados de entrada, processar dados de um usuário

Leia mais

edirectory ios / Android Plataforma

edirectory ios / Android Plataforma edirectory ios / Android Plataforma Criando lindos aplicativos com edirectory Uma revolução no espaço de diretórios mobile, bem vindo ao novo aplicativo do edirectory. Mobile Completamente reestruturado

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação.

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação. ANEXO 11 O MATRIZ Para o desenvolvimento de sites, objeto deste edital, a empresa contratada obrigatoriamente utilizará o framework MATRIZ desenvolvido pela PROCERGS e disponibilizado no início do trabalho.

Leia mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto

Leia mais