나는 인데 120px x 120px입니다. 스프라이트의 기본 텍스처는 반지름이 60px 인 원입니다. I 함께 스프라이트 애니메이션 싶습니다SKSpriteNode 애니메이션의 각 프레임이 가운데에 맞춰지지 않은 애니메이션
SKAction.animate(with:timePerFrame:resize:restore:)
문제는 애니메이션의 일부로서 각 텍스처 크기 미만 120 픽셀 X 120 픽셀이고,이다 따라서 I는이를 수행하는 스프라이트 기준점을 설정하면
CGPoint(x: 0.5, y: 0.5)
애니메이션 프레임은 스프라이트의 중앙에 배치됩니다. 이는 내가 올바른 애니메이션이 아닙니다. 나는 다음과 같이 애니메이션 싶습니다 :
을 내가 120 픽셀 X 120 픽셀로 스프라이트 아틀라스의 모든 애니메이션 텍스처를 추가해야한다는 것을 의미한다 내가 수정입니까? 그렇다면 빈 픽셀로 낭비되는 아틀라스 공간이 생깁니다. 이것을 성취 할 수있는 더 좋은 방법이 있습니까? 애니메이션에서 각 텍스처 프레임의 중심점을 지정 하시겠습니까?
미리 감사드립니다.
이 크기 조정의 문제가되지 않습니다. 이는 애니메이션의 각 프레임을 올바른 위치에 배치하는 문제입니다. resize = true로 설정하면 스프라이트가 애니메이션의 각 프레임마다 크기가 조정됩니다. 위 다이어그램의 두 번째 행을 살펴보십시오. 각 프레임이 애니메이션 중에 어떻게 배치되어야 하는지를 나타냅니다. – plawres
크기 조정의 문제가 아니라면 애니메이션을 만드는 것이 잘못되었습니다. 투명한 환경에 삽입 한 후 간단한 이미지가 오른쪽 또는 왼쪽에 놓여 있는지를 어떻게 예상 할 수 있습니까? 두 가지 문제가 있습니다. 하나는 위쪽/아래쪽의 trasparent 영역에 의해 발생하는 다른 크기입니다. 귀하의 스프라이트 (resize = true로 해결됨), 다른 하나는 당신이 원하는쪽으로 움직여야한다는 것입니다. 그렇지 않으면, transp에 간단한 참조 픽셀을 넣어 애니메이션을 다시 만들어야합니다. 실제 폭 치수를 유지하는 영역 (또는 배경색 변경) –
문제의 크기가 조정되지 않았습니다. 문제는 실제로 애니메이션의 각 텍스처 프레임을 개별적으로 배치하거나 각 애니메이션 텍스처 프레임마다 다른 앵커 포인트를 설정하는 방법이 있습니까? 예 : frame01 앵커 포인트 (0.0, 0.5), 두 번째 프레임 앵커 포인트 (0.25, 0.5), 세 번째 프레임 앵커 포인트 (0.5,0.5) ... 등. 왜냐하면 아틀라스에 빈 픽셀이있는 각 텍스처가있는 경우 빈 픽셀을 유지하는 데 메모리가 낭비되기 때문입니다. – plawres