Đang tải... (xem toàn văn)
Làm sao để tạo ra một tròchơi không chỉ hấp dẫn về mặt đồ họa mà còn phong phú và sâu sắcvề nội dung cũng như sáng tạo trong lối chơi, đã và luôn là tháchthức lớn của những nhà phát triể
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TINKHOA CÔNG NGHỆ PHẦN MỀM
BÁO CÁO THỰC TẬPGAME DEVELOPER
Công ty thực tập: Công ty Cổ phần Công nghệANTTIZEN
Người phụ trách: Nguyễn Thanh CaoThực tập sinh: Lâm Tấn Phát
Trang 2LỜI MỞ ĐẦU
Trong bối cảnh của cuộc cách mạng công nghiệp 4.0, ngành côngnghệ thông tin, và đặc biệt là lĩnh vực Công nghệ phần mềm, đã trởthành một trong những trụ cột chính của sự phát triển xã hội Trongsố đó, ngành phát triển trò chơi điện tử, với sự kết hợp độc đáo giữanghệ thuật và công nghệ, đang mở ra một không gian sáng tạo vôtận.
Bên cạnh yếu tố kỹ thuật, đối với trò chơi điện tử, yếu tố hình thứcvà nội dung cũng quan trọng không kém Làm sao để tạo ra một tròchơi không chỉ hấp dẫn về mặt đồ họa mà còn phong phú và sâu sắcvề nội dung cũng như sáng tạo trong lối chơi, đã và luôn là tháchthức lớn của những nhà phát triển.
Sau những năm tháng trong môi trường đại học, với mong muốn ápdụng những kiến thức được tích lũy và có được trải nghiệm thực tếtrong môi trường phát triển trò chơi, em đã quyết định tham gia vàoANTTIZEN – một môi trường lý tưởng và chuyên nghiệp để thực hiệndự định của mình.
Trang 3LỜI CẢM ƠN
Em xin trân trọng gửi lời cảm ơn thầy Lê Thanh Trọng, anh Hà ĐăngHoàng cũng như anh Nguyễn Thanh Cao đã tạo điều kiện cho em cơhội được thực tập tại công ty Dù trong thời gian ngắn nhưng nhờ sựchỉ dẫn nhiệt tình của anh Hoàng và anh Cao, em đã tiếp thu nhữngkiến thức quan trọng để có thể tham gia một dự án thực tế
Chân thành cảm ơn các anh trong team đã bỏ ra nhiều thời gian,công sức để hướng dẫn, hướng dẫn, giúp đỡ em tận tình trong khilàm quen môi trường mới cũng như trong việc tiếp cận kiến thứccông nghệ, kỹ năng lập trình và tư duy sản phẩm để có thể thựchiện tốt dự án cá nhân và dự án thực tế trong thời gian qua
Em cũng xin cảm ơn cô Huỳnh Hồ Thị Mộng Trinh khoa Công nghệphần mềm đã nhiệt tình hỗ trợ, tạo điều kiện em làm báo cáo này
TP HCM, ngày 30 tháng 12năm 2023
Lâm Tấn Phát
Trang 5CHƯƠNG 1: GIỚI THIỆU CÔNG TY THỰC TẬP 7
1.1 Công ty Cổ phần Công nghệ ANTTIZEN: 7
1.2 Một số sản phẩm của công ty: 7
1.2.1 9 Torrent: 7
1.2.2 Textize MindMap: 8
1.2.3 CPU5: 8
1.3 Lịch thực tập tại công ty: 9
CHƯƠNG 2: NỘI DUNG THỰC TẬP 10
2.1 Nghiên cứu kỹ thuật: 10
Trang 6MỤC LỤC HÌNH ẢNH
Hình 1.1 Logo ANTTIZEN 7
Hình 1.2 9 Torrent trên Microsoft Store 7
Hình 1.3 Texture MindMap trên Microsoft Store 8
Hình 1.4 CPU5 trên Microsoft Store 8
Hình 2.1 Màn hình khởi động (trái) và giao diện gameplay (phải) 13
Hình 2.2 Đạn nổ (trái) và đạn theo dấu (phải) 13
Hình 2.3 Giao diện khởi động và màn hình vào game 15
Hình 2.4 Giao diện chính và thiết lập âm thanh 15
Hình 2.5 Giao diện gameplay 16
Hình 2.6 Hộp thoại hồi sinh và qua màn 16
Trang 7CHƯƠNG 1: GIỚI THIỆU CÔNG TY THỰC TẬP1.1 Công ty Cổ phần Công nghệ ANTTIZEN:
Hình 1.1 Logo ANTTIZEN
Anttizen là một công ty phần mềm chuyên về xây dựng và phát triểncác ứng dụng trên nền tảng Window 10 và Cross Platform Đến vớiAnttizen, các bạn sinh viên sẽ được trải nghiệm môi trường làm việctrẻ trung, chuyên nghiệp, được học hỏi và hướng dẫn tận tình từnhững “chú kiến đỏ" thân thiện.
Trang 81.2 Một số sản phẩm của công ty:1.2.1 9 Torrent:
Hình 1.2 9 Torrent trên Microsoft Store
1.2.2 Textize MindMap:
Hình 1.3 Texture MindMap trên Microsoft Store
Trang 91.2.3 CPU5:
Hình 1.4 CPU5 trên Microsoft Store
1.3 Lịch thực tập tại công ty:Thời gian bắt đầu
và kết thúc thựctập
Từ 06-07-2023 đến 31-12-2023.
Lịch thực tập trongtuần
Thứ 2 và Thứ 5 (06-07-2023 đến 2023).
04-10-Lịch làm việc trongtuần
Từ thứ 2 đến thứ 6 (sau khi thực tập đến nay).
Lịch thực tập vàlàm việc trong
Từ 9 giờ sáng đến 18 giờ chiều.
Trang 10Thời gian nghỉ trưa Từ 12 giờ đến 14 giờ.
Lịch báo cáo hoặchọp tiến độ
Mỗi tuần sẽ họp tiến độ tuần 1 lần vào sángthứ 2, mọi người sẽ cùng họp và bàn bạc vềcác vấn đề đã giải quyết, tồn đọng, bài học,giải pháp và mục tiêu cho tuần tiếp theo.
Trang 11CHƯƠNG 2: NỘI DUNG THỰC TẬP
Sau khi được giới thiệu về cách tổ chức, quy trình làmviệc, văn hóacông ty cũng như các quy định và các tool thường sử dụng, em bắtđầu được các anh hướng dẫn các kỹ thuật chuyên môn cần thiết đểlàm việc với các dự án của team Trong khoảng thời gian training,em được các anh trong team hướng dẫn và hỗ trợ nhiệt tình để hoànthành 2 dự án cá nhân: Thunder Raid và Tomb of the Mask.
2.1 Nghiên cứu kỹ thuật:
hoàn thành
- Tổng quan về Unity3D.
- Cài đặt Unity3D.
- Thiết lập và tạo project với Unity3D.
- Các khái niệm cốt lõi của Unity3D: “scene”, “game object”, “component”, “script”…
- Tạo game object.
- Viết logic cho game object sử dụng script và ngôn ngữ C#.
- Hiểu và sử dụng các hàm quan trọng trong class MonoBehavior: “Start”, “Update”…
- Hiểu và sử dụng các component cơ bản trong Unity: “Transform”, “Sprite Renderer”, “Mesh Renderer”…
- Tổng quan về tổ chức của một project game.
- Giới thiệu design pattern Singleton và ứng dụng trong GameManager class.
- Tìm hiểu cách import assets (hình ảnh, âm thanh…) vào thư mục dự án
- Tìm hiểu cách sử dụng code để load asset lên scene, game object.
- Bắt đầu project Thunder Raid.
- Tạo Main Player Character.
Trang 12- Tổ chức và xử lí data để lưu lịch sử Highscore.
- Tạo và xử lí animation khi Enemy Character bị tiêu diệt.
- Import và xử lí âm thanh trong game.
- Giới thiệu một số design pattern bổ sung: Observer, State Machine, Factory…
- Giới thiệu kỹ thuật Pooling.
- Giới thiệu plugin hỗ trợ Tweening
- Giới thiệu một số kỹ thuật tạo tính năng game như Lucky Wheel, Mission…
09 - Tổng hợp kiến thức và chọn game cho báo cáo tổng kết khóa
Trang 132.2 Dự án cá nhân:2.2.1 Thunder Raid:
Công nghệ
- Game Engine: Unity3D.- Ngôn ngữ lập trình: C#.- Plugin hỗ trợ: DOTween.
- Máy bay địch sau khi nhận đủ sát thương (đạn) sẽ bị tiêudiệt và người chơi được nhận điểm.
- Sau một khoảng thời gian, máy bay boss sẽ xuất hiện.Người chơi tiêu diệt được boss hoặc bị tiêu diệt trong quátrình chơi sẽ kết thúc game và hiển thị bảng điểmhighscore.
Trang 14 Kết quả:
Hình 2.1 Màn hình khởi động (trái) và giao diện gameplay (phải)
Hình 2.2 Đạn nổ (trái) và đạn theo dấu (phải)
Trang 152.2.2 Tomb of the Mask:
Công nghệ
- Game Engine: Unity3D.- Ngôn ngữ lập trình: C#.- Plugin hỗ trợ: DOTween.
Mô tả
- Đây là dự án tổng kết cuối khóa trainning với team.
- Dự án là bản clone 8 stage đầu tiên của game Tomb of the Mask trên CH Play.
- Thời gian thực hiện: 1 tháng (từ thời điểm kết thúctrainning đến ngày 01-10-2023)
Cách chơi
- Người chơi sử dụng 4 phím A, W, S, D để di chuyểncharacter trên màn hình, cố gắng thu thập nhiều chấm (dot)và sao nhất có thể rồi đến điểm đích của stage để qua màn.- Character sẽ không thể ngừng di chuyển hay đổi hướng
trước khi chạm tường.
- Trên đường di chuyển, người chơi có thể gặp phải một sốcạm bẫy:
+ Tường gai: người chơi mất mạng nếu va phải tườngtheo phương vuông góc.
+ Tường chông: sau khi người chơi di chuyển ngang quamột thời gian sẽ bật chông trong khoảng thời gian ngắnsau đó thu lại Nếu người chơi chạm phải chông sẽ mấtmạng.
- Người chơi có thể sử dụng khiên (số lượng có hạn) để bảovệ bản thân một lần Sau khi được khiên bảo vệ người chơisẽ trở về điểm an toàn gần nhất trước đó.
- Người chơi có thể xâu chuỗi các bước di chuyển (trái – trái– phải – xuống…) để phóng nhanh qua trước khi một sốcạm bẫy có hiệu lực.
- Nếu mất mạng, người chơi có quyền trả phí để hồi sinhmột lần tại vị trí an toàn gần nhất trước đó Nếu không trả
Trang 16 Kết quả:
Hình 2.3 Giao diện khởi động và màn hình vào game
Hình 2.4 Giao diện chính và thiết lập âm thanh
Trang 17Hình 2.5 Giao diện gameplay
Hình 2.6 Hộp thoại hồi sinh và qua màn
Trang 182.4 Tham gia dự án thực tế:
Sau khi hoàn thành khóa trainning, em may mắn được tiếp tục cùngcác anh trong team thực hiện một số tính năng của dự án công tyđang thực hiện.
Thời gian tham gia Từ sau khi hoàn thành thực tập đến nay.
Tính năng nhậnquà trong gamesau khi xem quảng
- Người chơi nhận hết phần quà trướcđó sẽ được mở khóa nhận phần quàtiếp theo cho đến hết.
Tính năng mua cácgói quà bằng dịchvụ thanh toán qua
Mô tả:
- Sau một khi hoàn thành một mụctrong tính năng Thành tựu hoặc ngườichơi chủ động nhấn vào icon của tínhnăng sẽ mở hộp thoại tương tác.
- Trong hộp thoại chứa nhiều tab, mỗitab là một loại package chứa các góiquà khác nhau: Daily, Weekly,Monthly…
- Tùy loại package mà người chơi cóthể chọn mua bất cứ gói nào hiện cóhoặc phải mua lần lượt.
- Nếu thua nhưng không vượt quá sốlần quy định, người chơi có thể trảmột khoản phí nhỏ để tiếp tục.
- Nếu thua và vượt quá số lần quy định,người chơi phải kết thúc event hoặctrả một khoản phí lớn hơn để bắt đầulại event.
Trang 20CHƯƠNG 3: TỔNG KẾT
Quãng thời gian thực tập tại ANTTIZEN đã giúp em cải thiện bảnthân rất nhiều trong quy trình làm việc thực tế, tác phong của ngườikỹ sư phần mềm Được làm việc tại đây, em đã học thêm được kỹnăng mềm sử dụng mail, làm việc nhóm, giao tiếp với đồng nghiệp,sử dụng các tool hỗ trợ quản lý source code…
Chỉ trong thời gian hạn chế, em đã hoàn thành dự án cá nhân trongquá trình training với các tính năng, yêu cầu đặt ra ban đầu
Khi tham gia vào dự án thực tế, em cũng hoàn thành tốt các tác vụđúng hạn và đạt chất lượng tốt.
3.1 Điểm mạnh:
- Kiến thức nền tảng tốt.
- Khả năng tự học tốt, chịu khó đầu tư, tìm hiểu.
- Khả năng tiếp thu nhanh, ít bị chỉnh sửa khi review code.
Trang 21gia giải quyết vấn đề
G5 Phát triển kỹ năng tư duy, kỹ năng làm việc nhóm và kỹ năngtrình bày
G6 Đọc, hiểu các tài liệu và giao tiếp bằng tiếng Anh
TÀI LIỆU THAM KHẢO
About ANTTIZEN: