Mi nombre es Kevin y soy programador / diseñador en Klei. Escribí un montón de material de animación que usamos en la serie Shank, Mark of the Ninja y Don't Starve.
Nuestros animadores trabajan en Flash. Tenemos el concepto de un personaje 'construir' que es un conjunto de símbolos de partes del cuerpo con múltiples vistas. Dependiendo de la fidelidad del juego dado, hay más o menos partes del cuerpo con más o menos "vista". Creo que Shank tenía aproximadamente 30 partes del cuerpo con 1-2 docenas de vistas cada una, mientras que Wilson de Don't Starve tiene aproximadamente una docena de partes del cuerpo con solo la misma cantidad de vistas. Las secuencias de comandos JSFL personalizadas se utilizan para analizar las líneas de tiempo de los símbolos flash y luego hornear las imágenes relevantes como una serie de archivos PNG de alta resolución, junto con un montón de metadatos que pegamos en un XML.
Dada la construcción de un personaje, nuestros animadores crean un nuevo símbolo raíz en otro archivo para contener una porción de animación para ese personaje. En esa línea de tiempo, crean el personaje a partir de símbolos de construcción y lo mueven, lo interpolan, etc. para crear animaciones individuales (que se delimitan con etiquetas de fotogramas). El script del exportador exporta estas líneas de tiempo a XML, tomando nota de la transformación 2D de cada pieza de construcción, y qué vista se muestra.
Con toda esta información exportada a XML y PNG, ejecutamos una serie de scripts de Python para convertirlos en datos de tiempo de ejecución. Un script reduce el tamaño, atlas y mips todas las texturas y las convierte a (uno o más) formatos comprimidos específicos de la plataforma. Otro script procesa los datos de animación XML en un formato binario más eficiente para cargar.
En tiempo de ejecución, en realidad solo se trata de mostrar los símbolos de compilación correctos con las transformaciones y vistas correctas.
La construcción de este sistema tardó mucho tiempo y se ha perfeccionado a medida que lo hemos movido de un juego a otro. Hay muchos detalles que estoy pasando por alto (como la forma en que manejamos las capas y el intercambio de disfraces en tiempo de ejecución), pero ese es el esquema general.
Por supuesto, la tecnología que usamos es probablemente el aspecto menos importante de la 'Klei Look'. La parte más importante es que tenemos un montón de animadores realmente buenos. :)
De todos modos, espero que esto ayude. Si tiene más preguntas sobre Don't Starve, puede pasar por nuestros foros, donde generalmente estoy muy contento de hablar de compras.