Em đã tìm kiếm một đơn vị phát triển game để có thể áp dụng các kiến thức trên vào thực tế, và làm quen với công việc phát triển game trong môi trường chuyên nghiệp.. Trong vòng 2 tháng
Trang 1KHOA CÔNG NGHỆ PHẦN MỀM
BÁO CÁO THỰC TẬP
LẬP TRÌNH GAME 3D TRÊN UNITY
Công ty thực tập : Công Ty Cổ Phần VNG Người phụ trách : Hoàng Thị Thúy Hạnh Thực tập sinh : Nguyễn Thành Trung MSSV : 18520179
TP Hồ Chí Minh, 1 tháng 9 năm 2021
Trang 2LỜI MỞ ĐẦU
Theo thống kê của GooglePlay và Appstore, hai nền tảng ứng dụng lớn nhất thế giới hiện nay, mỗi tháng có tới hàng triệu ứng dụng được phát hành, bên cạnh những ứng dụng phục vụ cho công việc, cuộc sống thì một lượng lớn còn lại chính là các trò chơi điện tử (video game) Game được tạo ra để phục vụ nhu cầu giải trí của con người 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ông nghiệp phần mềm, đem lại hàng tỷ đô lợi nhuận và thúc đẩy sự phát triển của thế giới Trong giai đoạn khó khăn của đại dịch Covid-19,
đa số các ngành nghề khác đều bị ảnh hưởng, thì ngành công nghiệp trò chơi điện tử lại có mức tăng trưởng chóng mặt cả về doanh thu, số lượng trò chơi và cả tập người dùng
Cùng với xu thế phát triển của thế giới, và đáp lại sự thay đổi nhu cầu giải trí của người dùng Nhiều công ty tại Việt Nam đã bước vào ngành công nghiệp game, nỗ lực từng ngày để hòa nhập cùng với các công ty game hàng đầu thế giới VNG, cùng với MadPoly Studio, là một trong những cái tên đã góp phần rất lớn trong công cuộc phát triển của ngành game Việt
Các sản phẩm game từ trước đến nay đã và đang được cộng đồng người dùng yêu mến vì mục đích giúp giải trí, giải tỏa căng thẳng, mang lại cảm xúc tích cực Bên cạnh đó các game cũng chính là những ứng dụng đầu tiên của các công nghệ mới (AI, VR, AR, NFT, …) Do đó, xuất phát từ mong muốn tạo ra các sản phẩm đem lại niềm vui cho người dùng, và niềm khao khát thách thức với các công nghệ mới, em quyết định chọn lập trình game làm định hướng cho việc học tập và nghề nghiệp của bản thân
Sau ba năm học tập tại môi trường đại học, em đã lĩnh hội được nhiều kiến thức về kỹ thuật và quy trình phát triển phần mềm Em đã tìm kiếm một đơn vị phát triển game để có thể
áp dụng các kiến thức trên vào thực tế, và làm quen với công việc phát triển game trong môi trường chuyên nghiệp Qua chương trình VNG Junior Game Designer 2021, em đã có được cơ hội làm việc tại VNG và MadPoly Studio - là nơi đã giúp em hoàn thành được dự định này
Trang 3LỜI CẢM ƠN
Trân trọng gửi lời cảm ơn Công Ty Cổ Phần VNG và MadPoly Studio đã tạo điều kiện cho em có cơ hội được thực tập tại công ty
Trong vòng 2 tháng thực tập, nhóm thực tập chúng em đã học được rất nhiều kiến thức
về phát triển game, từ đó có thể cài đặt được một project mobile game với đầy đủ các tính năng Tất cả những thành quả trên, để đạt được không thể thiếu các buổi training bài bản từ các anh manager và senior trong công ty, sự quan tâm và chỉ dẫn tận tình từ các anh mentor, tinh thần đoàn kết, nỗ lực từ các bạn trong nhóm, và sự hỗ trợ từ các anh/chị từ các vị trí khác Chân thành cảm ơn các anh, các chị, các bạn đã giúp sức cùng em hoàn thành đợt thực tập này
Đặc biệt cảm ơn chị Hoàng Thị Thúy Hạnh đã quản lý chương trình, sắp xếp các buổi training kiến thức, hỗ trợ các bạn Fresher Cảm ơn anh Nguyễn Đình Thi đã hướng dẫn, giúp đỡ nhóm em trong việc tìm hiểu, thực hành về LiveOps, anh Nguyễn Đăng Quang đã giúp đỡ, training cho nhóm em trong việc thiết kế tính năng, nâng cao trải nghiệm người chơi Cảm ơn anh Đỗ Mạnh Tuấn đã chỉ dẫn chúng em trong việc xây dựng, thiết kế màn chơi
Em cũng xin chân thành cảm ơn thầy cô trong khoa Công nghệ phần mềm đã hỗ trợ, tạo điều kiện em hoàn thành bài báo cáo này
Nguyễn Thành Trung Thành phố Hồ Chí Minh, ngày 1 tháng 9 năm 2021
Trang 4NHẬN XÉT CỦA KHOA
Trang 5
MỤC LỤC
MỤC LỤC 5
CHƯƠNG 1: GIỚI THIỆU CÔNG TY THỰC TẬP 6
1 Giới thiệu công ty VNG: 6
2 Giới thiệu MadPoly Studio (MPS) 6
CHƯƠNG 2: NỘI DUNG THỰC TẬP 7
1 Tìm hiểu công ty và các kỹ năng cơ bản trong công ty 7
2 Nghiên cứu kỹ thuật 7
2.1 Các công cụ làm việc 7
2.2 Chuỗi seminar tìm hiểu về công việc phát triển game 8
2.3 Chuỗi Seminar Kỹ năng mềm: 8
2.4 Thiết kế Demo Game bắn Zombie bằng Unity 9
2.5 Thiết kế tính năng mới cho tựa game đã vào giai đoạn LiveOps: 10
3 Thực hiện project 11
4 Lịch làm việc 11
CHƯƠNG 3: CHI TIẾT VỀ PROJECT 13
1 Game FPS Zombie Shooter: 13
1.1 Giới thiệu về game: 13
1.2 Cốt truyện: 13
1.3 Thực hiện: 14
2 Tính năng WorldWarZ: 15
2.1 Giới thiệu về tính năng: 15
2.2 Cốt truyện: 15
2.3 Thực hiện: 17
2.4 Kế hoạch: 17
TỔNG KẾT 19
Trang 6CHƯƠNG 1: GIỚI THIỆU CÔNG TY THỰC TẬP
1 Giới thiệu công ty VNG:
Thành lập từ năm 2004 đến nay, VNG đã trải qua 14 năm phát triển và mở rộng để trở thành một trong những công ty Internet & Công nghệ hàng đầu Việt Nam và Đông Nam Á, với hơn 3200 thành viên
Hệ sinh thái ứng dụng và dịch vụ của VNG bao gồm 4 nhóm chính, tập trung hướng đến những trải nghiệm phong phú và giải pháp tối ưu, phục vụ cho người dùng cá nhân và tổ chức:
- Trò chơi trực tuyến
- Nền tảng kết nối
- Thanh toán tài chính
- Dịch vụ đám mây
Trong đó, trò chơi trực tuyến của VNG gồm 2 mảng chính:
- Phát triển và sản xuất trò chơi trực tuyến, phát hành ra thị trường quốc tế Sản phẩm: Khu vườn trên mây, Dead Target, iCá….;
- Nhập khẩu và Phát hành các trò chơi nổi tiếng thế giới Sản phẩm: Võ Lâm Truyền Kỳ, Rules of Survival, Crossfire Legend…
2 Giới thiệu MadPoly Studio (MPS)
MPS là một trong những Game Studio tại VNG chuyên phát triển các sản phẩm game mobile cho thị trường quốc tế
Những tựa game thành công với hơn 100 triệu người dùng quốc tế đang hoạt động: DEAD TARGET, DEAD WARFARE, ZOMBIE HUNTER, SNIPER ZOMBIES, MAD ZOMBIES,
Trang 7CHƯƠNG 2: NỘI DUNG THỰC TẬP
Chương trình thực tập với sản phẩm tốt nghiệp bao gồm 1 tựa game bắn zombie được thực hiện bằng Unity và tính năng mới cho sản phẩm Dead Target nhằm giúp sinh viên được đào tạo công việc chuyên môn về cách lập trình game bằng Unity Engine và cách thiết kế tính năng mới cho các sản phẩm đã được phát hành Bên cạnh đó, sinh viên có cơ hội được học tập
về phong cách lập trình game chuyên nghiệp, tìm hiểu toàn cảnh về các vai trò trong đội ngũ phát triển game, đồng thời được rèn luyện các kỹ năng mềm thiết yếu như làm việc nhóm, thuyết trình, đàm phán và giải quyết vấn đề
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, quá trình thành lập và phát triển (như đã nhắc đến ở trên), quy trình làm việc từ cao xuống thấp, cách thức tổ chức của công ty
Ngoài ra, thực tập sinh còn được giới thiệu về cách thức làm việc trong công ty như thời gian đi làm, các quy định cần phải tuân thủ, cách sử dụng email trong công việc…
Kết quả : Hiểu thêm về công ty VNG, 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ách nhiệ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 : 4 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, supervisor đã hướng dẫn thực tập sinh tìm hiểu về các công
cụ sẽ giúp ích cho trong công việc sau này Một số phần mềm trong số đó như Tortoise Git - sử dụng trong làm việc nhóm, Jira– hệ thống quản lý task, công việc, Unity Engine - một game engine phục vụ việc phát triển game 3D
Thực hiện : Thực hành sử dụng các phần mềm đã nêu trên
Kết quả : Nắm được các sử dụng các ngôn ngữ, công cụ phục vụ cho việc phát triển
game
Trang 82.2 Chuỗi seminar tìm hiểu về công việc phát triển game
Thời gian : 3 tuần
Nội dung : Được training về cách thiết kế, lên ý tưởng cho một con game mới, hoặc
một tính năng cho game đang vận hành
- Cách phân loại user:
Các kiến thức cơ bản về cách phân loại, định nghĩa user từ quá khứ đến hiện tại,
ưu nhược điểm của chúng Ứng dụng mô hình trên để tìm tập khách hàng mục tiêu của game
- Game Loop:
Vòng lặp là yếu tố cốt lõi của game, thực tập sinh được hướng dẫn để tìm hiểu và chỉ ra vòng lặp của một số tựa game, thiết kế để tạo ra vòng lặp hợp lý và có tính ứng dụng cao
- Boss/Monster Design:
Thực tập sinh sẽ được hướng dẫn về cách thiết kế về boss và các con quái Biết cách đưa ra các điểm yếu, điểm mạnh, tương tác với người chơi, các kỹ năng đặc biệt và lắng nghe chia sẻ từ những anh Game Designer hơn 10 năm kinh nghiệm
- Mô hình Freemium:
Mô hình Free to play hiện đang được ứng dụng rộng rãi và đang là xu thế của các game mobile hiện nay, có thể thấy top 10 game có doanh thu cao nhất trên Appstore hay Google Play đa phần đều là game Free to play Thực tập sinh được tìm hiểu cách để thiết kế tính năng, thiết kế các event, live operation và cách thu được lợi nhuận từ mô hình phát triển game này
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 thiết kế game
- Có được những kiến thức quan trọng cho việc phát triển game mobile sau này
- Ngoài ra còn được biết thêm một số quy tắc trong việc viết tài liệu sao cho đúng chuẩn, dễ đọc, dễ hiểu
2.3 Chuỗi Seminar Kỹ năng mềm:
Thời gian : 1 tuần
Trang 9- 7 Thói quen hiệu quả của Stephen Covey
- Agile Mindset: Tinh thần của một người tham gia vào mô hình Agile
- Khái niệm về thương lượng, phong cách thương lượng, cách chuẩn bị cho cuộc thương lượng
- Tư duy phản biện (Critical Thinking)
- Kỹ năng thuyết trình chuyên nghiệp và tự tin: thiết k16 ý tưởng, xây dựng nội dung, chuẩn bị và thực hiện thuyết trình
Thực hiện :
- Tham gia đầy đủ các buổi seminar
- Thực hiện các bài tập để rèn luyện những kỹ năng đã học
Kết quả :
- Tham gia đầy đủ các buổi seminar
- Tích cực đóng góp ý kiến, tham gia các trò chơi nhỏ trong các buổi seminar và giành được hạng nhất chung cuộc
- Lĩnh hội được nhiều kiến thức về giao tiếp, thuyết trình, đàm phán và thương lượng
2.4 Thiết kế Demo Game bắn Zombie bằng Unity
Thời gian : 2 tuần
Nội dung : Các kỹ thuật tạo ra một demo game dưới vai trò là Designer, để có thể
trình bày ý tưởng, thương lượng với cấp trên để tiến hành sản phẩm
- Các tính năng chính của dòng Game FPS:
FPS (First Person Shooter) là một trong những dòng game khá phổ biến hiện nay, sinh viên được tìm hiểu các tính năng cơ bản, cách setup lối chơi cho game, bên cạnh đó tìm hiểu các đối thủ cạnh tranh để học hỏi, cải tiến
- Chủ đề Zombie:
Zombie là chủ đề chưa bao giờ lỗi thời, mỗi năm đều có sự ra mắt của những game zombie trên khắp thế giới, không những thế trong mắt người chơi luôn có chỗ cho những tựa game zombie và sẽ khó bị lỗi thời Thực tập sinh được tìm hiểu cách thiết kế màn chơi, thiết kế súng, quái vật theo chủ đề trên
- Unity Engine:
Trang 10Để có thể lập trình game trên được dễ dàng và nhanh chóng hơn, thực tập sinh được tiếp cận sâu hơn về unity engine cũng như ngôn ngữ C# Từ đó có khả năng đọc, hiểu code, tự thiết kế ra cho mình một demo game hoàn chỉnh
Thực hiện :
- Tham gia đầy đủ các buổi training
- Làm bài tập được giao
- Tìm hiểu các đối thủ cạnh tranh
Kết quả:
- Tạo ra được 1 demo game hoàn chỉnh
2.5 Thiết kế tính năng mới cho tựa game đã vào giai đoạn LiveOps:
Thời gian : 1 tuần
Nội dung: Các kỹ thuật chuyên sâu về việc thiết kế tính năng mới cho một tựa game
đã được phát hành và trong giai đoạn vận hành
- Tìm hiểu về LiveOps:
Thực tập sinh được tìm hiểu quy trình vận hành, cập nhật các tính năng mới cho giai đoạn LiveOps của game theo mô hình Freemium
- Tương tác với gameplay:
Tính năng mới được đưa ra phải tương thích với core-gameplay của trò chơi Thực tập sinh tìm hiểu các đối thủ cạnh tranh, phân tích các tương tác của những tính năng của những tựa game đó
- Cách thiết kế GachaBox:
GachaBox hay LootBox là một phần không thể thiếu của mô hình Free to Play, là nguồn doanh thu chính của các nhà phát triển Sinh viên được học cách thiết kế các tính năng Gacha, cách cân bằng và tỉ lệ các phần quà, cũng như mô phỏng các
tỉ lệ mở quà của người chơi
Thực hiện :
- Tham gia đầy đủ các buổi training
- Làm bài tập được giao
- Tìm hiểu các đối thủ cạnh tranh
Trang 11Kết quả:
- Tạo ra được 1 tính năng hoàn chỉnh
3 Thực hiện project
4 Lịch làm việc
Mức
độ hoàn thành
1
- Tìm hiểu về công
ty, cách tổ chức của công ty
- Làm quen với các công cụ làm việc trong công ty
- Học cách trao đổi, làm việc qua email, jira
Chị Hoàng Thị Thúy Hạnh
100%
2
- Nguyên lý thiết kế game
- Video game là gì
Anh Nguyễn Đăng Quang
Anh Đỗ Huy Cường
100%
3
- Phân loại User
- GameLoop
- Gamification
- Kỹ năng thuyết trình
- Làm bài tập phân tích game PUBG
Anh Đỗ Huy Cường
Anh Nguyễn Đăng Quang
Anh Chiêm Minh
An Chị Hồng Loan
100%
4
- Thiết kế Boss và Enemy
- Thực hành thuyết trình
- Game UI/UX
- Làm bài tập thiết kế UI/UX
Anh Đỗ Huy Cường
Anh Nguyễn Đăng Quang
Chị Hồng Loan
100%
5
Giai đoạn Alpha của Project:
- Học Unity
- Tiến hành thiết kế gameloop
Anh Dương Hoàng Thanh
Anh Nguyễn Đăng Quang
Anh Nguyễn Đình
100%
Trang 12- Thiết kế core-gameplay
LiveOps:
- Nguyên lý LiveOps
cơ bản
- Thiết kế các gói IAP (In-app Purchases)
- Thiết kế Event
Thi
6
Giai đoạn Beta:
- Cài đặt các tính năng của game
- Hoàn thiện gameplay demo
LiveOps:
- Các công cụ tìm hiểu thị trường
Anh Dương Hoàng Thanh
Anh Nguyễn Đăng Quang
Anh Nguyễn Đình Thi
100%
7
Giai đoạn kết thúc:
- Viết các chức năng nâng cao hơn
- Làm cutscene cho game
- Fix bug và viết báo cáo
LiveOps:
- Tìm hiểu các đối thủ cạnh tranh Skill:
- Excel từ cơ bản đến nâng cao
Anh Dương Hoàng Thanh
Anh Nguyễn Đăng Quang
Anh Nguyễn Đình Thi
Anh Nguyễn Xuân Anh
100%
8
- Thiết kế sự kiện WorldWarZ cho game đang vận hành
Anh Nguyễn Đăng Quang
Anh Nguyễn Đình Thi
100%
Trang 13CHƯƠNG 3: CHI TIẾT VỀ PROJECT
1 Game FPS Zombie Shooter:
1.1 Giới thiệu về game:
- Thực tập sinh thực hiện một project game FPS bắn zombie Trong game, người chơi phải săn lùng và tiêu diệt những con zombie Game lấy ý tưởng từ tựa game bắn ruồi (space shooter), khi mỗi lần tiêu diệt một wave thì sẽ được nâng cấp súng lên, zombie càng đông càng nguy hiểm và wave cuối sẽ đánh với boss
1.2 Cốt truyện:
- Bạn sẽ nhập vai vào một chiến binh của đội đặc nhiệm Liên Hiệp Quốc
- Sở chỉ huy vừa phát hiện ra một mối đe dọa đang lan rộng ra trên toàn cầu và đã
cử các chiến binh tinh nhuệ đi chiến đấu, hỗ trợ lực lượng quân đội Tổ chức vừa phát hiện được nguồn gốc của mối đe dọa trên chính là những con zombie ngoài hành tinh, có khả năng mở các cổng không gian để chinh phục các thế giới trong dải ngân hà này Lần này chúng xuất hiện ở một trong những khu rừng bắc Mỹ, nhiệm vụ của bạn là tiến đến đó và tiêu diệt sạch bọn chúng
1.2.1 Luật chơi chính:
Mô tả