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.
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 :)