2013-10-04 2 views
0

나는 SKSpriteNode입니다. 나는 그것이 더 커지고, 더 작아지고 싶다. 그래서 [SKAction scaleTo:]을 사용하여 SKAction 시퀀스를 사용했습니다. 스프라이트의 폭과 높이가 더 크기 때문에 작동하지만 anchorPoint이 기본값 인 (.5, .5)으로 남아 있더라도 스프라이트가 더 커지고 오른쪽으로 이동하는 것처럼 보입니다. 스프라이트가 중심을 기준으로 비례하지 않기 때문입니다. 나는 x, y를 조절하여 스케일링의 효과를 상쇄해야하는 것처럼 어리석은 소리가 들리기 때문에 내가 뭔가 잘못하고 있다고 가정하고 있습니다.SKSpriteNode를 중심으로 스케일링

센터를 기준으로 확장을 수행하려면 어떻게해야합니까?

+0

내 사용에서 센터에서 괜찮아요 - 아프 데모 코드 – DogCoffee

답변

3

이것은 당신이 스프라이트 스케일링하면, 너무 한쪽 여분의 투명 공간을 가지고 있지 않는지 확인

SKSpriteNode *myRec = [SKSpriteNode spriteNodeWithColor:[SKColor redColor] size:CGSizeMake(40, 40)]; 
myRec.position = CGPointMake(150, 150); 
[self addChild:myRec]; 

[myRec runAction:[SKAction repeatActionForever:[SKAction sequence:@[ 
            [SKAction waitForDuration:3.0], 
            [SKAction scaleTo:2.0 duration:2.0], 
            [SKAction scaleTo:1.0 duration:2.0], 
            ]]]]; 

을 예상대로 작동하는 것 같다.

+1

코드 샘플을 보내 주셔서 감사합니다. 내가 스프라이트 대신 장면에서 액션을 실행했다는 것을 제외하면 내가 한 일이었습니다. 내가 멍청하다고 느낄 때 나는 그것을 싫어한다. 도움을 주셔서 감사합니다. – mprivat

관련 문제