런타임 아키텍처

Spine 런타임은 Spine에서 내보낸 스켈레톤 데이터를 로드하고 렌더링하기 위해 응용 프로그램에 통합되는 소프트웨어 구성요소입니다. 런타임은 매우 유연하여 텍스처를 로드하는 시기와 방법, 뼈대 조작 및 절차 애니메이션, 애니메이션 믹싱 및 레이어링 등을 사용자 지정할 수 있습니다.

런타임 페이지에는 다양한 프로그래밍 언어와 게임 툴킷에 사용할 수 있는 런타임이 나열되어 있습니다.

라이선스 부여

Spine 라이선스를 등록하면 Spine 런타임 사용 권한이 부여됩니다. Spine 라이선스를 보유하고 있는 경우에는 Spine 런타임을 여러 응용 프로그램에서 사용할 수 있습니다. 자세한 내용은 Spine 라이선스를 참조하십시오.

소스 코드

Spine 런타임의 소스 코드는 GitHub에서 전체적으로 볼 수 있습니다. 소스 코드에 대한 액세스는 응용 프로그램의 기본 구성요소에 필수적이며 특정 요구에 맞게 사용자 지정 또는 최적화를 수행할 수 있습니다.

Git을 사용하거나 GitHub의 녹색 "복제 또는 다운로드 버튼"을 클릭하고 "다운로드 ZIP"을 선택하면 소스 코드를 다운로드할 수 있습니다.

이 문서의 코드 예제는 모든 언어의 런타임으로 쉽게 변환되는 의사 코드를 사용합니다. 런타임 관련 문서는 GitHub의 런타임 관련 페이지(README.md 파일)를 참조하십시오.

버전 관리

Spine 런타임은 Spine에서 내보낸 데이터를 로드합니다. Spine 런타임이 데이터를 성공적으로 로드 할 수 있도록 올바른 Spine 버전을 주의해서 사용해야 합니다. 편집기 버전을 정지시키고 런타임 버전과 함께 엄격하게 보관하는 것이 좋습니다. Spine 및 Spine 런타임이 지속적으로 개선되고 있으므로 런타임과 편집기 버전을 주기적으로 업데이트할 수 있습니다.

마스터 브랜치는 Spine의 최신 비베타 버전과 함께 작동합니다. 각 런타임의 README.md 파일은 함께 작동하는 정확한 버전을 나열합니다.

Spine 런타임의 이전 버전은 릴리스 페이지에서 찾아볼 수 있습니다.

정의상 베타 버전은 지원되는 런타임을 모두 지원하지는 않을 수 있습니다. 하지만 일부 런타임은 다른 런타임보다 먼저 사용할 수 있게 됩니다. 가장 최근의 런타임이 필요한 경우 3.6-베타와 같은 베타 버전의 이름이 있는 브랜치를 찾으십시오. 관심 있는 런타임이 업데이트된 경우 해당 브랜치에서 다음 비베타 릴리스까지 최신 코드를 찾을 수 있습니다. 새로운 개발은 베타 브랜치에서 발생하며 진행 중인 작업일 수 있습니다.

클래스 다이어그램

이 다이어그램은 다양한 런타임 부분이 어떻게 서로 잘 맞는지 보여줍니다. 전체 해상도를 보려면 클릭하십시오.

API 참조에는 각 유형의 개체에 대한 속성과 메서드에 관련된 자세한 정보가 있습니다.

데이터 개체

높은 수준에서 스켈레톤 데이터는 "설정 포즈 데이터" 개체에 로드되고 대개 텍스처 아틀라스와 결합됩니다. 그런 다음 이러한 데이터 개체를 사용하여 스켈레톤 "인스턴스 데이터" 개체를 만듭니다. 개체는 일반적으로 각 화면상의 스켈레톤에 해당하는 상태 저장 개체입니다. 데이터 개체는 상태 비저장이며, 이는 모든 스켈레톤 인스턴스에서 공유될 수 있음을 의미합니다.

인스턴스 데이터 해당 항목이 있는 데이터 개체 클래스 이름은 "데이터"로 끝납니다. 인스턴스 데이터 해당 항목이 없는 데이터 개체에는 어태치먼트, 스킨 및 애니메이션과 같은 접미사가 없습니다.

데이터를 한 번만 로드해야 하기 때문에 많은 스켈레톤 인스턴스에서 데이터 개체를 공유하는 것이 효율적입니다. 하지만 데이터 개체가 수정되면 변경 사항이 모든 스켈레톤 인스턴스에 영향을 미칩니다. 단일 인스턴스에 대해서만 데이터 개체를 수정하려면 해당 개체에 대해서만 개체를 복사하고 원본은 교체해야 합니다.

인스턴스 개체

각 인스턴스 개체는 데이터 개체와 동일한 클래스 이름을 갖지만 "데이터" 접미사는 포함하지 않습니다. 예를 들어 SkeletonData는 데이터 개체이고 스켈레톤은 인스턴스 개체입니다.

인스턴스 개체에는 데이터 개체와 동일한 속성이 많이 있습니다. 데이터 개체의 속성은 설정 포즈를 나타내며 일반적으로 변경되지 않습니다. 인스턴스 개체의 동일한 속성은 해당 인스턴스가 애니메이션으로 표시될 때의 현재 포즈를 나타냅니다.

모든 인스턴스 개체는 해당 데이터 개체에 대한 참조를 보관합니다. 참조는 인스턴스 개체를 설정 포즈로 재설정하는 데 사용됩니다. 또한 일부 속성은 데이터 개체에만 존재하고 인스턴스 개체에는 존재하지 않습니다(예: 개체 이름).

다음: 스켈레톤 데이터 로딩