회전하는 동안 변경되는 한 점에서 객체를 회전하려고합니다.AndEngine setRotationCenter가 회전 된 객체를 이동합니다.
setRotationCenter (float, float)를 호출하면 객체의 이미지가 임의의 지점으로 이동합니다. 이것은 회전 된 객체에서만 발생합니다. 즉, rotation = 0 인 객체에서 setRotationCenter를 호출하면 모든 것이 잘 작동합니다.
내 클래스는 Sprite를 확장합니다. setRotationCenter를 재정의하지 않습니다. AndEngine 버전이 오랫동안 업데이트되지 않았습니다.
나는 내가하고있는 일과 내가 가지고있는 것의 기록을 게시한다. 모두는 그들을보고 확인해야하지만, 실제로 (주의 즉 회전 중심의 증가이다) 이는 예상되는 동작
log item touch event previous rotation 30.0
log item touch event previous rotation center 150.0: 150.0
log item touch event previous position 100.0: 150.0
log item touch event CALL TO setRotationCenter(151.0,151.0);
log item touch event current rotation 30.0
log item touch event current rotation center 151.0: 151.0
log item touch event current position 100.0: 150.0
log item touch event previous rotation 30.0
log item touch event previous rotation center 151.0: 151.0
log item touch event previous position 100.0: 150.0
log item touch event CALL TO setRotationCenter(152.0,152.0);
log item touch event current rotation 30.0
log item touch event current rotation center 152.0: 152.0
log item touch event current position 100.0: 150.0
답변과 GLES2-AnchorCenter에 대한 의견을 보내 주셔서 감사합니다. RotationCenter를 사용하지 않고 이제는 0으로두고 모든 회전 수를 수동으로 계산합니다. 충돌을 계산하고 터치 이벤트를 화면 좌표로 쉽게 변환 할 수 있습니다. –