Вы можете сделать это очень легко, отделив дисплей от поверхности рисования, введя другой холст. Создайте скрытый холст, используя
var canvas = document.createElement('canvas');
Затем нарисуйте всю свою сцену на этом холсте. Затем перетащите содержимое этого холста на другой холст, который фактически виден пользователю, используя метод drawImage
(который также может получить холст вместо изображения). Если вы хотите увеличить масштаб сцены, вы можете уменьшить исходный прямоугольник (параметры sy
, sx
, sw
и sh
на drawImage
) на скрытом холсте при рисовании это на визуальный холст. Это даст вам эффект масштабирования.
Однако, если вы все равно полностью перерисовываете каждый кадр на холсте, вы также можете просто взглянуть на scale
метод объекта canvas.