1. Trang chủ
  2. » Công Nghệ Thông Tin

Đồ án tốt nhiệp phát triển game sử dụng Unity + Source Code

62 27 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

Tiêu đề Đồ án tốt nghiệp phát triển game sử dụng Unity + Source Code
Người hướng dẫn Sinh viên: Lớp: Khóa:
Trường học Trường Đại Học Công Nghiệp Hà Nội
Chuyên ngành Kỹ Thuật Phần Mềm
Thể loại Báo cáo thực tập doanh nghiệp
Năm xuất bản 2023
Thành phố Hà Nội
Định dạng
Số trang 62
Dung lượng 13,31 MB
File đính kèm Download Source code.rar (172 B)

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

Nội dung

Đã qua rồi cái thời khi mà mọi người còn nhìn nhận Game là một điều gì đó không tốt, cần phải tránh xa. Giờ đây xã hội phát triển, suy nghĩ mọi người cũng bắt đầu thoáng dần. Game cũng từ đó mà dần du nhập vào đời sống hàng ngày của mọi người và trở thành 1 phần không thể thiếu trong cuộc sống. Game không còn chỉ là một thứ vô bổ nữa, game giúp người phát triển game kiếm được thu nhập, giúp người chơi có những giờ phút vui vẻ sau những giờ làm việc, học tập căng thẳng. Bằng chứng rõ nhất là ngành công nghiệp Game trong năm 2021 đã mang về hơn 189 tỷ đô cho các nhà phát triển Game, gần 3 tỷ người chơi, cùng với đó Olympic và SeaGame cũng đều đưa vào những tựa Game nổi tiếng như một môn thi đấu thể thao. Điển hình là môn thể thao điện tử của SeaGame 3 được tổ chức tại Việt Nam, đội tuyển Việt Nam chúng ta đã xuất sắc dành tới 4 huy chương vàng và 3 huy chương bạc trong tổng số 10 tựa Game được thi đấu chính thức. 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ắt khe hơn từ phía người dùng, đặc biệt là về sản phẩm Game nhận được rất nhiều sự đánh giá của người chơi. 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 đến chóng mặt, nhất là trong thời gian diễn ra đại dịch Covid 19, khi mà mọi người đều làm việc tại nhà và có nhiều thời gian rảnh hơn, chính vì thế mà nhu cầu giải thì cũng tăng cao, 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à hấp dẫn 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ác 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. Chính vì những lý do trên mà chúng em muốn chọn đề tài phát triển game sử dụng công cụ Unity Engine để thử sức bản thân với ngành công nghiệp mới mẻ này.

Trang 1

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI

KHOA CÔNG NGHỆ THÔNG TIN -

BÁO CÁO THỰC TẬP DOANH NGHIỆP

XÂY DỰNG GAME THE FARMER SỬ DỤNG CÔNG CỤ

UNITY ENGINE NGÀNH KỸ THUẬT PHẦN MỀM

GVHD:

Sinh viên:

Lớp: Khóa:

Hà Nội – 2023

Trang 2

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI

KHOA CÔNG NGHỆ THÔNG TIN -

BÁO CÁO THỰC TẬP DOANH NGHIỆP

XÂY DỰNG GAME THE FARMER SỬ DỤNG CÔNG CỤ

UNITY ENGINE NGÀNH KỸ THUẬT PHẦN MỀM

GVHD:

Sinh viên:

Lớp: Khóa:

Hà Nội – 2023

Trang 3

LỜI CẢM ƠN

Lời đầu tiên, em xin gửi lời cảm ơn chân thành tới thầy XXX Trong

quá trình học tập và thực hiện đề tài này, chúng em đã nhận được sự quan tâm giúp đỡ, hướng dẫn tận tình, tâm huyết của thầy Những gì chúng em nhận được không chỉ dừng lại ở kiến thức môn học mà nhiều hơn thế đó là những lời khuyên, chia sẻ thực tế từ thầy Chính nhờ phương pháp dạy học của thầy mà chúng em có cơ hội khám phá và phát huy khả năng của bản thân Những buổi thuyết trình chính là cơ hội tuyệt vời giúp chúng em rèn luyện sự tự tin, kỹ năng giao tiếp, làm việc nhóm Đây cũng chính là hành trang quan trọng giúp chúng em tự tin bước chân vào môi trường làm việc thực tế

Để hoàn thành được đề tài này, nhóm chúng em đã cố gắng hết sức, cùng nhau nghiên cứu, thảo luận, áp dụng những kiến thức được học trên lớp cùng với các nguồn tài liệu khác nhau trên Internet Chúng em rất mong

sẽ nhận được những lời nhận xét, góp ý từ thầy cô và bạn đọc để đề tài này

có thể hoàn thiện hơn nữa

Một lần nữa, chúng em xin chân thành cảm ơn!

Nhóm sinh viên thực hiện.

Trang 4

Mục lục

LỜI CẢM ƠN 1

DANH MỤC HÌNH ẢNH 4

Mở Đầu… 7

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

2 Mục tiêu nghiên cứu 7

3 Đối tượng nghiên cứu 8

4 Phạm vi nghiên cứu 8

5 Kết quả mong muốn 8

6 Cấu trúc báo cáo 8

Nội Dung… 9

Chương 1 Cơ sở lý thuyết 9

1.1 Unity là gì? 9

1.2 Lịch sử hình thành và phát triển của Unity 9

1.3 Các đặc điểm và tính năng của Unity 10

1.4 Các thành phần trong Unity 12

1.5 Giao diện của Unity 16

Chương 2 Phân tích thiết kế hệ thống 23

2.1 Thiết kế hệ thống 23

2.2 Mô tả game 38

2.3 Gameplay 39

2.4 Mechanic 41

2.5 Tài Nguyên 42

2.5 Màn Chơi 50

Chương 3 Game The Farmer 51

Trang 5

3.1 Giới thiệu game 51

3.2 Cài đặt và thử nghiệm 53

KẾT LUẬN VÀ KIẾN NGHỊ 58

TÀI LIỆU THAM KHẢO 5 Y

Trang 6

DANH MỤC HÌNH ẢNH

Hình 1 Mô tả 1 file Assets trong Project 12

Hình 2 Mô tả Scenes trong Unity 13

Hình 3 Mô tả Game Object trong Unity 14

Hình 4 Mô tả các Components của 1 Game Object 15

Hình 5 Mô tả các Script trong Unity 16

Hình 6 Mô tả Prefabs trong Unity 16

Hình 7 Giao diện của Unity 17

Hình 8 Mô tả Scene trong Unity 18

Hình 9 Các nút chức năng cho cửa sổ Scene 18

Hình 10 Cửa sổ Hierarchy 19

Hình 11 Cửa sổ Inspector 20

Hình 12 Cửa sổ Project 21

Hình 13 Các loại tỉ lệ màn hình trong của sổ Game 22

Hình 14 Cửa sổ Game với tỉ lệ màn hình 1920x1080 22

Hình 15 Luồng Flow cho Player 23

Hình 16 UC “Playgame” 25

Hình 17 UC “Obstacles” 26

Hình 18 UC “Coin” 27

Hình 19 UC “GameOver” 27

Hình 20 UC “ChooseLevel” 28

Hình 21 UC “PlayerMove” 29

Hình 22 UC “Pause” 30

Hình 23 UC “Restart” 30

Hình 24 UC “MainMenu” 31

Hình 25 UC “QuitGame” 32

Hình 26 UC “PickUPCoin” 32

Trang 7

Hình 27 UC “PlayerJump” 33

Hình 28 UC “Enemies” 34

Hình 29 UC “EnemiesMove” 35

Hình 30 UC “KillEnemies” 35

Hình 31 UC “PickUpFoods” 36

Hình 32 UC “Food” 37

Hình 33 UC “PlayerShoot” 37

Hình 34 UC “ChooseLevel” 38

Hình 35 Di chuyển trong The Farmer 39

Hình 36 Di chuyển trong Feed Animal 40

Hình 37 Tấn công trong Feed Animal 40

Hình 38 Điểm trong game 41

Hình 39 Modle The Farmer 43

Hình 40 Modle người nông dân (nhân vật chính) 43

Hình 41 Model Enemy 44

Hình 42 Model Food 44

Hình 43 Model Coin 45

Hình 44 Các trạng thái Animation của nhân vật 46

Hình 45 Giao diện UI trong game 47

Hình 46 Sự khác biệt khi sử dụng các asset UI 47

Hình 47 UI sử dụng trong game 48

Hình 48 Audio trong game Helltaker 49

Hình 49 Âm thanh sử dụng trong game 49

Hình 50 Âm thanh sử dụng trong game 50

Hình 51 Flow Màn hình trò chơi 50

Hình 52 Menu game 52

Hình 53 Level The Farmer 52

Trang 8

Hình 54 Màn chơi Feed Animal 53 Hình 55 Màn hình Build Game 54

Trang 9

Mở Đầu

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

Đã qua rồi cái thời khi mà mọi người còn nhìn nhận Game là một điều

gì đó không tốt, cần phải tránh xa Giờ đây xã hội phát triển, suy nghĩ mọingười cũng bắt đầu thoáng dần Game cũng từ đó mà dần du nhập vào đờisống hàng ngày của mọi người và trở thành 1 phần không thể thiếu trongcuộc sống Game không còn chỉ là một thứ vô bổ nữa, game giúp người pháttriển game kiếm được thu nhập, giúp người chơi có những giờ phút vui vẻsau những giờ làm việc, học tập căng thẳng Bằng chứng rõ nhất là ngànhcông nghiệp Game trong năm 2021 đã mang về hơn 189 tỷ đô cho các nhàphát triển Game, gần 3 tỷ người chơi, cùng với đó Olympic và SeaGamecũng đều đưa vào những tựa Game nổi tiếng như một môn thi đấu thể thao.Điển hình là môn thể thao điện tử của SeaGame 3 được tổ chức tại ViệtNam, đội tuyển Việt Nam chúng ta đã xuất sắc dành tới 4 huy chương vàng

và 3 huy chương bạc trong tổng số 10 tựa Game được thi đấu chính thức

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ắt khe hơn từ phía người dùng, đặc biệt là vềsản phẩm Game nhận được rất nhiều sự đánh giá của người chơi Ngànhcông nghiệp Game hiện nay có thể nói là bùng nổ, với tốc độ phát triển đếnchóng mặt, nhất là trong thời gian diễn ra đại dịch Covid 19, khi mà mọingười đều làm việc tại nhà và có nhiều thời gian rảnh hơn, chính vì thế mànhu cầu giải thì cũng tăng cao, 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à hấp dẫnnhư vậy đề có một Game Engine Game Engine là một công cụ hỗ trợ, mộtMiddleware giúp người phát triển viết Game một các nhanh chóng và đơngiả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 Chính vì những lý

do trên mà chúng em muốn chọn đề tài phát triển game sử dụng công cụUnity Engine để thử sức bản thân với ngành công nghiệp mới mẻ này

2 Mục tiêu nghiên cứu

- Nghiên cứu về ngôn ngữ C#

- Nghiên cứu về công cụ phát triển game Unity Engine

- Nắm bắt được quy trình phát triển ra một trò chơi

Trang 10

- Tìm hiểu được thị hiếu của Game thủ để có thể ra ý tưởng những tựaGame chất lượng.

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

Sử dụng ngôn ngữ C# và công cụ Unity Engine để phát triển game

Sử dụng Play Testing để kiểm thử game

Sử dụng kiến thức đã học trên trường để tham gia quá trình phát triển

4 Phạm vi nghiên cứu

Trong thời gian diễn ra quá trình thực tập doanh nghiệp tại trường đạihọc Công Nghiệp Hà Nội

5 Kết quả mong muốn

- Phát triển trò chơi trên Unity Engine sử dụng ngôn ngữ C#

- Áp dụng được những kiến thức và kỹ năng của các môn đã học trêntrường có liên quan đến phát triển phần mềm như: Lập trình Net, Phântích đặc tả, thiết kế giao diện, phát triển ứng dụng game…

- Nắm bắt được quy trình phát triển ra một trò chơi

- Tìm hiểu được thị hiếu của Game thủ để có thể ra ý tưởng những tựaGame chất lượng

6 Cấu trúc báo cáo

Nội dung chính đề tài gồm 3 chương

Chương 1: Cơ sở lý thuyết

Giới thiệu về công cụ Unity Engine, lịch sử hình thành và phát triển.Các chức năng của công cụ

Chương 2: Phân tích thiết kế hệ thống

Bao gồm mô tả game, gameplay, game mechanic, các tài nguyên sửdụng trong game và thiết kế màn chơi

Chương 3: Game The Farmer

Giới thiệu game The Farmer, hướng dẫn cài đặt

Trang 11

3 chiều đầy huyền ảo Công nghệ cao này tạo ra một bước đột phá mới về

sự khác biệt trong công nghệ làm game hiện nay, mang đến cho ngườichơi 1 cảm giác rất khác lạ và hào hứng trong từng chuyển động, tươnglai công nghệ này được áp dụng vào Việt Nam sẽ mở ra một trang mớitrong thế giới game 2D, 3D

Unity được dùng để làm video game, hoặc những nội dung có tínhtương tác như thể hiện kiến trúc, hoạt hình 2D, 3D thời gian thực Unityhao hao với Blender Game Engine, Virtools hay Torque Game Buildertrong khái cạnh dung môi trường đồ họa tích hợp ở quá trình phát triểngame là chính

Unity là một trong những engine được giới làm game không chuyêncực kỳ ưa chuộng bởi khả năng tuyệt vời của nó là phát triển trò chơi đanền tảng Trình biên tập có thể chạy trên Windows và Mac OS, và có thểxuất ra game cho Window, Mac, Wii, IOS, Android, đồng thời cũng cóthể chơi trên trình duyệt web thông qua plugin Unity Web Player Unitymới bổ sung khả năng xuất ra game trên cả console như Xbox,PlayStation

1.2 Lịch sử hình thành và phát triển của Unity

1.2.1 Hình thành

Phần lõi của Unity ban đầu được viết bởi Joachim Ante vào năm

2001 Sau đó công ty được hình thành vào năm 2005 và bắt đầu với phiên

Trang 12

bản 1.0 Đến năm 2007, Unity được nâng lên phiên bản 2.0 Unity bắtđầu hỗ trợ Iphone vào năm 2008 Vào tháng 6/2010, Unity chính thức hỗtrợ Android và cho ra đời phiên bản 3.0 và bây giờ là phiên bản Unity2020.3.31f1 Có thể thấy tốc độ phát triển của Unity khá nhanh.

1.2.2 Giải thưởng

Unity đã đoạt được nhiều giải lớn với những giải chính sau :

+ “Best Use of Max OS X Graphic” tại Apple’s WWDC vào năm 2006+ Nằm trong “Top 5 công ty game của năm” do Gamasuta tổ chức năm2009

+ “Best Engine Finalist” do Develop Magazine bình chọn năm 2012+ Tháng 7/2014, Unity đã đạt giải "Best Engine" tại liên hoan trao giảithưởng công nghệ hàng năm của Anh

Unity 5 cũng nhận được những lời khen tương tự, với The Verge đã nóirằng "Unity giúp việc phát triển game trở nên dễ dàng và phổ biến Unity 5 là một bước tiến đáng mong đợi trong tương lai."

1.2 Các đặc điểm và tính năng của Unity

1.3.1 Rendering (Kết xuất hình ảnh)

Giống như tất cả cá Engine hoàn chỉnh khác, Unity hỗ trợ đầy đủ khảnăng kết xuất hình ảnh (Rendering) cùng nhiều hỗ trợ cho phép áp dụngcác công nghệ phổ biến trong lĩnh vực đồ họa 3D nhằm cải thiện chấtlượng hình ảnh Các phiên bản gần đây nhất của Unity được xây dựng lạithuật toán nhằm cải thiện hiệu suất kết xuất hình ảnh đồng thời tăngcường chất lượng hình ảnh sau khi kết xuất

1.3.2 Lighting (Ánh sáng)

Ánh sáng là một điều thiết yếu giúp môi trường trở nên đẹp và thực tếhơn Unity cũng cung cấp nhiều giải pháp đa dạng cho phép chúng ta ápdụng ánh sang một cách tốt nhất vào môi trường trong trò chơi với nhiều

Trang 13

loại nguồn sang như ánh sang có hướng, ánh sang điểm,… một số côngnghệ và kỹ thuật về ánh sang được Unity hỗ trợ : Realtime Shadows, hiệuứng Sunshafts và Lens Flares

mẽ cho phép chúng ta tọa ra cây cối với hình dạng, kích thước và kiểucách đa dạng

1.3.4 Physics (Vật lý)

PhysX là một Engine mô phỏng và xử lí vật lý cực kỳ mạnh mẽ đượcphát triển bời nhà sản xuất card đồ họa hàng đầu thế giới NVIDIA Unity

đã tích hợp Engine này vào để đảm nhận mọi vấn đề vật lý Một số vấn

đề vật lý được hỗ trợ bởi Unity như: Soft Bodies, Rigitbodies, Ragdolls,Joints, Cars

1.3.5 Audio (Âm thanh)

Về âm thanh, Unity tích hợp FMOD – một công cụ âm thanh thuộchàng mạnh nhất hiện nay Qua đó Unity hỗ trợ chúng ta nhập và sử dụngđịnh dạng tập tin âm thanh khác nhau

1.3.6 Programming (Lập trình)

Lập trình là một trong những yếu tố quan trọng nhất trong phát triểnGame Lập trình cho phép nhà phát triển tạo nên khả năng tương tác, tríthông minh và yếu tố Gameplay cho trò chơi

Trang 14

Unity cho phép chúng ta lập trình bằng nhiều ngôn ngữ mạnh mẽ vàphổ biến với các lập trình viên như: C#, Java Script và Boo.

1.3.7 Networking

Networking cho phép chúng ta tạo ra các trò chơi trực tuyến (online) –một trong những thể loại trò chơi thu hút được nhiều người chơi nhất.Tính năng này sẽ hỗ trợ đầy đủ để chúng ta tạo nên các khía cạnh phổbiến trong Game online như hệ thống điểm kinh nghiệm, chat và tươngtác thời gian thực…

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

1.4.1 Assets

Assets là những tài nguyên xây dựng nên một dự án Unity Từ nhữngtập tin hình ảnh, mô hình 3D đến những tập tin âm thanh Unity gọi cáctập tin mà chúng ta dung để tạo nên trò chơi là tài sản ( Assets ) Điềunày lí giải tại sao tất cả các tập tin, thư mục của dự án Unity đều đượclưu trữ trong một thư mục có tên là “Assets”

Hình 1 Mô tả 1 file Assets trong Project

1.4.2 Scenes

Trong Unity, chúng ta cần hiểu một cảnh (hay một phân đoạn) nghĩa

là một màn chơi riêng biệt hoặc một khu vực hay thành phần có trong nộidung của trò chơi (Ví dụ như Menu) Bằng cách tạo nên nhiều Scenes

Trang 15

cho trò chơi, chúng ta có thể phân phối thời gian tải hoặc kiểm tra cácphần khác nhau của trò chơi một các riêng rẽ.

Hình 2 Mô tả Scenes trong Unity

Trang 16

Hình 3 Mô tả Game Object trong Unity

1.4.4 Components

Components có nhiều hình thức khác nhau Chúng ta có thể xác địnhhành vi, cách xuất hiện,… hay ảnh hưởng đến các khía cạnh khác trongchức năng của Game Object trong trò chơi Bằng các “Gắn” chúng vàotrong Game Object, chúng ta ngay lập tức có thể áp dụng tác động củachúng lên đối tượng Những Components phổ biến trong quá trình pháttriển trò chơi đều được Unity hỗ trợ sẵn Ví dụ như thành phầnRigidbody đã được đề cập hay các yếu tố đơn giản khác như ánh sang,Camera và nhiều thành phần khác Để tạo nên các yếu tố tương tác trongtrò chơi, chúng ta sẽ sử dụng Script (mã kịch bản), chúng cũng được xemnhư là một Components trong Unity

Trang 17

Hình 4 Mô tả các Components của 1 Game Object

1.4.5 Scripts

Được Unity xem như một Components, Script là một thành phần thiếtyếu trong quá trình phát triển trò chơi và đáng được đề cập đến như mộtkhái niễm “chìa khóa” Unity cung cấp cho chúng ta khả năng viết Scriptbằng cả 3 loại ngôn ngữ là : JavaScript, C# và Boo ( một dẫn xuất củaPython)

Unity không đòi hỏi chúng ta phải học làm thế nào để lập trình trongUnity, nhưng hầu như chúng ta phải sử dụng Script tại mỗi thành phầntrong kịch bản mà chúng ta phát triển Unity đã xây dựng sẵn một tậphợp đa dạng các lớp, hàm mà chúng ta hoàn toàn có thể ứng dụng trongquá trình lập trình cho trò chơi của mình

Để viết Script, chúng ta sẽ làm việc với một trình biên tập Script độclập của Unity, ví dụ như Visual Studio là chương trình thích hợp và đồng

bộ với Unity và được sử dụng trong những phiên bản mới nhất hiện nay

Trang 18

Hình 5 Mô tả các Script trong Unity

1.4.6 Prefabs

Prefabs cho phép chúng ta lưu trữ các đối tượng với nhữngComponents và những thiết đặt hoàn chỉnh Prefabs chỉ đơn giản là mộtContainer (một đối tượng chứa) rỗng mà chúng ta có thể đưa bất kì mộtđối tượng hay dữ liệu mẫu nào mà chúng ta muốn tái sử dụng về sau

Hình 6 Mô tả Prefabs trong Unity

1.5 Giao diện của Unity

1.5.1 Giao diện

Giao diện của Unity có khả năng tùy chỉnh bố trí tương tự như nhiềumôi trường làm việc khác Dưới đây là 1 kiểu bố trí điển hình trongUnity

Trang 19

Hình 7 Giao diện của Unity

Scene (1): Nơi mà trò chơi được xây dựng

Hierachy (2): Danh sách các Game Object trong scene

Inspector (3): Những thiết lập, thành phần, thuộc tính của đối tượng(hoặc Asset) đang được chọn

Game (4): Cửa số xem trước, nó chỉ hoạt động trong chế độ “Play”(Preview – xem trước)

Project (5): Danh sách các Assets của dự án, được ví như thư viện của

Dự án

1.5.2 Cửa sổ Scene và Hierarchy

Cửa sổ scene là nơi mà chúng ta sẽ xây dựng các thực thể, đối tượngcủa dự án vào đó Cửa sổ cung cấp góc nhìn phối cảnh (Perspective),chúng ta có thể chuyển qua các góc nhìn khác nhau từ trên xuống hoặc từdưới lên (Top Down), từ trái qua phải hoặc phải qua trái (Side On), từ

Trang 20

trước ra sau hoặc từ sau đến trước (Front On) Cửa sổ này sẽ kết hìnhxuất đầy đủ những hình ảnh trong thế giới của trò chơi mà chúng ta tạo radưới dạng một vùng biên tập mà chúng ta có thể biên tập, chỉnh sửa trựctiếp thế giới đó.

Hình 8 Mô tả Scene trong Unity

Khi kéo thẻ Asset và cửa sổ Scene, Assets sẽ trở thành Game Object.Cửa sổ Scene được rang buộc cùng với cửa sổ Hierachy, cửa sổ Hierachyliệt kê danh sách các Game Object có trong Scene và được sắp xếp theothứ tự chữ cái A-Z

Hình 9 Các nút chức năng cho cửa sổ Scene

Cửa sổ Scene còn đi kèm với 4 nút chức năng chính hữu ích đượchiển thị dưới dạng hình ảnh như trên Chúng ta có thể lựa chọn thông quacác phím tắt Q,W,E và R

Công cụ bàn tay (Q) : Công cụ này cho phép chúng ta di chuyển đếnmột khu vực nào đó trong Scene bằng các kéo thả chuột trái

Công cụ di chuyển (W) : Công cụ này cho phép chúng ta chọn mộtđối tượng trong cảnh và thực hiện thao tác di chuyển, thay đổi vị trí củađối tượng đó Khi chọn, tại vị trí của đối tượng sẽ hiển thị các trục và mặt

Trang 21

phẳng gắn liền với đối tượng Cho phép chúng ta di chuyển đối tượngtheo các trục, mặt phẳng hoặc tùy ý.

Công cụ xoay (E): Công cụ này có đặc điểm và cách sử dụng như(W), tuy nhiên thay vì di chuyển vị trí của đối tượng thì công cụ này giúpchúng ta xoay đối tượng theo trục hay tâm của đối tượng

Công cụ chỉnh tỉ lệ (R) : Cũng tương tự như công cụ di chuyển vàxoay, công cụ này cho phép chúng ta tùy chỉnh kích thức, tỉ lệ đối tượng

Hình 10 Cửa sổ Hierarchy

1.5.3 Cửa sổ Inspector

Cửa sổ Inspector có thể được xem như một công cụ cho phép chúng tatùy chỉnh các thiết đặt, các thành phần của Game Object hoặc Assetsđang được chọn

Cửa sổ này sẽ hiển thị đầy đủ các Components của đối tượng màchúng ta chọn Nó cho phép chúng ta điều chỉnh các biến củaComponents dưới các hình thức như : Textbox, Slider, Button, Drop-down Menu,

Trang 22

Ngoài việc hiển thị các Component của đối tượng được chọn, cửa sổInspector còn hiển thị các thiết đặt chung của hệ thống hay của trò chôikhi ta chọn chúng từ menu Edit.

Hình 11 Cửa sổ Inspector

Trong hình trên, chúng ta thấy cửa sổ Inspector đang hiển thị một vàithuộc tính, Components của đối tượng đang được chọn Trong đó, baogồm 3 Components là Transform, Animator, Script (được đặt tên làCharacter Controller để dễ làm việc hơn) Các Components này còn cóthể được tạm thời vô hiệu hóa vào bất kỳ lúc nào chúng ta muốn bằng các

bỏ chọn Checkbox ở góc bên trái Ngoài ra, cửa sổ Inspector còn chophép chúng ta vô hiệu hóa toàn bộ một đối tượng đang được chọn bằngcách bỏ chọn Checkbox ở trên cùng góc trái của cửa sổ Inspector

1.5.4 Cửa sổ Project

Cửa sổ Project là cửa sổ cho phép chúng ta nhìn thấy trực tiếp nộidung của thư mục Assets của dự án Mỗi dự án Unity đều được chứa

Trang 23

trong một thư mục cha Trong đó có 3 thư mục con là Assets, Library vàTemp (chỉ có khi Unity đang chạy) Đặt tất cả các Assets vào thư mụcAssets có nghĩa là ngay lập tức sẽ thấy chúng xuất hiện trong cửa sổProject Ngoài ra, khi thay đổi vị trí của Assets trong thư mục Assets haylưu tập tin lại từ một chương trình thứ 3 nào khác (ví dụ như Photoshop),

sẽ làm cho Unity nhập lên (Re-Import) Assets, phản ánh sự thay đổi nàyngay lập tức trong cửa sổ Project và Scene có sử dụng Assets vừa đượcthay đổi

Cửa sổ Projetc được tích hợp nút Create, nút này cho phép chúng tatọa mới bất kì một Assets mới nào, ví dụ như Script, Prefabs, Materials,

Trang 24

Hình 13 Các loại tỉ lệ màn hình trong của sổ Game

Sau khi nhấn vào nút Play, chúng ta sẽ ở chế độ Testing, lúc này mọithay đổi về thuộc tính, Components… của đối tượng sẽ chỉ là tạm thời Tức

là chúng sẽ trở về ban đầu (trước khi ấn Play) sau khi kết thúc chế độTesting

Hình 14 Cửa sổ Game với tỉ lệ màn hình 1920x1080

Trang 25

Chương 2 Phân tích thiết kế hệ thống2.1 Thiết kế hệ thống

Biểu đồ UC

Hình 15 Luồng Flow cho Player

Danh sách các Actor

Player Người điều khiển toàn bộ trò

chơi

Trang 26

Danh sách các Use-case

ST

T

1 PlayGame Use case giúp người chơi bước vào

4 GameOver Use case hệ thống sẽ thông báo trò

chơi kết thúc và hiện số điểm đã đạtđược khi người chơi điều khiển nhânvật bị chạm vào chướng ngại vật

5 ChooseLevel Use case làm cho người chơi chọn

các cấp độ khó của game (easy,normal, hard)

6 PlayerMove Use case giúp người chơi có thể di

chuyển nhân vật của mình (sang tráihoặc phải)

7 PlayerJump Use case giúp nhân vật của người

chơi có thể nhảy hoặc nhảy cao đểtránh chướng ngại vật

8 PickUpCoins Use case khi người chơi điều khiển

nhân vật nhảy lên ăn được nhữngđồng xu sẽ được cộng điểm

9 Pause Use case giúp người chơi có thể tạm

dừng trò chơi

10 Main menu Use case giúp người chơi có thể thoát

Trang 27

ra ngoài menu chính

11 Quit game Use case giúp người chơi có thể thoát

hẳn khỏi trò chơi

12 Restart Use case giúp người chơi có thể bắt

đầu lại một ván chơi mới

13 Enemies Use case hệ thống tạo ra kẻ địch

14 EnemiesMove Use case làm cho kẻ địch di chuyển

về phía nhân vật người chơi

15 PlayerShoot Use case giúp người chơi cho nhân

vật bắn đạn về phía kẻ địch

16 KillEnemies Use case khi người chơi bắn trúng kẻ

địch sẽ bị tiêu diệt

17 Food Use case hệ thống tạo ra thức ăn

18 PickUpFoods Use case khi người chơi di chuyển

nhân vật để ăn thức ăn sẽ được cộngmáu

19 ChooseMode Use case cho phép người chơi chọn

Trang 28

Người thực hiện Player

Tiền điều kiện Use case “ChooseMode” đã được thực hiện

Luồng cơ bản Hệ thống sẽ cho người chơi chọn độ khó của trò

Người thực hiện Server

Tiền điều kiện  Người chơi đã bắt đầu màn chơi

Luồng cơ bản Hệ thống sẽ phát sinh ra các chướng ngại vật tại các

vị trí ngẫu nhiên trên bản đồ trò chơi

Luồng rẽ nhánh  Không

Hậu điều kiện Nếu use case thành công,chướng ngại vật sẽ được

tạo ngẫu nhiên trên bản đồ trò chơi

Use-case “Coin”

Trang 29

PlayGame Coin

<<include>>

Hình 18 UC “Coin”

Mô tả Use case hệ thống sẽ tạo ra những đồng xu lại vị trí

ngẫu nhiên trên bản đồNgười thực hiện Server

Tiền điều kiện Yêu cầu người chơi nhấn vào nút “Play”

Luồng cơ bản B1 : Người chơi nhấn vào nút “Play”

 B2 : Hệ thống sẽ phát sinh ra các đồng xu ở các vịtrí ngẫu nhiên tại bản đồ

Luồng rẽ nhánh Nếu Use case “Play game ” không được thực hiện

thành công thì Use case này cũng không được thựchiện

Hậu điều kiện  Nếu use case thực hiện thành công, các đồng xu sẽ

được tạo ra

Use-case “GameOver”

Coin PlayGame

<<include>>

Hình 19 UC “GameOver”

Mô tả  Use case hệ thống sẽ thông báo “Game over” khi

người chơi điều khiển nhân vật bị chạm vào cácchướng ngại vật

Người thực hiện Server

Trang 30

Tiền điều kiện  Khi người chơi đã bắt đầu màn chơi.

Luồng cơ bản B1 : Người chơi điều khiển nhân vật bị chạm vào

các chướng ngại vật

B2 : Hệ thống sẽ thông báo game over và hiện sốđiểm của người chơi và cho phép người dùng bắtđầu lại màn hoặc thoát ra ngoài menu chính

Hình 20 UC “ChooseLevel”

Mô tả Use case giúp người chơi chọn độ khó của game bao

gồm easy, normal, hard

Người thực hiện Player

Tiền điều kiện Use case “ChooseMode” đã được thực hiện

Luồng cơ bản B1 : Người chơi nhấn vào nút “Play game”

B2 : Người chơi chọn một cấp độ khó cho màn chơisắp tới

Luồng rẽ nhánh  Không có

Hậu điều kiện  Nếu use case thực hiện thành công,người chơi bước

vào trò chơi chính thức

Trang 31

Use-case “PlayerMove”

PlayerMove Player

Hình 21 UC “PlayerMove”

Mô tả  Use case giúp người chơi có thể di chuyển nhân vật

của mình

Người thực hiện Player

Tiền điều kiện  Use case bắt đầu khi người chơi đã bắt đầu mà chơi.Luồng cơ bản Người chơi dung các nút Trái-Phải để di nhân vật

của mình theo hướng mình muốn

Luồng rẽ nhánh Không có

Hậu điều kiện  Nếu use case thực hiện thành công, nhân vật của

người chơi sẽ được di chuyển đến vị trí mới

Use-case “Pause”

Pause Player

Hình 22 UC “Pause”

Mô tả  Use case giúp người tạm dừng màn chơi

Người thực hiện Player

Tiền điều kiện  Khi người chơi đã bắt đầu màn chơi được thực hiện

Ngày đăng: 26/05/2023, 01:01

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w