Site icon Novastars

Tips làm Animation trong Unity

1. Cách làm để khớp animation clip có sẵn của nhân vật với thoại


Ví dụ cần làm 1 đoạn animation cho Kem giơ tay lên trước ngực giới thiệu bản thân, Kem nói xong thì bỏ tay xuống. Hiện tại đã có animation Kem giơ tay lên ngực rồi hạ xuống nhưng thời gian chưa khớp với lời thoại. Có thể làm theo 3 cách như sau:


2. Animation theo chuỗi


2.1. Chuỗi gồm 2 anim: Start → End


2.2. Chuỗi có vòng lặp: Start → Loop → End

Ví dụ 1 anim chạy gồm 3 animation: Lấy đà → Chạy → Phanh. Có thể sử dụng theo nhiều cách khác nhau như sau:


2.3. Chuỗi không có vòng lặp: Start → Anim 1 → Anim 2 → End


3. Chỉ sử dụng 1 phần animation clip trong timeline


Thay vì tách mọi anim thành chuỗi, có thể thu ngắn độ dài của anim clip trong timeline → Unity sẽ cắt bớt keyframe trong anim đấy.

Ví dụ đoạn anim chạy gồm 3 phần Lấy đà (2s) → chạy (2s) → Phanh (2s).

Khi kéo anim clip vào timeline, thu ngắn 2s đầu và 2s cuối → sẽ được đoạn chạy 2s. Vẫn có thể cho loop đoạn chạy này lên như bình thường. Tuy nhiên cách này không quá chính xác, phù hợp để tận dụng animation có sẵn cho 1 vài cảnh, không phù hợp cho những anim thường dùng.


4. Sử dụng Animation Override


Tương tự như với animation theo chuỗi, để sử dụng Animation Override mình cũng tách nhỏ animation ra để linh hoạt hơn khi sử dụng. Nhưng Animation chuỗi thì tách anim theo tiến trình thời gian, còn Animation override thì tách theo bộ phận cơ thể.

Cách làm là tách riêng các chuyển động đơn của các bộ phận cơ thể để kết hợp với các animation khác tạo thành nhiều chuyển động mới, phức tạp hơn.


5. Làm việc với Animation clip trên timeline


5.1. Inspector của Animation Clip trên timeline

Gồm 2 phần quan trọng là


5.2. Animation Extrapolation


5.3. Animation Playable Asset


5.4. 1 số kĩ thuật chỉnh animation clip trên timeline

#Kĩ thuậtChi tiết
1Tắt extrapolationNên hạn chế dùng extrapolation vì sẽ không tạo được transition cho anim. Extrapolation trên Override Animation track cũng tạo ra rất nhiều vấn đề. Cách tốt nhất là chọn toàn bộ animation clip trên timeline, sau đó chỉnh như sau để đảm bảo các clip không ảnh hưởng lẫn nhau. Pre-Extrapolation: NonePost-Extrapolation: None
2Khi nào dùng extrapolationLợi ích của Extrapolation là cho nhân vật tiếp tục chuyển động mà không cần thay đổi độ dài của animation clip, giúp tiết kiệm thời gian nếu mình thay đổi vị trí của các clip trước hoặc sau.
3Loop animKéo clip đủ độ dài mong muốn.
Trong phần Animation Playable Asset > Loop: Use source asset (với các clip đã bật sẵn loop) hoặc On (để bắt buộc loop)
4Chạy 1 lần rồi holdVD: Kem đưa tay lên ngực tự giới thiệu bản thân, và tiếp tục giữ tay ở đó.Kéo clip đủ độ dài mong muốn. Loop: Use source asset (với các clip đã tắt loop) hoặc Off
5Transition về IdleAnim Idle đã được chỉnh lại để reset dáng đứng cơ bản của nhân vật. Nếu nhân vật gặp bất kỳ vấn đề gì về dáng, có thể cho transition về Idle Giữ Ctrl + click vào cuối animation clip, kéo về bên trái để tạo transition về idle. Có thể kéo dài animation clip ra trước để có chỗ tạo transitionCó thể Ctrl + click vào đầu animation để tạo transition từ idle vào
6 Chỉ sử dụng 1 phần animation clip trong timelineXem phần 1 số tips với animation > 3. Chỉ sử dụng 1 phần animation
Exit mobile version