Mã tài liệu: 299086
Số trang: 45
Định dạng: zip
Dung lượng file: 3,159 Kb
Chuyên mục: Kỹ thuật - Công nghệ
Tóm tắt nội dung
Khái niệm Game Engine xuất hiện ở giữa thập kỉ 90 và ngày này đã trở thành một thành phần quan trọng trong quy trình phát triển trò chơi điện tử. Sự ra đời và phát triển của Game Engine đã mang đến cho các game hiện đại những bước tiến nhảy vọt về mọi mặt : đồ họa, khả năng tương tác, độ chân thực…
Khóa luận này đề cập đến phương pháp triển khai module “Quản lý khung cảnh” trong dự án “Xây dựng Game Engine đa nền tảng” của chúng tôi. Cụ thể, chương 1 và chương 2 mang đến cho người đọc một các nhìn tổng thể về kiến trúc của cả hệ thống Game Engine. Sau đó, chương 3 trình bày chi tiết về module “Quản lý khung cảnh”, đi sâu vào cách tổ chức khung cảnh và các giai đoạn trong quá trình render khung cảnh. Cuối cùng là thông tin kiểm thử thực nghiệm về hiệu năng của các kỹ thuật được triển khai và hướng phát triển trong tương lai.
Mục lục
Tóm tắt nội dung
Bảng các thuật ngữ
Danh mục hình vẽ
Chương 1. Đặt vấn đề 1
1.1. Bối cảnh nghiên cứu 1
1.2. Mục tiêu 1
1.3. Giới thiệu chung 2
Chương 2. Kiến trúc tổng thể 4
2.1. Thành phần Các kiểu dữ liệu cơ bản 5
2.2. Thành phần Giao tiếp với hệ điều hành 7
2.3. Thành phần Render Engine 8
2.4. Các thành phần còn lại. 10
Chương 3. Quản lý khung cảnh 11
3.1. Khái niệm khung cảnh và cách tổ chức khung cảnh 11
3.2. Thiết kế cấu trúc 13
3.3. Thiết kế chức năng 21
Chương 4. Tổng kết 34
4.1. Kết quả 34
4.2. Hướng phát triển 37
Chương 1. Đặt vấn đề
1.1. Bối cảnh nghiên cứu
Ngành công nghiệp phát triển game trên thế giới đang phát triển như vũ bão. Cách đây 20 năm, game rất đơn giản và chỉ cần một người hoặc một nhóm nhỏ người phát triển nhưng ngày nay, các game hiện đại với đồ họa và khả năng tương tác ấn tượng thường được phát triển bởi một đội ngũ đông đảo người thiết kế game, lập trình viên, nghệ sĩ… trong thời gian ròng rã từ một đến ba năm. Chính việc game ngày càng trở nên phức tạp như vậy nên hiện nay, các game thương mại không còn phát triển từ nguyên thủy nữa mà được phát triển lên từ game engine. Game engine hỗ trợ việc xây dựng game một cách nhanh chóng, đơn giản hơn đồng thời cung cấp khả năng tái sử dụng code cao do có thể phát triển nhiều game từ một game engine.
Ở Việt Nam, Game online mới chỉ thực sự thâm nhập vào thị trường cách đây 6 năm nhưng chỉ trong khoảng thời gian ít ỏi đó, chúng ta đã có một số lượng nhà phát hành game lên tới con số hàng chục, số game được phát hành cũng tương ứng với số lượng đó. Nhưng theo như chúng tôi được biết, gần như tất cả các game online đang được phát hành ở Việt Nam là được nhập khẩu từ nước ngoài, chủ yếu là Trung Quốc và Hàn Quốc ( trừ một số game nhỏ chơi trên web như đánh bài, đánh cờ ..) Một câu hỏi mà có lẽ tất cả những người chơi game đều trăn trở là “bao giờ mới được chơi game Việt Nam?”.
Chúng tôi chọn đề tài này làm khóa luận tốt nghiệp không phải với một tham vọng quá lớn, chỉ là muốn đi những bước chân chập chững đầu tiên vào thế giới phát triển game rộng lớn, để thu lượm kiến thức về lĩnh vực khó khăn nhưng đầy thú vị này và hi vọng ở một tương lai không xa, chúng tôi có thể góp một phần sức lực giái đáp trăn trở của cộng đồng người chơi game Việt Nam.
1.2. Mục tiêu
Xây dựng một Game Engine đa nền có thể chạy trên nhiều hệ điều hành khác nhau, hướng đến phân khúc phát triên game nhập vai trực tuyến (MMORPG). Game Engine này được đặt tên là GEM. Đây là mục tiêu dài hạn, còn hiện tại, do thời gian làm luận văn chỉ khoảng 5 tháng nên nhóm chúng tôi chỉ tập trung hoàn thiện thành phần Render Engine trong Game Engine ( Xem chi tiết ở chương 2).
1.3. Giới thiệu chung
Như đã giới thiệu ở trên, Game Engine là một lớp trung gian giữa game và nền tảng bên dưới, các thư viện lập trình cấp thấp. GEM là một game engine nên dĩ nhiên nó cũng tuân thủ theo nguyên tắc này
Hình 1: Kiến trúc phân tầng của GEM.
Đặt điểm đầu tiên của GEM là khả năng chạy đa nền.Để đặt được điều đó, GEM sử dụng các bản build trên các nền tảng khác nhau ( chứ không phải sử dụng thông dịch ). Các đoạn code phụ thuộc nền tảng sẽ được phân chia bằng việc sử dụng các cờ tiền biên dịch, hạn chế tối đa việc sử dụng các lớp abstract – vì việc này sẽ làm giảm hiệu suất chương trình đáng kể . Cũng vì lí đo chạy đa nền nên chúng tôi lựa chọn openGL làm giao diện lập trình đồ họa 3D cấp thấp cho GEM, do chuẩn openGL là chuẩn mở và không bị phụ thuộc vào hệ điều hành.
GEM được thiết kế hướng đối tượng và yêu cầu về hiệu năng chạy cao nên chúng tôi sử dụng ngôn ngữ C++ - ngôn ngữ đáp ứng hoàn hảo các điều kiện trên. Đa số các Game Engine trên thế giới hiện nay đều được phát triển bằng ngôn ngữ C++.
Chúng tôi thiết kế GEM nhắm đến phân khúc phát triển game nhập vai trực tuyến, nên khả năng tương thích với một phạm vi rộng cấu hình phần cứng là một điều kiện quan trọng, dự kiến sẽ support các card đồ họa hỗ trợ openGL 1.4 và shader 1.0 trở lên.
Những tài liệu gần giống với tài liệu bạn đang xem
📎 Số trang: 45
👁 Lượt xem: 501
⬇ Lượt tải: 16
📎 Số trang: 48
👁 Lượt xem: 467
⬇ Lượt tải: 16
📎 Số trang: 48
👁 Lượt xem: 508
⬇ Lượt tải: 16
📎 Số trang: 51
👁 Lượt xem: 429
⬇ Lượt tải: 16
📎 Số trang: 68
👁 Lượt xem: 702
⬇ Lượt tải: 16
📎 Số trang: 70
👁 Lượt xem: 573
⬇ Lượt tải: 16
📎 Số trang: 50
👁 Lượt xem: 413
⬇ Lượt tải: 16
📎 Số trang: 50
👁 Lượt xem: 780
⬇ Lượt tải: 16
📎 Số trang: 166
👁 Lượt xem: 506
⬇ Lượt tải: 16
📎 Số trang: 166
👁 Lượt xem: 509
⬇ Lượt tải: 16
📎 Số trang: 28
👁 Lượt xem: 633
⬇ Lượt tải: 16
Những tài liệu bạn đã xem