모든 원수가 단일 캔버스 (ctxEnemy
)로 그려지는 게임을 만들려고 노력하고 있습니다. 그러나 사용하기에 어려움을 겪고 있습니다. 회전 캔버스 기능은 동시에 모든 것을 회전시킵니다.drawImage와 함께 캔버스를 다른 플레이어에 그리는 작업이 없습니다.
내 생각은 이것을 실제로 보조 캔버스에 그려서 그 캔버스를 회전시킨 다음 메인 캔버스로 그립니다. drawImage()
이 모든 것을 망가뜨리지 않았다면 괜찮을 것입니다 ...
코드의 첫 번째 줄에는 테스트 용으로 ctxEnemy.drawImage(ctxAux,0,0)
을 사용할 수 있었지만 모든 드로잉 기능 내에 배치 할 때마다 작동이 멈 춥니 다. .
질문 : 누군가 drawImage()
이 작동하지 않는 이유를 설명 할 수 있습니까? 아니면 제 문제에 대한 더 간단한 해결책을 제공 할 수 있습니까?
Enemy.prototype.draw = function(){
ctxAux.clearRect(0,0,gameWidth,gameHeight);
ctxAux.drawImage(imgSprite,this.srcX,this.srcY,this.width,this.height,this.drawX,this.drawY,this.width,this.height);
//ctxAux.rotate(some angle);
ctxEnemy.drawImage(ctxAux,0,0);
}
문제를 확인하려면 더 많은 코드가 필요합니다. 적 (매우 긴 경우 관련 부분)의 클래스와 보조 캔버스의 설정 방법을 게시하십시오. 바이올린도 놀라운 일을 할 수 있습니다. – K3N