현재 화면 하단에서 임의의 X 위치에 동전이 들어있는 게임을 만들고 있습니다. 주인공이 동전과 겹치거나 충돌하면 사용자가 점수를 얻습니다.HTML5/자바 스크립트에서 충돌 감지 성능 향상
내 문제는 충돌 감지를 빠른 간격 기능에 넣으면 충돌이 일부 인스턴스에 등록되지 않은 것 같습니다. 나는 아래의 jsfiddle에서 게임을 복제 한
는 (원래는 영웅을 이동 전화의 가속도계를 사용하지만이 예를 들어 나는 빨리 그것을 왼쪽/오른쪽 키 기반 제어했습니다) - http://jsfiddle.net/wpavxn6k/1/
을 아래의 간격의 발췌문 -
//keep checking to see if collision has occured
window.setInterval(function() {
if (hitTest(app.hero, app.coinClassUnique) == true) {
app.coinClassUnique.css('display', 'none');
app.score++;
$("h2").html(app.score);
}
}, 5);
//measure the width/height and position of the coin div and the hero image to determine if they are overlapping
function hitTest(a, b) {
var aPos = a.offset();
var bPos = b.offset();
var aLeft = aPos.left;
var aRight = aPos.left + a.width();
var aTop = aPos.top;
var aBottom = aPos.top + a.height();
var bLeft = bPos.left;
var bRight = bPos.left + b.width();
var bTop = bPos.top;
var bBottom = bPos.top + b.height();
return !(bLeft > aRight || bRight < aLeft || bTop > aBottom || bBottom < aTop);
}
내 질문은 성능에 영향을 미칠 수 내 코드에서 명백한 결함을 볼 수 있는지, 또는 내가 진짜 성능 및 충돌 감지를 개선 할 수있는 방법의 팁이있는 경우 이런 식의 시간 기반 게임.