Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 20 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
20
Dung lượng
0,98 MB
Nội dung
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 TRÊN MOBILE Công ty thực tập : Gameloft Thực tập sinh : Phan Việt Đức TP Hồ Chí Minh, tháng năm 2021 Sinh viên thực hiện: Phan Việt Đức LỜI MỞ ĐẦU Ngày nay, ngành công nghiệp game phận thiếu ngành công nghiệp phần mềm Với tốc độ phát triển vô mạnh mẽ, ngành game nhân tố kích thích phát triển cơng nghệ thơng tin giới, phần cứng phần mềm Cùng với xu phát triển giới, Việt Nam ngoại lệ Ngành công nghiệp game non trẻ Việt Nam phát triển mạnh mẽ, để hịa nhập với cơng ty hàng đầu game giới Bên cạnh công ty game trẻ tuổi nước, công ty game lớn giới (như Gameloft) gia nhập vào thị trường Việt Nam, góp phần lớn vào phát triển tích cực ngành game Việt Ngành game sinh nhu cầu giải trí giới trẻ thiết bị cơng nghệ Và giới trẻ nguồn nhân lực quan trọng cho việc phát triển ngành game sau Vì lý này, em định chọn lập trình game làm định hướng cho việc học tập Sau ba năm học tập trường, mong muốn có thêm kinh nghiệm thực tế, muốn tham gia làm game mơi trường chun nghiệp, em có dự định thực tập hè Vì vậy, em định chọn Gameloft - môi trường lý tưởng, đại, chuyên nghiệp - nơi giúp em thực dự định Sinh viên thực hiện: Phan Việt Đức LỜI CẢM ƠN Trân trọng gửi lời cảm ơn Công ty Gameloft Việt Nam tạo điều kiện cho em có hội thực tập công ty Chỉ thời gian ngắn, nhờ dẫn nhiệt tình nhóm trainer, nhóm thực tập chúng em tiếp thu kiến thức quan trọng để làm game 3D Chân thành cảm ơn anh chị nhóm trainer bỏ nhiều thời gian,cơng sức để hướng dẫn chúng em hoàn thành đợt thực tập Đặc biệt cảm ơn anh Huỳnh Lê Trung Hậu, training Unity, hướng dẫn, giúp đỡ cho chúng em tận tình khó khăn cơng việc, đến khó khăn việc làm quen với mơi trường mới; cảm ơn chị Thảo Nguyên, hỗ trợ chúng em nhiều vấn đề môi trường điều khoản việc làm; cảm ơn anh Nguyễn Văn Đông, dẫn chúng em cách làm báo cáo, lên kế hoạch, kỹ thiếu; cảm ơn anh Đinh Xuân Dụy training cho chúng em kiến thức quan trọng C# để làm sản phẩm thời gian qua Cũng xin cảm ơn thầy cô 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 Phan Việt Đức TpHCM, ngày 12 tháng năm 2021 Sinh viên thực hiện: Phan Việt Đức Sinh viên thực hiện: Phan Việt Đức NHẬN XÉT CỦA KHOA Sinh viên thực hiện: Phan Việt Đức MỤC LỤC MỤC LỤC Chương 1: Giới thiệu công ty thực tập 2 Giới thiệu công ty Gameloft Sản phẩm công ty Chương 2: Nội dung thực tập .3 Tìm hiểu cơng ty kỹ công ty .3 Nghiên cứu kỹ thuật Thực project Lịch làm việc .7 Chương 3: Chi tiết project .9 Giới thiệu Game Thực 11 Kế hoạch 11 TÀI LIỆU THAM KHẢO 13 TỔNG KẾT 14 Sinh viên thực hiện: Phan Việt Đức Chương 1: Giới thiêu công ty thực tập Giới thiệu công ty Gameloft Gameloft thành lập năm 1999 Pháp, tập đoàn hàng đầu giới phát triển phát hành game di động game tải trực tuyến Sau mười hai năm thành lập, đến Gameloft khẳng định vị mộttrong công ty dẫn đầu lĩnh vực Gameloft có văn phịng đặt tất châu lục giới, phân phối game cho 100 quốc gia có hệ thống studio sản xuất game riêng với 3.500 nhân viên Sản phẩm công ty Sản phẩm công ty Gameloft thiết kế game cho điện thoại di động,iPhone, iPod touch iPad với số lượng thiết bị dự đoán lên đến tỉ vào năm 2012 Là nhà tiên phong lĩnh vực game tải trực tuyến, Gameloft phát triển game cho hệ máy WiiWare, DSiWare, Microsoft Xbox LIVE Arcade PlayStation Network Nhờ thỏa thuận hợp tác với thương hiệu lớn, Gameloft liên kết thương hiệu lớn toàn giới với tựa game Uno, Ferrari, Shrek, CSI, Iron Man, Spiderman Sonic Ngồi cơng tycũng sở hữu sưu tập game riêng với thương hiệu game nhượng quyền thương mại Real Football, Asphalt Cerebral Challenge Sinh viên thực hiện: Phan Việt Đức Chương 2: Nội dung thực tập Đợt thực tập với chủ đề “Lập trình game Mobile” nhằm mục đích giúp sinh viên thực tập đào tạo toàn diện lập trình game, đồng thời rèn luyện kỹ mềm làm việc nhóm, thuyết trình, giao tiếp Tại cơng ty, sinh viên có hội học tập, khám phá làm việc môi trường phát triển game chun nghiệp Tìm hiểu cơng ty kỹ công ty Thời gian : ngày Nội dung : Giới thiệu công ty, cách tổ chức công ty Được nghe người phụ trách giới thiệu cơng ty, q trình thành lập 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ơng ty Ngồi ra, thực tập sinh giới thiệu cách thức làm việc công ty thời gian làm, quy định cần phải tuân thủ, cách sử dụng email công việc… Kết : Hiểu thêm công ty Gameloft, q trình thành lập phát triển Có thêm kỹ việc sử dụng email cơng việc, làm việc có kế hoạch, có kỷ luật, có trách nhiệm Nghiên cứu kỹ thuật 2.1 Các công cụ làm việc 2.2 Thời gian : ngày Nội dung : Tìm hiểu cơng cụ sử dụng 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 cơng cụ giúp ích cho công việc sau Một số phần mềm số Skype/Trello - sử dụng làm việc nhóm, Sourcetree – Phần mềm quản lý phiên code hữu ích phổ biến với lập trình viên git Thực : Thực hành sử dụng phần mềm nêu Kết : Lập trình sử dụng cơng cụ miễn phí, giúp dễ dàng kết hợp công cụ với nhau, so với việc dung IDE Tìm hiểu ngơn ngữ C# nâng cao Thời gian : ngày (1 tuần) Nội dung : Được training kỹ thuật C# nâng cao, kiến thức quan trọng cho việc tối ưu game - Lập trình hướng đối tượng Các kiến thức lập trình hướng đối tượng khái niêm, đặc tính tính kế thừa, tính đóng gói, tính ảo hóa, tính đa hình Ngồi ra, thực tập sinh hướng dẫn cách thiết kế lớp cho đối tượng game - Con trỏ : Sinh viên thực hiện: Phan Việt Đức Con trỏ môt phần quan trọng lập trình game, cần phải sử dụng trỏ để cấp phát động, truyền tham số qua lại hàm, lớp - Quản lý nhớ Thực tập sinh hướng dẫn cách cấp phát, quản lý nhớ cho tối ưu, tránh rò rỉ nhớ, phần quan trọng lập trình game điện thoại, nhớ điện thoại khơng thể lớn máy tính - STL : Cung cấp phương pháp để sử dụng STL game STL có sẵn tiện ích list, vector, input, output … chuẩn Áp dụng STL lập trình C# làm tăng tốc độ lập trình, giúp lập trình viên tiết kiệm thời gian Điều quan trọng là chuẩn C#, nên tương thích nhiều tảng khác nhau, so với thư viện từ bên thứ ba Thực : - Tham gia đầy đủ buổi training công ty - Làm thực hành, kiểm tra kiến thức học Kết : - 2.3 Nâng cao kỹ lập trình với ngơn ngữ C# Có kiến thức quan trọng cho việc lập trình game mobile sau Ngồi cịn biết thêm số quy tắc việc viết code cho chuẩn, dễ đọc, dễ hiểu Lập trình game với Unity Nội dung: Các kiến thức Unity để làm game đơn giản - Khái niệm Unity Nắm khái niệm Unity, game engine đa tảng phát triển Unity Technologies, mà chủ yếu để phát triển video game cho máy tính, consoles điện thoại Lần cơng bố chạy hệ điều hành OS X, Apple's Worldwide Developers Conference vào năm 2005, đến mở rộng 27 tảng Ngồi ra, trainer cịn cung cấp cho thực tập sinh khái niệm Unity hệ tọa độ 3D, game object…, khái niệm quan trọng lập trình game - Assets: Sinh viên thực hiện: Phan Việt Đức Assets tài nguyên sử dụng việc phát triển game Unity Các Assets hình ảnh, mơ hình 3D, âm thanh, hiệu ứng, tạo nhà phát triển, download miễn phí trả phí Tính giúp giảm thiểu nhiều thời gian cho việc thiết kế lập trình game - GameObject Unity định nghĩa GameObject đối tượng đại diện cho Assets game nhân vật, cỏ, công cụ, đạo cụ, camera, hiệu ứng Các GameObject chứa thuộc tính Transform, dùng để thiết lập vị trí, hướng kích thước GameObject Basic GLSL-ES - Components Components thuộc tính thêm vào GameObject Animation, âm thanh, mơ hình 3D, hiệu ứng, … nhằm xây dựng, kết hợp yếu tố khác để xác định hình thái, hành vi, hiệu ứng, đối tượng mong muốn game - Scenes Trong Unity, Scene cảnh game, không gian game nơi thiết lập bố cục GameObjects, phần chứa thiết lập giao diện menu game Tạo nhiều Scenes giúp linh hoạt việc phân phối tối ưu tài nguyên, quản lý phân đoạn game cách độc lập - Scripts Scripts Component Unity Đây thành phần thiết yếu dùng để tương tác với hành động người chơi, quản lý kiện để thay đổi chiều hướng game tương ứng với kịch game Unity cung cấp cho lập trình viên khả viết Script ngơn ngữ C# - Prefabs Prefabs GameObject hoàn chỉnh sau thêm thuộc tính lưu trữ lại để tái sử dụng Các GameObject nhân từ prefab giống hoàn toàn 10 Sinh viên thực hiện: Phan Việt Đức - Camera Camera Unity dùng để thể khung hình, góc nhìn mà người chơi nhìn thấy game Trong game thiết lập nhiều camera để chia nhỏ hình người chơi, tạo hiệu ứng, tùy chỉnh nhìn từ phía sau, đồ thu nhỏ, … Thực : - Tham gia đầy đủ buổi trainning Làm tập thực hành lập trình thao tác đơn giản Unity Tìm kiếm tài liệu mạng để tìm hiểu thêm Kết : Hiểu khái niệm lập trình game Unity Đã thao tác sử dụng tính cần thiết Unity Thực project Sau tuần training thực hành, thực tập sinh nắm kiến thực C#, Unity, Git Trong tháng thứ hai, trainer hướng dẫn thực tập sinh áp dụng kiến thức học để thực project game Mobile Chi tiết đồ án nói phần sau Lịch làm việc Tuần - - - Cơng việc Người hướng dẫn Tìm hiểu công ty, cách tổ Chị Thảo Nguyên chức công ty Làm quen với công cụ làm việc công ty Học cách trao đổi, làm việc qua email Tìm hiểu ngơn ngữ lập trình Anh Huỳnh Lê Trung Hậu C# nâng cao Anh Đinh Xuân Dụy Thực hành C# Làm test C# 11 Sinh viên thực hiện: Phan Việt Đức Tìm hiểu Unity Thực hành số chức Giai đoạn Alpha: - Research - Lên ý tưởng - Viết prototype - Giới thiệu ý tưởng game Giai đoạn Alpha(tiếp): - Viết lớp quản lý Object, lớp Object - Ráp vào Framework thành game với chức Giai đoạn Beta: - Viết chức nâng cao - Giao diện trang bị weapon, test với weapon Giao diện mua bán đồ - Anh Huỳnh Lê Trung Hậu Anh Huỳnh Lê Trung Hậu Anh Nguyễn Văn Đông Anh Huỳnh Lê Trung Hậu Anh Huỳnh Lê Trung Hậu Giai đoạn Beta giai đoạn kết Anh Huỳnh Lê Trung Hậu thúc, báo cáo : Anh Nguyễn Văn Đơng - Hồn thiện sản phẩm - Fix bug, fix rị rì vùng nhớ - Báo cáo cuối đợt thực tập 12 Sinh viên thực hiện: Phan Việt Đức Chương 3: Chi tiết project Giới thiệu game Game lấy ý tưởng từ trò chơi chicken invader, archero chỉnh sửa để tạo gameplay thú vị phù hợp với việc chơi game di động (Thời gian ngắn, số người chơi ít, thường tự chơi) Luật chơi 1.1 Mơ tả Space war trò chơi thuộc thể loại shoot ‘em up lấy ý tưởng từ trận chiến ngồi khơng gian các phi thuyền Tóm tắt: Kiểu chơi: Shoot ‘em up o Player điều khiển phi thuyền để công o Enemy gồm nhiều loại có độ khó tăng dần theo chơi sức mạnh player o Qua player thu thập exp vàng để nâng cấp sức mạnh mua loại vũ khí mới, phi thuyền Đối tượng game 1.2 Player: - Health point Mỗi phi thuyền mà người chơi sở hữu có số HP tăng thêm người chơi nâng cấp số lên cấp Bullet Type Mỗi phi thuyền có loại đạn riêng - Attack Player tự động bắn liên tục đạn enemy xuất - Điều khiển Player chạm vào điểm hình làm xuất joystick để điều khiển phi thuyền - Fire rate - 13 Sinh viên thực hiện: Phan Việt Đức Mỗi phi thuyền mà người chơi sở hữu có số Fire rate tăng thêm người chơi nâng cấp số lên cấp - Damage Damage viên đạn mà người chơi bắn Enemy: - Normal Là enemy thông thường mà player gặp thường xuyên chơi, sở hữu cách công cách di chuyển Cách cơng, loại đạn có độ khó tăng dần theo chơi Enemy rơi vàng bị hạ gục - Special Enemy đặc biệt xuất rãi rác chơi Loại kẻ địch có lượng máu sát thương cao Normal - Boss Xuất cuối map thiết kế riêng không trùng lặp Sở hữu lượng máu cao với cách công loại đạn đa dạng 1.3 Hình Ảnh Trị Chơi: 14 Sinh viên thực hiện: Phan Việt Đức H.1 Màn hình chọn chơi H.2 Màn hình In-game 15 Sinh viên thực hiện: Phan Việt Đức H.3 Màn hình power up H.4 Màn hình Store 16 Sinh viên thực hiện: Phan Việt Đức H.5 Màn hình inventory + Upgrade Thực thành viên team internship H3D: - Phan Việt Đức Châu Thành Đạt Nguyễn Hữu Hồng Huy Và giúp đỡ tận tình team trainer Gameloft 17 Sinh viên thực hiện: Phan Việt Đức Kế hoạch Giai đoạn Alpha: Hồn thiện tính bản: - player - Cách di chuyển enemy 1, cách bắn enemy 1, boss - Giao diện game play, thiết kế chơi, upgrade skill chơi - Giao diện trang bị weapon, test với weapon - Giao diện mua bán đồ Kết : - Hầu hết tính thực Giai đoạn Beta: Hoàn thiện sản phẩm - Cách di chuyển, cách bắn nhiều loại enemy, boss - Save/Load - Tăng số lượng weapon Kết : Đã hoàn thành tồn tính trên, trừ việc thực map vừa 18 Sinh viên thực hiện: Phan Việt Đức TÀI LIỆU THAM KHẢO For Models https://assetstore.unity.com/ https://sketchfab.com/ For Unity https://docs.unity3d.com https://learn.unity.com/ For C# https://docs.microsoft.com/en-us/dotnet/csharp/ 19 Sinh viên thực hiện: Phan Việt Đức TỔNG KẾT Như vậy, vịng tháng ngắn ngủi, nhóm kịp hồn thành game Mobile Game có đầy đủ tính đề ban đầu Do thời gian có hạn nên tính game cịn đơn giản, hình ảnh chưa đẹp mong đợi Nhưng game phát triển theo framework có tính kế thừa nên sau có thời gian phát triển lên mức cao Chân thành cảm ơn giúp đỡ anh chị nhóm trainer Gameloft, nỗ lực nhóm H3D để hồn thành game 20 Sinh viên thực hiện: Phan Việt Đức ... Challenge Sinh viên thực hiện: Phan Việt Đức Chương 2: Nội dung thực tập Đợt thực tập với chủ đề ? ?Lập trình game Mobile? ?? nhằm mục đích giúp sinh viên thực tập đào tạo toàn diện lập trình game, đồng thời... niệm lập trình game Unity Đã thao tác sử dụng tính cần thiết Unity Thực project Sau tuần training thực hành, thực tập sinh nắm kiến thực C#, Unity, Git Trong tháng thứ hai, trainer hướng dẫn thực. .. báo cáo : Anh Nguyễn Văn Đơng - Hồn thiện sản phẩm - Fix bug, fix rị rì vùng nhớ - Báo cáo cuối đợt thực tập 12 Sinh viên thực hiện: Phan Việt Đức Chương 3: Chi tiết project Giới thiệu game Game