Khóa Luận Tốt Nghiệp: Phát Triển Game 3D Thế Giới Mở

Khóa luận tốt nghiệp khám phá quy trình phát triển game 3D thế giới mở, từ ý tưởng đến thực hiện, mang đến trải nghiệm độc đáo cho người chơi.

Chuyên ngành

Công nghệ phần mềm

Người đăng

Ẩn danh

Thể loại

khóa luận tốt nghiệp

2023

76
6
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

1. CHƯƠNG 1: ĐẶT VẤN ĐỀ

1.1. Lý do chọn đề tài

1.2. Tính năng khác biệt

1.3. Hệ thống phát triển của quần thể/quần xã sinh vật (AI)

1.4. Hệ thống quan hệ giữa các loài

1.5. Mục tiêu đề tài

1.6. Đối tượng nghiên cứu

1.7. Đối tượng hướng đến trong phạm vi đề tài

1.8. Phạm vi nghiên cứu

1.9. Phương pháp thực hiện

1.10. Công nghệ

1.11. Kết quả mong đợi

1.12. Kế hoạch làm việc

Tóm tắt

I. Tổng Quan Về Phát Triển Game 3D Thế Giới Mở

Phát triển game 3D thế giới mở là một lĩnh vực đầy thách thức và hấp dẫn trong ngành công nghiệp game. Với sự phát triển của công nghệ đồ họa và phần mềm, việc tạo ra những trải nghiệm chơi game phong phú và đa dạng đã trở nên khả thi hơn bao giờ hết. Khóa luận tốt nghiệp của Nguyễn Tuấn Kiệt tập trung vào việc phát triển một trò chơi 3D thế giới mở, nơi người chơi có thể tự do khám phá và tương tác với môi trường xung quanh. Điều này không chỉ đòi hỏi kỹ năng lập trình game mà còn cần sự sáng tạo trong thiết kế và xây dựng hệ thống gameplay.

1.1. Lịch Sử Phát Triển Game 3D

Ngành công nghiệp game đã trải qua nhiều giai đoạn phát triển, từ những trò chơi 2D đơn giản đến những tựa game 3D phức tạp. Sự tiến bộ trong công nghệ đồ họa đã mở ra nhiều cơ hội cho các nhà phát triển.

1.2. Tầm Quan Trọng Của Game Thế Giới Mở

Game thế giới mở cho phép người chơi tự do khám phá, tạo ra những trải nghiệm cá nhân hóa. Điều này giúp tăng cường sự tương tác và sự gắn kết của người chơi với trò chơi.

II. Thách Thức Trong Phát Triển Game 3D Thế Giới Mở

Phát triển game 3D thế giới mở không chỉ đơn thuần là việc lập trình mà còn bao gồm nhiều thách thức khác nhau. Các nhà phát triển phải đối mặt với việc tối ưu hóa hiệu suất, thiết kế gameplay hấp dẫn và xây dựng một thế giới sống động. Những thách thức này đòi hỏi sự sáng tạo và kỹ năng kỹ thuật cao.

2.1. Tối Ưu Hóa Hiệu Suất Game

Một trong những thách thức lớn nhất là đảm bảo game hoạt động mượt mà trên nhiều nền tảng khác nhau. Việc tối ưu hóa đồ họa và xử lý dữ liệu là rất quan trọng.

2.2. Thiết Kế Gameplay Hấp Dẫn

Gameplay cần phải thú vị và đa dạng để giữ chân người chơi. Các nhà phát triển cần phải nghiên cứu và thử nghiệm nhiều cơ chế khác nhau.

III. Phương Pháp Phát Triển Game 3D Thế Giới Mở

Để phát triển một trò chơi 3D thế giới mở, các nhà phát triển cần áp dụng nhiều phương pháp và công nghệ khác nhau. Khóa luận của Nguyễn Tuấn Kiệt đã sử dụng Godot Engine và các phương pháp như Procedural Animation để tạo ra một trải nghiệm chơi game độc đáo.

3.1. Sử Dụng Godot Engine

Godot Engine là một công cụ mạnh mẽ cho việc phát triển game 3D. Nó cung cấp nhiều tính năng hữu ích cho các nhà phát triển, từ lập trình đến thiết kế đồ họa.

3.2. Áp Dụng Procedural Animation

Procedural Animation giúp tạo ra các hoạt ảnh tự động, giảm thiểu công sức thiết kế và mang lại sự sống động cho các nhân vật trong game.

IV. Ứng Dụng Thực Tiễn Của Game 3D Thế Giới Mở

Game 3D thế giới mở không chỉ mang lại giá trị giải trí mà còn có thể được ứng dụng trong nhiều lĩnh vực khác nhau như giáo dục, mô phỏng và nghiên cứu. Những trò chơi này có thể giúp người chơi phát triển kỹ năng tư duy và giải quyết vấn đề.

4.1. Giáo Dục Qua Game

Game có thể được sử dụng như một công cụ giáo dục, giúp người học tiếp cận kiến thức một cách thú vị và sinh động.

4.2. Mô Phỏng Thực Tế

Các trò chơi 3D có thể mô phỏng các tình huống thực tế, giúp người chơi rèn luyện kỹ năng và chuẩn bị cho các tình huống trong cuộc sống.

V. Kết Luận Và Tương Lai Của Game 3D Thế Giới Mở

Phát triển game 3D thế giới mở là một lĩnh vực đầy tiềm năng và cơ hội. Với sự phát triển không ngừng của công nghệ, tương lai của ngành công nghiệp game hứa hẹn sẽ mang lại nhiều trải nghiệm mới mẻ cho người chơi. Khóa luận của Nguyễn Tuấn Kiệt không chỉ là một bước tiến trong sự nghiệp cá nhân mà còn góp phần vào sự phát triển chung của ngành công nghiệp game.

5.1. Tiềm Năng Phát Triển

Ngành công nghiệp game đang trên đà phát triển mạnh mẽ, với nhiều cơ hội cho các nhà phát triển sáng tạo và đổi mới.

5.2. Hướng Đi Tương Lai

Các công nghệ mới như thực tế ảo và trí tuệ nhân tạo sẽ tiếp tục định hình tương lai của game 3D thế giới mở, mang lại những trải nghiệm chưa từng có cho người chơi.

10/07/2025
Khóa luận tốt nghiệp phát triển game 3d thế giới mở developing 3d openworld game

Trích đoạn nội dung tài liệu

Đặt vấn đề Thời đại hiện nay khi mà công nghệ thông tin vô cùng phát triển, xã hội cần những người năng động, cầu thị trong việc tiếp thu và lựa chọn thông tin, học hỏi nhanh chóng, và đáp ứng nhu cầu linh hoạt và ngày càng nâng cao của thị trường lao động. Tuy nhiên, tích luỹ đủ kiến thức, kinh nghiệm cần thiết, định hướng đúng đắn là điều không phải tất cả mọi người đều làm được. Đặc biệt, học sinh sinh viên thường chỉ tiếp thu kiến thức theo cách truyền thống là từ sách vở hoặc giảng viên, thiếu sự va chạm với thực tế cũng như học hỏi kiến thức từ bên ngoài. Với sự phát triển nhanh chóng, không ngừng của tri thức nhân loại, các bạn trẻ luôn khao khát tìm kiếm người cố vấn và định hướng cho sự phát triển cá nhân về kiến thức, sự nghiệp.

Vì vậy, không ít nền tảng đã ra đời nhằm thoả mãn nhu cầu này. Lý do chọn đề tài Mục tiêu của đề tài không chỉ dừng lại ở việc phát triển một trò chơi chỉ đơn thuần có giá trị về mặt giải trí, bản thân tác giả đề tài muốn áp dụng được các kiến thức đa ngành (về sinh học, vật lý,…) vào trò chơi. Thông thường, các hướng phát triển của một trò chơi sẽ xoay quanh người chơi (nhân vật mà người chơi điều khiển). Việc này về cơ bản không ảnh hưởng gì tới giá trị của một trò chơi cả, tuy nhiên nếu xét về việc phát triển một thế giới mở, việc một khu vực chỉ bắt đầu vận hành khi có bản thân người chơi xuất hiện sẽ khiến cho thế giới đó thiếu đi chiều sâu.

Mục tiêu lớn nhất mà tác giả đề tài muốn đạt được đó chính là phát triển được trò chơi sở hữu một thế giới luôn vận hành mà không cần có sự có mặt của nhân vật chính. Bản thân người chơi cũng chỉ là một phần của mắt xích sinh học, không phải là người điều khiển thế giới đó. Tính năng khác biệt Tác giả đã nghiên cứu, trải nghiệm và phân tích các trò chơi cùng thể loại và 17 nhận thấy một số vấn đề sau: 1. Hệ thống phát triển của quần thể/quần xã sinh vật (AI) Trò chơi thế giới mở là một thể loại game mà người chơi được tự do khám phá một thế giới ảo rộng lớn, không bị giới hạn bởi các cấu trúc hay hướng dẫn tuyến tính.

Dựa trên định nghĩa, đa số các trò chơi thuộc thể loại này đều tập trung phát triển sao cho người chơi không cần phải đi theo một chuỗi nhiệm vụ tuyến tính nào đó, mà có thể tự do làm các hành động một cách tự do, không theo trật tự. Tuy nhiên, thế giới chủ yếu vẫn sẽ vận hành xoay quanh người chơi. Người chơi đơn thuần chỉ cần lựa chọn xem mình sẽ hành động ra sao, mở nội dung của khu vực nào trước. Các sinh vật/kẻ địch trong trò chơi sẽ lao vào chiến đấu với người chơi mà không quan tâm hay tương tác với sinh vật khác.

Thậm chí, các sinh vật đó sẽ không có bất kỳ hành động gì cho đến khi người chơi đi vào phạm vi cần thiết của chúng. Để có thể tăng thêm chiều sâu cho thế giới game mà người chơi trải nghiệm, em đã triển khai một giải pháp để giúp cho các loài trong trò chơi có thể tự sinh tồn, phát triển quần thể sao cho ngày một mạnh mẽ hơn mà không cần phải phụ thuộc vào sự tồn tại của nhân vật chính là người chơi. Giải pháp này sẽ bao gồm có hệ thống quần thể, con đầu đàn và hệ thống phân công công việc dựa trên hệ số quan trọng và thời gian trong ngày. Hệ thống quan hệ giữa các loài Giải quyết được vấn đề “bị động” của các loài, sinh vật trong trò chơi điện tử, tính năng tiếp theo mà em muốn thực hiện, chú trọng đến chính là hệ thống quan hệ/cách hành xử giữa các loài với nhau.

Cụ thể hơn, các sinh vật được sẽ không chỉ đơn thuần được phân làm hai nhóm là NPC (non-playable characters) và Enemies (kẻ địch), mà toàn bộ các thực thể trong trò chơi sẽ có chung một định danh là Entities (thực thể). 18 Giữa các thực thể với nhau sẽ có các mối quan hệ khác nhau, người chơi sẽ có nhiều hơn một phương thức để tiếp cận một sinh vật bất kỳ trong trò chơi, các đối tượng khác ngoài nhân vật chính cũng không chỉ chăm chăm vào việc tấn công người chơi nữa. Người chơi có thể thực hiện các hành động để lấy cảm tình của các quần thể, từ đó chúng sẽ đáp lại ta dựa trên hành vi mà ta thực hiện. Mục tiêu đề tài - Nghiên cứu và áp dụng Steering Behaviors cho việc di chuyển của AI trở nên tự nhiên nhưng không tiêu tốn quá nhiều tài nguyên để thực thi.

- Nghiên cứu và học hỏi phương pháp Neural Network để ứng dụng cho việc tiếp nhận thông tin, xử lý và đưa ra hành động tương ứng của AI. - Xây dựng hệ thống quan hệ giữa các quần thể, quần xã. - Xây dựng đa dạng các chức năng, cơ chế để khiến cho trải nghiệm chơi game của người chơi trở nên thú vị, không chỉ gò bó ở mặt học thuật. - Phát triển trò chơi ở mức độ hoàn thiện nhất định.

Đối tượng nghiên cứu 1. Các công nghệ - Game Engine: Godot Mono 4. - IDE: Visual Studio Code. - Version Control: Github.

Đối tượng hướng đến trong phạm vi đề tài - Những người thích trò chơi điện tử, có nhu cầu trải nghiệm một thế giới game có chiều sâu, thích sự tương tác giữa các loài sinh vật giống và khác nhau. 19 - Những người chơi thích thể loại game Open-world, Roguelike/lite nói riêng. Thích sự thăng tiến sức mạnh của nhân vật thông qua việc phiêu lưu, khám phá, nâng cấp từ những nguyên liệu kiếm được. Phạm vi nghiên cứu Phạm vi môi trường: Windows.

Phạm vi chức năng: Đối với trò chơi: - Procedural Map Generation: hệ thống tạo dựng bản đồ một cách ngẫu nhiên theo một quy luật định sẵn. - Hệ thống hành vi của AI. - Hệ thống quần thể. - Hệ thống quan hệ trong quần xã.

Đối với người chơi: - Di chuyển nhân vật. - Tấn công, nhào lộn, né tránh. - Thu lượm/ Sử dụng vật phẩm. - Trang bị/ Tháo gỡ vật phẩm.

- Nấu ăn & Chế tạo trang bị. Phương pháp thực hiện Phương pháp làm việc: - Sinh viên làm việc dưới sự hướng dẫn, hỗ trợ của giảng viên hướng dẫn. Phương pháp nghiên cứu: - Tham khảo trực tiếp từ việc chơi các dòng game cùng thể loại. - Nghiên cứu chuyên sâu tài liệu công nghệ hỗ trợ liên quan.

Phương pháp công nghệ: - Nghiên cứu về Neural Network để ứng dụng cho xử lý hành vi của AI. 20 - Ứng dụng Steering Behaviors để chân thật hóa cách di chuyển của AI. - Quản lý mã nguồn sử dụng Github, quản lý tiến độ sử dụng Google Sheet, Milanote. Godot Engine Godot Engine là một công cụ phát triển trò chơi mã nguồn mở.

Nó cung cấp một môi trường phát triển tích hợp để tạo ra các trò chơi đa nền tảng, bao gồm các nền tảng như Windows, macOS, Linux, iOS, Android và nhiều nền tảng khác. Godot Engine được phát triển bởi một nhóm lập trình viên tự do và được phát hành theo giấy phép MIT, cho phép người dùng sử dụng, sửa đổi và phân phối mã nguồn một cách tự do. Điều này có nghĩa là bất kỳ ai cũng có thể sử dụng Godot Engine mà không cần trả bất kỳ khoản phí nào và có quyền truy cập vào mã nguồn của nó để tùy chỉnh theo nhu cầu của bạn. Godot Engine cung cấp một công cụ tạo trò chơi có giao diện dễ sử dụng và linh hoạt.

Nó sử dụng một ngôn ngữ lập trình tự động gọi là GDScript, tuy nhiên, bạn cũng có thể sử dụng các ngôn ngữ khác như C# hoặc C++ để phát triển trò chơi trong Godot Engine. Godot Engine hỗ trợ nhiều tính năng như hệ thống đồ họa 2D và 3D, hệ thống vật lý, xử lý âm thanh, quản lý tài nguyên, quản lý cảnh, giao diện người dùng, và nhiều hơn nữa. Nó cung cấp một cộng đồng lớn và nhiều tài liệu hướng dẫn giúp bạn học và phát triển trò chơi trong Godot Engine. Hình 2-1: Godot Engine 22 2.

Hệ thống tạo dựng màn chơi 2. Khái niệm Tạo màn chơi tự động (Procedural Map Generation) là quá trình tạo ra các màn chơi một cách tự động bằng cách sử dụng các thuật toán và quy tắc được xác định từ trước bởi Game Designers/Game Developers. Procedural Map Generation cho phép người phát triển tạo ra các màn chơi ngẫu nhiên nhưng vẫn tuân theo các giới hạn, quy tắc được đặt sẵn thay vì phải thiết kế và xây dựng các màn chơi một cách thủ công. Các phương pháp tạo màn chơi tự động không chỉ có lợi về mặt phát triển (tiết kiệm thời gian, giảm số lượng tài nguyên cần thiết,…) mà còn nâng cao trải nghiệm của người chơi ở một số thể loại nhất định yêu cầu sự thay đổi trong quá trình chơi.

Quá trình tạo bản đồ có thể áp dụng cho nhiều thể loại trò chơi, từ game thế giới mở, game hành động, game nhập vai cho đến game chiến thuật. Cách thức tạo bản đồ thường được xác định bởi các quy tắc logic và thuật toán, và có thể bao gồm các yếu tố như địa hình, địa điểm, đối tượng, và phân bố tài nguyên. Tuy nhiên, cũng có một số thách thức khi sử dụng Procedural Map Generation. Thuật toán và các quy tắc được đặt ra ảnh hưởng rất lớn đến tính khả thi của màn chơi.

Nếu người phát triển sử dụng thuật toán và đặt ra các quy tắc không đủ đáp ứng việc tạo dựng thế giới, khả năng người chơi bị kẹt lại, không thể tiếp tục tiến trình chơi là hoàn toàn có thể xảy ra. Ngoài ra, việc kiểm soát chất lượng và đảm bảo rằng các màn chơi được tạo ra vẫn cung cấp được trải nghiệm chơi game tốt nhất cũng là một yếu tố vô cùng quan trọng. Tổng quan phương pháp xây dựng Ngày nay có rất nhiều kỹ thuật tạo màn chơi tự động. Song, hầu hết các phương 23 pháp đều sẽ trải qua 5 bước sau: Hình 2-2: Mô tả quá trình tạo màn chơi tự động Trong báo cáo luận án này, em sẽ tập trung nghiên cứu, kiến trúc và xây dựng một hệ thống tạo màn chơi tự động hoàn chỉnh sử dụng phương pháp lấy cảm hứng từ phương pháp Rapidly Exploring Random Tree (RRT).

Xây dựng hệ thống tạo màn chơi tự động 2. Xác định mục tiêu Bước đầu tiên phải làm trong việc xây dựng hệ thống tạo màn chơi tự động chính là xác định được những nội dung mà game cần khởi tạo.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ