Chương trình thử nghiệm

Một phần của tài liệu Nghiên cứu một số kỹ thuật tạo chuyển động cho động vật (Trang 52 - 64)

Chương 3 : CHƯƠNG TRÌNH THỬ NGHIỆM

3.2.Chương trình thử nghiệm

Hệ thống mô phỏng thử nghiệm sự chuyển động cho đối tượng có xương là người gác cổng thơng qua sử dụng ngơn ngữ lập trình Visual C ++, thư viện đồ hoạ OpenGL.

Các bước của thuật toán:

1. Load mesh (vertieces, indexs, nomals, texcoord, texture), animation (hệ thống phân cấp các khớp, số lượng các frame).

2. Tính tốn các tham số vị trí và hướng tại thời điểm t cho mỗi khớp theo từng frame.

3. Xây dựng xương cho mỗi hành động. 4. Tính toán và tác động ngược lại mesh. 5. Render kết quả.

Tại thời điểm ban đầu, mơ hình ở trạng thái nghỉ. Sau đó các vị trí mục tiêu sẽ được xác định cho mỗi chuyển động. Việc tính tốn các vị trí và hướng cho mỗi thành phần của mơ hình khung xương trong từng chuyển động sẽ sử dụng các cơng thức đã trình bày trong phần 2.3 ở chương 2.

- Các tham số cài đặt trong chương trình

+ Các thơng tin về mesh: Vertieces, indexes,nomals…

+ Các thôn tin về skeleton: số lượng joint, sơ đồ phân cấp của các joint, sự ảnh hưởng tương ứng trên bề mặt của mỗi joint…

+ Tại mỗi frame có các tham số về vị trí đầu và cuối của các joint (tạo độ, hướng).

Dưới đây tác giả chọn một số chuyển động đặc biệt nhất của người gác cổng chẳng hạn như: đi, đứng, tấn công bằng tay, chân, tấn cơng bằng vũ khí....

Hình 3.1 Trạng thái nghỉ (idle)

KẾT LUẬN

Sau một thời gian thực hiện đề tài với sự nỗ lực, cố gắng của bản thân cùng với sự hướng dẫn nhiệt tình của cơ giáo TS. Lê Thị Hồng Minh, Tôi đã thu được một số kết quả chính như sau:

+ Trình bày được các kiến thức khái quát về thực tại ảo và tạo chuyển động trong thực tại ảo.

+ Một số kỹ thuật tạo chuyển động cho đối tượng 3D

+ Đặc biệt luận văn đi sâu vào tìm hiểu hiểu các kĩ thuật tạo chuyển động cho đối tượng có xương. Qua đó thấy được ưu nhược điểm của mỗi kĩ thuật và lựa chọn được những kĩ thuật phù hợp với đối tượng cần tạo chuyển động. Nhờ đó ta cũng giải quyết được vấn khó khăn lớn trong thực tại ảo là làm sao để tạo chuyển động cho đối tượng được linh hoạt, uyển chuyển, chân thực và sống động. Luận văn cũng tìm hiểu về cách tạo xượng cho một đối tượng có xương và một số điều khiển được áp dụng cho đối tượng có xương. Từ đó ta có thể áp dụng các điều khiển cho đối tượng có xương một cách hợp lí, tạo ra những chuyển động phức tạp.

+ Nghiên cứu về bộ công cụ đồ hoạ chuyên nghiệp 3DsMax, Maya, củng cố kỹ năng lập trình Visual C++. Tìm hiểu về ngơn ngữ lập trình VRML và OpenGL.

+ Thiết kế một chương trình demo sử dụng một trong các kĩ thuật đã nghiên cứu để kiểm chứng và thể hiện các kiến thức đã nghiên cứu, tìm hiểu.

Hướng phát triển của luận văn: Với tiềm năng của lĩnh vực Thực tại ảo nói chung và phạm vi của đề tài nói riêng, tác giả rất mong muốn và sẽ cố gắng phát triển và hồn thiện được những vấn đề sau:

+ Trình bày chi tiết hơn nữa vào việc tìm hiểu được mối ràng buộc giữa các thuộc tính, các đối tượng chuyển động, ràng buộc giữa chuyển động với bề mặt đối tượng. Việc tạo ra mối ràng buộc giữa các thuộc tính khi đối tượng

chuyển động là khá khó khăn và phức tạp, nếu thực hiện tốt thì nó sẽ tạo ra một hoạt cảnh chuyển động linh hoạt phức tạp. Nếu có điều kiện trong tương lai khơng xa Tơi sẽ bổ sung phần này cho hồn thiện.

+ Nâng cao hơn nữa kỹ năng phân tích kỹ thuật tạo chuyển động, đảm bảo tính thẩm mỹ và chun nghiệp của một chương trình đồ hoạ vi tính. Tiến tới có thể tạo và kết xuất ra những chương trình lớn hơn đáp ứng được u cầu tích hợp vào các hệ mơ phỏng chuyển động thương mại.

+ Kết hợp nhuần nhuyễn hơn nữa giữa các kỹ thuật tạo chuyển động và hiệu ứng trong thực tại ảo. Tìm hiểu sâu thêm về tính năng của các bộ công cụ đã được phát triển từ đó có được một kiến thức tổng quát, chuyên sâu, sẵn sàng cho việc phân tích thiết kế các hệ Thực tại ảo có gắn với mô phỏng chuyển động,…

TÀI LIỆU THAM KHẢO Tiếng Việt

1. Lưu Triều Nguyên, (2002), Thiết Kế 3 chiều với 3DS Max 4, NXB Lao

Động - Xã Hội, Tr. 445-494, Tr. 589-595.

2. Nguyễn Huy Sơn (2006), “Virtual Reality Technologie - Công nghệ Thực tại ảo ”, http://tusach.thuvienkhoahoc.com

3. Lê Huy Vần (2005), Nghiên cứu phát hiện va chạm và ứng dụng, Khố

luận văn tốt nghiệp, ĐH Cơng nghệ -ĐHQG Hà Nội, Tr 41-50.

4. Đề tài “Ứng dụng công nghệ thực tại ảo Virtual Reality-VR trong bảo (adsbygoogle = window.adsbygoogle || []).push({});

tàng các di sản”, Đề tài trọng điểm cấp Viện KH và CN Việt Nam 2004- 2006.

Tiếng Anh

5. Applications, Hardware - Virtual Reality; http://vresources.org/ 6. Animation - Keyframe, IK;

http://www.autodesk.com/techpubs/aliasstudio/2010/index.html?url=Animat ionIKAddIKhandle.htm,topicNumber=d0e213743.

7. GameCharDevCh03 - Game Character Development with Maya Antony Ward Copyrigh @ 2005 by Antony Ward; http://www.peachpit.com.

8. Henry David (2005), “MD5Mesh and MD5Anim files formats”, http://tfc.duke.free.fr/coding/md5-specs-en.html

9. Keith Grochow, Steven L. Martin, Aaron Hertzmann,Zoran Popovi´c (2004), “Style-Based Inverse Kinematics”, in ACM Trans. on Graphics

(Proc. SIGGRAPH 2004)

10. Taku Komura, Yoshihisa Shinagawa, Tosiyasu L. Kunii, "An Inverse Kinematics Method Based on Muscle Dynamics," cgi, pp.0015, Computer

Graphics International 2001 (CGI'01), Hong Kong, China July 03-July 06

2001.

11. Deepak Tolani, Ambarish Goswami, and Norman I. Badler (2000), “Real- Time Inverse Kinematics Techniques for Anthropomorphic Limbs”,

Graphical Models and Image Processing Volume 62 Issue 5, Sept. 2000,

Academic Press, Inc. Orlando, FL, USA.

12. Jin Ok Kim, Bum Ro Lee, Chin Hyun Chung (2003), “The Inductive Inverse Kinematics Algorithm for Manipulating the Posture of an Articulated Body”, Intelligent Data Engineering and Automated Learning Lecture Notes in Computer Science Volume 2690, 2003, pp 135-142.

13. Taku Komura, Atsushi Kuroda, Shunsuke Kudoh, Chiew-Lan Tai, Yoshihisa Shinagawa(2003), “An inverse kinematics method for 3D figures with motion data”, Computer Graphics InternationalIEEE Computer Society

(2003) , p. 266-271.

Một phần của tài liệu Nghiên cứu một số kỹ thuật tạo chuyển động cho động vật (Trang 52 - 64)