Tên tôi là Kevin và tôi là lập trình viên / nhà thiết kế tại Klei. Tôi đã viết một loạt các công cụ hoạt hình mà chúng tôi đã sử dụng trong loạt phim Shank, Mark of the Ninja và Don't Starve.
Hoạt hình của chúng tôi làm việc trong Flash. Chúng tôi có một khái niệm về một nhân vật 'xây dựng', đó là một tập hợp các biểu tượng phần cơ thể với nhiều chế độ xem. Tùy thuộc vào độ trung thực của trò chơi đã cho, có nhiều hay ít bộ phận cơ thể với nhiều 'góc nhìn'. Tôi nghĩ rằng Shank có khoảng 30 bộ phận cơ thể với 1-2 tá lượt xem, trong khi Wilson từ Don't Starve có khoảng một chục bộ phận cơ thể chỉ có cùng số lượt xem. Các tập lệnh JSFL tùy chỉnh được sử dụng để phân tích các mốc thời gian biểu tượng flash và sau đó đưa ra các hình ảnh có liên quan dưới dạng một loạt các tệp PNG có độ phân giải cao, cùng với một loạt siêu dữ liệu mà chúng tôi dán vào XML.
Được xây dựng nhân vật, các nhà làm phim hoạt hình của chúng tôi tạo một biểu tượng gốc mới trong một tệp khác để chứa một đoạn hoạt hình cho nhân vật đó. Trong dòng thời gian đó, họ tạo nhân vật ra khỏi các biểu tượng xây dựng và di chuyển nó xung quanh, xoay tròn nó, v.v. để tạo các hình động riêng lẻ (được phân định bằng cách sử dụng nhãn khung). Tập lệnh xuất khẩu xuất các dòng thời gian này thành XML, lưu ý đến biến đổi 2d của mọi phần xây dựng và khung nhìn mà nó đang hiển thị.
Với tất cả thông tin này được xuất sang XML và PNG, chúng tôi chạy một loạt các tập lệnh Python để chuyển đổi chúng thành dữ liệu thời gian chạy. Một tập lệnh thu nhỏ kích thước, tập trung và mips tất cả các kết cấu và chuyển đổi chúng thành (một hoặc nhiều) định dạng nén, nền tảng cụ thể. Một tập lệnh khác xử lý dữ liệu hoạt hình XML thành một định dạng nhị phân hiệu quả hơn.
Trong thời gian chạy, đó thực sự chỉ là vấn đề hiển thị các biểu tượng xây dựng đúng với các biến đổi và chế độ xem đúng.
Hệ thống này mất nhiều thời gian để xây dựng và đã được tinh chỉnh khi chúng tôi chuyển nó từ trò chơi này sang trò chơi khác. Có rất nhiều chi tiết mà tôi đang làm sáng tỏ (như cách chúng ta xử lý hoán đổi trang phục lớp và thời gian chạy), nhưng đó là phác thảo chung.
Tất nhiên, công nghệ mà chúng tôi sử dụng có lẽ là khía cạnh ít quan trọng nhất của 'Klei Look'. Phần quan trọng nhất là chúng ta có một loạt các họa sĩ hoạt hình thực sự, thực sự giỏi. :)
Dù sao, tôi hy vọng điều này sẽ giúp. Nếu bạn có thêm bất kỳ câu hỏi nào về Don't Starve, bạn có thể ghé qua các diễn đàn của chúng tôi, nơi tôi thường rất vui khi nói chuyện với cửa hàng.