LAYOUT E SOM
Arthur Emanuel de Oliveira Carosia
Layout
Layout
 Melhorar o aspecto visual dos elementos do
Jumper, substituindo por imagens:
 o circulo do Pássaro
 os retângulos dos Canos
Todas as imagens que usaremos já estão no zip em
https://github.com/felipetorres/jumper-arquivos
Layout do Pássaro
 Inserir a imagem passaro.png da pasta drawable-nodpi.
 Carregá-la e redimensioná-la por código.
Layout do Pássaro
 Ajustar a instância da classe Pássaro, passando o
context.
Layout
 Porem, ao lidar com imagens (bitmaps), a referencia para desenho
e o canto superior esquerdo
 Para desenhar o círculo, antes passávamos o centro.
 Como ela tem RAIO*2 de altura e largura, basta subtrair RAIO de
ambas as coordenadas e teremos o bitmap centralizado:
Layout
Layout de Cano Inferior
 Problema:
 trocar nossos retângulos verdes por imagens
sendo que os canos possuem alturas variadas,
calculadas aleatoriamente
Layout de Cano Inferior
 Problema
 trocar nossos retângulos verdes por imagens
sendo que os canos possuem alturas variadas,
calculadas aleatoriamente
 Solução
 termos apenas uma imagem com apenas pixel
de altura, que será esticado para o mesmo
tamanho dos retângulos iniciais
Layout de Cano Inferior
 Para o cano inferior,
vamos redimensionar
para o tamanho
correto.
 As dimensoes estão
guardadas em:
 LARGURA_DO_CANO
 alturaDoCanoInferior
Layout de Cano Inferior
 Ajustando o método desenhaCanoInferiorNo
Ajustando a classe Canos
Ajustando a classe Canos
Ajustando a classe Canos
Ajustando a classe Canos
Resultado
Layout de Cano Superior
 Para os canos superiores, vamos fazer da
mesma forma, redimensionando-os.
Layout de Cano Superior
 Como esse retângulo esta com seu canto
superior esquerdo em (posicao, 0), teremos de
usar essa mesma coordenada para nosso
bitmap.
Resultado Final do Layout
Som
Som
 Sons para os principais momentos do jogo:
 Pulo do pássaro,
 Colisão;
 Aumento da pontuação.
Som
 Classe MediaPlayer do proprio Android:
 Ideal para programas de música mais complexos
 Classe SoundPool
 Fornece uma forma mais leve para tocar sons de
curta duração
SoundPool
 Construtor
 Tipo de som que será tocado,
 Quantos arquivos simultâneos poderão ser
tocados
 Três sons possíveis
 pulo do pássaro,
 colisão
 aumento de pontuação
Som
 Método load.
 Carrega o som a ser tocado
 Parâmetros:
 context
 arquivo de som (pasta res/raw)
 Retorna um id que deve ser usado sempre
que quisermos tocá-lo.
Som
 Método play
 Toca o som
 Parâmetros
 O id do som;
 O volume esquerdo;
 O volume direito;
 A prioridade do som;
 O loop (1 para loop infinito, 0 para tocar uma única
vez);
 A velocidade do som (lembre-se: 1 e a velocidade
normal).
Som de Pulo
Som de Pulo
 No método pula da classe Pássaro
chamaremos o método toca:
Som de Pulo
 Ajustando a classe Game
Som de Pontuação
 O som de pontuação segue o mesmo padrão.
Som de Pontuação
 Chamar o método toca no local em que o
jogador ganha pontos
Som de Pontuação
 Ajustando a classe Game
Som de Colisão
Som de Colisão
 Mesmo padrão...
Som de Colisão
 Chamarmos o método toca onde quisermos tocar o som
da colisão.
Exercício
 Incrementar o jogo dos mosquitos com os
seguintes elementos:
 Som ao acertar o mosquito;
 Som do mosquito voando.
LAYOUT E SOM
Arthur Emanuel de Oliveira Carosia

Aula 05 - Desenvolvimento de Jogos para Android - Layout e Som

  • 1.
    LAYOUT E SOM ArthurEmanuel de Oliveira Carosia
  • 2.
  • 3.
    Layout  Melhorar oaspecto visual dos elementos do Jumper, substituindo por imagens:  o circulo do Pássaro  os retângulos dos Canos Todas as imagens que usaremos já estão no zip em https://github.com/felipetorres/jumper-arquivos
  • 4.
    Layout do Pássaro Inserir a imagem passaro.png da pasta drawable-nodpi.  Carregá-la e redimensioná-la por código.
  • 5.
    Layout do Pássaro Ajustar a instância da classe Pássaro, passando o context.
  • 6.
    Layout  Porem, aolidar com imagens (bitmaps), a referencia para desenho e o canto superior esquerdo  Para desenhar o círculo, antes passávamos o centro.  Como ela tem RAIO*2 de altura e largura, basta subtrair RAIO de ambas as coordenadas e teremos o bitmap centralizado:
  • 7.
  • 8.
    Layout de CanoInferior  Problema:  trocar nossos retângulos verdes por imagens sendo que os canos possuem alturas variadas, calculadas aleatoriamente
  • 9.
    Layout de CanoInferior  Problema  trocar nossos retângulos verdes por imagens sendo que os canos possuem alturas variadas, calculadas aleatoriamente  Solução  termos apenas uma imagem com apenas pixel de altura, que será esticado para o mesmo tamanho dos retângulos iniciais
  • 10.
    Layout de CanoInferior  Para o cano inferior, vamos redimensionar para o tamanho correto.  As dimensoes estão guardadas em:  LARGURA_DO_CANO  alturaDoCanoInferior
  • 11.
    Layout de CanoInferior  Ajustando o método desenhaCanoInferiorNo
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
    Layout de CanoSuperior  Para os canos superiores, vamos fazer da mesma forma, redimensionando-os.
  • 18.
    Layout de CanoSuperior  Como esse retângulo esta com seu canto superior esquerdo em (posicao, 0), teremos de usar essa mesma coordenada para nosso bitmap.
  • 19.
  • 20.
  • 21.
    Som  Sons paraos principais momentos do jogo:  Pulo do pássaro,  Colisão;  Aumento da pontuação.
  • 22.
    Som  Classe MediaPlayerdo proprio Android:  Ideal para programas de música mais complexos  Classe SoundPool  Fornece uma forma mais leve para tocar sons de curta duração
  • 23.
    SoundPool  Construtor  Tipode som que será tocado,  Quantos arquivos simultâneos poderão ser tocados  Três sons possíveis  pulo do pássaro,  colisão  aumento de pontuação
  • 24.
    Som  Método load. Carrega o som a ser tocado  Parâmetros:  context  arquivo de som (pasta res/raw)  Retorna um id que deve ser usado sempre que quisermos tocá-lo.
  • 25.
    Som  Método play Toca o som  Parâmetros  O id do som;  O volume esquerdo;  O volume direito;  A prioridade do som;  O loop (1 para loop infinito, 0 para tocar uma única vez);  A velocidade do som (lembre-se: 1 e a velocidade normal).
  • 26.
  • 27.
    Som de Pulo No método pula da classe Pássaro chamaremos o método toca:
  • 28.
    Som de Pulo Ajustando a classe Game
  • 29.
    Som de Pontuação O som de pontuação segue o mesmo padrão.
  • 30.
    Som de Pontuação Chamar o método toca no local em que o jogador ganha pontos
  • 31.
    Som de Pontuação Ajustando a classe Game
  • 32.
  • 33.
    Som de Colisão Mesmo padrão...
  • 34.
    Som de Colisão Chamarmos o método toca onde quisermos tocar o som da colisão.
  • 35.
    Exercício  Incrementar ojogo dos mosquitos com os seguintes elementos:  Som ao acertar o mosquito;  Som do mosquito voando.
  • 36.
    LAYOUT E SOM ArthurEmanuel de Oliveira Carosia