Khi nào nên sử dụng cây pha trộn vs máy trạng thái cho hoạt hình


13

Tôi là một game có kinh nghiệm dev hobbiest làm trò chơi đầu tiên của tôi với các nhân vật hoạt hình 3d (trong Unity) và đang đấu tranh để tìm ra khi nào nên sử dụng cây pha trộn với máy trạng thái hoạt hình. Tôi hiểu cả về khái niệm nhưng đã thấy cả cây pha trộn và máy trạng thái hoạt hình được sử dụng cho hoạt hình nhân vật trong một loạt các hướng dẫn cả từ Unity và từ các nguồn khác. Tôi không chắc chắn khi nào / tại sao một người tốt hơn người kia đang hy vọng ai đó có thể chỉ cho tôi đi đúng hướng.

Trò chơi của tôi là rpg hành động của người thứ 3 a'la WoW hoặc KOTOR hoặc Mass Effect (các hệ thống khác nhau tôi biết nhưng quan điểm và phong cách chiến đấu khá gần ở cấp độ cao). Tôi có rất nhiều hình ảnh động cho các cuộc tấn công, khối, giả, chết, đi bộ, chạy, nhảy, bắn súng, nhưng tôi không rõ làm thế nào để sắp xếp chúng lại với nhau một cách tự nhiên.

Tôi đã thấy cây pha trộn được sử dụng cho đầu máy, điều này có ý nghĩa với tôi khi cố gắng giữ cho chất lỏng chuyển động của nhân vật, nhưng tôi không hiểu làm thế nào để chuyển từ cây pha trộn đó sang trạng thái tấn công và cho đến nay tôi chưa thấy gì về sự vận động (không có cuộc tấn công nào Vân vân). Tôi có cần tạo cây hỗn hợp từ trạng thái chuyển động của mình sang trạng thái tấn công / chết / né không? Tôi có quyền kiểm soát nhiều hơn bằng cách chỉ sử dụng máy trạng thái? Tôi hơi thận trọng với các máy trạng thái vì sự phình to quá phổ biến với chúng và bởi vì tôi nghi ngờ có tiềm năng lớn hơn cho trình tự hoạt hình janky mà không pha trộn.

Tôi đang dự định sử dụng bộ điều khiển ký tự Unity và viết các kịch bản logic của riêng tôi để điều khiển nó. Đối với AI tôi sẽ sử dụng các tác nhân lưới điều hướng tích hợp. Là hình ảnh động điều khiển nhân vật được xử lý khác nhau so với AI?

Bất kỳ hiểu biết sẽ được chào đón nhiều hơn!

Cảm ơn

Câu trả lời:


21

Tôi đã làm việc khá nhiều với Mecanim trong Unity và cảm thấy tôi hiểu khá rõ về cách thức hoạt động của nó.

Giống như bạn nói, cây hỗn hợp gần như chắc chắn là cách để thực hiện vận động. Cây trộn thường dành cho khi bạn muốn liên tục trộn hoạt hình để tạo đầu ra cuối cùng. Giống như cung cấp cho người chơi quyền kiểm soát tốc độ của avatar đang chạy.

Tất cả các hành động đơn lẻ có khả năng tốt hơn để giữ như một trạng thái riêng lẻ mà bạn có thể chuyển sang. Tùy thuộc vào cường độ trò chơi của bạn sẽ diễn ra như thế nào, bạn thậm chí có thể xem xét sử dụng Bất kỳ trạng thái nào làm điểm khởi hành để nhanh chóng đi nhảy, tấn công, v.v., mà không phải chờ hoạt hình khác kết thúc.

Chìa khóa để pha trộn từ cây trộn với chạy là sử dụng các hiệu ứng chuyển tiếp . Không có phép thuật nào để làm cho nó trông tuyệt vời, chỉ có kế hoạch cẩn thận và điều chỉnh trong khi xem trước quá trình chuyển đổi trong Unity. Rất nhiều công việc phụ thuộc vào các nhà làm phim hoạt hình vì đã có nền tảng cho các quá trình chuyển đổi thành công.

Một điều cần lưu ý khi thực hiện chuyển đổi là tìm sự cân bằng của chúng trông thật tuyệt, và mang lại cho người chơi những phản hồi mong đợi. Bạn có thể thấy rằng chuyển đổi nhanh hoạt động tốt nhất cho cảm giác trò chơi, trong khi chuyển đổi chậm hơn có thể trông tốt hơn nhưng khiến người chơi của bạn muốn vứt bỏ bộ điều khiển.

Dưới đây là một thiết lập hơi đơn giản, trong đó các mũi tên chỉ ra cách chuyển đổi đi. Chuyển đổi dựa trên các điều kiện để vào và thoát khi hoạt ảnh kết thúc hoặc một điều kiện nhất định được đáp ứng. Điều này cũng có nghĩa là một trạng thái có thể đi vào các trạng thái khác tùy thuộc vào các điều kiện khác nhau.

Máy nhà nước

Những gì bạn có thể nhận thấy là điều này nhanh chóng có thể trở thành một đống "spaghetti" lớn, và một cách để tránh một số mớ hỗn độn này là sử dụng Bất kỳ trạng thái nào cũng có trong hình trên.

Các nhà nước Bất kỳ có lợi ích của việc có thể chuyển tiếp vào bất cứ điều gì từ bất kỳ thời điểm nào. Chuyển tiếp vẫn có thể được sử dụng để pha trộn hoạt hình, tuy nhiên, bạn đang làm việc nhiều hơn một chút trong bóng tối như nó sẽ trông như thế nào. Có thể xem trước từ / đến các trạng thái khác nhau trong khi thiết lập nó.

Thứ bạn không đề cập đến là Lớp , có thể cực kỳ hữu ích để khiến nhân vật của bạn bị thương hoặc đè lên phần thân trên để mang các vũ khí khác nhau trong khi sử dụng cùng một hình ảnh động cho chân cho tất cả các vũ khí. Các lớp cũng được pha trộn và có thể được điều chỉnh dần dần, vì vậy một nhân vật có thể bị thương ít nhiều, chẳng hạn. Một ví dụ khác là nâng một cánh tay nhân vật lên không trung (nếu nhân vật đầu hàng hoặc một cái gì đó), trong khi vẫn giữ tất cả các hoạt hình khác như cũ.

Nhưng thiết lập bộ điều khiển hoạt hình rắn không phải là công việc 1 giờ. Phải mất một số kế hoạch và tôi chỉ có thể khuyến khích bạn thử thiết lập một máy trạng thái đơn giản với hai lần tấn công, nhảy, nhàn rỗi và hỗn hợp đi bộ / chạy. Bạn cũng có thể thấy các Hành vi được giới thiệu trong Unity 5 cực kỳ hữu ích để kiểm soát hoặc tương tác với các tập lệnh.

Tôi chắc chắn 99% rằng AI sẽ hành xử giống như trình điều khiển trình phát, với điều kiện là các tham số được thay đổi thông qua các tập lệnh điều khiển cách hoạt hình chuyển từ trạng thái này sang trạng thái khác.

Tóm lược

  • Cây hỗn hợp cho đầu máy.
  • Các trạng thái cho các hành động đơn, được xác định hoặc các trạng thái lặp đơn giản.
  • Các tiểu bang để tổ chức một loạt các trạng thái, giống như một bước nhảy.
  • Chuyển tiếp để pha trộn / chuyển tiếp giữa các trạng thái khác nhau (một trạng thái cũng có thể là một cây pha trộn).
  • Các lớp để ghi đè hoặc thêm vào hình ảnh động cơ bản.

Vì vậy, hãy nghĩ về cây hỗn hợp như các trạng thái mở rộng, cũng hoạt động dựa trên các giá trị tham số.

Một chút lan man, nhưng tôi hy vọng nó sẽ làm sáng tỏ chủ đề này :)


Cảm ơn mô tả tuyệt vời của bạn, điều này rất có ý nghĩa bây giờ
weichsem

Thật tuyệt vời, rất vui được giúp đỡ :)
Morten Andersen
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.