Tôi đã một màn hình được vẽ lại mỗi 25ms, và hình ảnh được nhấp nháy, đây là mã của tôivẽ lại canvas html5 mà không nhấp nháy
var FRAME_RATE = 40;
var intervalTime = 1000/FRAME_RATE;
gameLoop();
function gameLoop(){
context.clearRect(0, 0, 640, 640);
renderMap();
window.setTimeout(gameLoop, intervalTime);
}
và đây là renderMap() chức năng
function renderMap(){
var startX = playerX - (screenW/2);
var startY = playerY - (screenH/2);
maxX = playerX + (screenW/2);
maxY = playerY + (screenH/2);
$.getJSON('mapa3.json', function(json){
for (x = startX; x < maxX; x=x+32){
for (y = startY; y < maxY; y=y+32){
intTile = json.layers[0].data[((y/32)* 100) + (x/32)];
context.putImageData(getTile(intTile - 1), x - startX, y - startY);
}
}
});
var imgCharacter = new Image();
imgCharacter.src = 'char.png';
var posX = (screenW - imgCharacter.width)/2;
var posY = (screenH - imgCharacter.height)/2;
imgCharacter.onload = function(){context.drawImage(imgCharacter, posX, posY)}
}
gì thay đổi tôi có cần thực hiện mã để ngừng nhấp nháy không?
những điều sau đây xảy ra: màn hình vẫn nhấp nháy và ký tự biến mất khi clearRect được gọi là ..:/ –
Bạn có thể cập nhật nhận xét đó không? Tôi không thể nhìn thấy những gì xảy ra –
màn hình vẫn nhấp nháy và nhân vật biến mất khi clearRect được gọi là ..:/ –