Begining DX9_10
Số trang: 13
Loại file: pdf
Dung lượng: 440.32 KB
Lượt xem: 11
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Đến lúc này, bạn đã có những kiến thức cơ bản để tạo ra một hệ thống particle. Bằng cách thay đổi các thuộc tính của particle, bạn có thể tạo ra rất nhiều các hiệu ứng particle ấn tương.
Nội dung trích xuất từ tài liệu:
Begining DX9_10Simpo PDF Merge and Split Unregistered Version - Dịch bởi TransTeam diễn đàn Gamedev.VN Beginning DirectX9 http://www.simpopdf.com Tổng kết chương Đến lúc này, bạn đã có những kiến thức cơ bản để tạo ra một hệ thống particle. Bằng cách thay đổi các thuộc tính của particle, bạn có thể tạo ra rất nhiều các hiệu ứng particle ấn tương. Những gì đã được học Trong chương này bạn đã được học: ■ Particle dùng để làm gi ■ Hệ thống particle được dùng như thế nào ■ Cách tạo và sử dụng emitter ■ Sự hữu dụng của point sprites khi làm việc với particle ■ Cách render point sprites Câu hỏi cuối chương Bạn có thể tìm thấy đáp án cho phần này và phần bài tập tự làm trong phụ lục “Đáp án phần bài tập cuối chương”. 1. Những thuộc tính nào cần thiết để tạo một particle? 2. Ta cần kết hợp 2 thuộc tính nào để làm particle chuyển động? 3. Đối tượng nào được sử dụng để cài đặt các thuộc tính cho particle? 4. Chế độ vẽ nào sử dụng cho DrawPrimitive để vẽ point sprite? 5. Lợi thế của point sprite so với billboard? Bài tập 1. Lập một hàm update điều khiển cho particle kết thúc sau 300 frame. 131Simpo PDF Merge and Split Unregistered Version - Dịch bởi TransTeam diễn đàn Gamedev.VN Beginning DirectX9 http://www.simpopdf.com 2. Tạo một emitter phóng các particle một cách liên tục. 132Simpo PDF Merge and Split Unregistered Version - Dịch bởi TransTeam diễn đàn Gamedev.VN Beginning DirectX9 http://www.simpopdf.com CHƯƠNG 9 SỬ DỤNG DIRECTINPUT K hả năng tương tác với thế giới ảo là một vấn đề then chốt trong bất kỳ một game nào, việc đó có thể thông qua bàn phím, chuột, hoặc bất kỳ một thiết bị nào. Trong chương này, tôi sẽ giải thích lợi ích của DirectInput và cách sử dụng chúng. Đây là những vẫn đề mà bạn sẽ học trong chương này: DirectInput có thể làm cuộc sống của bạn dễ dàng hơn như thế nào. Các dạng thiết bị mà DirectInput có thể hỗ trợ Phát hiện thiết bị input đang cài đặt hiện tại như thế nào Sử dụng bàn phím, chuột và cần điều khiển như thế nào. Sử dụng điều khiển tùy biến (analog) hoặc điều khiến số(digital) như thế nào Làm thế nào để hỗ trợ nhiều thiết bị input. Làm thế nào để sử dụng force feedback. I Need Input Tất cả mọi game đều cần khả năng tương tác với người sử dụng chúng. Game của bạn luôn cần cách khai thác điều khiển từ người chơi. Một thiết bị input có thể được sử dụng để điều khiển xe hơi theo nhiều hướng của đường ray, di chuyển đặc tính xung quanh môi trường của nó hoặc bất cứ thứ gì mà bạn có thể tưởng tượng. Trở về những ngày của DOS, người lập trình viên có sự lựa chọn thật ít ỏi, còn sự thăm dò phần cứng thì bị chặn nếu muốn lấy sự kiện nhấn phím từ bàn phím. Hàm chuẩn trong C của thời kỳ đó như getchar rất chậm và không đủ hữu ích cho game. Người ta cần một cách khác tốt hơn. Basic Input Output System (BIOS) được đưa ra là mức phần mềm thấp nhất trong máy tính. Được lưu giữ trong bộ nhớ ROM trên motherboard, BIOS thông báo cho hệ thống rằng phải khởi động và chuẩn bị phần cứng cho hệ điều hành như thế nào. Trong DOS, người lập trình viên có đựơc truy cập trực tiếp tới BIOS thông qua ngôn ngữ Assemply. Vì BIOS biết tất cả những gì mà phần cứng đã làm, nên những người thiết kế có thể hỏi chúng về những thông tin chính xác. Một 133Simpo PDF Merge and Split Unregistered Version - Dịch bởi TransTeam diễn đàn Gamedev.VN Beginning DirectX9 http://www.simpopdf.com trong những phần quan trọng mà của hệ điều hành mà BIOS luôn quan sát là bàn phím. Mỗi lần nhấn một phím sẽ gây ra một lần ngắt phần cứng và thông báo hệ điều hành được thông báo rằng có một phím đã nhấn. Vì việc này hầu như sảy ra ngay lập tức nên một phương thức nhận sự kiện nhấn phím nhanh và hiệu quả từ bàn phím đã có hiệu lực. Window NT đã loại trừ khả năng đọc bàn phím trực tiếp từ phần cứng. Window đã trở thành một ranh giới tuyệt đối giữa phần mềm ứng dụng và phần cứng. Bất kỳ một thông tin cần thiết về hệ thống đều phải được lấy từ hệ điều hành vì các ứng dụng không còn được cho phép truy cập trực tiếp tới phần cứng nữa. Window có cách riêng lấy dữ liệu vào từ người sử dụng thông qua hàng đợi thông điệp. Bạn đã nhìn thấy hàng đợi thông điệp trong sách ở phần trước: MSG msg; ZeroMemory (&msg, sizefo(msg)); While(msg.message!=WM_QUIT) { //kiểm ta thông điệp if( PeekMessage(&msg, NULL, OU, OU, PM_REMOVE)) { TranslateMessage(&msg); DispatchMesage(&msg); } } Hàng đợi thông điệp thu thập các sự kiện như dịch chuyển chuột và bàn phím đưa vào từ hệ thống. Mặc dù phương thức này đủ đáp ứng cho ứng dụng Windows, nhưng nó không đủ nhanh cho game. Hầu hết các nhà thiết kế đều quay trở về các hàm khác của Window như GetAsyncKeyState – là hàm lấy thông tin mà họ cần. GetAsyncKeyState cho phép kiểm tra các phím trên bàn phím, thậm chí nó còn cho phép kiểm tra các tổ hợp phím và trạng thái của sự kiện nhấn chuột. Phưong thức tập trung input của người sử dụng đã trở thành phổ biến trong thiết kế game, nhưng có một vấn đề lớn: không cho phép input được thu thập từ các thiết bị khác như gamepads hoặc cần điều khiển. Người làm game bị cản trở do sự hỗ trợ chỉ dành riêng cho một số thiết bị vì mỗi thiết bị thường có một phương pháp ...
Nội dung trích xuất từ tài liệu:
Begining DX9_10Simpo PDF Merge and Split Unregistered Version - Dịch bởi TransTeam diễn đàn Gamedev.VN Beginning DirectX9 http://www.simpopdf.com Tổng kết chương Đến lúc này, bạn đã có những kiến thức cơ bản để tạo ra một hệ thống particle. Bằng cách thay đổi các thuộc tính của particle, bạn có thể tạo ra rất nhiều các hiệu ứng particle ấn tương. Những gì đã được học Trong chương này bạn đã được học: ■ Particle dùng để làm gi ■ Hệ thống particle được dùng như thế nào ■ Cách tạo và sử dụng emitter ■ Sự hữu dụng của point sprites khi làm việc với particle ■ Cách render point sprites Câu hỏi cuối chương Bạn có thể tìm thấy đáp án cho phần này và phần bài tập tự làm trong phụ lục “Đáp án phần bài tập cuối chương”. 1. Những thuộc tính nào cần thiết để tạo một particle? 2. Ta cần kết hợp 2 thuộc tính nào để làm particle chuyển động? 3. Đối tượng nào được sử dụng để cài đặt các thuộc tính cho particle? 4. Chế độ vẽ nào sử dụng cho DrawPrimitive để vẽ point sprite? 5. Lợi thế của point sprite so với billboard? Bài tập 1. Lập một hàm update điều khiển cho particle kết thúc sau 300 frame. 131Simpo PDF Merge and Split Unregistered Version - Dịch bởi TransTeam diễn đàn Gamedev.VN Beginning DirectX9 http://www.simpopdf.com 2. Tạo một emitter phóng các particle một cách liên tục. 132Simpo PDF Merge and Split Unregistered Version - Dịch bởi TransTeam diễn đàn Gamedev.VN Beginning DirectX9 http://www.simpopdf.com CHƯƠNG 9 SỬ DỤNG DIRECTINPUT K hả năng tương tác với thế giới ảo là một vấn đề then chốt trong bất kỳ một game nào, việc đó có thể thông qua bàn phím, chuột, hoặc bất kỳ một thiết bị nào. Trong chương này, tôi sẽ giải thích lợi ích của DirectInput và cách sử dụng chúng. Đây là những vẫn đề mà bạn sẽ học trong chương này: DirectInput có thể làm cuộc sống của bạn dễ dàng hơn như thế nào. Các dạng thiết bị mà DirectInput có thể hỗ trợ Phát hiện thiết bị input đang cài đặt hiện tại như thế nào Sử dụng bàn phím, chuột và cần điều khiển như thế nào. Sử dụng điều khiển tùy biến (analog) hoặc điều khiến số(digital) như thế nào Làm thế nào để hỗ trợ nhiều thiết bị input. Làm thế nào để sử dụng force feedback. I Need Input Tất cả mọi game đều cần khả năng tương tác với người sử dụng chúng. Game của bạn luôn cần cách khai thác điều khiển từ người chơi. Một thiết bị input có thể được sử dụng để điều khiển xe hơi theo nhiều hướng của đường ray, di chuyển đặc tính xung quanh môi trường của nó hoặc bất cứ thứ gì mà bạn có thể tưởng tượng. Trở về những ngày của DOS, người lập trình viên có sự lựa chọn thật ít ỏi, còn sự thăm dò phần cứng thì bị chặn nếu muốn lấy sự kiện nhấn phím từ bàn phím. Hàm chuẩn trong C của thời kỳ đó như getchar rất chậm và không đủ hữu ích cho game. Người ta cần một cách khác tốt hơn. Basic Input Output System (BIOS) được đưa ra là mức phần mềm thấp nhất trong máy tính. Được lưu giữ trong bộ nhớ ROM trên motherboard, BIOS thông báo cho hệ thống rằng phải khởi động và chuẩn bị phần cứng cho hệ điều hành như thế nào. Trong DOS, người lập trình viên có đựơc truy cập trực tiếp tới BIOS thông qua ngôn ngữ Assemply. Vì BIOS biết tất cả những gì mà phần cứng đã làm, nên những người thiết kế có thể hỏi chúng về những thông tin chính xác. Một 133Simpo PDF Merge and Split Unregistered Version - Dịch bởi TransTeam diễn đàn Gamedev.VN Beginning DirectX9 http://www.simpopdf.com trong những phần quan trọng mà của hệ điều hành mà BIOS luôn quan sát là bàn phím. Mỗi lần nhấn một phím sẽ gây ra một lần ngắt phần cứng và thông báo hệ điều hành được thông báo rằng có một phím đã nhấn. Vì việc này hầu như sảy ra ngay lập tức nên một phương thức nhận sự kiện nhấn phím nhanh và hiệu quả từ bàn phím đã có hiệu lực. Window NT đã loại trừ khả năng đọc bàn phím trực tiếp từ phần cứng. Window đã trở thành một ranh giới tuyệt đối giữa phần mềm ứng dụng và phần cứng. Bất kỳ một thông tin cần thiết về hệ thống đều phải được lấy từ hệ điều hành vì các ứng dụng không còn được cho phép truy cập trực tiếp tới phần cứng nữa. Window có cách riêng lấy dữ liệu vào từ người sử dụng thông qua hàng đợi thông điệp. Bạn đã nhìn thấy hàng đợi thông điệp trong sách ở phần trước: MSG msg; ZeroMemory (&msg, sizefo(msg)); While(msg.message!=WM_QUIT) { //kiểm ta thông điệp if( PeekMessage(&msg, NULL, OU, OU, PM_REMOVE)) { TranslateMessage(&msg); DispatchMesage(&msg); } } Hàng đợi thông điệp thu thập các sự kiện như dịch chuyển chuột và bàn phím đưa vào từ hệ thống. Mặc dù phương thức này đủ đáp ứng cho ứng dụng Windows, nhưng nó không đủ nhanh cho game. Hầu hết các nhà thiết kế đều quay trở về các hàm khác của Window như GetAsyncKeyState – là hàm lấy thông tin mà họ cần. GetAsyncKeyState cho phép kiểm tra các phím trên bàn phím, thậm chí nó còn cho phép kiểm tra các tổ hợp phím và trạng thái của sự kiện nhấn chuột. Phưong thức tập trung input của người sử dụng đã trở thành phổ biến trong thiết kế game, nhưng có một vấn đề lớn: không cho phép input được thu thập từ các thiết bị khác như gamepads hoặc cần điều khiển. Người làm game bị cản trở do sự hỗ trợ chỉ dành riêng cho một số thiết bị vì mỗi thiết bị thường có một phương pháp ...
Tìm kiếm theo từ khóa liên quan:
tài liệu cơ khí kỹ thuật cơ khí công nghệ cơ khí chế tạo máy tài liệu về chế tạo máyTài liệu cùng danh mục:
-
113 trang 340 1 0
-
Giáo trình công nghệ bảo dưỡng và sửa chữa ô tô - Chương 5
74 trang 319 0 0 -
Hệ thống điện thân xe và điều khiển gầm ô tô - ĐH SPKT Hưng Yên
249 trang 319 0 0 -
Giáo trình Công nghệ hàn điện nóng chảy (Tập 2 - Ứng dụng): Phần 2
186 trang 291 0 0 -
199 trang 287 4 0
-
6 trang 276 0 0
-
16 trang 263 0 0
-
Giáo trình Vật liệu học (Nghề: Công nghệ ô tô - Trung cấp) - Trường Cao đẳng Cơ giới (2019)
71 trang 254 2 0 -
Giáo trình Hệ thống điều hòa không khí trên ô tô
72 trang 252 0 0 -
9 trang 244 0 0
Tài liệu mới:
-
91 trang 0 0 0
-
Đề tài: Hoàn thiện hệ thống kênh phân phối
76 trang 1 0 0 -
26 trang 0 0 0
-
238 trang 0 0 0
-
77 trang 0 0 0
-
Sáng kiến kinh nghiệm Mầm non: Những biện pháp nâng cao chất lượng bữa ăn cho trẻ mầm non
22 trang 0 0 0 -
66 trang 0 0 0
-
Giáo án Sinh hoạt ngoại khóa THPT: Hoạt động Ngày hội văn hóa dân gian năm học 2020-20201
10 trang 0 0 0 -
Đề thi tuyển sinh vào lớp 10 môn Toán (Chuyên) năm 2024 có đáp án - Trường THCS Ninh Vân, Hoa Lư
13 trang 0 0 0 -
Sandbox và TrustRank của Google
4 trang 1 0 0