'Dont Starve'에는 어떤 애니메이션 기법이 사용됩니까? [닫은]


12

개인적인 시간 외 개발에서 몇 가지 게임을하는 동안 나는 생존 2D / 3D 생존 게임을 우연히 발견했습니다. 게임은 분명히 SDL과 GLUT (Dont starve)로 만들어졌지만 실제로 놀란 것은 게임의 애니메이션이었습니다.

애니메이션은 매우 매끄럽고 유창합니다. 애니메이션을 만드는 동안 왜곡이 없으며, 수작업 애니메이션에서 일반적으로 발생하는 현상은 픽셀이 제거되고 애니메이션이 흐릿하고 매끄럽지 않다는 것입니다. 그런 품질의 애니메이션을 어떻게 달성했는지 생각하게되었습니다. 그들은 정말로 수제였습니까 (만약 그렇다면 매우 재능있는 예술가를 데려 갔어야합니다), 뼈 애니메이션입니까 아니면 다른 기술을 사용하고 있습니까?


2
사용 된 기술에 대한 정확한 정보를 얻으려면 개발자에게 직접 문의하십시오. 게임에서 일하지 않은 사람은 확실하게 규정 할 수 있습니다.
DogDog

2
이 질문을 할 때 나는 다음과 같은 몇 가지 가정을했다. 1. 개발자들에게 연락하는 것은 성공 가능성이 매우 낮다 (누군가가 비밀을 다른 사람과 공유하고 이메일을 확인하는 데 얼마나 많은 시간이 필요한가? ?) 2. 나는이 웹 사이트에서 훨씬 더 빠른 답변을 얻을 수 있습니다.이 웹 사이트는 수년간의 배경 경험이 있고 답변을 소중하게 생각하는 사람들로 구성되어 있습니다. 이 질문에 대답 할 수는 있지만 매우 먼 것입니다.
Bugster

1
대부분의 프로그래머는 실제로 지식을 공유하는 데 개방적이며, 2D 애니메이션을 비밀로 만드는 방식은 생각하지 않습니다. 시도해 볼 가치가 있다고 생각합니다. 어쩌면 그들이 당신에 대해 조금 이야기하고 왜 그들이 당신을 돕거나 조언을 해줄 때 더 흥미로워지기를 원한다면.
DogDog

1
" 어떤 특정 게임에 사용 된 기술 "에 대한 FAQ 를 참조하십시오. 유사한 효과 를 얻는 방법을 묻는 것이 훨씬 더 좋은 질문입니다. (아마도 이미 사이트에있는 것과 중복 될 수 있습니다.)
MichaelHouse

이 질문은 다른 게임이 사용한 기술에 관한 것이므로 주제가 아닌 것 같습니다.
MichaelHouse

답변:


40

저는 Kevin이고 Klei의 프로그래머 / 디자이너입니다. 나는 우리가 k 크 시리즈, 닌자 마크, 굶주림에 사용했던 많은 애니메이션을 썼습니다.

애니메이터들은 Flash에서 일합니다. 우리는 다중 뷰를 가진 일련의 본문 부분 심볼 인 캐릭터 '빌드'의 개념을 가지고 있습니다. 주어진 게임의 충실도에 따라, '조회'가 다소있는 신체 부위가 있습니다. 샹크는 각각 1-2 개의 뷰를 가진 30 개의 신체 부위를 가지고 있다고 생각하지만, Do n't Starve의 Wilson은 거의 동일한 뷰를 가진 12 개의 신체 부위를 가지고 있다고 생각합니다. 사용자 정의 JSFL 스크립트는 플래시 심볼 타임 라인을 분석 한 다음 관련 이미지를 일련의 고해상도 PNG 파일로 굽고 XML에 붙인 메타 데이터와 함께 구워냅니다.

캐릭터 빌드가 주어지면 애니메이터는 다른 파일에 새로운 루트 심볼을 만들어 해당 캐릭터에 대한 애니메이션 덩어리를 포함시킵니다. 이 타임 라인에서 캐릭터는 빌드 심볼에서 캐릭터를 생성하고 그 주위를 이동하거나 트위닝하는 등의 작업을 수행하여 개별 애니메이션 (프레임 레이블을 사용하여 구분)을 만듭니다. 익스포터 스크립트는 이러한 타임 라인을 모든 빌드 피스의 2D 변환과 표시되는 뷰를 기록하여 XML로 내 보냅니다.

이 모든 정보를 XML 및 PNG로 내 보낸 후 일련의 Python 스크립트를 실행하여 런타임 데이터로 변환합니다. 하나의 스크립트는 모든 텍스처의 크기를 줄이고, 아틀라스를 만들고, 모방하여 압축 된 플랫폼 별 형식으로 변환합니다. 다른 스크립트는 XML 애니메이션 데이터를 이진 형식을로드하기에보다 효율적으로 처리합니다.

런타임시에는 올바른 변환 및보기로 올바른 빌드 기호를 표시하는 것입니다.

이 시스템은 구축하는 데 오랜 시간이 걸렸으며 게임에서 게임으로 이동함에 따라 개선되었습니다. 레이어링 및 런타임 의상 스와핑을 처리하는 방법과 같이 많은 세부 사항이 있지만 일반적인 개요입니다.

물론 우리가 사용하는 기술은 아마도 'Klei Look'의 가장 중요한 측면 일 것입니다. 가장 중요한 부분은 정말 훌륭한 애니메이터가 있다는 것입니다. :)

어쨌든, 이것이 도움이되기를 바랍니다. Do n't Starve에 대해 더 궁금한 점이 있으면 포럼을 방문하면됩니다.


1
깊이 감사합니다. 나는 당신이 가진 시스템이 대부분의 작은 예산 팀 (그리고 일부 예산이 많은 팀)만이 상상할 수 있었던 매우 유동적 인 캐릭터를 촉진하는 데 도움이된다고 생각합니다. 신체 부위의 보간 / 변형이 없거나 스프라이트 예술을하고 있거나 변형 / 상태 / 조회가 없다면 스프라이트 예술을하고 있다고해도 믿을 수 없을 것입니다. 당신이 말했듯이, 도구는 방해가 될 때 좋은 일을하고 있으며 Klei가 많은 아티스트를 빛나게합니다. 나는 당신의 모든 것을 사랑했으며 PC 포트에 감사드립니다.
Norguard December

2
기꺼이 도와 드리겠습니다! 아티스트가 실제로 모든 프레임을 스프라이트로 구운 시스템에서 작업하는 것을 선호한다고 생각하지만 의상 스와핑을 수행 할 수 없으며 텍스처 크기가 엄청납니다.
Kevin

1
놀랍습니다. 실제 게임 개발자로부터 답을 얻지 못했다고 생각했습니다. 시간을내어 답변 해 주셔서 감사합니다. +1
Bugster December

7

Klei는 일반적으로 스켈 레탈 애니메이션과 스프라이트 변경의 조합을 사용합니다.
스켈레톤을 조작하고 뼈에 스프라이트를 적용한 다음 애니메이션 프레임이 요구할 때 스프라이트를 교체합니다.

정확한 "어떻게"(워크 플로 / 도구 / 등)는 실제로 그들에게서 나올 수 있지만, 시험판 인 "Shank"를 광고 할 때 스스로 그렇게 말했다.

Shank / ShankII, Ninja의 Mark, Do n't Starve를 보면 애니메이션이 Nickelodeon에서 나오는 것들과 매우 비슷하다는 것을 알 수 있습니다.

나는 그들이 모든 것을 제자리에 유지하기 위해 장면 그래프로 작업하고 있다고 생각할 것입니다. 그러나 다시 말하지만, 복잡성 및 애니메이션 (2d / 3d)에 대한 보장보다 보장에 대한 가정입니다.


이것은 실제로 추측 일뿐이므로 주석으로 더 잘 작동 할 것입니다. 당신의 잘못이 아니라 개발자가 아니라면 추측 할 수 없습니다. (질문이 답이 아닌 문제)
MichaelHouse

이것은 내가 묻는 질문에 거의 대답했지만 비슷한 것을 생각했지만 당신이 옳은 것처럼 보입니다.
Bugster

2

나는 그들이 뼈 애니메이션을 확실히 사용한다고 생각합니다. 또한 고해상도 스프라이트를 사용하거나 (재규어 방지) 일부 형태의 벡터 그래픽을 사용합니다. 벡터 그래픽을 고해상도 스프라이트로 사전 렌더링 한 것이 전적으로 가능합니다. 그들은 분명히 이것에 픽셀 아트를 사용하지 않았습니다. :)


2
대답보다 더 많은 의견이 있습니까?
MichaelHouse

OpenGL에서 벡터 그래픽? 가능하지만 인디 개발자가 그러한 길이로 갈 것이라고 의심합니다.
Eric B

1
@EricB 자, 스프라이트로 미리 렌더링되거나 손으로 그려서 고해상도로 렌더링 될 수 있습니다. Spelunky 및 Cave Story와 같은 "클래식 의미"(즉, 픽셀 아트)의 스프라이트는 아닙니다.
AturSams

@ Byte56 동의합니다. 나는 그들의 예술가가 이것과 비슷한 비주얼을 달성하는 방법에 대해 더 대답하고 있습니다.
AturSams

@ Byte56 질문에 대답하기가 어렵 기 때문에 유일하게 가능한 답변은 가정이지만이 답변은 매우 가능성이 있습니다. 감사합니다.
Bugster
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.