TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO HỌC PHẦN MÔN ĐỒ HOẠ MÁY TÍNH ĐỀ TÀI XÂY DỰNG GAME RẮN SĂN MỒI Sinh viên thực hiện ĐỖ TIẾN THÀNH TRẦN QUỐC VIỆT Giảng viên hướng dẫn NGÔ NGỌC[.]
TRƯỜNG ĐẠI HỌC ĐIỆN LỰC KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO HỌC PHẦN MƠN ĐỒ HOẠ MÁY TÍNH ĐỀ TÀI: XÂY DỰNG GAME RẮN SĂN MỒI Sinh viên thực : ĐỖ TIẾN THÀNH TRẦN QUỐC VIỆT Giảng viên hướng dẫn : NGÔ NGỌC THÀNH Ngành : CÔNG NGHỆ THÔNG TIN Chuyên ngành : CÔNG NGHỆ PHẦN MỀM Lớp : D15CNPM3 Khóa : 2020-2025 Hà Nội, tháng năm 2023 STT Họ tên sinh viên Đỗ Tiến Thành Nội dung thực Điểm Chữ ký 20810310337 Trần Quốc Việt 20810310354 Họ tên giảng viên Giảng viên chấm 1: Giảng viên chấm 2: Chữ ký Ghi MỤC LỤC LỜI MỞ ĐẦU CHƯƠNG Giới thiệu đồ hoạ máy tính 1.1 Lịch sử phát triển 1.2.Khái niện đồ hoạ máy tính kỹ thuật đồ hoạ 1.2.1 Đồ hoạ máy tính .3 1.2.2 Các kỹ thuật đồ hoạ .4 1.3 Phân loại đồ hoạ máy tính 1.3.1 Phân loại theo lĩnh vực đồ hoạ máy tính 1.3.2 Phân loại theo hệ toạ độ CHƯƠNG GIẢI QUYẾT BÀI TOÁN 2.1 Phát biểu toán 2.2 Các bước cài đặt 2.3 Cài đặt thuật toán LỜI MỞ ĐẦU Trong thời đại ngày nay, với bùng nổ cách mạng công nghiệp 4.0 tập trung vào phát triển công nghệ khơng thể khơng kể tới đồ họa máy tính Đồ họa máy tính phương pháp cơng nghệ dùng việc chuyển đổi qua lại liệu hình ảnh máy tính Đồ họa máy tính lĩnh vực khoa học máy tính nghiên cứu toán học, thuật toán kĩ thuật phép tạo, hiển thị điều khiển hình ảnh hình máy tính Đồ họa máy tính có liên quan nhiều đến số lĩnh vực đại số, hình học giải tích, hình học họa hình, quang học, kĩ thuật máy tính, đặc biệt chế tạo phần cứng (các loại hình, thiết bị xuất, nhập, vỉ mạch đồ họa ) Nhận thấy đồ họa máy tính cơng cụ khơng thể thiếu nhiều lĩnh vực Vậy nên, qua trình học tập nghiên cứu mơn học “Đồ họa máy tính” với dạy tận tình thầy Nguyễn Ngọc Thành nhóm chúng em chọn đề tài “Làm game rắn săn mồi sử dụng thư viện Graphics.h” làm đề tài nghiên cứu Em xin gửi lời cảm ơn chân thành tới thầy giáo “Nguyễn Ngọc Thành” thầy cô giáo môn khoa CNTT Trường Đại Học Điện Lực tận tình bảo hướng dẫn giúp đỡ chúng em để hoàn thành tốt báo cáo Trong q trình thực có nhiều thiếu xót, khuyết điểm mong thầy bạn cho ý kiến đóng góp để nhóm e hồn thiện đề tài CHƯƠNG 1: GIỚI THIỆU VỀ ĐỒ HỌA MÁY TÍNH 1.1 Lịch sử phát triển - Graphics năm 1950-1960: + Năm 1959 Thiết bị đồ hoạ hình xuất Đức + Năm 1960 - SAGE (Semi-Automatic Ground Environment System) xuất bút sáng thao tác với hình + Năm 1960 William Fetter nhà khoa học người Mỹ, ông nghiên cứu xây dựng mô hình buồng lái máy bay cho hãng Boeing Mỹ Ông dựa hình ảnh chiều mơ hình ngườiphi cơng buồng lái máy bay để xây dựng nên mơ hình tối ưu cho buồng lái máy bay Phương pháp cho phép nhà thiết kế quan sát cách trực quan vị trí người lái khoang Ông đặt tên cho phương pháp đồ hoạ máy tính (Computer Graphics) + Màn hình thiết bị thông dụng hệ đồ hoạ, thao tác hầu hết hình dựa thiết kế ống tia âm cực CRT (Cathode ray tube) Khi giá để làm tươi hình cao, máy tính xử lý chậm, đắt khơng chắn (không đáng tin cậy) - Graphics: 1960-1970 + Năm 1963 Ivan Sutherland (hội nghị Fall Joint Computer - lần có khả tạo mới, hiển thị thay đổi thực thời gian thực CRT) + Hệ thống dùng để thiết kế mạch điện: CRT, LightPen (bút sáng), computer (chứa chương trình xử lý thơng tin) Người sử dụng vẽ mạch điện trực tiếp lên hình thơng qua bút sáng - Graphics:1970-1980 + Raster Graphics (đồ hoạ điểm) Bắt đầu chuẩn đồ hoạ ví dụ như: GKS (Graphics Kernel System): European effort (kết châu âu), Becomes ISO 2D standard - Graphics: 1980-1990: + Mục đích đặc biệt phần cứng, thiết bị hình học đồ hoạ Silicon Xuất chuẩn công nghiệp: PHIGS (Programmers Hierarchical Interactive Graphics Standard) xác định phương pháp chuẩn cho mơ hình thời gian thực lập trình hướng đối tượng + Giao diện người máy Human-Computer Interface (HCI) - Computer Graphics: 1990-2000: + OpenGL API (Application Program Interface – giao diện chương trình ứng dụng) + Completely computer-sinh ngành điện ảnh phim truyện (Toy Story) thành công Các tiềm tàng phần cứng mới: Texture mapping (dán ảnh cảnh thật lên bề mặt đối tượng), blending (trộn màu) … Computer Graphics: 2000- + Ảnh thực, cạc đồ hoạ cho máy tính (Graphics cards for PCs), gameboxes and game players + Công nghiệp phim ảnh nhờ vào đồ hoạ máy tính (Computer graphics becoming routine in movie industry): Maya (thế giới vật chất tri giác được) 1.2 Khái niệm đồ họa máy tính kỹ thuật đồ họa 1.2.1 Đồ họa máy tính - Đồ họa máy tính ngành khoa học Tin học chuyên nghiên cứu phương pháp kỹ thuật để mơ tả thao tác đối tượng giới thực máy tính - Về chất: q trình xây dựng phát triển công cụ hai lĩnh vực phần cứng phần mềm hổ trợ cho lập trình viên thiết kế chương trình có khả đồ họa cao - Với việc mô tả liệu thơng qua hình ảnh màu sắc đa dạng nó, chương trình đồ họa thường thu hút người sử dụng tính thân thiện, dể dùng, kích thích khả sáng tạo nâng cao suất làm việc 1.2.2 Các kỹ thuật đồ họa * Kỹ thuật đồ họa điểm - Các mơ hình, hình ảnh đối tượng hiển thị thơng qua pixel (từng mẫu rời rạc) - Đặc điểm: Có thể thay đổi thuộc tính + Xố pixel mơ hình hình ảnh đối tượng + Các mơ hình hình ảnh hiển thị lưới điểm (grid) pixel rời rạc, + Từng pixel có vị trí xác định, hiển thị với giá trị rời rạc (số nguyên) thông số hiển thị (màu sắc độ sáng) + Tập hợp tất pixel grid cho mơ hình, hình ảnh đối tượng mà muốn hiển thị - Phương pháp để tạo pixel: + Phương pháp dùng phần mềm để vẽ trực tiếp pixel + Dựa lý thuyết mô (lý thuyết Fractal, v.v) để xây dựng nên hình ảnh mô vật + Phương pháp rời rạc hố (số hố) hình ảnh thực đối tượng + Có thể sửa đổi (image editing) xử lý (image processing) mảng pixel thu theo phương pháp khác để thu hình ảnh đặc trưng đối tượng * Kỹ thuật đồ họa Vector - Xây dựng mơ hình hình học cho hình ảnh đối tượng, xác định thuộc tính mơ hình hình học, sau dựa mơ hình để thực q trình tơ trát để hiển thị điểm mơ hình, hình ảnh đối tượng - Kỹ thuật lưu trữ mơ hình tốn học thành phần mơ hình hình học với thuộc tính tương ứng mà khơng cần lưu lại tồn tất pixel hình ảnh đối tượng 1.3 Phân loại đồ họa máy tính 1.3.1 Phân loại theo lĩnh vực đồ họa máy tính * Kỹ thuật đồ họa: - Kiến tạo đồ họa gồm: + Các hệ CAD/CAM (Computer Aided Design/Computer Aided Manufacture System): kỹthuật đồ hoạ tập hợp công cụ, kỹ thuật trợ giúp cho thiết kế chi tiết hệ thống khác nhau: hệ thống cơ, hệ thống điện, hệ thống điện tử… + Đồ hoạ minh hoạ (Presentation Graphics): gồm công cụ giúp hiển thị số liệu thí nghiệm cách trực quan, dựa mẫu đồ thị thuật tốn có sẵn + Đồ hoạ hoạt hình nghệ thuật: bao gồm công cụ giúp cho hoạ sĩ, nhà thiết kế phim hoạt hình chuyên nghiệp làm kỹ xảo hoạt hình, vẽ tranh Ví dụ: phần mềm 3D Studio, 3D Animation, 3D Studio Max - Xử lý đồ họa gồm: + Kỹ thuật xử lý ảnh (Computer Imaging): sau trình xử lý ảnh cho ta ảnh số đối tượng Trong trình xử lý ảnh sử dụng nhiều kỹ thuật phức tạp: kỹ thuật khôi phục ảnh, kỹ thuật làm ảnh, kỹ thuật xác định biên ảnh + Kỹ thuật nhận dạng (Pattern Recognition): từ ảnh mẫu có sẵn ta phân loại theo cấu trúc, theo tiêu trí xác định từ trước thuật tốn chọn lọc để phân tích hay tổng hợp ảnh cho thành tập hợp ảnh gốc, ảnh gốc lưu thư viện vào thư viện ta xây dựng thuật giải phân tích tổ hợp ảnh + Kỹ thuật tổng hợp ảnh (Image Synthesis): lĩnh vực xây dựng mơ hình hình ảnh vật thể dựa đối tượng mối quan hệ chúng 1.3.2 Phân loại theo hệ tọa độ - Kỹ thuật đồ họa: + Kỹ thuật đồ họa chiều: kỹ thuật đồ hoạ máy tính sử dụng hệ toạ độ hai chiều (hệ toạ độ phẳng), sử dụng nhiều kỹ thuật xử lý đồ, đồ thị 10 CHƯƠNG 2: GIẢI QUYẾT BÀI TỐN 2.1 Phát biểu tốn - Sau tìm hiểu thư viện Graphics.h nhóm chúng em định thực thiết kế trò chơi nhỏ 2D với đề tài game rắn săn mồi từ kiến thức học 2.2 Các bước cài đặt - Bước 1: Khai báo thư viện biến cần sử dụng - Bước 2: Khai báo hàm thiết kế mảng kiện game - Bước 3: Khởi tạo cửa sổ có kích thước 900x700 - Bước 4: Sử dụng mảng chiều trỏ để sử lý kiện - Bước 5: Gọi hàm closegraph(); để đóng cửa sổ đồ họa 2.3 Cài đặt thuật toán -Bước 1: 11 Bước 2: 12 Bước 3+4: 13 14 Demo game Hình 3.1 Menu 15 Hình 3.2 Chọn chế độ chơi Hình 3.3 Chọn độ khó 16 Hình 3.3 Màn hình Hình 3.4 Điểm cao 17 KẾT LUẬN Trong trình thực đề tài có nhiều ý tưởng hay, độc đáo Nhưng kiến thức chúng em hạn hẹp thời gian không cho phép nên chúng em chưa thể thực ý tưởng Tuy nhiên chúng em cố gắng để xây dựng chương trình hồn trỉnh nhất, đẹp Trong q trình xây dựng chương trình nhóm chúng em khó tránh khỏi sai sót Vì em mong thầy bạn góp ý với nhóm em để hịan thành sản phẩm cách hồn chỉnh Và qua việc thực nghiên cứu đề tài “Xây dựng game rắn săn mồi” Nhóm chúng em biết thêm nhiều môn đồ họa máy tính Đặc biệt hiểu rõ thư viện đồ họa graphics.h Bên cạnh đó, việc làm nghiên cứu giúp chúng em đoàn kết hơn, rèn luyện cho chúng em kỹ làm việc nhóm Chúng em xin chân thành cảm ơn thầy Ngơ Ngọc Thành tận tình giảng dạy chúng em mơn Đồ họa máy tính Giúp đỡ chúng em trình nghiên cứu đề tài Chia sẻ tài liệu hay thư viện graphics.h kĩ lập trình để chúng em hồn thành tốt báo cáo 18