Computação
Gráfica
Trabalho I - 2010/I
Profa.
Isabel Harb Manssour e Prof.
Márcio Sarroglia
Pinho
(esta
página está tentando seguir as novas
regras
ortográficas da língua portuguesa)
Objetivo
Construir um jogo 2D em
que um
personagem representando um pinguim é
controlado pelo usuário. O objetivo do pinguim no
jogo
é capturar a maior quantidade possível de peixes
e
alimentar seu filhote, sem deixar que seu predador, o
pássaro
Petrel-Gigante o atinja. Este pássaro realiza voos na
horizontal
em alturas aleatórias e a cada um destes voos executa
um
mergulho, tentando capturar o Pinguim.
Este trabalho pode ser realizado individualmente ou em duplas.
Modelos dos Personagens
do
Jogo
Os personagens do jogo
devem ser
modelados com o editor
de modelos Vis2D, criado pelo aluno Jefferson Allan Stédille.
Figura 1 - Tela do Editor de modelos Vis2D
Este editor cria, para cada modelo um
arquivo que contém os vértices e as arestas do
objeto,
conforme o exemplo abaixo.
OBJETO peixe
VERTICES
10
-79 -24
-79 24
-22 -18
7 -34
46 -34
87 -6
87 6
49 40
10 40
-21 19
ARESTAS 10
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
10 1
O jogo, ao iniciar, deve ler os arquivos dos personagens e armazenar em
memória dos dados dos vértices e das arestas.
A leitura destes arquivos pode ser feita com uma classe semelhante a
que está nesta página.
Movimento do Pinguim
O
pinguim é controlado pelo usuário
através das
teclas de seta e pode andar para esquerda ou
para direita,
enquanto está em terra. Na água ele pode ainda
andar para
cima ou para baixo.
Enquanto está em terra o pinguim deve andar de
pé, com a
parte frontal do corpo virada para o lado do movimento. Ao entrar na
água deve ficar na horizontal, com o bico para baixo e a
cabeça virada para o lado do movimento.
Voo do Petrel-Gigante
O Petrel-Gigante voa
de um lado para
outro da tela, acima do pinguim. A cada vez que atravessa a tela ele
deve, em algum ponto aleatório, realizar uma descida. A
trajetória desta descida deve ser realizada
através de
uma curva paramétrica (Bèzier, Spline ou
Hermite). O
ponto inicial desta curva deve ser o ponto onde está no
pássaro no momento inicial do mergulho e o ponto final, um
ponto
em um outra posição mais à frente, em
uma altura
sorteada aleatoriamente. Ao chegar ao final da trajetória o
pássaro deve continuar a executar seu voo horizontal, para o
mesmo lado e que estava voando antes do mergulho, até chegar
em
um dos limites da tela, quando irá retornar na mesma altura.
O
Petrel só consegue atingir o pinguim quando este
está em
terra.
O Filhote do Pinguim
Este filhote fica
à esquerda da
tela aguardando que o pinquim adulto traga comida a ele. A comida
é um peixe capturado pelo pinguim adulto no lago que fica
à direita da tela. O alimento dá energia ao
filhote para
que este viva por 1 minuto. Passado este tempo ele morre e o jogo
termina. Para alimentar o filhote o pinguim precisa apenas se aproximar
dele, carregando um peixe. Com este movimento, o peixe desaparece da
boca do pinquim.
Captura e Carregamento de
um Peixe
Para capturar um peixe o
pinguim deve
colidir com ele.
Para representar que o pinquim já capturou um
peixe, este
deve ser desenhado preso ao bico do pinguim.
Depois de ter um peixe preso
a seu bico, o pinguim não
consegue capturar novos peixes, até que o entregue ao
filhote.
Movimento dos Peixes
Os
peixes, em
número de 4, movimentam-se da esquerda para direita
e
vice-versa, em alturas variadas.
Ao ser capturado o
peixe desaparece da água e um novo peixe aparece na
água
em uma altura aleatória.
Controle do Tempo do Jogo
O jogo deve durar no máximo 5
minutos. Se neste tempo o filhote permanecer vivo, o jogador ganha o
jogo.
Figura 2 - Sugestão de de Interface
Data da Entrega
Todos os
trabalhos
deverão
ser entregues atrávés
do Moodle
até às 17h35 do dia 03/05/2010.
A
partir deste
horário,
os
trabalhos terão
um desconto conforme a seguinte tabela:
Até 03/05/2010 às
19h10 - 1.0 pontos
Até 04/05/2010 às
19h10 - 2.0 pontos
Até 05/05/2010
às
19h10 - 4.0 pontos
A partir de 05/2010
às
19h10 - NÃO
É MAIS ACEITA A ENTREGA.