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

Báo cáo chuyên đề học phần môn đồ họa máy tính đề tài xây dựng game phá gạch

15 10 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

Tiêu đề Xây Dựng Game Phá Gạch
Tác giả Nguyễn Hữu Minh Dương, Đỗ Thị Mai Hương, Trịnh Anh Quân
Người hướng dẫn Ngô Quốc Tạo
Trường học Trường Đại Học Điện Lực
Chuyên ngành Công Nghệ Thông Tin
Thể loại Báo cáo chuyên đề học phần môn đồ họa máy tính
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 15
Dung lượng 777,31 KB

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

Nội dung

22:55 06/06/2023 Documents Downloader LỜI CẢM ƠN Em xin gửi lời cảm ơn chân thành và sự tri ân sâu sắc đối với các thầy cô trường Đại học Điện lực, đặc biệt là các thầy cô khoa Công ngh

Trang 1

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO CHUYÊN ĐỀ HỌC PHẦN MÔN ĐỒ HỌA MÁY TÍNH

 ĐỀ TÀI:

XÂY DỰNG GAME PHÁ GẠCH

Sinh viên thực hiện : NGUYỄN HỮU MINH

DƯƠNG

ĐỖ THỊ MAI HƯƠNG TRỊNH ANH QUÂN Giảng viên hướng dẫn : NGÔ QUỐC TẠO Ngành : CÔNG NGHỆ THÔNG TIN Chuyên ngành : CÔNG NGHỆ PHẦN MỀM

Khóa : 2019 -2024

Trang 2

22:55 06/06/2023 Documents Downloader

Trang 3

 Hà Nội, tháng 3 năm 2022 PHIẾU CHẤM ĐIỂM STT Họ và tên sinh viên Nội dung thực hiện Điểm Chữ ký 1

 Nguyễn Hữu Minh Dương

2

Đỗ Thị Mai Hương

3

Trịnh Anh Quân

Họ và tên giảng viên Chữ ký Ghi chú Giảng viên chấm 1:

Giảng viên chấm 2:

Trang 4

22:55 06/06/2023 Documents Downloader

Trang 5

MỤC LỤC

LỜI CẢM ƠN 1

LỜI MỞ ĐẦU 2

CHƯƠNG I: TỔNG QUAN 3

1.1.Lý do chọn đề tài 3

1.2.Mô tả đề tài 3

1.3.Đặt vấn đề 3

1.4.Cấu trúc báo cáo 3

CHƯƠNG II: PHÂN TÍCH YÊU CẦU 4

2.1.SFML là gì 4

2.2.Cách thêm thư viện SFML trên Visual Studio 5

2.3.Tổng quan về game 7

2.4.Yêu cầu chức năng 7

2.5.Yêu cầu phi chức năng 7

CHƯƠNG III: THIẾT KẾ ỨNG DỤNG 8

3.1.Cài đặt thuật toán 8

3.2 Kết quả thực nghiệm 11

KẾT LUẬN 12

Trang 6

22:55 06/06/2023 Documents Downloader

 

LỜI CẢM ƠN

Em xin gửi lời cảm ơn chân thành và sự tri ân sâu sắc đối với các thầy cô trường Đại học Điện lực, đặc biệt là các thầy cô khoa Công nghệ thông tin của trường đã tạo điều kiện thuận lợi cho em thực hiện bản báo cáo

Đặc biệt em xin gửi đến thầy Ngô Quốc Tạo – người đã tận tâm hướng dẫn chúng em qua từng buổi học trên lớp cũng như những buổi nói chuyện, thảo luận

về môn học Trong thời gian được học tập và thực hành dưới sự hướng dẫn của thầy, em không những thu được rất nhiều kiến thức bổ ích, mà còn được truyền sự say mê và thích thú đối với bộ môn Đồ họa máy tính

Mặc dù đã rất cố gắng hoàn thiện báo cáo, tuy nhiên, do bước đầu đi vào thực

tế, tìm hiểu và xây dựng báo cáo trong thời gian có hạn và kiến thức còn hạn chế, nên báo cáo “Xây dựng game phá gạch” chắc chắn sẽ không thể tránh khỏi những thiếu sót Chúng em rất mong nhận được sự quan tâm, thông cảm và những đóng góp quý báu của các thầy cô và các bạn để báo cáo này được hoàn thiện hơn

Em xin chân thành cảm ơn!

 

1

Trang 7

LỜI MỞ ĐẦU  Như chúng ta đã thấy trong những năm gần đây sự phát triển vượt bậc về công nghệ đồ họa đã mang lại cho con người chúng ta vô vàn sự tiện nghi, những trải nghiệm mới mẻ, chân thực

  Đồ họa máy tính góp phần quan trọng làm cho giao tiếp của con người và máy tính trở nên thân thiện gần gũi hơn.Trong lĩnh vực kỹ thuật máy tính, đồ họa máy tính càng ngày càng phát triển mạnh mẽ Đồ họa máy tính là một lĩnh vực của khoa học máy tính nghiên cứu về ở toán học, các thuật toán cũng như các kĩ thuật

để cho phép tạo, hiển thị và điều khiển hình ảnh trên màn hình máy tính Đồ họa máy tính có liên quan ít nhiều đến một số lĩnh vực như đại số, hình học giải tích, hình học họa hình, quang học, và kĩ thuật máy tính, đặc biệt là chế tạo phần cứng (các loại màn hình, các thiết bị xuất, nhập, các vỉ mạch đồ họa )

  Là sinh viên khoa Công Nghệ Thông Tin trường Đại học Điện Lực Em cũng được tiếp xúc với môn học đồ họa máy tính Với những kiến thức em đã được học và được sự hướng dẫn của thầy Ngô Quốc Tạo em đã thực hiện đề tài “Xây dựng game Phá gạch” Trong quá trình thực hiện nghiên cứu, chúng em đã sử dụng thư viện đồ họa SFML đang được sử dụng rộng rãi hiện nay

2

Trang 8

22:55 06/06/2023 Documents Downloader

 

CHƯƠNG I: TỔNG QUAN 1.1.Lý do chọn đề tài

Với những bạn mới bắt đầu học lập trình căn bản với C/C++ lên và bắt đầu tiếp xúc với một engine game lớn và đồ sộ như Cocos 2Dx, Unity thì rất là khó và khá là mất thời gian vì các bạn không hiểu bản chất bên trong engine đó được viết như thế nào từ load hình ảnh lên game, sử dụng cái gì để vẽ, hiện thực FPS

Thì đối với thư viện SFML là một thư viện cung cấp cho chúng ta một số các chức năng cơ bản như vẽ các hình học lên cửa sổ, xử lý event input output,  play audio và đặc biệt là thư viện này được viết bằng C/C++ và build trên nhiều nèn tảng khác nhau nên rất linh động nên dây là một thư viện cực kì bổ ích cho các  bạn nào muốn xây dựng một engine game của chính mình

1.2.Mô tả đề tài  Nhằm hiểu r hơn về tổng quan cũng như môi trường thư viện SFML Từ đó  phân tích sự ảnh hưởng trong ngôn ngữ lập trình, giúp nắm bắt một cách chi tiết,

cụ thể hơn về thư viện Từ đó, có thể đánh giá và phân tích, xây dựng game qua thư viện SFML này

1.3.Đặt vấn đề Đối tượng nghiên cứu: Nghiên cứu và tìm hiểu sử dụng qua thư viện SFML

để hiểu r các vấn đề hỗ trợ về đồ họa

1.4.Cấu trúc báo cáo -Chương 1: Tổng quan -Chương 2: Phân tích yêu cầu -Chương 3: Thiết kế ứng dụng

3

Trang 9

CHƯƠNG II: PHÂN TÍCH YÊU CẦU 2.1.SFML là gì

SFML (là viết tắt của Simple and Fast Multimedia Library) là một API di động và dễ sử dụng để lập trình đa phương tiện Nó được viết bằng C ++ với các ràng buộc có sẵn cho C, D, Python, Ruby, OCaml, Net và Go Nó có thể được coi

là một thay thế hướng đối tượng cho SDL SFML khá giống với SDL2 nhưng do viết theo hướng OOP nên việc lập trình sẽ dễ dàng hơn nhiều so với SDL2

SFML cung cấp đồ họa 2D được tăng tốc phần cứng bằng OpenGL, hỗ trợ  cửa sổ OpenGL và cung cấp các mô-đun khác nhau giúp dễ dàng lập trình đa  phương tiện và trò chơi

 Nó cung cấp một giao diện đơn giản với các thành phần khác nhau cho máy tính của bạn, để giảm bớt sự phát triển của trò chơi và các ứng dụng đa phương tiện Nó bao gồm 5 modules (Audio, Graphics, Network, System, Window):

+ System: gồm các class liên quan với hệ thống như làm thời gian, xử lí unicode

+ Window: liên quan tới việc tạo, đóng và xử lí sự kiện cửa số

+ Graphics: bao gồm các class về việc render đồ họa

+ Audio: bao gồm các class về xử lí âm thanh, ta có thể dùng để phát một file nhạc hoặc ghi âm cho máy tính và lưu thành file

+ Network: mạng Trang web SFML cung cấp gói SDK hoàn chỉnh trong một gói và hướng dẫn

để giảm bớt các nhà phát triển Mã nguồn SFML được cung cấp theo các điều khoản của giấy phép zlib / png

 Ngoài ra, SFML có thể chạy trên nhiều hệ điều hành khác nhau như Windows, Linux, MacOS Tuy nhiên thì hiện tại, vẫn chưa có thể chạy trên Android với IOS

4

Trang 10

22:55 06/06/2023 Documents Downloader

 

2.2.Cách thêm thư viện SFML trên Visual Studio Bước 1: Cài đặt Visual Studio:

- Nếu chưa cài đặt Visual Studio trên máy tính chúng ta thực hiện 2 bước sau:

+ Tải tập tin cài đặt VS C++ từ:

http://www.microsoft.com/express/Downloads/

+ Thực thi tập tin cài đặt và làm theo hướng dẫn để cài VS

 Bước 2: Tải bản pre-built SFML:

- Vào trang chủ của SFML tại link:https://www.sfml-dev.org/

- Tại trang chủ chọn Download rồi chọn SFML 2.5.1

- Tại đây, ta sẽ thấy các bản pre-built cho các phiên bản của Visual Studio

Các bản này phân ra làm 2 loại: 32bit và 64bit Nếu ta chọn bản 32bit thì khi build

ra chương trình có thể chạy trên cả windows 32bit và 64bit Còn nếu ta cài đặt bản 64bit thì khi build ra chương trình chỉ chạy được trên windows 64bit Vì vậy, ta nên chọn phiên bản cài đặt phù hợp với nhu cầu và mục đích sử dụng Ở đây, nhóm em sẽ tải bản cho VS 2017 32bit

 Bước 3: Cài đặt SFML vào project

- Giải nén tập tin SFML-2.5.1.zip ra thư mục SFML-2.5.1

- Tạo project mới trên VS

- Cấu hình project:

+ Chọn chuột phải vào tên project sau đó chọn Property + Sau khi mở, tại khung Configuration chọn All Configuration rồi chọn đến mục C++ -> General -> Additional Include Directories -> Edit Tại đây, chọn đến thư mục include trong thư mục SFML đã tải về

+ Tiếp theo các bạn chọn đến mục Linker -> General -> Additional Library Directories -> Edit Tại đây, các bạn chọn đến thư mục lib trong thư mục SFML đã tải về

5

Trang 11

+ Sau đó các bạn đến mục Linker > Input > Additional Dependencies

-> Edit Tại đây, g như sau:

sfml-network.lib sfml-window.lib sfml-system.lib sfml-graphics.lib sfml-audio.lib + Sau khi cài đặt xong ở All configuration, ta tiến hành cài đặt ở Debug + Tại khung Configuration chọn Debug rồi chọn đến mục C++ -> General -> Additional Include Directories -> Edit Tại đây, chọn đến thư mục include trong thư mục SFML đã tải về

+ Tiếp theo các bạn chọn đến mục Linker -> General -> Additional Library Directories -> Edit Tại đây, các bạn chọn đến thư mục lib trong thư mục SFML đã tải về

+ Sau đó các bạn đến mục Linker > Input > Additional Dependencies

-> Edit Tại đây, g như sau:

sfml-network-d.lib sfml-window-d.lib sfml-system-d.lib sfml-graphics-d.lib sfml-audio-d.lib + Vào thư mục bin của SFML để tìm các file dll bị thiếu (openal32.dll, sfml-audio-d-2.dll, sfml-graphics-d-2.dll, sfml-network-d-2.dll, sfml-system-d-2.dll, sfml-window-d-2.dll) và paste vào thư mục Debug của project

+ Cuối cùng nháy OK để hoàn tất các quá trình

6

Trang 12

22:55 06/06/2023 Documents Downloader

 

2.3.Tổng quan về game

- Phá gạch là một trò chơi điển tử arcade, có đồ họa hai chiều đơn giản Đây

là một trò chơi điều khiển bóng đòi hỏi người chơi sự khéo léo và tính toán tỉ mỉ

2.4.Yêu cầu chức năng

- Người chơi tiến hành bấm các nút phím mũi tên trên bàn phím để điều khiển thanh đỡ bóng

- Mỗi khi quả bóng chạm vào 1 khối gạch thì nó sẽ biến mất Và cứ thế khi không còn khối gạch nào thì sẽ qua màn

2.5.Yêu cầu phi chức năng

- Giao diện thân thiện, dễ sử dụng

- Cấu hình nhẹ, dễ cài đặt

7

Trang 13

CHƯƠNG III: THIẾT KẾ ỨNG DỤNG 3.1.Cài đặt thuật toán

8

Trang 14

22:55 06/06/2023 Documents Downloader

 

3.2 Kết quả thực nghiệm

9

Trang 15

KẾT LUẬN Trong thời gian nghiên cứu và vận dụng những kiến thức đã được trang bị ở  nhà trường và các lĩnh vực khác Chúng em đã viết được game pong nhằm mục đích giải trí lành mạnh Chúng em hy vọng rằng những khái niệm này là tiền đề giúp chúng em phát triển mạnh hơn về những thể loại game khác chất lượng hơn, hay hơn để phục vụ cho nhu torng cầu cuộc sống chúng ta

Trong quá trình thực hiên đề tài, chúng em đã nhận được sự giúp đỡ tận tình của thầy Ngô Quốc Tạo giúp chúng em hoàn thành tốt báo cáo này Vì thời gian làm báo cáo hạn hẹp, kinh nghiệm thực tế chưa nhiều nên báo cáo không tránh khỏi những sai sót, rất mong sự góp ý của thầy

Trong quá trình thực hiện đề tài có rất nhiều ý tưởng hay, độc đáo Nhưng do kiến thức của chúng em hạn hẹp và thời gian không cho phép nên chúng em chưa thể thực hiện được những ý tưởng đó Tuy nhiên chúng em đã cố gắng để xây dựng một chương trình hoàn chỉnh nhất, đẹp nhất Trong quá trình xây dựng chương trình, nhóm chúng em khó tránh khỏi những sai sót Vì vậy em rất mong rằng thầy

và các bạn cùng góp ý với nhóm em để có thể hòa thành sản phẩm một cách hoàn chỉnh nhất

10

Ngày đăng: 06/06/2023, 22:55

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w