Tóm tắt đồ án Lập trình game với ứng dụng Unity

pdf 16 trang thiennha21 14/04/2022 43740
Bạn đang xem tài liệu "Tóm tắt đồ án Lập trình game với ứng dụng Unity", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdftom_tat_do_an_lap_trinh_game_voi_ung_dung_unity.pdf

Nội dung text: Tóm tắt đồ án Lập trình game với ứng dụng Unity

  1. TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN HỮU NGHỊ VIỆT - HÀN KHOA CÔNG NGHỆ THÔNG TIN  LẬP TRÌNH GAME VỚI ỨNG DỤNG UNITY TÓM TẮT ĐỒ ÁN TỐT NGHIỆP NGÀNH: CÔNG NGHỆ THÔNG TIN NIÊN KHÓA: 2016 - 2019 HSSV : Phạm Gia Khanh Mã HSSV : CCCT16A008 CBHD : ThS. Nguyễn Phƣơng Tâm Đà Nẵng, 06/2019
  2. MỞ ĐẦU Trong thời đại công nghệ thông tin như hiện nay, sản phẩm công nghệ ngày càng chịu sự đánh giá khắc khe hơn từ phía người dùng, đặc biệt là các sản phẩm Game được nhận nhiều đánh giá từ các Game thủ, hay chỉ là những người chơi bình thường. Ngành công nghiệp Game hiện nay có thể nói là bùng nổ, với tốc độ phát triển chống mặt, rất nhiều những Game hay và hấp dẫn đã được ra đời trong thời gian qua. Phía sau những game phát triển và nổi tiếng như vậy đề có một Game Engine. Game Engine là một công cụ hổ trợ, một Middleware giúp người phát triển viết Game một cách nhanh chống và đơn giản đồng thời cung cấp khá năng sử dụng tài nguyên và mãn nguồn cao do có thể phát triển Game từ một Game Engine 1. Lý do chọn đề tài Từ xu hướng phát triển và những bất cập trên, em xin thực hiện và khảo sát nghiên cứu về Engine Unity – một Game Engine rất phổ biến và mạnh mẽ hiện nay nhằm thực nghiệm phát triển một trờ chơi Bắn Máy Bay 2D. Chuẩn bị kiến thức và kỹ năng cho định hướng nghề nghiệp sau này 2. Mục tiêu và nhiệm vụ nghiên cứu  Tìm hiểu được về công cụ hỗ trợ Unity.  Tìm hiểu về ngôn ngữ lập trình C#. 3. Đối tƣợng và phạm vi nghiên cứu  Nghiên cứu về các loại game được phát triển trên nền tảng công cụ Unity  Nghiên cứu về phần mền Unity và ngôn ngữ lập trình C# 4. Phƣơng pháp nghiên cứu Tìm hiểu và phân tích những tài liệu trên mạng và các tài liệu đã học từ ứng dụng 1
  3. 5. Dự kiến kết quả Lập trình game 2D Galaxy War với ứng dụng Unity 6. Ý nghĩa khoa học và ý nghĩa thực tiễn  Ý nghĩa khoa học Kết quả nghiên cứu của đề tài góp phần nâng cao nhận thức, khả năng thu thập thông tin, phân tích yêu cầu của người dùng để xây dựng được chương trình quản lý. Bước đầu tiếp cận ngôn ngữ lập trình để xây dựng chương trình.  Ý nghĩa thực tiễn Bổ sung tích lũy kiến thức về công cụ hổ trợ Unity và kỹ năng lập trình 7. Nội dung của đồ án tốt nghiệp Ngoài những nội dung như Phần mở đầu, kết luận, tài liệu tham khảo thì nội dung chính của đồ án gồm các chương như sau: Chương 1. Cơ sở lý thuyết. Chương 2. Cách xây dựng game trên Unity. Chương 3. Xây dựng game Galaxy War trên Unity. Chương 4. Kết luận 2
  4. CHƢƠNG 1. CƠ SỞ LÝ THUYẾT 1.1. TỔNG QUAN VỀ GAME ENGINE 1.1.1. Khái niệm 1.1.2. Mục đích 1.1.3. Lịch sử 1.1.4. Ảo hóa phần cứng (trừu tƣợng hóa phần cứng – Hardware Abstraction) 1.1.5. Xu hƣớng hiện tại 1.1.6. Phần mềm trung gian 1.1.7. Kiến trúc của Game Engine 1.2. UNITY LÀ GÌ ? Hình 1.2. Logo Unity. Unity là một phần mềm làm game đa nền tảng được phát triển bởi Unity Technologies, mà chủ yếu để phát triển video game cho máy tính, consoles và điện thoại. Lần đầu tiên nó được công bố chạy trên hệ điều hành OS X, tại Apple's Worldwide Developers Conference vào năm 2005, đến nay đã mở rộng 27 nền tảng. 1.3. LỊCH SỬ HÌNH THÀNH VÀ PHÁT TRIỂN CỦA UNITY 1.3.1. Hình thành 1.3.2. Giải thƣởng 1.3.3. Khách Hàng 1.3.4. Ƣu điểm của Unity 3
  5. 1.4. CÀI ĐẶT UNITY 1.5. TÍNH NĂNG CỦA ENGINE UNITY 1.6. CÁC THÀNH PHẦN CỦA UNITY 1.6.1. Scene 1.6.2. Hierarchy 1.6.3. Game 1.6.4. Project 1.6.5. Inspector 1.7. CÁC KHÁI NIỆM TRONG UNITY 1.7.1. Rendering( kết xuất hình ảnh) 1.7.2. Lighting (ánh sáng) 1.7.3. Terrains (địa hình) 1.7.4. Substances ( Texture thông minh) 1.7.5. Physics (vật lý) 1.7.6. Pathfinding (tìm đƣờng) 1.7.7. Audio (âm thanh) 1.7.8. Programming (lâp trình) 1.7.9. Networking 1.7.10. Assets 1.7.11. Scenes 1.7.12. Game Object 1.7.13. Script 1.7.14. Camera 1.7.15. Sounds 1.7.16. Animation 1.7.17. Prefabs 4
  6. CHƢƠNG 2. CÁCH XÂY DỰNG GAME TRÊN UNITY 2.1. TẠO PROJECT Bước 1: Bạn chạy phần mềm Unity. Bước 2: Cửa sổ Unity hiển thị ra, chọn New Project. Bước 3: Trong thẻ Projects, bạn điền các thông tin Hình 2.1. Tạo Project Unity Project name: Tên dự án. Location: Khu vực lưu trữ dự án. Bước 4: Trong phần Asset packages, bạn chọn 3D nếu muốn lập trình Game 3D. Tương tự, chọn 2D nếu muốn lập trình Game 2D. Bước 5: Nhấn Create project để tạo mới 1 dự án Game. 2.2. NHẬP FILE ASSETS Bước 1: Chuột phải tại Assets Create Folder. Lưu tên Folder mới tạo ra là Scenes. Folder Scenes quản lý các màn chơi, cảnh chơi phân biệt Bước 2: Chuột phải tại Assets Create Folder. Lưu tên Folder mới tạo ra là Sprites. Folder Sprite có mục đích quản lý các hình ảnh. 5
  7. 2.3. TẠO SCENS Folder Scenes có mục đích quản lý các màn chơi, cảnh chơi phân biệt. Bước 1: Chuột phải tại folder Scenes Create Scene Bước 2: Lưu tên màn chơi scene mới tạo ra Hình 2.2. Tạo Scens Unity Bước 3: Trong thẻ Inspetor, tai thược tính Sprite Modechon Multiple kích vào button Sprite Editor. Hình 2.3. Thẻ Inspetor 6
  8. Bước 4: Thẻ Sprite Editor hiên ra, tại Slice chọn Automatic Slice, chọn những thành phần cần làm để làm game Bước 5: Apply Một số thuộc tính của Sprite cần lưu ý: Texture Type:Chọn Sprite (2D and UI) nếu làm game 2D. Sprite Mode: Chọn Single nếu chỉ dùng ảnh. Nếu trong ảnh có các hình ảnh nhỏ được dùng làm các sprite riêng lẻ thì chọn multiple. Khi chọn multiple trong Sprite Mode thì nhấn vào button Sprite Editor. Bảng Sprite Editor xuất hiện chỉ cần thao tác trên bảng này để chọn các hình ảnh nhỏ làm sripte. 2.4. TẠO ANIMATION Bước 1: Trong folder Sprites chọn các hình ảnh được sử dụng để làm hình động. Kéo thả các hình ảnh đó vào thẻ Scene. Bước 2: Bảng tạo Animation xuất hiện. Lưu hình động tại Assets Animation. 2.5. TẠO SCRIPTS Bước 1: Chuột phải tại folder Scripts ta tạo ra trong thẻ project để quản lý các Scripte. Chọn Create C# Script (nếu dùng ngôn ngữ lập trình C#) – Javascript (nếu dùng ngôn ngữ lập trình java). Bước 2: Ta kéo ta Script mới tạo vào gameobject cần sử dụng nó. Bước 3: Mở Script mới tạo và các câu lệnh bằng C#. 2.6. TẠO SOUNDS Chọn các file âm thanh cần sử dụng. Kéo thả vào folder Sound 2.7. TẠO PREFABS Trong thẻ Hierachy chỉ cần chọn gameobject cần sử dụng nhiều lần. Kéo thả gameobject đó vào folder Prefabs được tạo ra trong thẻ Project. 7
  9. CHƢƠNG 3. XÂY DỰNG GAME GALAXY WAR TRÊN UNITY 3.1. MÔ TẢ GAME Game Galaxy War là game mà người chơi phải di chuyển Player bán và né các vật thể và đạn của các máy bay khác, mỗi lần hạ được 1 máy bay hay vật thể lạ sẽ nhận được 1 điểm và cộng dồn, nêu va chạm với vật thể lạ hoặc trúng đạn sẽ bị nổ và Game Over. 3.2. KHỞI TẠO FILE ASSETS 3.3. NHẬP DỮ LIỆU CHO FOLDER SPRITES 3.4. KHỞI TẠO SCENE VÀ THAO TÁC TRÊN SCENE Tạo hai Scene trong Asset Sprites gồm gameplay và mainmenu. Trong đó gameplay là màn hình chơi, mainmenu là màn hình chính khi mới khởi động. Hình 3.2. Scenes Mainmenu Trong scene mainmenu chứa các gameobject: menu, gamemanager và canvas. Trong đó gameObject Canvas chứa các gameObject con hinhnenmenu, Text, image và Playbutton. Trong scene gameplay gồm các gameObject: background, Destroy, Canvas và GameScore. 8
  10. Hinh 3.3. Scens Play game 3.5. MỘT SỐ CLASS QUAN TRỌNG  Điều khiển player Hình 3.4. Scipts Player  Player nhận điểm Hình 3.5. Scripts Player nhận điểm 9
  11.  Vật thể đá trong game Hình 3.6. Scripts vật thế đá  AI trong game Hình 3.7. Scripts AI trong game  Âm thanh Hình 3.8 Scipts Âm thanh 10
  12. KẾT LUẬN Qua quá trình tìm hiểu, em biết unity là một phần mềm làm game đa nền tảng được phát triển bởi Unity Technologies, được sử dụng để phát triển game trên PC, consoles, thiết bị di động và trên websites. Unity có nhiều ưu điểm như hỗ trợ đa nền tảng, dễ sử dụng và có tính kinh tế cao có bản cài đặt miễn phí. Giao diện của Unity gồm 5 cửa sổ chính: Sences, Hierarchy, Game, Project và Inspector. Khung nhìn Scene là nơi bố trí các Game Object, Hierarchy là nơi hiển thị các Game Object trong Sences hiện hành, Game là màn hình demo Game, Project là cửa sổ hiển thị thông tin của tất cả các tài nguyên trong game của bạn, Cửa sổ Inspector hiển thị chi tiết các thông tin về Game Object đang làm việc, kể cả những thành phần được đính kèm và thuộc tính của nó.  Đạt Đƣợc - Hiểu được cấu thúc, cách thức hoạt động, cách thức phát triển ứng dụng trên unity - Nâng cao kiến thức lập trình và tiếng anh chuyên ngành thông qua những tài liệu về Unity bằng tiếng anh - Tạo âm thanh cho trò chơi và một số chức năng khác  Chƣa đạt đƣợc - Do kiến thức về Unity còn hạn hẹp nên còn thiếu một số chức năng trong game - Chưa xây dựng được một game hoàn chỉnh  Thuận lợi - Vận dụng kiến thức được học để có thể tự xây dựng 1 một 2D - Được sự chỉ dạy, hướng dẫn tận tình từ thầy cô và các bạn - Tài liệu rất nhiều trên Internet. 11
  13.  Khó khăn - Unity là một môi trường lập trình mới đối với em nên khi bắt đầu thì cảm thấy khó khăn và bỡ ngỡ.  Hƣớng phát triển - Tối ưu hóa để game chạy nhanh hơn. - Tăng màn chơi độ khó cho người chơi. - Thêm vũ khí nâng cấp các loại máy bay khác nhau. 12