1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Báo cáo thực tập ngành khoa học máy tính Đề tài thiết kế game Đơn giản bằng ngôn ngữ c++

19 1 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Thiết Kế Game Đơn Giản Bằng Ngôn Ngữ C++
Tác giả Lê Viết Huy
Người hướng dẫn Hà Quang Thụy, Hoàng Mạnh Hưng
Trường học Đại Học Quốc Gia Hà Nội Trường Đại Học Công Nghệ
Chuyên ngành Khoa Học Máy Tính
Thể loại Báo cáo thực tập
Năm xuất bản 2019
Thành phố Hà Nội
Định dạng
Số trang 19
Dung lượng 1,71 MB

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

Nội dung

Để tiếp tục phát triển mạnh như một nhà sản xuất game hàng đầu thế giới trong những năm tiếp theo, chúng tôi phải nhìn về phía trước hiểu rõ các xu hướng và công nghệ sẽ giúp chúng tôi l

Trang 1

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

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

BẰNG NGÔN NGỮ C++

Giảng viên hướng dẫn: Hà Quang Thụy

Cán bộ hướng dẫn: Hoàng Mạnh Hưng

Sinh viên: Lê Viết Huy

Mã sinh viên: 16020240

Lớp: K61CACLC1

Hà Nội, 22 tháng 08 năm 2019

Trang 2

MỤC LỤC

1 Thông tin chung về công ty: 5

2 Mô hình hoạt động của công ty: 5

3 Sứ mệnh và tầm nhìn của công ty: 6

4 Các giá trị cốt lỗi của công ty: 7

III Nội dung nghiên cứu lý thuyết về chủ để thực tập 7

1 Khái niệm chính và các khái niệm liên quan 7

2 Hệ thống và các thành phần hệ thống 8

3 Các bài toàn chính, thách thức và cách giải quyết 8

IV Bài toán cụ thể và kết quả thực tập 8

2 Cách giải quyết bài toán khi thực tập tại công ty: 8

1 Ý kiến đánh giá của Công ty: 17

2 Ý kiến đánh giá của Giảng viên đánh giá 18

Trang 3

LỜI CẢM ƠN

Trong đợt thực tập tại công ty Gameloft vừa qua, em đã được tham gia vào môi trường làm việc thực tế và năng động Em cũng đã được học nhiều kiến thức thực tiễn và tham gia vào các dự án thực tế theo đúng ngành nghề mà em theo đuổi

Em xin chân thành cảm ơn các thầy cô trong Khoa Công nghệ thông tin

đã tổ chức đợt thực tập này

Em xin gửi lời cảm ơn tới thầy Hà Quang Thụy Thầy không chỉ là người dẫn thực tập của em, giúp em chỉnh sửa những lỗi trong việc làm báo cáo mà còn cung cấp cho em những tài liệu và kỹ năng liên quan đến vấn đề mà em đang được thực tập

Em cũng xin gửi lời cảm ơn tới ban lãnh đạo công ty Gameloft đã tạo điều kiện cho em để có thể thực tập tại công ty

Cuối cùng, em xin cảm ơn anh Hà Mạnh Hưng đã nhiệt tình hướng dẫn

em trong đợt thực tập tại Công Ty Gameloft Anh không chỉ cung cấp cho bọn

em những kiến thức về kỹ thuật mà còn là những kỹ năng mềm, những lời khuyên về định hướng cũng như cuộc sống

Trang 4

I Thông tin chung

 Họ và tên sinh viên: Lê Viết Huy

 Công ty thực tập: Công ty TNHH Gameloft

 Người hướng dẫn: Hà Mạnh Hưng

 Email: hung.manhhoang2@gameloft.com

 Chủ đề thực tập: Lập trình Game

II Giới thiệu về công ty

1 Thông tin chung về công ty:

 Tên công ty: Gameloft

 Địa chỉ: 56 Tố Hữu, Phường Trung Văn, Quận Nam Từ Liêm, HN

 Tên người hướng dẫn: Hoàng Mạnh Hưng

 Email: hung.manhhoang2@gameloft.com

2 Mô hình hoạt động của công ty:

 Gameloft là một trong những nhà phát hành game cho điện thoại hàng đầu thế giới Gameloft hiện có 31 công ty con trên toàn thế

Trang 5

giới, 28 studios đặt trên khắp thế giới, trong đó Việt Nam có 4 studio, 2 ở thành phố Hồ Chí Minh,1 ở Hà Nội và 1 ở Đà Nẵng Trong đó studio lớn nhất với khoảng 500 nhân viên

 Công ty hiện có khoảng 5000 nhân viên trên toàn cầu, trong đó số nhân viên ở Việt Nam chiếm tới 1400 người

 Game của Gameloft có mặt trên rất nhiều nền tảng, bao gồm trên Nokia, Symbian, IOS, Android…

3 Sứ mệnh và tầm nhìn của công ty:

 “ Phần thưởng lớn nhất của công ty là nhìn thấy được 1 triệu game mới của Gameloft được tải xuống hàng ngày “

 “ Ngành công nghiệp game và công nghệ đang ngày càng thay đổi

và phát triển Để tiếp tục phát triển mạnh như một nhà sản xuất game hàng đầu thế giới trong những năm tiếp theo, chúng tôi phải nhìn về phía trước hiểu rõ các xu hướng và công nghệ sẽ giúp chúng tôi luôn cung cấp trải nghiệm game tốt nhất và các thay đổi linh hoạt để chuẩn bị cho những điều gì sẽ tới Để cho những người chơi game của chúng tôi có thể chơi game ở mọi nơi, mọi thời điểm và trên bất cứ platform nào, chúng tôi là tập thể bao gồm những người tài năng xuất chúng từ khắp nơi trên thế giới và đã xây dựng được mạng lưới phân phối game hàng đầu”

 “ Tầm nhìn của công ty là trở thành số một trong ngành công nghiệp công nghệ và trò chơi.Thành công của chúng tôi phụ thuộc vào khả năng để xây dựng lòng tin với các bên hữu quan của chúng tôi, chúng tôi tin rằng giá trị cốt lõi của chúng tôi là cung cấp nền tảng cho niềm tin có thể được xây dựng “

Trang 6

4 Các giá trị cốt lỗi của công ty:

 “ Gameloft thiết kế trò chơi của mình để cung cấp các trải nghiệm tốt nhất cho người tiêu dung, với nền tảng không có vấn đề Chúng tôi đặt khách hang trước bất cứ điều gì khác Chúng tôi muốn trò chơi của chúng tôi luôn cung cấp các trải nghiệm tốt nhất cho người tiêu dung trên bất kỳ nền tảng nào mà chúng tôi phát triển “

 “ Nhân viên đại sứ của chúng tôi với thế giới Chúng tôi cam kết cung cấp một nơi an toàn, tự do phát triển tại nơi làm việc, công việc hấp dẫn và lợi ích cạnh tranh “

 “ Gameloft tin rằng mói quan hệ việc làm nên là tự nguyện và các điều khoản của việc làm phải tuân thủ pháp luật và các quy định hiện hành “

 “ Gameloft tham gia với các cổ đông thường xuyên qua hội đồng

cổ đông, thường niên, báo cáo tài chính của chúng tôi và các thuyết minh khác “

 “ Chúng tôi muốn trở thành công ty mà mọi người tin tưởng bằng những việc đúng đắn Chúng tôi mong muốn nhận được sự tin tưởng thông qua sự minh bạch, đối thoại cởi mở và đối xử với sự tôn trọng trong cộng đồng “

III Nội dung nghiên cứu lý thuyết về chủ để thực tập

1 Khái niệm chính và các khái niệm liên quan

 Game là một hình thức giải trí hội tụ của rất nhiều yếu tố khác nhau như hình ảnh, âm thanh cũng như kỹ thuật và công nghệ Vậy nhà lập trình game ( Game Developer ) chính là những viết ra các đoạn code để tạo ra 1 mô hình giải trí cho người chơi

 Ngôn ngữ được sử dụng ở đợt thực tập này của em là ngôn ngữ C+ +

Trang 7

 C++ được Bjarne Stroustrup tạo ra vào năm 1979 và là ngôn ngữ

đa nền tảng, hướng đối tượng Các thuộc tính như kế thừa, đa hình, đóng gói và tính trừu tượng đều có trong C++

 C++ được sử dụng rất rộng rãi trong ngành Công nghiệp Game hiện này vì tính đa nền tảng có thể chạy trên rất nhiều hệ điều hành cũng như khả năng về xử lý cũng như tối ưu bộ nhớ

 C++ được Bjarne Stroustrup phát triền từ nên tảng ngôn ngữ C kết hợp với các khái niệm Hướng đối tượng từ các ngôn ngữ lập trình bậc cao khác

2 Hệ thống và các thành phần hệ thống

 Cấu trúc của một Game thường khác với một phần mềm Game thường bao gồm các phần như: Phần mở đầu, Main Menu ( bao gồm các options về âm thanh, hình ảnh cũng như game ), Main Gameplay ( phần chơi chính sẽ được thực hiện ở đây ) và cuối cùng thường sẽ là phần Credit

 Game Loop chính là phần flow để điều khiển toàn bộ một Game cũng như Main Gameplay Game Loop thường bao gồm các phần như Process(): Xứ lý những Input từ bàn phím cũng như chuột để thực hiện công việc tương ứng, Update(): là phần để vẽ các hình ảnh cũng như update các hiệu ứng và Render()

 Một quy trình làm Game thường bao gồm Pre-Production ( Thiết

kế GDD cũng như Project Plan ), Production ( Thiết kế, Làm hình ảnh, âm thanh, lập trình và cuối cùng là kiểm thử ),

Post-Production làm nhiệm vụ bảo trì, update những bản cập nhật và chăm sóc khách hàng

 Game Project thường có cấu trúc như sau:

Trang 8

3 Các bài toán chính, thách thức và cách giải quyết

 Bài toán chính: Lập trình game với ngôn ngữ C++

 Thách thức: Ngôn ngữ C++ là môn ngữ rất khó cho những người bắt đầu cũng như việc lập trình game cần rất nhiều kinh nghiệm thực tiễn Vì vậy em cần trau dồi kiến thức và kinh nghiệm trong đợt thực tập này

IV Bài toán cụ thể và kết quả thực tập

1 Bài toán cụ thể:

 Lập trình game CeeLo ( Game xúc xắc ) với ngôn ngữ C++ và framework OpenGL

 Yêu cầu: Game cần có hình ảnh, âm thanh, hiệu ứng animation, code đúng logic, Project được chia thành các module theo đúng yêu cầu

Trang 9

2 Cách giải quyết bài toán khi thực tập tại công ty:

 Đầu tiên, Em phải tìm hiểu cấu trúc và cách sử dụng Game

Framework mà bên Gameloft đã cung cấp cho bọn em

Hình 1 Game Project Structure

 Vì trong framework đã có sẵn phần xử lý hình ảnh và animation nên em chỉ việc tạo ra hình ảnh trong game như button, xúc xắc và các icon Rồi khai báo trong project

Hình 2 Ví dụ về cách sử dụng module load ảnh

 Tiếp theo em cần tạo ra các Game State như GSWager, GSRoll, GSMenu, GSCredit để thiết kế các game scenes

 Với GSRoll, em tạo ra hàm RollDice() để lấy ra 3 số ngẫu nhiên tượng trưng cho 3 con xúc xắc

Trang 10

Hình 3 Hàm RollDice()

 Sau đó em viết tiếp hàm ConvertToImage() để in các giá trị đã lấy được từ hàm RollDice(0) ra màn hình

Trang 11

Hình 4 Hàm ConvertToImage()

 Cuối cùng em viết tiếp hàm CalScore() để tính điểm 3 con xúc xắc dựa trên luật chơi em đã đưa ra

Trang 12

Hình 5 Hàm CalScore()

 Em tiếp tục làm việc với GSPlay để tạo ra các đồng chips thể hiện cho việc đặt cược của người chơi

Hình 6 Màn hình GSWager

Trang 13

 Ở phần này em chỉ đặt các chips là các button để người chơi chọn số lượng tiền muốn đặt cũng như hiển thị số lượng tiền trong ví / số lượng tiền đã đặt.

Hình 7 Game Flow Logic

 Sau đó em tiếp túc xứ lý logic gameflow cũng như cách phân định thắng thua trong game Cee-Lo của em.

Hình 8 Thư viện SoLoud

 Cuối cùng em thêm phần âm thanh để hoàn thiện sản phẩm cũng như test các lỗi còn sót lại

3 Sản phẩm cuối:

 Một số hình ảnh về sản phẩm của em:

Trang 14

Hình 9 Màn hình GSMenu

Hình 10 Màn hình GSCredit

Trang 15

Hình 11 Màn Hình GSWager

Trang 16

Hình 12, 13, 14 Demo màn hình GSRoll

V Kết luận và Bài học kinh nghiệm thụ được qua đợt

thực tập

Trang 17

 Nhờ đợt thực tập vừa rỗi em đã được hướng dẫn và học hỏi rất nhiều kiến thức trong ngành Công nghiệp game Không chỉ được học những kiến thức về Kỹ thuật, bọn em còn được đào tạo về kỹ năng thuyết trình, kỹ năng tư duy logic, các kiến thức về ngành công nghiệp game

 Sau đợt thực tập này, em sẽ tiếp tục học hỏi và phát triền những kỹ năng đã học được ở công ty Gameloft để ứng vào nghề nghiệp củaem sau này là trở thành một nhà phát triển Game

Trang 18

1 Ý kiến đánh giá của Công ty:

Trang 19

2 Ý kiến đánh giá của Giảng viên đánh giá

Ý kiến đánh giá:

………

……….

………

……….

………

……….

………

……….………

Điểm số: …… Điểm chữ: ………

Hà Nội, ngày   tháng năm 2019 Giảng viên hướng dẫn (Kí, ghi rõ họ tên)

Ngày đăng: 11/05/2025, 09:57

HÌNH ẢNH LIÊN QUAN

Hình 1. Game Project Structure - Báo cáo thực tập ngành khoa học máy tính Đề tài thiết kế game Đơn giản bằng ngôn ngữ c++
Hình 1. Game Project Structure (Trang 9)
Hình 3. Hàm RollDice() - Báo cáo thực tập ngành khoa học máy tính Đề tài thiết kế game Đơn giản bằng ngôn ngữ c++
Hình 3. Hàm RollDice() (Trang 10)
Hình 4. Hàm ConvertToImage() - Báo cáo thực tập ngành khoa học máy tính Đề tài thiết kế game Đơn giản bằng ngôn ngữ c++
Hình 4. Hàm ConvertToImage() (Trang 11)
Hình 5. Hàm CalScore() - Báo cáo thực tập ngành khoa học máy tính Đề tài thiết kế game Đơn giản bằng ngôn ngữ c++
Hình 5. Hàm CalScore() (Trang 12)
Hình 6. Màn hình GSWager - Báo cáo thực tập ngành khoa học máy tính Đề tài thiết kế game Đơn giản bằng ngôn ngữ c++
Hình 6. Màn hình GSWager (Trang 12)
Hình 7. Game Flow Logic - Báo cáo thực tập ngành khoa học máy tính Đề tài thiết kế game Đơn giản bằng ngôn ngữ c++
Hình 7. Game Flow Logic (Trang 13)
Hình 9. Màn hình GSMenu - Báo cáo thực tập ngành khoa học máy tính Đề tài thiết kế game Đơn giản bằng ngôn ngữ c++
Hình 9. Màn hình GSMenu (Trang 14)
Hình 10. Màn hình GSCredit - Báo cáo thực tập ngành khoa học máy tính Đề tài thiết kế game Đơn giản bằng ngôn ngữ c++
Hình 10. Màn hình GSCredit (Trang 14)
Hình 11. Màn Hình GSWager - Báo cáo thực tập ngành khoa học máy tính Đề tài thiết kế game Đơn giản bằng ngôn ngữ c++
Hình 11. Màn Hình GSWager (Trang 15)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w