Thứ Năm, 30 tháng 1, 2014

AI 1.5 - VẬN ĐỘNG - LOCOMOTION

  1.5 - Vận động - Locomotion

Vận động - Locomotion

Các loài vật (bao gồm cả con người) đều có hệ thống cơ xương rất phức tạp (hệ thống vận động - locomotor system), giúp chúng ta có khả năng di chuyển cả cơ thể bằng việc sử dụng hệ thống cơ và xương. Chúng ta biết nơi để đặt chân khi trèo lên một cái thang, bậc thang, hoặc trên đất không bằng phẳng, và chúng ta biết cách giữ cơ thể thăng bằng để giữ ổn định tất cả những tư thế khác mà chúng ta muốn thực hiện. Chúng ta có thể làm tất cả những điều này nhờ vào xương, cơ, khớp, và các mô của chúng ta, một tập miêu tả toàn bộ hệ thống vận động của chúng ta (locomotor system). 


Bây giờ đặt chúng vào trong viễn cảnh phát triển game. Hãy nói chúng ta có một nhân vật con người, kẻ đó cần đi trên cả bề mặt bằng phẳng và nhấp nhô đấy, hoặc trên chỗ đất hơi dốc, và chúng ta chỉ có một hoạt cảnh cho một chu trình "đi" (walk). Nếu không có hệ thống vận động cho nhân vật ảo của chúng ta, kết quả sẽ như hình dưới đây:

Bước lên bậc thang khi không dùng hệ thống vận động

Đầu tiên chúng ta sẽ làm hoạt cảnh nhân vật bước đi tiến về phía trước. Giờ đây nhân vật biết nó đang xuyên qua bề mặt. Vì thế, hệ thống phát hiện va chạm (collision) sẽ kéo nhân vật lên trên bề mặt để ngăn chặn việc đi xuyên vào bề mặt vật thể. Đây là cách chúng ta thường dùng để thực hiện việc chuyển động trên một bề mặt nhấp nhô. Thậm chí dù nó không trông hoặc cảm giác có vẻ gì là thật cả, nó vẫn làm được và dễ thực thi.

Chúng ta hãy xem làm thế nào để chúng ta thật sự bước lên cầu thang nhé. Chúng ta đặt chân của mình vững chắc lên các bậc thang, và dùng lực đẩy phần còn lại của cơ thể lên trên để chuẩn bị bước tiếp theo. Đây là cách mà chúng ta làm trong thực tế, bằng hệ thống vận động tiến bộ của chúng ta.



Tuy nhiên, nó lại không quá đơn giản để thực thi mức độ hiện thực này trong các trò chơi. Chúng ta sẽ phải cần nhiều hoạt cảnh cho các kịch bản khác nhau, bao gồm leo thang, đi/chạy lên cầu thang,... Vì thế, chỉ những studio lớn mới có nhiều hoạt cảnh để thực hiện điều này trong quá khứ, cho tới khi chúng ta đến được với một hệ thống tự động.

Bước lên bậc thang khi dùng hệ thống vận động

May thay, Unity 3D đã có phần hỗ trợ để thực hiện vấn đề này, một hệ thống chuyển động - locomotor system.

Hệ thống vận động trong Unity

Hệ thống này có thể trộn một cách tự động vào chu kỳ đi/chạy của nhân vật, và điều chỉnh các chuyển động của xương chân, để đảm bảo rằng các bước chân đặt chính xác trên nền đất. Nó cũng có thể điều chỉnh các hoạt cảnh gốc, tạo ra một tốc độ và hướng cụ thể trên bất kỳ bề mặt, bước đi bất kỳ và cả độ dốc.

Chúng ta sẽ xem cách dùng hệ thống vận động này để áp dụng các chuyển động thực vào cho các nhân vật AI của chúng ta trong chương sau AI 2..

Không có nhận xét nào:

Đăng nhận xét