1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tóm tắt Đồ án tốt nghiệp Công nghệ thông tin: Xây dựng game 2D Space War

20 16 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 20
Dung lượng 761,76 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mục tiêu nghiên cứu đề tài là nghiên cứu cách làm game 2D; trình bày lý thuyết về xây dựng game trên unity; nâng cao kiến thức tích lũy kinh nghiệm về làm game; học hỏi thêm nhiều kỹ năng tạo ra một trò chơi; xây dựng được game để phục vụ cho nhu cầu giải trí của xã hội.

Trang 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



XÂY DỰNG GAME 2D SPACE WAR

TÓM TẮT ĐỒ ÁN TỐT NGHIỆP

NGÀNH: CÔNG NGHỆ THÔNG TIN (ƯDPM)

HSSV thực hiện : Nguyễn Hải Huy

MÃ HSSV : CCCT17A006

Cán bộ hướng dẫn : TS Nguyễn Văn Lợi Khóa đào tạo : 2017 - 2020

Đà Nẵng, 01/2020

Trang 3

MỞ ĐẦU

Hiện nay Công nghiệp giải trí hiện đang rất phát triển trên thế giới, gồm các thành phẩn cơ bản như: Game, thời trang, âm nhạc, các chương trình truyền hình, điện ảnh, Gameshow, liveshow,… Các mảng nằm trong giải trí không chỉ mang tính giải trí mà còn mạng nhiều giá trị về văn hóa, phong tục của từng cùng miền, đồng thời quảng bá hình ảnh của đất nước tới bạn bè khắp thế giới

Có thể nói một trong những ngành giải trí chiếm phần lớn thị trường nhất là ngành Game cộng thêm sự hội nhập của công nghệ 4.0, các sản phẩm công nghệ ngày càng chịu sự đánh giá khắt khe hơn từ phía người dùng, đặc biệt là sản phẩm game được nhận rất nhiều sự đánh giá từ phía game thủ 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, hàng loạt tựa game hay và đình đám đã được ra mắt trong thời gian qua

Những Game phát triển và nổi tiếng như vậy đều có một Game Engine Game Engine là một công cụ hỗ trợ 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 tái sử dụng các tài nguyên và mã nguồn cao do có thể phát triển nhiều Game từ một Game Engine

1 Lý do chọn đề tài

Với xu hướng hiện nay, công việc mỗi người ngày càng nhiều nhu cầu giải trí sau những giờ làm việc căng thẳng, game 2d là sự lựa chọn hoàn hảo với tính chất game nhanh, độ giải trí cao, xã stress tốt Trải qua thời gian, game 2D dường như chưa bao giờ là lỗi thời đối với người chơi, ngày càng khẳng định được vị trí của mình trên thị trường game rộng lớn Từ đó em đã chọn đề tài xây dựng game Space War 2D trên unity Đồ án sẽ nghiên cứu về Engine Unity – là

Trang 4

một Game Engine rất phổ biến và mạnh mẽ để thực hiện việc phát triển một game 2D Space War

Vậy nên, em chọn đề tài “Xây dựng game Space War trên Unity” để làm đồ án tốt nghiệp của mình

2 Mục tiêu và nhiệm vụ nghiên cứu

- Mục tiêu:

o Hiểu biết về Unity

o Biết được các ưu nhược điểm của phần mềm

o Biết cách cài đặt được phần mềm

o Biết xây dựng game bằng Unity

- Nhiệm vụ:

o Nghiên cứu các bài giảng và các tài liệu để xây dựng game trên Unity

o Xây dựng được một game minh họa

3 Đối tượng và phạm vi nghiên cứu

- Đối tượng nghiên cứu:

o Những game đã hoàn thành trên mạng

o Những video hướng dẫn cơ bản

o Quy trình xây dựng game 2D trên unity

4 Phương pháp nghiên cứu

- Nghiên cứu các lý thuyết về Unity

- Phương pháp nghiên cứu lý luận: Tìm hiểu các tài liệu nghiên cứu, giáo trình, các bài viết và các nguồn thông tin trên Internet có liên quan, ngôn ngữ lập trình là C#

- Phương pháp lấy ý kiến chuyên gia: Lấy ý kiến giảng viên trực tiếp hướng dẫn và các chuyên gia khác để có thể hoàn thành về mặt nội dung cũng như hình thức của đề tài

5 Ý nghĩa khoa học và thực tiễn

Trang 5

- Nghiên cứu cách làm game 2D

- Trình bày lý thuyết về xây dựng game trên Unity

- Nâng cao kiến thức tích lũy kinh nghiệm về làm game

- Học hỏi thêm nhiều kỹ năng tạo ra một trò chơi

- Xây dựng được game để phục vụ cho nhu cầu giải trí của xã hội

Trang 6

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 TỔNG QUAN VỀ UNITY

1.1.1 Unity là gì?

1.1.2 Lịch sử của Unity

1.1.3 Tính năng của Unity

1.1.4 Các thành phần trong Unity

1.2 CÁC KHÁI NIỆM TRONG UNITY

1.3 CÀI ĐẶT UNITY

1.4 TỔNG QUAN KIẾN TRÚC GAME ENGINE

Trang 7

CHƯƠNG 2: MỘT SỐ VẤN ĐỀ VÀ GIẢI PHÁP KHI XÂY

DỰNG GAME TRÊN ENGINE UNITY

2.1 CHUYỂN ĐỘNG MÔ HÌNH NHÂN VẬT 2D

2.1.1 Vấn đề

Chúng ta đã load được mô hình 2D vào trong game, vậy làm sao để mô hình 2D này có thể chuyển động trong game

2.1.2 Giải pháp

Cần phải có sẵn Animation bên trong mô hình 2D Khi import

mô hình vào Unity, Animation trong mô hình tự động chuyển thành một AnimationClip

Trước hết ta phải tạo AnimationClip từ animation có sẵn của

mô hình

Lấy một mô hình làm mô hình chính, có thể không cần animation kèm theo cũng được

Các mô hình còn lại, tên phải có 2 phần cách nhau bởi „@‟, phần đầu phải trung với mô hình chinsg đã chọn phần thứ 2 sẽ là tên của animation

Với cách đặt tên như vậy, khi đưa các mô hình này vào project

để sử dụng thì unity sẽ tự động đổi tên animation mặc định trong mô hình thành tên trùng với phần tên mô hình nằm sau chữ‟@‟

Tiếp theo để thực hiện gọi một animationclip trong một đối tượng ta dùng hàm CrossFade() của thuộc tính animationm trong GameObject

2.1.3 Kết luận

2.2 THÊM SỰ KIỆN VÀO CHUYỂN ĐỘNG CỦA NHÂN VẬT 2.2.1 Vấn đề

Trong lúc lập trình game, chúng ta muốn biết khi nào một nhân vật chuyển động xong để có bước xử lí tiếp theo Ví dụ như sau

Trang 8

khi nhân vật thực thi chuyển động chết thì chúng ta phải hủy đối tượng đó khỏi bộ nhớ Trong unity, khi một chuyển động chạy xong không tự phát ra sự kiện

2.2.2 Giải pháp

Unity hỗ trợ lớp AnimationEven giúp thêm sự kiện vào frame bất kì trong một AnimationClip Trước hết phải có một file Scrips chứa hàm sẽ thực thi sau khi sự kiện xảy ra

Sau đó chúng ta tạo file Scrips khác dùng để thêm event và gắn file scrips này vào đối tượng bất kì

Khi đã gắn code, chúng ta đã thêm một sự kiện vào frame cuối của AnimationClip Khi đó chúng ta phải thêm file Scrips chứa hàm xảy ra sự kiện

2.2.3 Kết luận

2.3 XÂY DỰNG GIAO DIỆN GAME

2.3.1 Vấn đề

Giao diện đồ họa người dùng là một phần không thể thiếu trong khi xây dựng một ứng dụng game hay bất cứ một ứng dụng nào

để vẽ các đối tượng đồ họa như button, label, slider,… lên màn hình

2.3.2 Giải pháp

Để làm được điều này chúng ta dùng lớp GUI, GUI là viết tắt của “Graphical User Interface”-“Giao diện đồ họa người dùng” Để

sử dụng được các phương thức trong GUI ta phải gọi thực hiện từ trong hàm OnGUI() giống như sự kiện Pain trong C# Ví dụ sau đây

sẽ tạo ra một button đơn giản:

Hình 2.1 GUI button

Trang 9

Để tạo một button hay một thành phần trong GUI đẹp hơn, chúng ta sử dụng GUIStyle – style cài đặt cho cac thành phần của GUI GUIStyle chứa thông tin về font chữ, vị trí đặt biểu tượng, hình nền, khoảng cách,… Chỉ cần định nghĩa và áp dụng cho một bất kỳ thành phần nào như button, label, checkbox,… ta có thể xem GUIStyle như CSS khi thiết kế web vậy

2.3.3 Kết luận

2.4 ÂM THANH TRONG GAME

2.4.1 Vấn đề

Âm thanh là yếu tố không kém phần quan trọng Thật là nhàm chán khi một cảnh đánh nhau, bắn nhau hay các hiệu ứng mà không

có âm thanh

2.4.2 Giải pháp

Để chơi được một file âm thanh trong unity chúng ta phải có sẵn các file âm thanh và import vào project Sau khi import, nếu file hợp lệ chúng sẽ thấy như hình sau và có thể nhấn nút play để nghe thử

Hình 2.2 Thông tin file âm thanh

Trang 10

Tạo menu của Unity, vào GameObject →Create Empty

Chọn đối tượng vừa tạo và gắn thành phần AudioSourcer cho đối tượng AudioSoucer là một đối tượng âm thanh Muốn play hay stop, thay đổi cách lặp tăng giảm volume thì phải thông qua đối tượng này

Hình 2.3 Thêm thành phần Audio Source

Sau khi gắn thành phần âm thanh cho đối tượng vừa tạo, chúng ta dễ dàng chỉnh sửa các thông số và gán file âm thanh cho thành phần AudioSource này

Hình 2.4 Thêm file âm thanh cho thành phần AudioSource

Thực hiện xong các bước trên, chúng ta có thể chạy game để nghe thử Việc tạo đối tượng âm thanh trên giao diện khá đơn giản

2.4.3 Kết luận

Trang 11

CHƯƠNG 3: XÂY DỰNG GAME TRÊN UNITY

3.1 GIỚI THIỆU GAME

Đặc trưng của dòng game mà em xây dựng tại một thời điểm chỉ có một người chơi, trò chơi sẽ có 1 màn hình chơi, người chơi sẽ được cung cấp 1 mạng và vũ khí nhất định, người chơi sẽ bắn đễ loại

bỏ những quân địch và các vật thể khác, cố gắng lấy được càng nhiều điểm càng tốt Khi người chơi trúng đạn sẽ chết và màn hình GameOver sẽ xuất hiện thông báo cho người chơi số điểm

Hình 3.1 Màn hình để bắt đầu chơi

3.2 CÁC QUY LUẬT CHƠI CHÍNH

3.2.1 Di chuyển

Hình 3.2 Màn hình để chơi game

Trang 12

3.2.2 Tấn công

Hình 3.3 Đạn của máy bay địch

Hình 3.4 Đạn của người chơi

3.2.3 Điểm

Hình 3.5 Điểm của người chơi

Trang 13

3.2.4 Tạm dừng game

Hình 3.6 Màn hình pause

3.3 DỮ LIỆU GAME

3.3.1 Màn hình bắt đầu lập trình

Hình 3.7 Các Sence để lập trình

3.3.2 Code trong game

Hình 3.8 Code C# trong game

Trang 14

3.3.3 Một số Script trong game

Hình 3.9 Code của player

3.3.4 SpawnEnemy

Trang 15

Hình 3.10 Code tạo ra địch

3.3.5 Bullet

Hình 3.11 Code tạo ra đạn

Trang 16

KẾT LUẬN

Sau nhiều ngày suy nghĩ kĩ để chọn đề tài tốt nghiệp, cuối cùng em cũng đã chọn được đề tài làm game 2D trên Unity game bắn máy bay

Bước đầu tìm hiểu về Unity và Game Engine em gặp rất nhiều khó khăn trong việc tìm tài liệu và xây dựng lên ý tưởng game vì tài liệu về unity đa phần bằng tiếng anh, nhưng sau khoảng 1 tháng cố gắng tìm tòi học hỏi các anh chị của các khóa trước thì em cũng đã làm xong cho mình một game gần hoàn chỉnh để phục vụ cho đề tài tốt nghiệp Trong thời gian làm đề tài em cũng có một số những vấn

đề đạt được và chưa đạt được

Đạt đƣợc

- Hiểu được cấu trú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 các trang web, các tài liệu liên quan đến Unity bằng tiếng anh

- Xây dựng được các nhân vật trong game bằng các công cụ chỉnh sửa hình ảnh như photoshop, paint

- Tổ chức load các tương tác thông qua các button

- Xây dựng được các chức năng như điểm, tạm dừng,… thông qua ngôn gnwx lập trình C# trên Visual Studio

- Tạo ra âm thanh cho trò chơi và 1 số chức năng khác

Ngoài những thứ đạt được thì bên cạnh đó em cũng còn rất nhiều những vấn đề chưa đạt được

Chƣa đạt đƣợc

- Do kiến thức của em về Unity còn hạn hẹp nên các chức năng trong game còn nghèo nàn

Trang 17

- Chưa xây dựng được một game hoàn chỉnh như mong muốn

- Các Scrips vẫn chưa được tổ chức rõ ràng

- Sắp xếp địch và chế độ chơi chưa được logic

Thuận lợi

- Vận dụng được các kiến thức về C# mà em được học ở trường để làm đồ án này

- Được sự hướng dẫn tận tình của thầy và sự giúp đỡ nhiệt tình của các bạn

- Có khá nhiều tài liệu trên internet

Khó khăn

- Unity là một môi trường lập trình mới và hoàn toàn khác với môi trường em được học ở lớp, đối với em khi bắt tay làm thì em không biết bắt đầu như thế nào làm từ đâu và cảm thấy bối rối, bỡ ngỡ

- Lần đầu xây dựng game nên vẫn thiếu sót nhiều cái

- Việc tìm hiểu và sử dụng được unity khá khó đối với em

Kinh nghiệm rút ra

- Phải biết sắp xếp thời gian rõ ràng hợp lí nếu không sẽ gặp rất nhiều khó khăn

- Để hoàn thành tốt một game thì không thì làm được một mình mà phải biết chia sẽ và phân công công việc cho mọi người

- Phải tập trung mới hoàn thành được thì nếu không tập trung thì sẽ mất phương hướng khiến công việc khó khăn hơn

Hướng phát triển

- Tăng thêm màn chơi cho người chơi nhiều lựa chọn

- Thêm vũ khí, nâng cấp máy bay

- Cung cấp thêm nhiều loại máy bay cho người chơi có thể chọn

Trang 18

- Tạo thêm độ khó cho trò chơi

Ngày đăng: 17/12/2021, 09:22

HÌNH ẢNH LIÊN QUAN

Hình 2.2. Thông tin file âm thanh - Tóm tắt Đồ án tốt nghiệp Công nghệ thông tin: Xây dựng game 2D Space War
Hình 2.2. Thông tin file âm thanh (Trang 9)
Hình 2.4. Thêm file âm thanh cho thành phần AudioSource - Tóm tắt Đồ án tốt nghiệp Công nghệ thông tin: Xây dựng game 2D Space War
Hình 2.4. Thêm file âm thanh cho thành phần AudioSource (Trang 10)
Hình 2.3. Thêm thành phần AudioSource - Tóm tắt Đồ án tốt nghiệp Công nghệ thông tin: Xây dựng game 2D Space War
Hình 2.3. Thêm thành phần AudioSource (Trang 10)
Hình 3.2. Màn hình để chơi game - Tóm tắt Đồ án tốt nghiệp Công nghệ thông tin: Xây dựng game 2D Space War
Hình 3.2. Màn hình để chơi game (Trang 11)
Hình 3.1. Màn hình để bắt đầu chơi - Tóm tắt Đồ án tốt nghiệp Công nghệ thông tin: Xây dựng game 2D Space War
Hình 3.1. Màn hình để bắt đầu chơi (Trang 11)
Hình 3.3. Đạn của máy bay địch - Tóm tắt Đồ án tốt nghiệp Công nghệ thông tin: Xây dựng game 2D Space War
Hình 3.3. Đạn của máy bay địch (Trang 12)
Hình 3.4. Đạn của người chơi - Tóm tắt Đồ án tốt nghiệp Công nghệ thông tin: Xây dựng game 2D Space War
Hình 3.4. Đạn của người chơi (Trang 12)
3.3.1. Màn hình bắt đầu lập trình - Tóm tắt Đồ án tốt nghiệp Công nghệ thông tin: Xây dựng game 2D Space War
3.3.1. Màn hình bắt đầu lập trình (Trang 13)
Hình 3.9. Code của player - Tóm tắt Đồ án tốt nghiệp Công nghệ thông tin: Xây dựng game 2D Space War
Hình 3.9. Code của player (Trang 14)
Hình 3.10. Code tạo ra địch. - Tóm tắt Đồ án tốt nghiệp Công nghệ thông tin: Xây dựng game 2D Space War
Hình 3.10. Code tạo ra địch (Trang 15)
Hình 3.11. Code tạo ra đạn - Tóm tắt Đồ án tốt nghiệp Công nghệ thông tin: Xây dựng game 2D Space War
Hình 3.11. Code tạo ra đạn (Trang 15)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w