Meu jogo simples de tela parece funcionar bem no Chrome e FF no Mac / Linux. Ainda não tive chance de testá-lo em smartphones ou ambientes Windows. Ele não usa buffer duplo, mas vi alguns exemplos do JS Canvas usando-o.
Quando é recomendado o uso do buffer duplo? Faz diferença apenas para navegadores específicos? Existe um impacto significativo no desempenho?
Obrigado!
javascript
html5
html-canvas
double-buffering
Petteri Hietavirta
fonte
fonte
Respostas:
O buffer duplo de um jogo baseado em tela certamente será um sucesso no desempenho. Você desenharia uma quantidade extra de pixels igual ao tamanho da tela em cada quadro. Nos jogos baseados em tela, desenhar em uma tela é o maior gargalo na maioria dos casos e você deseja limitar isso o máximo possível, especialmente em dispositivos móveis.
O Chrome tem aceleração de GPU (a partir das versões mais recentes), além de um mecanismo JavaScript rápido (V8) que você não verá em um ambiente móvel. Mesmo no Chrome, você verá uma desaceleração implementando o buffer duplo.
Para encurtar a história, o benefício do buffer duplo (lidar com "lacrimejamento") não vale o impacto no desempenho que você provavelmente terá.
fonte
Não há necessidade de duplicar o buffer de jogos html5. O navegador já lida com isso, atualizando apenas o objeto de tela após a execução do script. http://www.mail-archive.com/[email protected]/msg19969.html
fonte
Notei que usando buffer duplo como este:
realmente diminui a renderização (fps mais baixo), em vez de acelerar
fonte