A renderização na maioria dos jogos ocorre dentro de um loop (o loop do jogo) e em cada iteração do loop do jogo, a totalidade backbuffer é limpo (neste caso, sua tela) e redesenhado do zero.
O termo renderização suja refere-se a uma técnica em que, em vez de limpar toda a tela a cada quadro, você a limpa somente sob demanda (ou seja, apenas quando algo mudou na cena) e possivelmente apenas uma parte dela (ou seja, apenas a parte em que algo mudou )
Esse processo de marcar apenas uma parte da sua tela para ser redesenhada é o que se refere a sujo (ou seja, essa parte da tela está suja e precisa ser redesenhada, mas todo o resto ainda está limpo e não deve ser tocado ).
Não faço ideia se existe alguma maneira especial de implementar isso no HTML5, mas encontrei esse recurso que pode lhe dar algumas idéias.