2011-09-15 8 views
0

나는 게임을 개발하고있다. 분명히 움직이는 물체가있다. 내 동료 따라서 움직일 같은 문제가 장애물 : 나는 예를 들어 장애를 이동할 때 또한Cocos 2D, 왜 물체를 움직일 때 왜 지요?

-(void)manageFlight 
{ 

    [plane runAction:[CCMoveTo actionWithDuration:0.05 position:ccp(plane.position.x, plane.position.y-2)]]; 
    //self.bgLayer.position=CGPointMake(self.bgLayer.position.x-1, self.bgLayer.position.y); 
    //self.bgTrees.position=CGPointMake(self.bgTrees.position.x-5, self.bgTrees.position.y); 

} 

내가 타일을 배경으로 이동 .. 그들이 잘 일어날 : 따라서

-(void)moveThings:(ccTime)dt 
{ 
    CGSize size = [[CCDirector sharedDirector] winSize]; 
    for(CCSprite * sprite in visibleObstacle) 
    { 
     if(sprite.position.x<=size.width) 
     { 
      sprite.position=ccp(sprite.position.x-2, sprite.position.y); 
     } 
     else 
     { 
      [self removeChild:sprite cleanup:YES]; 
      [visibleObstacle removeObject:sprite]; 
     } 
    } 


} 

나는 비행기 이동 스프라이트가 작은 경우에도 지연이 발생합니다. 어떤 충고? 아이폰에 대한 다른 신뢰할 수있는 프레임 워크가 있습니까? 덕분에

+0

프레임 율은 어느 정도까지 떨어 집니까? 많은 개체가 생성되고 있습니까? –

+0

오래 전에 문제가 해결되었습니다.) –

답변

1

마치 스프라이트를 제거하면 지연이 발생하는 것처럼 보입니다. 원하는대로 위치를 변경하거나 숨기 만하면됩니다. 다음과 같이 :

if(sprite.position.x<=size.width) 
    { 
     sprite.position=ccp(sprite.position.x-2, sprite.position.y); 
    } 
    else 
    { 
     [sprite setPosition:ccp(-sprite.contentSize.width, sprite.position.y]; 
    } 
+0

몇 달 전에이 질문을했습니다. 문제는 모든 스프라이트를 아틀라스에 넣는 것이 었습니다. 그러나 나는 더 이상 게임 개발을 잠시 동안 차지하지 않습니다. –

관련 문제