2012-06-14 5 views
0

가능한 한 빨리 화면 (x, y) 위치를 업데이트해야하는 CCSprite 객체가 있습니다. 증강 현실 앱이므로 스크린 위 치를 실제 위치에 고정해야합니다. 각 update 난 후, 새로운 x 및 y 위치각 업데이트에서 CCSprite에 애니메이션 적용

을 결정하여 그에 따라 스프라이트 이동 단말기의 호 및 자세를 검사 중

현재는

[spriteObject setPosition:ccp(newX, newY)]; 

호 각 도의 변경은 화면에 10 개 픽셀에 해당 position으로 설정하면 스프라이트는이 방법으로 위치를 설정함으로써 바보처럼 보이는 10 픽셀 간격으로 점프합니다. 나는 어쩌면

[spriteObject runAction:[CCMoveTo actionWithDuration:0.2f position:ccp(newX, newY)]]; 

를 사용하지만 여기에 문제가 새로운 위치 업데이트가 스프라이트가 애니메이션되는 동안오고 그 종류의 나사 모든 일의 최대이다가 원활하게 그것을 애니메이션 싶습니다. 누구든지이 문제에 대한 좋은 해결책을 알고 있습니까? 나는 여러 가지 실패한 해결책을이 시점에서 시도해 봤기 때문에 어떤 도움을 주셔서 감사합니다.

답변

0

스프라이트의 움직임을 포인트로 애니메이트하려고 할 수 있습니다. 즉, 1 초 동안 1/numberOfUpdates의 지속 시간으로 1 초 동안 애니메이션 위치 보정을 여러 번 실행할 수 있습니다.

- (void) onEnter 
{ 
    [super onEnter]; 
    [self schedule:@selector(updatePositionAnimated) interval:0.2f]; 

} 

- (void) updatePositionAnimated 
{ 
    [spriteObject runAction:[CCMoveTo actionWithDuration:0.2f position:ccp(newX, newY)]]; 
} 

같은 뭔가 나는 가정,이 경우 부드러운 충분한 애니메이션이있을 것이다

관련 문제