2015-01-15 6 views
1

그래서 'SKAction'을 실행하는 'SKSpriteNode (texture : someTexture)'객체를 가지고 있습니다.텍스쳐가 움직일 때 SKPhysicsBody가 업데이트 됨 (Swift)

물리학을 설정했습니다. 물리학이 내 캐릭터의 완벽한 윤곽이 될 수 있도록 텍스처 매개 변수를 사용합니다. 물리학을 얻는 방법을 알아낼 수 없습니다. 텍스처가 변하면 몸이 바뀝니다. 생기).

(애니메이션의 현재 텍스처에 대한) object.Texture의 텍스처로 새 SKPhysicsBody (업데이트 메소드에서) 객체를 할당하는 명백한 잘못된 선택을 시도했지만 원래 설정 한 다른 모든 속성은 유지하지 않습니다. 나는 이것을 달성 할 수있는 방법에 대한 문서에서 어딘가를 찾았지만 아무 것도 발견하지 못했습니다.

이 문제를 해결하는 가장 좋은 방법은 무엇입니까?

답변

1

일반적으로 동일한 물리 모양이 모든 애니메이션 프레임에 적용되도록 게임을 디자인 할 것입니다. 인간의 성기의 팔다리가 모두 윤곽선으로 윤곽이 잡혀 있는지 여부는 중요하지 않은 경우가 많습니다. 일반적으로 직사각형이면 충분합니다.

접근 방식이 정확해야합니다. 매번 새로운 물리학 자 본문을 만들어야하며, 새로운 물리학 자 본문으로 교체하기 전에 이전 본문의 속성을 복사해야합니다. 그러나 그것은 신체의 내부 상태가 보존 될 수 없기 때문에 좋은 해결책이 아니며, 다른 모양으로는 현재 물리 현상이 올바른 물리 동작을하지 못하게됩니다. 예를 들어 캐릭터가 박쥐를 휘두르며 공을 치는 경우 기본적으로 공을 박쥐에서 멀리 떨어 뜨리고 스윙 동작에서 어떤 힘도 가하지 않습니다.

본질적으로 달성하려는 것은 (실제로) 가능하지 않습니다. 대신 노드에 모든 애니메이션 프레임에 대해 좋은 절충안을 지정하십시오. 일반적으로 가장 작은 가능한 모양을 사용하는 것이 가장 좋습니다. 또는 여러 스프라이트의 문자를 여러 (연결된) 본문으로 구성 할 수 있습니다.