Rigging là một trong các công việc yêu cầu kỹ thuật nhất của mọi studios VFX & Animation bao gồm cả các studios phát triển game.
mGear: Rigging & Animation Framework đã có bài podcast nói chuyện với Evan Wu đến từ Nemo Puppet, một trong các chuyên gia xử lý rigging trong video games, anh tạo ra những giải pháp kỹ thuật rigging đưa vào pipeline không quan trọng phần mềm 3D nào, nó hoàn toàn giúp cải thiện năng suất, giúp cả studios và artist có cuộc sống tốt đẹp hơn.
1. Bối cảnh & vấn đề cần giải quyết
Các studio hoạt hình lớn như Original Force (Trung Quốc, hơn 2.000 nhân viên) và nhiều cơ sở khác gặp vấn đề kinh niên:
- Rig nhân vật (đặc biệt rig phức tạp cho phim và game AAA) rất nặng, playback trong Maya chỉ đạt ~6 FPS.
- Animator phải “bake” rig hoặc xuất cache mỗi lần review, gây chậm trễ, lỗi, và không thể chỉnh sửa trực tiếp.
- Khi pipeline gồm nhiều phần mềm (Maya, Houdini, Unreal, Blender…), việc chuyển rig và animation giữa các DCC gần như không khả thi vì hệ thống deform khác nhau.
- Outsourcing studio bị giới hạn upload dữ liệu của client, nên không thể chia sẻ tài sản để debug hay benchmark.
2. Giải pháp: Nemo Puppet
Nemo Puppet là công nghệ của nhóm Ian Fang (ex-Original Force) — một “animation acceleration and cross-DCC portability engine.”
Nghĩa là khả năng chạy trên nhiều phần mềm 3D khác nhau, tăng tốc hiệu quả
Cách hoạt động:
- Phân tích rig gốc trong Maya → xuất “graph JSON” (chỉ chứa logic điều khiển, không chứa dữ liệu mật).
- Server của Nemo xử lý, biên dịch sang binary tăng tốc, rồi tái dựng lại rig mới nhanh gấp 10 lần.
- Rig mới hoàn toàn tương thích animation cũ, chỉ cần thay reference.
- Animator mở file như bình thường, không cần thay workflow.
Kết quả:
- Tốc độ tăng 10–20× (100 FPS với rig trung bình trên laptop).
- Animation playback mượt mà, không cần bake keyframe.
- Rig có thể chuyển qua Houdini, Unreal, Blender mà vẫn giữ curve & tangent nguyên vẹn.
- Dual rig system đảm bảo keyframe không mất khi chuyển DCC.
3. Ưu điểm & Đột phá
| Khía cạnh | Lợi thế của Nemo Puppet |
|---|---|
| Hiệu năng | GPU-based deform, dùng VO2 API của Maya → không cần đọc/ghi IO, tăng tốc thực tế 10–100×. |
| Portability | Có thể chuyển rig và animation giữa Maya ↔ Houdini ↔ Unreal ↔ Blender mà không bake dữ liệu. |
| Tích hợp GPU | CUDA buffer chuyển trực tiếp sang OpenGL/DirectX, không delay. |
| Pipeline mở | Cho phép outsource studio test rig mà không lộ tài sản client (nhờ data masking). |
| Ease of use | Chỉ cần upload 1 JSON → nhận lại rig tăng tốc → animators mở file bình thường. |
| Collaboration | Đang hợp tác với MGEAR để chuẩn hóa kiểm tra và bảo toàn rig logic khi convert. |
4. Khuyết điểm & giới hạn
| Loại giới hạn | Mô tả chi tiết |
|---|---|
| Backward solver | Chưa hỗ trợ hoàn chỉnh các rig có nhiều deformer phức tạp (non-skeletal). |
| Performance trên Blender | Bị “bottleneck” do Blender chỉ có Python API, không có deform C++ API, dẫn đến FPS giảm (≈20 FPS với rig 200k poly). |
| Không đồng nhất giữa phần mềm | Mỗi DCC có triết lý rig khác nhau, cần hợp tác sâu với các hãng (SideFX, Epic, Blender Foundation) để đồng bộ. |
| Hardware shader | Khi dùng shader phức tạp trong Maya, tốc độ có thể giảm mạnh. |
| Chưa open-source | Hiện vẫn là plugin thương mại, có trial 3 tháng. |
5. Tác động & triết lý công nghệ
“Animators just enjoy. They don’t care — they just open the file and it’s fast.”
Những animator chỉ muốn thật sự thoải mái trong quá trình làm việc. Animator không muốn quan tâm tới vấn đề kỹ thuật, họ chỉ muốn mở file, nó nhanh và họ sẽ sáng tác. Đó là góc nhìn mà team đã đưa ra phương án giải quyết bằng kỹ thuật.
Tác động thực tế:
- Giúp animator, rigger, và CFX artist “sống vui hơn” — ít đợi cache, ít crash, nhiều tương tác hơn.
- Thu hẹp khoảng cách giữa phần mềm game & film, vì Nemo xử lý rig như engine trung gian (independent backend).
- Mở ra thế hệ pipeline lai (hybrid): studio có thể chia sẻ asset giữa Maya và Blender mà không rebuild rig từ đầu.
- Giúp small studio cạnh tranh với big vendor nhờ hiệu suất và tính linh hoạt.
6. Insight cuối cùng
| Mức | Tóm tắt ý chính |
|---|---|
| Issue | Rig quá nặng, playback chậm, pipeline đóng → animator mất thời gian & mất hứng sáng tạo. |
| Solution | Nemo Puppet: “biên dịch” rig Maya thành GPU rig độc lập, tăng tốc 10–100× và cho phép cross-software. |
| Impact | Giảm thời gian chờ, tăng năng suất, thống nhất pipeline Maya–Houdini–Unreal–Blender. |
| Limitation | Blender chưa có C++ API → giảm hiệu năng; backward solver còn hạn chế. |
| Philosophy | Giữ workflow nguyên vẹn, chỉ thay “động cơ” bên trong rig. Mục tiêu: nhanh, an toàn và thoải mái tạo tác animation |

