Я создаю игру, используя HTML5 и JavaScript, и она будет использовать тонну изображений. Наличие всех этих изображений одновременно занимает много памяти, и мне было интересно, как я мог бы загружать / выгружать разные изображения, чтобы тот, кто играет в игру, не нуждался в 8 ГБ памяти или только для изображений.
<img src = "source1" id = "img1"></img>
<img src = "source2" id = "img2"></img>
<img src = "source3" id = "img3"></img>
<!--Just imagine this for every image, which is likely going to peak over 10,000 at some point-->
<img src = "source10000" id = "img10000"></img>
<canvas width = "1350" height = "600" id = "canva"></canvas>
<script>
var canvas = document.getElementById("canva");
var can = canvas.getContext("2d");
var imge = function(im, x, y, w, h) {
can.drawImage(document.getElementById(im), x, y, w, h);
};
var playerX = 0;
var playerY = 0;
var run = function() {
imge("img1", playerX, playerY, 32, 32);
//Need to use tones of images
requestAnimationFrame(run);
};
run();
</script>
Мне не нужно использовать 10000 изображений одновременно, более того, нужно иметь 60 одновременно (анимации игроков, блоки, анимации врагов, частицы и т. Д.), И, так как я на ранней стадии разработки, я открыт для того, чтобы переделывать вещи, например, как я получаю изображения.
Вопрос: Как загрузить / выгрузить изображения в HTML5 / JavaScrpit