1. Trang chủ
  2. » Cao đẳng - Đại học

báo cáo thực tập lập trình GAME tương tác bằng UNITY và lidar

22 32 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 22
Dung lượng 1,25 MB

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

Nội dung

Vì thế các loại hình game mới đã xuất hiện, cụ thể là gametương tác sử dụng công nghệ cảm biến, vừa mang tính giải trí, vừa hội nhập công nghệ tân tiếncủa thế giới.. để hướng dẫn chúng e

Trang 1

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

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

LẬP TRÌNH GAME TƯƠNG TÁC BẰNG

UNITY và Lidar

Thực tập sinh : Hồ Nguyễn Minh Triết

Trang 2

TP Hồ Chí Minh, tháng 2 năm 2020

Trang 3

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 non trẻ Việt Nam đã và đang phát triển mạnh mẽ, để hòa nhập với những công tyhàng đầu về công nghệ trên thế giới Vì thế các loại hình game mới đã xuất hiện, cụ thể là gametương tác sử dụng công nghệ cảm biến, vừa mang tính giải trí, vừa hội nhập công nghệ tân tiếncủa thế giới

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 FIRST INTERACTIVE TECHNOLOGY - một môitrường lý tưởng, hiện đại, chuyên nghiệp - là nơi sẽ giúp em thực hiện được dự định này

Trang 4

để hướng dẫn chúng em hoàn thành đợt thực tập này.

Đặc biệt cảm ơn anh Lê Phương Khanh đã training Unity C#, công nghệ Lidar, hướng

dẫn, giúp đỡ cho chúng em tận tình cả những khó khăn trong công việc, đến những khó khănviệc làm quen với môi trường mới

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ồ Nguyễn Minh Triết

<TpHCM, ngày tháng năm>

Trang 5

NHẬN XÉT CỦA KHOA

Trang 6

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

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

Trang 7

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

1 Giới thiệu công ty First:

FIRST INTERACTIVE TECHNOLOGY (Gọi tắt là FIRST) là agency

Marketing tại Việt Nam.

FIRST đã có hơn 15 năm kinh nghiệm trong lĩnh vực Marketing với việc xây dựng

và thực hiện rất nhiều kế hoạch truyền thông, quảng cáo cho các tập đoàn, đối tác lớn trong và ngoài nước.

Sau một thời gian phát triển, với mong muốn đo lường chính xác kết quả các chiến dịch Marketing, FIRST đã đưa vào nghiên cứu và ứng dụng các sản phẩm công nghệ nhằm phục vụ riêng thị trường Marketing.

FIRST tự tin mang đến các giải pháp Marketing hiện đại, hiệu quả về mặt dữ liệu

thực tế, lẫn chi phí thực hiện Bởi vì FIRST sử dụng nguồn nhân lực bản địa phát triển các sản phẩm song hành cùng quốc tế trong lĩnh vực Marketing, tạo nên ưu thế cạnh tranh, tính đột phát và thấu hiểu người tiêu dùng.

Đội ngũ nhân sự FIRST với hơn 50 cộng sự, thuộc các phòng: Sáng Tạo, Event,

Activation, Technology, R&D và Planner Strategy - đã có kinh nghiệm làm việc tại nhiều

Trang 8

công ty đa quốc gia tại Singapore, Israel, Đức… cùng sự tư vấn của các giáo sư và cộng tác của các bạn sinh viên thuộc TOP tại các trường đại học danh giá.

First tự hào vì đã xây dựng thành công một môi trường văn hóa đặc trưng, tinh thần làm việc hợp nhất và quan trọng hơn hết là cùng khách hàng tạo nên cộng đồng Marketing hiện đại, hiệu quả, dẫn đầu xu hướng.

Trong 2 năm 2017 và 2018, công ty đã ra mắt các sản phẩm sử dụng những công nghệ hiện đại nhất để phục vụ cho các chiến dịch Marketing như: Game AR, Game tương tác Kinect, Gương chụp hình- Funkymir, Bộ chụp hình tách nền - Portable studio, Thiết

bị bảo vệ trẻ em - Kid Protection, Hệ thống quản lý dữ liệu và thay đổi nội dung trình chiếu từ xa- Neural Display, Thiết bị chỉ đường trong tòa nhà- Way Finding…

Tất cả đã và đang nỗ lực từng ngày, để mang đến những giải pháp hiện đại nhất, tốt nhất đến khách hàng Và xây dựng một cộng đồng Marketing trẻ, năng động, đủ sức cạnh tranh với thị trường quốc tế

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

First không những cung cấp các giải pháp cộng nghệ phục vụ marketing, mà còn là đơn vị thực hiện rất nhiều sự kiện, activation và đưa ra chiến lược truyền thông cho rất nhiều thương hiệu trong và ngoài nước.

- Portable Studio

- Interactive Game: AR,VR, IOT

- Smart Showcase

- Wayfinding.

Trang 9

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

Đợt thực tập em chủ yếu học phát triển một phần mềm, cụ thể ở đây là game trênUnity3D kết hợp với công nghệ cảm biến Lidar

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

Thời gian : 4 tuần

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ủacô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 tynhư 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ôngviệc…

Kết quả : Hiểu thêm về công ty First, 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, cách sử dụng các phần cứng kết nối vớiUnity như Kinect, Lidar, 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 : 2 tuần

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 và trang web trong số

đó như Trello, Git, bitbucket - sử dụng trong làm việc nhóm, AdvanceIP – trình duyệt

IP để kết nối với Lidar Unity3D – công cụ phát triển game, Resolume – phẩn mềm đểmapping và trình chiếu nội dung từ Unity qua máy chiếu

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

Kết quả : Lập trình sử dụng các công cụ miễn phí, giúp dễ dàng kết hợp các công cụ

với nhau, so với việc dung các IDE

2.2 Tìm hiểu ngôn ngữ C# nâng cao

Thời gian : 2 tuần

Nội dung : Được training về các kỹ thuật C# nâng cao, những kiến thức quan trọng

cho việc tối ưu trên Android

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

Các kiến thức cơ bản về lập trình hướng đối tượng như khái niêm, các đặc tínhnhư tính kế thừa, tính đóng gói, tính ảo hóa, tính đa hình Ngoài ra, thực tập sinhcòn được hướng dẫn về cách thiết kế lớp cho các đối tượng game

Trang 10

- Quản lý bộ nhớ

Thực tập sinh sẽ được hướng dẫn về cách cấp phát, quản lý bộ nhớ sao cho tối ưu,tránh rò rỉ bộ nhớ

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#

- Có được những kiến thức quan trọng cho việc lập trình game sau này

- 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 Lập trình Unity3D

Nội dung: Các kiến thức cơ bản về Unity3D để có thể làm ra một game đơn giản.

- Khái niệm cơ bản về Unity.

Năm được các khái niệm cơ bản về môi trường của Unity trên Windows

Ngoài ra, trainer còn cung cấp cho thực tập sinh những khái niệm cơ bản trongUnity như sử dụng inspector, hierarchy, import các packages, component, … đểtùy chỉnh cho game, là những khái niệm rất cơ bản và quan trọng trong lập trìnhgame Unity

- GameObject:

Là một object trong Unity, chứa các biến đặc trưng cho 1 object như name, tag, vàcác hàm như Destroy(), SetActive(), GetComponent<>() để dễ dàng tùy chỉnh cácphần tử trong game

- Collider2D:

Sử dụng thư viện Physics của Unity, Component Collider2D cho phép 2gameobject trong scene có thể va chạm hoặc tương tác với nhau, game sử dụngCollider2D kết hợp với Raycast để nhận input từ tay người chơi tương tác với cácgameobject Collider2D có nhiều dạng tương ứng với hình dạng của gameobjectnhư BoxCollider (hình vuông, hình chữ nhật), CircleCollider (hình tròn),

Trang 11

- Animator:

Một Component rất hữu dụng trong việc tạo animation mà Unity hỗ trợ

Thực hiện :

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

- Làm các bài tập thực hành như tạo các gameobject, cho 2 gameobject va chạm, tắt

mở các game object, xử lý cách chuyển các scene trong Unity, cách cài đặt input

từ Lidar …

- Tìm kiếm tài liệu trên mạng để tìm hiểu thêm

Kết quả :

- Hiểu được những khái niệm cơ bản trong Unity

- Đã hoàn thành được một game đơn giản là chạm vào một gameobject thì nó biếnmất

- Kết nối với Unity:

Trang 12

o Import Plugins KlakSpout vào Unity: https://github.com/keijiro/KlakSpout

o Sau đó Add component SpoutSender.cs vào MainCamera trong Unity

o Nhấp tab Sources của Resolume -> Kéo file Spout vào trong một Column

o Play Unity thì màn hình của Unity sẽ dc trình chiếu qua máy chiếu

o Kết hợp nhiều màn hình Unity để kết nối với nhiều máy chiếu cùng lúc

3. Thực hiện project

Sau một tháng được training và thực hành, thực tập sinh đã nắm được những kiến thực

cơ bản về C#, Unity, Lidar Trong tháng thứ hai, trainer đã hướng dẫn thực tập sinh ápdụng những kiến thức đã học để thực hiện một project game tương tác

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

4 Lịch làm việc

Tuần Công việc Người hướng dẫn

Mức độ hoàn thành

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

1

- Tìm hiểu về công ty,cách tổ chức củacông ty

- Làm quen với cáccông cụ làm việctrong công ty

- Học cách trao đổi,làm việc qua email

Anh Vinh

2

- Tìm hiểu ngôn ngữlập trình C# nângcao

Anh Lê PhươngKhanh

3

- Tìm hiểu vềUnity3D

- Thực hành một sốgame cơ bản

Anh Lê PhươngKhanh

4 - Tìm hiểu về Anh Phạm Văn Sĩ

Trang 13

- Sắp xếp vào scenetrên Unity.

- Add các componentcần thiết vào cácgameobject

Anh Lê PhươngKhanh

6

Giai đoạn Alpha(tiếp):

- Viết các chức năngnâng cao hơn

- Tương tác với cácobject

Anh Lê PhươngKhanh

7

Giai đoạn Beta:

- Làm các animationcần thiết

- Báo cáo tiến độ vớileader để test game

Anh Lê Anh Tuấn

8

Giai đoạn Beta và giaiđoạn kết thúc, báo cáo :

- Kết nối vớiResolume

- Fix bug, fix rò rìvùng nhớ

- Báo cáo cuối đợtthực tập

Anh Lê Anh Tuấn

Trang 14

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

1 Giới thiệu về game

TƯƠNG TÁC CHUYỂN MÙA VÀ NHỮNG HIỆU ỨNG CỦA TỪNG MÙA.

Xuân – Hạ - Thu- Đông.

Nội dung game sẽ được chiếu lên tường là tổ hợp 4 bức tranh sinh động mô tả bốn mùa trong năm có ở Việt Nam, mùa xuân với mai vàng, cùng cánh đồng của

vụ lúa đông xuân ở miền nam, cảnh hoa đào ở phíá Bắc trong tiết trời lạnh giá Mùa hạ với những hàng cây hoa sao đặc trưng của Sài Gòn, loài hoa gợi nhớ tuổi học trò rất riêng biệt Mùa thu với lá vàng rơi Mùa đông lạnh lẽo trên rẻo cao ở Tây Bắc

1.1 Quy tắc chung

Chạm vào icon mùa nào thì mùa đó sẽ xuất hiện layer đầu tiên và những icon như cây, mây, đồi núi… để người chơi chạm vào và hoàn thiện bức tranh Sau khi hoàn thiện bức tranh, thì các icon hiện tượng trong mùa xuất hiện để người chơi tương tác trong mùa đó, ví dụ như mùa đông có icon sấm sét, mưa…, mùa thu có icon lá rơi, gió…, mùa mùa hạ có icon nắng, gió, mưa…Sau khi chạm icon hiện tượng nào thì visual hiện tượng đó xuất hiện.

1.2 Mùa Xuân phía Nam: (hình minh hoạ bên dưới)

- Cảnh đầu tiên: Layer đầu tiên mùa xuân xuất hiện, trong layer này sẽ có các icon ruộng lúa, cành mai, mưa, sấm chớp, gió, Khi chạm vào icon ruộng thì visual ruông xuất hiện, chạm vào icon cành mai thì visual cành mai xuất hiện, chạm vào sấm chớp thì visual sấm chớp xuất hiện tất cả xuất hiện ngẫu nhiên

- Cảnh hai: phong cảnh đã có ruộng lúa và cành mai chưa có hoa, các icon ruộng, cành mai biến mất, icon hoa nở xuất hiện thêm

- Cảnh ba: sau khi người chơi hoàn thiện bức tranh mùa xuân thì các icon ruộng lúa, cành mai, hoa nở biến mất, lúc này xuất hiện thêm các icon mùa

hạ, thu, đông và mùa xuân phía Bắc để người chơi có thể chuyển cảnh.

Trang 15

Hinh minh hoạ cảnh 1, 2, 3

1.3 Mùa Xuân phía Bắc: (theo hình minh hoạ bên dưới)

- Cảnh đầu tiên: có icon gió, mưa, cành cây.

- Cảnh hai: có icon mưa, hoa.

- Cảnh ba: có icon mưa, icon chim

- Cảnh bốn: có icon hoa rơi, mưa, xuân phía Nam, hạ, thu và đông

Trang 16

1.4 Mùa hạ: ( theo hình minh hoạ bên dưới)

- Cảnh 1: có icon cành cây, icon gió, sấm chớp, nền đất, con đường

- Cảnh 2: icon gió, sấm chớp, bụi cây, lá mọc.

- Cảnh 3: gió, sấm chớp, mưa, quả chò rơi (trong hình minh hoạ đang thiếu icon mưa)

Trang 17

1.5 Mùa Thu: (theo hình minh hoạ bên dưới)

- Cảnh 1: có icon cành cây, nền đất, sấm chớp, gió, mưa, cây mọc

- Cảnh 2: có icon gió, mưa, sấm chớp, lá rơi

- Cảnh 3: gió, mưa, sấm chớp, mùa đông, mùa xuân, mùa hạ

Trang 18

1.6 Mùa Đông: (theo như hình minh hoạ)

- Cảnh 1: có icon mây, gió, ruộng bậc thang, cành cây, nền đất

- Cảnh 2: có icon mây, mưa, gió, hoa nở, chim, người

- Cảnh 3: có icon mưa, gió (hoa sẽ rơi), hoa nở, mùa xuân phía Bắc, mùa Xuân phía Nam, mùa thu, mùa hè.

Trang 19

2 Thực hiện

- Thực tập sinh: Hồ Nguyễn Minh Triết

Và sự giúp đỡ tận tình của team trainer Gameloft

3 Kế hoạch

Giai đoạn Alpha:

- Hoàn thành chức năng của từng icon:

o Trôi từ trên xuống

o Tương tác thì chuyển cảnh, cây mọc, lá rơi,…

- Làm các particle là rơi, hoa rơi

- Xây dựng pattern, thứ tự xuất hiện và tương tác của các icon và các cảnh

Trang 20

Kết quả :

- Các tính năng trên đã được thực hiện tốt

Giai đoạn Beta:

- Làm animation cho chim chóc và người, các background cây đung đưa, mây bay,

Kết quả : Đã hoàn thành toàn bộ những tính năng trên, tuy nhiên chưa tối ưu

Giai đoạn hoàn thành:

- Tối ưu hóa cách tương tác

- Được Lead Designer và trainer xác nhận hoàn thành dự án

- Nộp source code lên bitbucket

Trang 22

TỔNG KẾT

Như vậy, chỉ trong vòng một tháng ngắn ngủi, em đã kịp hoàn thành một game tương tácchạy trên nền tảng PC và được trình chiếu lên tường ở khu giải trí JP WORLD của Gigamall.Game đã có khá đầy đủ các tính năng đã đề ra ban đầu Game phát triển theo framework có tính

kế thừa nên sau này khi có thời gian sẽ có thể phát triển lên mức cao hơn

Chân thành cảm ơn sự giúp đỡ của các anh chị nhóm trainer của First để em có thể hoànthành game này Cảm ơn thầy Nguyễn Hữu Thương đã giúp em hoàn thành bài báo cáo này

Ngày đăng: 05/09/2021, 21:00

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w