Olá, gostaria de saber como criar um cenário de um jogo android, sem a ajuda de um Framework.
Eu ate coloco uma imagem no fundo e os objetos ficam por cima, Mas quando isso é feito tudo fica muito mais lento no protótipo, como se ta parando e voltando a se movimentar a cada interação, coisa que não acontece quando eu deixo apenas uma cor no fundo do canvas assim: canvas.drawColor(Color.BLACK);
E queria fazer sem a ajuda de um Framework, primeiro.
Estou usando o seguinte código pra desenhar a imagem no fundo como background:
canvas.drawBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.cenario), 0, 0, null);
Desde já agradeço.
Meio difícil dizer qual ou quais os seus problemas, mas uma coisa que não recomendo fazer é carregar um resource toda vez que ele for desenhado, como você parece estar fazendo. Armazene o resource num atributo da classe quando a Activity for criada, e use esse atributo para desenhar a imagem. Algo assim:
class ClasseQualquer extends Activity{
private Bitmap imagem;
void onActivityStart(){
// outros códigos
imagem = BitmapFactory.decodeResource(getResources(), R.drawable.cenario);
}
void desenharNaTela(){ // método que desenha na tela
canvas.drawBitmap(imagem, 0, 0, null);
}
}
Obs: o código é de exemplo, ajuste-o para a sintaxe do android e conforme necessário.
Veja neste link um pequeno exemplo de jogo com canvas, que pode te dar algumas ideias.
Abraço.
1 curtida
po vei… OBRIGADO demais TerraSkilll… era isso mesmo. Como deu pra perceber, sou leigo, ainda;
Pra você é simples mas pra mim não tava sendo não.
Agora vendo que deu certo acho que ele tava ficando lento e parando e voltando porque a cada interação era feita uma nova requisição e ai era passado todo o caminho da imagem pra poder renderizar, e agora o Bitmap ta instanciado já com o Path da imagem… acho que era isso… de qualquer forma deu certo e eu agradeço demais.
Abraço