Khóa luận Nghiên cứu và xây dựng thử nghiệm 3D Engine - Phần 9
Đặc điểm chủyếu của hệthống này là các đa giác biễu diễn cho mỗi hạt khi
dựng hình sẽhướng hoàn toàn vềhướng của camera (tức là vector pháp tuyến của
đa giác song song với hướng camera). Do đó khi camera ởbất cứ đâu thì ta cũng
thấy hạt là một hình vuông.
Trong smoke particle các vector V song song với T, và vector U song song với S
(với S, T là hệtrục tọa độcủa camera).
Hệthống hạt này được dùng đểgiảlập các hiệu ứng giống khói nhưkhói, máu,
lửa, năng lượng
hi người chơi ra khỏi phạm vi nhìn thấy của quái vật hay quái vật bị chết. Hình 8-4 Các thuộc tính biễu diễn cho hành vi của quái vật Trong đó: hướng nhìn. Hướng nhìn hiện thời của quái vật. vector khoảng cách tới người chơi. Biễu diễn độ sai biệt giữa vị trí hiện hành của người chơi và vị trí của quái vật. góc cần quay để hướng về người chơi. Góc biễu diễn sự sai biệt giữa vector hướng nhìn hiện hành và vector khoảng cách tới người chơi. Chương 8. Hệ thống hạt (Particle System) và AI - 129 - 8.2.2. Sơ đồ trạng thái Mỗi quái vật trong Game được biễu diễn bằng 6 trạng thái. Hình 8-5 Sơ đồ trạng thái của quái vật Các trạng thái Tên trạng thái Ý nghĩa Bình thường (Idle) Trạng thái bình thường, quái vật đứng yên không di chuyển Nhìn thấy (Sight) Nhìn thấy người chơi, quái vật thực hiện hành vi đe dọa người chơi Di chuyển (để tấn công) (Assault) Di chuyển hướng về phía người chơi để tấn công Đau đớn (Pain) Quái vật đau đớn khi bị thương và mất máu Tấn công (Attack) Quái vật tấn công người chơi bằng vũ khí hay tay không Chết (Death) Quái vật bị chết Bảng 8-1 Các trạng thái của quái vật Chương 8. Hệ thống hạt (Particle System) và AI - 130 - Các hành động Tên hành động Ý nghĩa Bị thương Quái vật bị thương do bị người chơi bắn trúng Máu = 0 Máu của quái vật = 0 Người chơi trong phạm vi nhìn thấy Vị trí của người chơi nằm trong phạm vi nhìn thấy của quái vật Người chơi trong phạm vi tấn công Vị trí của người chơi nằm trong phạm vi tấn công của quái vật Người chơi ra khỏi phạm vi nhìn thấy Vị trí của người chơi nằm ngoài phạm vi nhìn thấy của quái vật Người chơi ra khỏi phạm vi tấn công (nhưng trong phạm vi nhìn thấy) Vị trí của người chơi nằm ngoài phạm vi tấn công nhưng nằm trong phạm vi nhìn thấy của quái vật Bảng 8-2 Các hành động của quái vật 8.3. Tóm tắt Trong chương này chúng tôi trình bày 2 thành phần đặc sắc mang lại những hiệu ứng trong Game Dead Rising là hệ thống hạt và AI. Bên cạnh việc dựng hình chất lượng cao của Nwfc Engine, sự hộ trợ từ các hệ thống, hệ thống vật lý thì 2 thành phần này tạo ra những đặc trưng riêng biệt cho trò chơi. Chính 2 thành phần này sẽ tạo sức thu hút mạnh mẽ lên người chơi. Trong chương tiếp theo ta sẽ được giới thiệu và cài đặt, sử dụng Game demo Dead Rising và một số kết quả đạt được. Chương 9. Cài đặt và hướng dẫn sử dụng - 131 - Chương 9 Cài đặt và hướng dẫn sử dụng Môi trường phát triển ứng dụng và các công cụ Kết quả đạt được Hướng dẫn sử dụng Tóm tắt Chương 9. Cài đặt và hướng dẫn sử dụng - 132 - 9.1. Môi trường phát triển ứng dụng và các công cụ ¾ Nwfc 3D Engine được phát triển trên các môi trường và công cụ sau: Môi trường phát triển: Microsoft Visual C++ .NET 2002, DirectX 9.0c SDK Update Summer 2004 Môi trường triển khai: Microsoft Windows 2000 / XP (SP1,2) Các thư viện: o Thư viện debug và quản lý lỗi Debugger (www.triplebuffer.devmaster.net) ¾ Ứng dụng Game Dead Rising được phát triển trên các môi trường và công cụ sau: Môi trường phát triển: Microsoft Visual C++ .NET 2002 Môi trường thiết kế đồ họa 3D:3DS Max 7.0,Maya 5.0, Deep Exploration 3.5 Môi trường triển khai: Microsoft Windows 2000 / XP (SP1,2) Các thư viện: o Engine đồ họa 3D Nwfc (tự phát triển) o Engine vật lý NovodeX SDK 2.2 (www.novodex.com) o Thư viện debug và quản lý lỗi Debugger (www.triplebuffer.devmaster.net) o Thư viện âm thanh GAudio (www.obrazstudio.com/gaudio/) 9.2. Kết quả đạt được ¾ Các kết quả về đồ họa Chất lượng đồ họa và chi tiết mà Game đạt được đạt được là rất cao do có sử dụng hiệu ứng bump bề mặt bằng normal map (xem chương 4). Rất nhiều hiệu ứng được triển khai (hệ thống hạt, ánh sáng…) làm cho Game vô cùng chân thật góp phần làm tăng tính kinh dị cho Game. Bối cảnh được dựng lên rất đồ sộ gồm bầu trời, trạm nghiên cứu (trong và ngoài), địa hình sao Hỏa… Nwfc Engine đã hoàn thành xuất sắc vai trò của mình khi giúp Game phát triển trong thời gian cực kỳ ngắn (gần 2 tháng). Chương 9. Cài đặt và hướng dẫn sử dụng - 133 - ¾ Các kết quả về ứng dụng Game hoàn toàn có thể tương tác với người chơi do sử dụng Engine vật lý hỗ trợ. Chú ý phát triển nhiều chi tiết nhỏ nhặt trong trò chơi (như cửa tự động mở, vỏ đạn văng ra ngoài, thay đổi hình dáng khi máu giảm..) làm tăng tính hấp dẫn cho trò chơi. Game có cấp độ tăng dần theo thời gian. AI tuy nhỏ nhưng linh hoạt, góp phần không nhỏ vào sự hấp dẫn của Game. 9.3. Hướng dẫn sử dụng 9.3.1. Các phím điều khiển ¾ Điều khiển toàn cục No Phím Tác dụng 0 Tab Chuyển đổi camera (đi theo người chơi hay tự do) 1 Space Vào chế độ chơi (trong màn hình intro và credit) 2 Esc + Hiển thị màn hình credit (trong màn hình intro) + Thoát khỏi trò chơi (trong màn hình credit) Bảng 9-1 Các phím điều khiển toàn cục ¾ Điều khiển nhân vật No Phím Tác dụng 0 W Đi thẳng về phía trước 1 S Đi lùi về phía sau 2 A Xoay về hướng bên trái, có thể kết hợp với phím W để vừa đi vừa xoay 3 D Xoay về hướng bên phải, có thể kết hợp với phím W để vừa đi vừa xoay 4 Q Bật tắt chế độ nhắm, ở chế độ này tốc độ xoay chỉ bằng ½ tốc độ thực tế, do đó khi muốn xoay trở nhanh phải quay lại chế độ bình thường 5 R Nạp lại đạn 6 F Bắn 7 Shift Kéo dài tia lazer để nhắm (chỉ có tác dụng khi trong chế độ nhắm – phím Q), ở chế độ này tốc độ xoay chỉ bằng ¼ tốc độ thực tế 8 Space Nhảy cao, có thể kết hợp với các phím W, S, A, D để vừa nhảy, vừa xoay vừa di chuyển Bảng 9-2 Các phím điều khiển nhân vật Chương 9. Cài đặt và hướng dẫn sử dụng - 134 - ¾ Điều khiển camera (chế độ đi theo người chơi) No Phím Tác dụng 0 Page Up Di chuyển camera lên cao 1 Page Down Di chuyển camera xuống thấp 2 Home Reset camera về vị trí ban đầu 3 RMB Xoay hướng tự do (xung quanh người chơi) 4 Mouse Scroll Phóng to thu nhỏ Bảng 9-3 Các phím điều khiển camera ở chế độ đi theo người chơi ¾ Điều khiển camera (chế độ tự do) No Phím Tác dụng 0 Up Di chuyển camera về phía trước 1 Down Di chuyển camera về phía sau 2 Left Lách camera về phía trái (hướng không đổi) 3 Right Lách camera về phía phải (hướng không đổi) 4 Home Reset camera về vị trí ban đầu 5 Page Up Di chuyển camera lên cao 6 Page Down Di chuyển camera xuống thấp 7 RMB, LMB, MMB Xoay hướng tự do Bảng 9-4 Các phím điều khiển camera ở chế độ tự do Chương 9. Cài đặt và hướng dẫn sử dụng - 135 - 9.3.2. Các chế độ chơi Khi bắt đầu chơi người chơi sẽ vào màn hình giới thiệu (intro). Hình 9-1 Màn hình giới thiệu Trong màn hình giới thiệu mà nhấn ESC thì sẽ vào màn hình tác giả (credit) Hình 9-2 Màn hình tác giả Chương 9. Cài đặt và hướng dẫn sử dụng - 136 - Nếu đang ở trong màn hình giới thiệu hay tác giả mà nhấn Space Bar thì sẽ vào màn hình chơi Game. Hình 9-3 Màn hình chơi Game Ở phía góc dưới màn hình chơi Game có một số thông tin về trạng thái của người chơi. Góc dưới trái là thông tin về máu hiện tại của người chơi. Khi mất ½ máu, hình ảnh bề ngoài của người chơi sẽ bị thay đổi. Khi hết máu người chơi có thể tìm bình cứu thương trong khu vực hỗ trợ (Backup Storage) để bơm lại cho đầy. Góc dưới phải là thông tin về đạn của người chơi. Bao gồm số đạn hiện thời được nạp trong súng và tổng số đạn hiện có. Khi hết đạn trong súng, người chơi phải nạp lại đạn mới được bắn tiếp. Nếu hết đạn dự trữ người chơi không thể bắn được nữa, phải lấy thùng đạn trong khu vực hỗ trợ (Backup Storage) để nạp lại. Trong quá trình chơi, người chơi sẽ gặp nhiều loại quái vật khác nhau (mỗi lần chỉ xuất hiện 1 con mà thôi), quái vật sau sẽ mạnh hơn quái vật trước nhiều lần làm tăng độ khó cho Game theo thời gian. Chương 9. Cài đặt và hướng dẫn sử dụng - 137 - Hình 9-4 Người chơi sẽ gặp nhiều quái vật trong quá trình chơi Khi chơi người chơi hoàn toàn có thể tương tác với vật thể xung quanh, Engine vật lý được sử dụng trong Game sẽ đảm bảo quá trình va chạm này theo đúng các định luật vật lý. Chương 9. Cài đặt và hướng dẫn sử dụng - 138 - Hình 9-5 Các vật thể tương tác với nhau theo đúng các định luật vật lý Khi người chơi đến gần các cánh cửa, cửa sẽ tự động mở Hình 9-6 Cửa tự động mở khi người chơi đến gần Chương 9. Cài đặt và hướng dẫn sử dụng - 139 - Điểm nhấn trong trò chơi chính là khẩu súng mà người chơi sử dụng. Khẩu súng được thiết kế rất nhiều chi tiết nhằm tăng cường tính thực cho Game. Khi bắn, khói từ khẩu súng sẽ bốc lên, đồng thời vỏ đạn văng ra bên ngoài (theo đúng các định luật vật lý), cùng lúc đó nòng súng sẽ chớp sáng và đạn sẽ bay ra ngoài (vì đạn bay rất nhanh nên phải để ý ta mới thấy được đường đạn). Khi đạn va chạm vào các vật thể rắn các tia lửa va chạm sẽ tóe ra, khi đạn bắn trúng các vật thể sống thì máu sẽ phun ra. Hình 9-7 Nhiều chi tiết được thiết kế cho khẩu súng [1] Vỏ đạn văng ra ngoài [2] Khói xịt ra ở bộ phận nhả khói [3] Chớp sáng ở nòng súng [4] Tia đạn phóng ra ở tốc độ rất lớn [5] Tia lazer (màu đỏ) giúp nhắm bắn chính xác Chương 9. Cài đặt và hướng dẫn sử dụng - 140 - Hình 9-8 Khi bắn trúng quái vật, máu sẽ phun ra Ngoài ra, trong Game còn sử dụng rất nhiều hiệu ứng khói lửa và ánh sáng. Hình 9-9 Lửa bốc lên từ người quái vật Chương 9. Cài đặt và hướng dẫn sử dụng - 141 - Hình 9-10 Hiệu ứng ánh sáng khi quái vật chết hay xuất hiện Và nhiều hiệu ứng khác. Ngoài ra Game còn hỗ trợ rất nhiều tiếng động âm thanh giúp tăng cường tính thực cho Game. 9.4. Tóm tắt Chương này trình bày về các công nghệ, thư viện được sử dụng, môi trường cài đặt và triển khai của Game demo Dead Rising. Thông qua việc hướng dẫn sử dụng chúng tôi đề cập đến những tính năng nổi bậc của trò chơi thông qua một số hình ảnh được chụp từ Game. Mặc dù được phát triển trong thời gian rất ngắn nhưng Nwfc Engine và Game Dead Rising có chất lượng rất tốt với nhiều hiệu ứng phong phú.
File đính kèm:
- thu_nghiem_3d_engine_9.pdf