iPhone Cocos2D 게임에서 가로 및 세로 방향을 모두 지원하려고하지만 좌표를 올바르게 변환하는 데 문제가 있습니다.iPhone에서 Cocos2d를 사용하여 다양한 방향 지원하기
여기까지 제가 지금까지하고 있습니다.
저는 장치 방향에 관계없이 제가 항상 세로로 유지하는 GameWorld 레이어를 가지고 있습니다. 다음 코드는 UIDeviceOrientationLandscapeLeft에 대한 내 DeviceRotated 이벤트에 있습니다. ('자기'내 게임 세계 층이다)
[self runAction:[CCMoveTo actionWithDuration: 0.25f position:ccp(80, 0)]];
[self runAction:[CCRotateTo actionWithDuration:0.25f angle:90]];
나는 스프 좌표 변환 내 Sprite 클래스에서 다음을 사용하기를 바라고 된 각 방향에 대해 서로 다른 코드를 작성하지 않아도 .
CGPoint spriteLoc = ccp(0,0);
CGPoint translatedSpriteLoc = [self.parent convertToNodeSpace:spriteLoc];
self.position = translatedSpriteLoc;
그러나 이것은 작동하지 않습니다.
왼쪽 하단 모서리에 스프라이트가있는 세로 모드 인 경우 장치를 왼쪽으로 회전하면 스프라이트가 오른쪽 아래에 나타납니다. 스프라이트가 마치 풍경처럼 왼쪽 아래에있는 것처럼 보이게하려고합니다.
좌표가 잘못되었거나 좌표를 더 잘 변환 할 수 있습니까?