Tải bản đầy đủ (.docx) (14 trang)

báo cáo thực tập unity developer

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (526.13 KB, 14 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TINKHOA CƠNG NGHỆ PHẦN MỀM</b>

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

<b>[UNITY DEVELOPER]</b>

Cơng ty thực tập:Topebox

TP. Hồ Chí Minh, tháng 9 năm 2023

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>LỜI MỞ ĐẦU</b>

Ngành game hiện nay đang phát triển mạnh mẽ, với quy mơ thị trường tồn cầu đạt 184,4tỷ USD vào năm 2022. Việt Nam cũng là một thị trường tiềm năng của ngành game, với hơn28,4 triệu người chơi, chiếm 30% dân số. Một trong những xu hướng nổi bật của ngànhgame hiện nay là sự phát triển của game di động. Game di động đã trở thành hình thức chơigame phổ biến nhất trên thế giới, chiếm khoảng 50% thị trường game toàn cầu.

Và lẽ đó, một thứ khơng thể thiếu trong ngành game đó chính là "cơng cụ làm game", haycịn được gọi là Engine. Một trong số đó khơng thể khơng kể đến Unity Engine. Unity Enginelà một công cụ phát triển game đa nền tảng, được phát triển bởi Unity Technologies. UnityEngine cho phép các nhà phát triển tạo ra các trò chơi cho nhiều nền tảng khác nhau, baogồm PC, console, thiết bị di động và web.

Và mới đây, Unity đã cho ra mắt một công nghệ mới, hứa hẹn nhiều tiềm năng đó chính làUnity Entity Component System (ECS). Unity ECS là một kiến trúc lập trình dựa trên hệ thốngthành phần dành cho Unity. ECS là một cách tiếp cận lập trình dữ liệu hướng đối tượng,trong đó các đối tượng được mô tả bởi các thành phần (components) riêng lẻ. Các thànhphần này có thể được kết hợp lại với nhau để tạo thành các thực thể (entities).

Và theo đó, khi đến với Topebox, em đã được trao cho cơ hội để được tiếp thu thứ kiếnthức vô cùng mới mẻ và đầy hứa hẹn này.

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>LỜI CẢM ƠN</b>

<b>[Tham khảo]</b>

Em xin trân trọng gửi lời cảm ơn Topebox đã tạo điều kiện cho em cơ hội được thực tập tạicông ty. Dù trong thời gian ngắn nhưng nhờ sự chỉ dẫn nhiệt tình của anh Nguyễn HoàngNam, em đã tiếp thu những kiến thức quan trọng để có thể phát triển hơn kho kỹ năng củabản thân.

Chân thành cảm ơn các anh chị trong team Topebox đã 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 khi làm quen môi trường mới cũng nhưtrong việc tiếp cận kiến thức cơ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 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áo cáo này.

TP. HCM, ngày 23 tháng 09 năm 2023

Nguyễn Trung Kiên

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

1.3. Lịch làm việc khi thực tập tại công ty...6

CHƯƠNG 2: NỘI DUNG THỰC TẬP...7

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

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

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

3.3. Chuẩn đạt được...8TÀI LIỆU THAM KHẢO...9

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<b>CHƯƠNG 1: GIỚI THIỆU CÔNG TY THỰC TẬP</b>

<b>1.1. Giới thiệu Topebox</b>

<i>Hình 1.1. Logo Topebox</i>

Topebox là một công ty phát triển game và công nghệ, được thành lập vào năm 2016 tạiThành phố Hồ Chí Minh, Việt Nam. Cơng ty chun phát triển các trị chơi di động, trị chơitrên máy tính và các giải pháp cơng nghệ cho ngành game. Topebox có một đội ngũ nhânviên trẻ và tài năng, với kinh nghiệm và chuyên môn trong lĩnh vực phát triển game.

Topebox là một công ty phát triển game và công nghệ hàng đầu tại Việt Nam. Công ty cam kết mang đến những trải nghiệm game thú vị và hấp dẫn cho người chơi trên tồn thế giới.Topebox có mục tiêu trở thành một công ty phát triển game và công nghệ hàng đầu tại Việt Nam và khu vực. Công ty cam kết mang đến những trải nghiệm game thú vị và hấp dẫn cho người chơi trên toàn thế giới.

Topebox đề cao các giá trị cốt lõi sau:

<small>●</small> Trí tuệ: Topebox ln tìm kiếm những giải pháp sáng tạo và hiệu quả.

<small>●</small> Sáng tạo: Topebox luôn nỗ lực tạo ra những sản phẩm và dịch vụ mới lạ và hấp dẫn.<small>●</small> Đam mê: Topebox tin rằng đam mê là động lực thúc đẩy sự sáng tạo và thành công.<small>●</small> Trách nhiệm: Topebox luôn nỗ lực mang lại những sản phẩm và dịch vụ có giá trị cho

người dùng.Sự phát triển của Topebox

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

Topebox đã có một chặng đường phát triển đáng tự hào trong những năm qua. Công ty đã phát triển thành cơng một số trị chơi di động nổi tiếng và cung cấp các giải pháp công nghệ cho ngành game.

Trong tương lai, Topebox sẽ tiếp tục phát triển và đổi mới, mang đến những trải nghiệm game thú vị và hấp dẫn cho người chơi trên tồn thế giới.

<b>1.2. Sản phẩm cơng ty</b>

Các sản phẩm nổi bật của công ty:

- Sky Dancer Series: Đạt rating trung bình 4.6 và trên 50 triệu lượt tải - Titan Hunters: Đạt rating trung bình 4.6 và có trên 1 triệu lượt tải

<b>1.3. Lịch làm việc khi thực tập tại công ty</b>

Em tham gia làm việc tại công ty bắt đầu từ ngày 06/06/2023 tới 03/08/2023 các ngày làmviệc trong tuần là thứ 3, 4, 5 Công việc hằng ngày bắt đầu từ lúc 9h sáng đến 17h chiều. Thờigian nghỉ trưa khoảng 2 tiếng bắt đầu từ 12h.

Tại công ty, chúng em sẽ được tiếp thu kiến thức từ anh mentor về công nghệ Unity ECS mớichỉ ra mắt chính thức cách đó một tuần. Theo đó, chúng em sẽ vừa học tập từ anh mentor,vừa tự tìm hiểu và hồn thành những task được giao, báo cáo thông qua Google Chat vàGitHub

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>CHƯƠNG 2: NỘI DUNG THỰC TẬP</b>

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

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ớithiệu về cơng ty, q trình thành lập và phát triể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, các phịng ban về IT, HR, … Ngồi ra, thực tập sinh cịn đượcgiới thiệu về văn hóa làm việc trong cơng ty như thời gian đi làm, các quy định, cách sử dụngemail trong công việc, …

Kết quả: hiểu thêm về Topebox, 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 Google Chat trong công việc, làm việc có kế hoạch, có kỷ luật, có trách nhiệmhơn.

<b>2.2. Nội dung thực tập</b>

<b>2.2.1. Tuần 1 - Tuần 2</b>

- Nội dung: Tìm hiểu về Unity Editor và thực hiện các bài tập căn bản đề làm quen

- Quá trình thực hiện: Tải và cài đặt Unity. Sau đó bắt đầu từ việc tạo GameObject, viếtScripts đầu tiên cho đến việc làm quen với thanh Hierachy, Properties

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

<i>Hình 1.2. Trang document chính thức về Unity ECS</i>

- Chi tiết yêu cầu: Tạo ra một game bắn gà cơ bản cồm một "Player" có thể di chuyển qua lạiở bên dưới và các"Enemies" sẽ xuất hiện từ bên trên, spawn theo đội hình và từ từ dichuyển xuống gần "player". Player có thể bắn và gây sát thương lên "Enemies", nếu chịu đủsát thương thì "Enemies" sẽ biến mất và Player sẽ được cộng điểm. Ngược lại, nếu Enemieschạm giới hạn dưới của màn hình thì Player sẽ bị trừ máu. Game kết thúc khi Player vượtqua hết các level, hoặc HP của Player trở về 0.

- Quá trình thực hiện: Cài đặt Unity ECS Package. Sau đó dựa vào Document duy nhất về ECStừ Unity, bắt đầu tìm hiểu và triển game từ bước một.

- Khó khăn: Vì Unity ECS 1.0 chỉ vừa mới được ra mắt chưa đầy 2 tuần nên rất khó để có thểtìm thấy tài liệu hay hướng dẫn, cũng khơng có được sự trợ giúp từ các diễn đàng nên cácthực tập sinh chỉ có thể dựa vào nhau và hỏi anh mentor. Dù vậy, mọi thứ vẫn diễn ra tốtđẹp.

- Kết quả: Dù có nhiều khó khăn nhưng vẫn hồn thành đúng thời hạn.

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<i>Hình 1.3. Project shooter</i>

<b>2.2.2. Tuần 7 - Tuần 10</b>

- Nội dung: Tìm hiểu về các thuật toán AI. Thực hiện áp dụng thuật toán MiniMax để viếtmột game tơ màu. Sau khi hồn thành sẽ tiến hành ghép tính năng online/multiplayer chotrị chơi.

- Chi tiết: Tạo ra game "Tank War", trong đó sẽ có 2 player Red và Blue. Red và Blue sẽ thayphiên nhau di chuyển trên "Board" và tô màu tương ứng khi player đi qua ô "Xám". Playersẽ không thể đi lên những ô đã tô hay những ô "Vật cản". Trò chơi kết thúc khi một tronghai bên khơng cịn nước để đi nữa và người chiến thắng sẽ được quyết định bằng số ơ tơđược.

- Q trình thực hiện: Anh Mentor sẽ tạo một template của game trước, sau đó các thực tậpsinh sẽ fork project về để tiếp tục phát triển và hồn thành các task. Đầu tiên là tìm hiểu vềMiniMax, sau đó thảo luận cùng các thực tập sinh khác về các áp dụng nó vào trị chơi. Sauđó bắt đầu áp dụng MiniMax vào trong game. Sau khi gameplay cơ bản được hồn thành,bắt đầu tìm hiểu về NetCode và bắt đầu xây dựng cơ chế Multiplayer cho trị chơi.

- Khó khăn: Thuật tốn MiniMax thật sự rất khó áp dụng và nắm bắt. Gặp nhiều vấn đề khisử dụng NetCode cho ECS vì nó vẫn chưa hoàn thiện.

- Kết quả: Hoàn thành game căn bản, hoàn thành sơ bộ về AI. Hoàn thành về chế độMultiplayer.

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<i>Hình 1.4. Project TankWar</i>

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<b>CHƯƠNG 3: TỔNG KẾT</b>

Quãng thời gian thực tập tại Topebox đã giúp em cải thiện bản thân rất nhiều trong quytrình làm việc thực tế, tác phong của một Game Developer. Được làm việc tại đây, em đãhọc thêm được kỹ năng mềm, làm quen được với môi trường chuyên nghiệp. Về mặt kỹthuật, em được tiếp cận và nắm rõ hơn các sử dụng Unity Engine cũng như khai thác đượctìm năng của cơng nghệ mới ECS.

Chỉ trong thời gian hạn chế, em đã hoàn thành dự án cá nhân trong quá trình training task,yêu cầu đặt ra ban đầu.

G2 Hiểu và giải thích được các khái niệm cơ bản, thuật ngữ và sơ đồ hệ

G3 Nắm được quy trình, phương pháp và cơng nghệ phát triển sản phẩm

G4 Có khả năng tìm hiểu vấn đề, mơ hình hóa vấn đề và tham gia giải

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

<b>TÀI LIỆU THAM KHẢO</b>

<i>1. Fabian, R. (2018, October 8). Oriented design. Data-Oriented Design. </i>

<i>2. Unity. (n.d.). Entities overview: Entities: 1.0.16. Entities | 1.0.16. </i>

</div>

×