Cách tạo animation cho 3D character sử dụng Kinect
Lời mở đầu ** Chắc hẳn ai đã từng làm Unity cũng đã kinh qua việc dùng Animation với 3D character. Đã bao giờ bạn hỏi làm cách nào để tạo ra animation cho nhân vật 3D? Thông thường, để nắm được cách tạo animation cho nhân vật 3D, bạn cần phải nắm vững mô hình skeleton chung, rồi sử dụng phần mềm ...
Lời mở đầu
** Chắc hẳn ai đã từng làm Unity cũng đã kinh qua việc dùng Animation với 3D character. Đã bao giờ bạn hỏi làm cách nào để tạo ra animation cho nhân vật 3D? Thông thường, để nắm được cách tạo animation cho nhân vật 3D, bạn cần phải nắm vững mô hình skeleton chung, rồi sử dụng phần mềm tinh chỉnh từng motion. Nhưng có một phương pháp dễ dàng hơn, đó là sử dụng Kinect để thu lại cử động của chính bạn rồi tạo dựng lại trên nhân vật. Sau đây, tôi sẽ trình bày một cách tiếp cận với phương pháp này.**
Cài đặt
- Tải và cài đặt bộ 3 sản phẩm của Reallusion gồm iClone, Kinect Mocap plugin và 3DXchange tại đây: http://www.reallusion.com/download.aspx
- Chuẩn bị 1 cái Kinect (recommend: Kinect4Windows)
Các bước để tạo animation trong iClone
- Ở cửa sổ Content, chọn tab AVATAR và chọn một character bất kỳ (mặc định iClone có):
- Bật Mocap plugin lên, ấn CONNECT (nhớ là phải plug Kinect vào máy), tích vào Body commands. Sau đó, trong iClone thì chọn character trong scene rồi ở cửa sổ Modify, chọn tab Animation, chọn Device Mocap và ấn vào CONNECT. Hoàn thành các bước trên sẽ ra hình như sau:
- Từ đây, các bạn có thể di chuyển tay vào preview để xem cử động của nhân vật ứng với cử động của bản thân. Sau khi đã chuẩn bị kỹ animation bạn muốn tạo thì hãy di chuyển tay vào nút RECORD. Sau khi hoàn thành, bạn di chuyển tay vào nút dừng.
- Save motion file: chọn tab Motion ở cửa sổ Content, chọn dấu "+" phía dưới để lưu lại motion file.
OK, vậy là bạn đã tạo được animation với Kinect rồi đó. Vậy bây giờ, làm sao để export file đó và sử dụng trong game engine (vd: Unity)
Note
Sau khi thu xong animation, bạn cần một bước nữa là chỉnh sửa và bỏ những phần thừa để khiến animation trở nên hoàn hảo, nhưng trong phạm vi bài viết này tôi sẽ không đề cập đến phần này. Reallusion đã cung cấp công cụ rất trực quan, bạn chỉ cần ấn F3 và bắt đầu chỉnh.
-
Ở cửa sổ Modify, chọn button Edit in 3DXchange như hình dưới:
-
Sau đó kéo và thả motion file mới tạo vào scene trên 3DXchange, rồi chọn Add to Perform
-
Chọn Export to other 3D format (FBX hoặc OBJ): nhớ tích vào Include Animation, và chọn đúng Target:
**Nhấn OK, và bạn đã có 1 file nhân vật 3D cùng với animation **
Lời kết
Trên đây là một ví dụ đơn giản để tạo animation cho nhân vật 3D sử dụng Kinect. Tất nhiên, animation tạo ra sẽ cần phải tinh chỉnh nhiều mới có thể hoàn thiện được (do phụ thuộc vào tính năng nhận diện của Kinect chưa đúng 100%), nhưng nó rất dễ dàng và giảm thiểu rất nhiều thời gian trong việc tạo ra animation. Rất mong trong tương lai, việc nhận diện của Kinect (sử 1 hay nhiều thiết bị) sẽ càng ngày càng phát triển, sẽ khiến cho animation tạo ra sẽ ngày càng chính xác.