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

Báo cáo thực tập lập trình game bằng unly

23 12 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 23
Dung lượng 2,48 MB

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

Nội dung

Chỉ trong một thời gian ngắn, nhưng nhờ sự chỉ dẫn nhiệt tình của các anh chị trong công ty, em đã tiếp thu được các kiến thức quan trọng cũng như kinh nghiệm làm việc thực tế khiđược th

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

KHOA CÔNG NGHỆ PHẦN MỀM

BÁO CÁO THỰC TẬP

LẬP TRÌNH GAME BẰNG UNITY

Trang 2

Ngày nay, ngành công nghiệp game là một bộ phận không thể thiếu của ngành côngnghiệp phần mềm Với tốc độ phát triển vô cùng mạnh mẽ, ngành game đã và đang là nhân tốkích thích sự phát triển của công nghệ thông tin thế giới, cả về phần cứng và phần mềm.

Cùng với xu thế phát triển của thế giới, Việt Nam cũng không phải ngoại lệ Ngành côngnghiệp game Việt Nam vẫn đang phát triển cùng những công ty game Startup đang phát triểnkhông ngừng để mang game Việt đến toàn thới giới

Ngành game được sinh ra là do nhu cầu giải trí của mọi người đang ngày càng gia tăng

và đa dạng Do đó để thoả mãn thị hiếu của người chơi, các game hiện nay cần liên tục sáng tạo,đổi mới để có thể thoã mãn nhu cầu giải trí của con người Do đó, với mong muốn đem lại niềmvui cho mọi người, em đã quyết định chọn lập trình game làm môn thực tập của mình

Sau ba năm học tập trên trường, do mong muốn có thêm kinh nghiệm thực tế, cũng nhưmuốn được tham gia làm game trong một môi trường chuyên nghiệp, em có dự định là sẽ thựctập trong hè Vì vậy, em quyết định chọn Wolffun - một môi trường lý tưởng, hiện đại, chuyênnghiệp - là nơi sẽ giúp em thực hiện được dự định này.

Trang 3

LỜI CẢM ƠN

Trân trọng gửi lời cảm ơn Công ty Wolffun đã tạo điều kiện cho em có cơ hội được thựctập tại công ty

Chỉ trong một thời gian ngắn, nhưng nhờ sự chỉ dẫn nhiệt tình của các anh chị trong công

ty, em đã tiếp thu được các kiến thức quan trọng cũng như kinh nghiệm làm việc thực tế khiđược tham gia vào các project của công ty Chân thành cảm ơn các anh trong đội developer đã

bỏ ra nhiều thời gian,công sức để hướng dẫn em hoàn thành đợt thực tập này

Đặc biệt cảm ơn anh Hoàng và anh Đức, đã tạo điều kiện cho em được tham gia vào các

project của công ty và hướng dẫn em nhiệt tình để có thể học hỏi thêm các kiến thức từ các dự

án thực tế của công ty Xin cảm ơn anh Ca đã nhiệt tình hướng dẫn em làm quen với các tínhnăng trong Unity

Cũng xin cảm ơn thầy cô trong khoa Công nghệ phần mềm đã nhiệt tình hỗ trợ, tạo điềukiện em làm bài báo cáo này

Hồ Công ThànhTpHCM, ngày 23 tháng 12 năm 2021

Trang 5

NHẬN XÉT CỦA KHOA

Trang 6

MỤC LỤC

Mục lục

Chương 1: Giới thiêu công ty thực tập 9

1 Giới thiệu công ty Wolffun 9

2 Sản phẩm của công ty 9

Chương 2: Nội dung thực tập 11

1 Tìm hiểu công ty và các kỹ năng cơ bản trong công ty 11

2 Nghiên cứu kỹ thuật 11

2.1 Các công cụ làm việc 11

2.2 Tham gia lớp huấn luyện lập trình Unity 12

2.3 Thực hành tạo một game 3D dựa trên project mẫu của Unity 13

3 Tham gia project công ty 14

4 Lịch làm việc 14

Chương 3: Chi tiết về project 16

1 Giới thiệu về game 16

1.1 Các tính năng trong game 16

2 Các tính năng được tham gia thực hiện 17

2.1 Tính năng mở hộp hero trên trang marketplace 17

2.2 Tính năng nhận thưởng sau khi kết thúc battle 19

2.3 Tính năng chọn game mode ngoài màn hình Menu 20

2.4 Tính năng kết bạn và mời bạn tham gia party 21

3 Đánh giá kết quả 22

TÀI LIỆU THAM KHẢO 23

Trang 7

TỔNG KẾT 24

Trang 8

Chương 1: Giới thiêu công ty thực tập

1 Giới thiệu công ty Wolffun

Wolffun là một công ty làm game được thành lập vào năm 2014 với dòng gamechủ lực là dòng Online PvP cho điện thoại Công ty được thành lập với 4 nhân viênlàm game Casual Vào năm 2015, Công ty bắt đầu tập trung vào dòng game mid-core action và đã publish game Tank Raid Online – dòng game PvP – lần đầu tiênvào năm 2017 Game đã có hơn 5 triệu user trên toàn cầu và được Google vinh danh

là Google Editor’s Choice và nhiều giải thưởng khác Công ty hiện đang hướng tớimục tiêu đạt được 100 triệu user trên toàn cầu

2 Sản phẩm của công ty

Wolffun nổi bật với dòng game action online PvP dành cho các thiết bị di độngAndroid và Ios Wolffun tự hào là một trong các công ty hàng đầu Việt Nam vàĐông Nam Á về dòng game Moba cho thiết bị di động Cả 2 dòng game của Wolffun

là Tank Raid Legend và Heroes Strike đã vượt hơn 5 triệu người dùng trên toàn cầu

và được phản hồi rất tích cực từ người dung Game mới đây nhất của Wolffun là

Trang 9

Thetan Arena, đã có hơn 9 triệu user trên toàn cầu và được đánh giá hơn 4.5 sao trêncác store.

Trang 10

Chương 2: Nội dung thực tập

Đợt thực tập với chủ đề “Lập trình game bằng Unity” nhằm mục đích giúp sinh viên thựctập được đào tạo toàn diện về lập trình game bằng Unity, đồng thời rèn luyện những kỹ năngmềm như làm việc nhóm, thuyết trình, giao tiếp Tại công ty, sinh viên có cơ hội được học tập,khám phá và làm việc trong một môi trường phát triển game chuyên nghiệp

1. Tìm hiểu công ty và các kỹ năng cơ bản trong công ty

Thời gian : 1 ngày

Nội dung : Giới thiệu về công ty, cách tổ chức của công ty

Được nghe người phụ trách giới thiệu về công ty và hướng dẫn sơ qua về quytrình làm việc, các quy định, các công việc và lộ trình thực tập sắp tới

Ngoài ra, thực tập sinh còn được hướng dẫn sơ qua về project mà thực tập sinh sẽđược tham gia vào để học tập, các nhân sự liên quan và văn hoá công ty

Kết quả : Hiểu thêm về công ty Wolffun, quá trình thành lập và phát triển Có thêm các

kỹ năng về việc sử dụng email trong công việc, làm việc có kế hoạch, có kỷ luật, có tráchnhiệm hơn

2. Nghiên cứu kỹ thuật

2.1 Các công cụ làm việc

Thời gian : 1 ngày

Nội dung : Tìm hiểu về các công cụ sẽ được sử dụng trong quá trình làm việc.

Trong thời gian này, mentor sẽ hướng dẫn set up project và hướng dẫn về engineUnity để thực tập sinh có thể làm quan với một project Unity như thế nào Đồng thời,mentor cũng hướng dẫn về git flow, các document, các kênh chat của công ty để thựctập sinh dễ dàng làm quen hơn với công việc

Thực hiện : Thực hành sử dụng các phần mềm đã nêu trên.

Kết quả : Sử dụng các công cụ được hướng dẫn và chạy được project trên Unity

2.2 Tham gia lớp huấn luyện lập trình Unity

Thời gian : 14 ngày (2 tuần)

Nội dung : Được training về các kỹ thuật được sử dụng trong Unity, C#, thực hiện

một project Unity như thế nào và cho thực hiện một project Unity như bài tâp

Trang 11

- Lập trình hướng đối tượng

Nhắc lại các kiến thức lập trình hướng đối tượng, cách áp dụng lập trình hướngđối tượng vào Unity, các lỗi hay mắc phải khi thiết kế các lớp trong lập trìnhhướng đối tượng

- Các hàm cơ bản trong Unity:

Flow thực hiện trong Unity, một số các hàm đặc biệt trong Unity để cập nhậtGame Loop

- Các component cơ bản của Unity

Giới thiệu một số component cơ bản như Transform, Rigid Body, Collider, Text,

… nhằm giúp thực tập sinh nắm và hiểu rõ hơn về các component trong Unity,việc này sẽ giúp ích thực tập sinh làm việc nhanh hơn và cho ra sản phẩm tốt hơn

- Các model, resource và tối ưu trong project :

Cung cấp kiến thức chuyên sâu về cách quản lý resource, tối ưu resource trongmột game thực tế như thế nào Việc tối ưu resource sẽ làm tăng trải nghiệm củangười dung, cho họ cảm giác chơi game mượt mà không giật lag, đồng thời hỗ trợtối đa các thiết bị chơi game khác nhau

Thực hiện :

- Tham gia đầy đủ các buổi training của công ty

- Làm các bài thực hành, kiểm tra về kiến thức đã học

Kết quả :

- Nâng cao kỹ năng lập trình với ngôn ngữ C#

- Hiểu rõ và sâu hơn về các component cơ bản trong Unity

- Ngoài ra còn được biết thêm một số quy tắc trong việc viết code sao cho đúngchuẩn, dễ đọc, dễ hiểu

2.3 Thực hành tạo một game 3D dựa trên project mẫu của Unity

Trang 12

chiếc xe tank di chuyển trong một bản đồ 3D Hiểu được thực tế các các vật thểtrong Unity được kiểm soát như thế nào, cách tối ưu tính toán vật lý trong Unity.

- Các kỹ năng và đạn cho tank:

Áp dụng OOP để viết các hoạt động cho các loại đạn, effect, skill, của xe tank Từđây thực tập sinh hiểu hơn về cách áp dụng OOP vào một project thực tế như thếnào cho đúng và tốt

- Config cho đạn và các skill

Cách áp dụng tạo file config cho các loại đạn và skill của một con tank Từ đógiảm thiểu việc sửa code khi cần chỉnh sửa các thông số hay thay đổi design chomột con tank

- Tối ưu

Áp dụng Object pooling vào project để hạn chế việc liên tục khởi tạo và giảmthiếu công việc của Garbage Collector, nhằm giúp game chạy mượt hơn

Thực hiện :

- Tham gia đầy đủ các buổi training

- Thực hiện đầy đủ các bài tập mà mentor đặt ra

- Đọc thêm doc và các tài liệu trên mạng để thực hiện project tốt hơn

Kết quả :

- Có một game bắn tank nhỏ để chơi

- Hiểu hơn về cách Unity hoạt động

3. Tham gia project công ty

Trang 13

Sau gần một tháng được training và thực hành, thực tập sinh đã nắm được những kiếnthức về Unity, mentor hướng dẫn thực tập sinh tham gia vào project của công ty để tiếptục học hỏi và trao dồi kỹ năng.

Chi tiết project sẽ được nói ở phần sau

4 Lịch làm việc

Mức độ hoàn thành

Nhận xét của người hướng dẫn

1, 2

- Xây dựng một ứngdụng con cho việc

mở box ra hero trênmarketplace

Anh Đinh QuangĐức

Anh Nguyễn DuyCa

100%

2

- Chỉnh sửa màn hìnhBattle End để nhậnreward từ data mớicủa server

Anh Đinh QuangĐức

Anh Lê HuỳnhMinh Tinh

100%

3

- Thực hiện codephần đổi gamemode trong mànhình Menu

Anh Đinh QuangĐức

Anh Lê QuốcPhương

100%

4

- Thêm phần hiển thịranking level vàhero ranking ở mànhình Battle EndReward

Anh Lê Huỳnh

100%

Trang 15

Chương 3: Chi tiết về project

1 Giới thiệu về game

Game Thetan Arena là một game Moba NFT với mục tiêu là Free to play, battle to earn.Game cho phép người chơi sử dụng các hero để thi đấu với nhau và tạo ra các đồngTHC, đồng thời, các con hero và các vật phẩm ingame đều có thể được đem đi trao đổitrên marketplace

1.1 Các tính năng trong game

Mô tả

Game gồm 2 mode chơi chính là đánh theo team và đánh theo battle royal Trongmode đánh theo team, sẽ chia thành 3 mode chơi phụ là Deathmatch, Tower vàSuper Star, 8 player sẽ chia thành 2 team và thực hiện các nhiệm vụ trong từngmode cụ thể để giành chiến thắng Đối với mode battle royal, cơ chế mode battleroyal là người chơi sẽ cố gắng sống sót đến cuối cùng trong khi bản đồ ngày càng

Trang 16

Ảnh 1: Các mode chơi hiện tại

Ảnh 2: Một trận đấu trong game

2 Các tính năng được tham gia thực hiện

2.1 Tính năng mở hộp hero trên trang marketplace

Tính năng hiển thị hộp hero, sau khi user chọn vào mở hộp thì sẽ xuất hiện một hero random.

Trang 17

Ảnh 3: một hộp hero giáng sinh

Ảnh 4: animation card hero

Trang 18

Ảnh 5: Khi hero xuất hiện

Ảnh 6: Thông tin hero

2.2Tính năng nhận thưởng sau khi kết thúc battle

Tính năng giúp hiển thị kết quả trận đấu và hiển thị phần reward của người chơi nhận được dựa trên kết quả của trận đấu Màn hình kết thúc trận đấu sẽ bao gồm thông tin về điểm, số mạng giết và chết, các thành tích người chơi đạt được trong trận đấu Màn hình reward sẽ bao gồm các thông tin về mức điểm hạng, phần thưởng của user.

Trang 19

Ảnh 7: Màn hình kết thúc trận đấu

Ảnh 8: Màn hình nhận thưởng

2.3 Tính năng chọn game mode ngoài màn hình Menu

Trang 20

Ảnh: màn hình chọn game mode

2.4 Tính năng kết bạn và mời bạn tham gia party

Tính năng cho phép người chơi tìm kiếm và kết bạn với nhau, đồng thời cho phép người chơi mởi bạn mình tham gia vào party để chơi cùng nhau, giúp tang hứng thú cho trò chơi

Ảnh 9: Màn hình xem danh sách bạn bè

Trang 22

TÀI LIỆU THAM KHẢO

Unity 3D

https://docs.unity3d.com/Manual/index.html

Trang 23

TỔNG KẾT

Như vậy, chỉ trong vòng hơn 2 tháng thực tập, em đã được tham gia vào quá trình thựchiện một game với quy mô lớn Các tính năng em được giao cũng hoàn thiện và đúng tiến độđặt ra ban đầu, mặc dù vẫn còn một số lỗi Em hy vọng mình sẽ khắc phục được trong thời giansắp tới

Chân thành cảm ơn sự giúp đỡ của các anh trong team developer đã hỗ trợ em nhiệt tìnhtrong suốt quá trình thực tập tại công ty Em xin cảm ơn thầy Lê Thanh Trọng đã tạo điều kiện

để em có thể tham gia khoá thực tập này

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

HÌNH ẢNH LIÊN QUAN

- Chỉnh sửa màn hình Battle End để nhận reward từ  data mới của server - Báo cáo thực tập lập trình game bằng unly
h ỉnh sửa màn hình Battle End để nhận reward từ data mới của server (Trang 13)
Ảnh 7: Màn hình kết thúc trận đấu - Báo cáo thực tập lập trình game bằng unly
nh 7: Màn hình kết thúc trận đấu (Trang 19)
Ảnh 8: Màn hình nhận thưởng - Báo cáo thực tập lập trình game bằng unly
nh 8: Màn hình nhận thưởng (Trang 19)
Ảnh: màn hình chọn game mode - Báo cáo thực tập lập trình game bằng unly
nh màn hình chọn game mode (Trang 20)
Ảnh 9: Màn hình xem danh sách bạn bè - Báo cáo thực tập lập trình game bằng unly
nh 9: Màn hình xem danh sách bạn bè (Trang 20)
Ảnh 10: màn hình tìm kiếm bạn bè - Báo cáo thực tập lập trình game bằng unly
nh 10: màn hình tìm kiếm bạn bè (Trang 21)
Ảnh 11: màn hình mời bạn tham gia party - Báo cáo thực tập lập trình game bằng unly
nh 11: màn hình mời bạn tham gia party (Trang 21)

TỪ KHÓA LIÊN QUAN

w