日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

我用C++复刻了这款上世纪最伟大的游戏

發布時間:2024/4/14 c/c++ 75 豆豆
生活随笔 收集整理的這篇文章主要介紹了 我用C++复刻了这款上世纪最伟大的游戏 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

吃豆人(Pac-man),想必熟悉電子游戲發展史的玩家都不會陌生。

吃豆人是電子游戲歷史上的經典街機游戲,由Namco公司的巖谷徹設計并由Midway Games在1980年發行。

Pac-Man被認為是80年代最經典的街機游戲之一,游戲的主角小精靈的形象甚至被作為一種大眾文化符號,或是此產業的代表形象。

但吃豆人的玩法現在看來,也許已經有些過時。

玩家要控制吃豆人吃掉迷宮里面的所有豆子,同時盡可能躲避小鬼怪。一旦吃豆人吃掉能量藥丸,它就可以在一定時間內反過來欺負小鬼怪了。

不過,在漫漫游戲長河中,吃豆人,永遠都會是最閃耀的那一顆。

它是電子游戲的文化符號,同時首創了迷宮追逐類型,簡單的畫面和玩法卻在電子游戲史上留下了濃墨重彩的一筆。

因此,今天,我挑選了一個吃豆人開發教程分享給大家。復刻吃豆人,致敬經典!

實現效果如下:

在“C++ 使用 openGL 實現吃豆人游戲”中可學習全部內容,并有游戲源碼下載。


以下是教程節選:

一、實驗介紹

1.1 實驗內容

本節實驗主要通過 C++ 和 openGL 庫來實現了一個吃豆人的小游戲。主要的課程內容涉及到 C++ 相關的序列容器 vector 、deque 和迭代器,以及 openGL 相關的窗口初始化與繪圖功能。

1.2 知識點

  • C++ 編程基礎
  • C++ 模板庫使用
  • openGl 庫使用

1.3 實驗環境

  • xfce 終端
  • ubuntu16.04
  • openGl 庫

1.4 適合人群

有一定 C++ 編程基礎,了解 STL 模板庫,對游戲設計、邏輯分析和 openGL 庫感興趣的同學。

二、環境準備

2.1 安裝 openGL 庫

執行以下命令安裝所需的各種依賴

sudo apt-get update sudo apt-get install build-essential sudo apt-get install libgl1-mesa-dev sudo apt-get install libglu1-mesa-dev sudo apt-get install freeglut3-dev

2.2 編譯程序

需要進入 Pacman/src/ 目錄

make

2.3 運行程序

需要進入 Pacman/bin/ 目錄

./Pacman

2.4 運行效果

三、項目分析

3.1 模塊拆分

在開始編寫程序之前我們需要利用 C++ 的思想把實際問題轉換成一個個對象。說到游戲應該就能想到角色、地圖和怪物以及操作命令等。我們把這些元素細化就可以得到游戲設計模塊:

  • 角色設計
  • 地圖設計
  • 怪物設計
  • 食物設計
  • 操作設計
  • 界面設計

3.2 開發說明

  • C++ :編程語言
  • Linux ubuntu 16.04 :開發環境
  • openGL :第三方庫

備注:openGL 是一種圖形界面處理庫,提供了許多 API 給其他語言調用。我們的地圖、角色和界面等等都需要調用它。

四、詳細設計

4.1 提前準備

在這里首先需要為我們的項目創建一個文件夾,進入 /home/shiyanlou/Code/ 目錄下,將我們這次的項目命名為 Pacman。進入這個文件夾創建三個子文件夾 inlcude(存放頭文件)、src(存放源代碼)和 bin(存放可執行文件)。并創建相應的代碼文件,具體內容與結構如下:

▲include 目錄下

  • control.h
  • createpacman.h
  • food.h
  • gameover.h
  • gameresult.h
  • gamestart.h
  • init.h
  • laberynth.h
  • main.h
  • monster.h

▲src 目錄下(相對應)

  • control.cpp
  • createpacman.cpp
  • food.cpp
  • gameover.cpp
  • gameresult.cpp
  • gamestart.cpp
  • init.cpp
  • labernth.cpp
  • Pacman.cpp
  • monster.cpp

4.2 預定義與全局變量

首先在 include 創建 main.h,用來存放頭文件和一些全局變量,全局變量的定義是方便所有的模塊訪問并反映游戲的狀態。全局變量定義后,在主函數中進行賦值,所有模塊就都能訪問了。

//main.h #ifndef _MAIN_H_ #define _MAIN_H_ #include <vector> #include <GL/glut.h> #include <iostream> #include <cstring> #define _USE_MATH_DEFINES #include <math.h> #include <vector> #include <deque> #include <stdlib.h> using namespace std;extern bool replay; //檢查是否啟動游戲 extern bool over; //檢查游戲是否結束 extern float squareSize; //一個單元大小 extern float xIncrement; // x坐標 extern float yIncrement; // y坐標 extern int rotation; // 方向 extern float* monster1; //第一個怪物的坐標和方向 extern float* monster2; //第二個怪物的坐標和方向 extern float* monster3; //第三個怪物的坐標和方向 extern float* monster4; //第四個怪物的坐標和方向 extern vector<int> border; //墻坐標//障礙物坐標 (為了清晰分為三部分) extern vector<int> obstaclesTop; extern vector<int> obstaclesMiddle; extern vector<int> obstaclesBottom; extern deque<float> food; extern vector<vector<bool>> bitmap; // 2d圖像,可移動區域 extern bool* keyStates; // 按鍵狀態 extern int points; // 得分 #endif

接下來,還有“初始化游戲地圖”“怪物設計”“食物設計”等內容,在“C++ 使用 openGL 實現吃豆人游戲”中可學習全部內容,并有游戲源碼下載。

總結

以上是生活随笔為你收集整理的我用C++复刻了这款上世纪最伟大的游戏的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产又黄又猛又粗又爽 | 国产精品一区二区三区不卡 | 一本大道综合伊人精品热热 | 日本美女高潮 | 美国色视频 | 三级理伦 | 91av视频在线免费观看 | 中文成人无字幕乱码精品区 | 国产亚洲av片在线观看18女人 | 亚洲美女自拍偷拍 | 亚洲福利视频网 | 免费观看nba乐趣影院 | 91成人在线免费视频 | 北条麻妃av在线 | 91成人免费视频 | 噼里啪啦免费观看 | 大咪咪dvd | 成人羞羞国产免费游戏 | 美女草逼视频 | xxxx国产精品 | 怡红院av久久久久久久 | 精品视频在线观看 | 久久国产色av免费观看 | 天天干视频| a毛毛片 | 美女尿尿网站 | 成人黄色激情视频 | 9191在线视频 | 偷拍网亚洲 | 免费黄色国产视频 | japanese21ⅹxx日本 | 国产日韩欧美中文字幕 | 久久久激情视频 | 欧美一区二区三区日韩 | 亚洲私人影院 | 青娱乐国产 | 成年视频在线 | 免费一级黄色片 | 亚洲免费在线视频 | 久久精品久久精品久久精品 | 91在线精品一区二区三区 | 国产特级av | 欧美日韩亚洲一区二区三区 | 欧美日韩成人在线播放 | 三级自拍视频 | 久久丁香网| 加勒比一区二区三区 | 老师张开让我了一夜av | 色就操| 91精品国产综合久久久久久 | 中文字幕在线1 | 九色精品| 男人天堂免费视频 | 一级黄色免费大片 | 美女又爽又黄视频 | 桃谷绘里香在线观看 | 91精品国产91久久久久久久久久久久 | 亚洲欧洲成人精品久久一码二码 | 秋霞视频一区二区 | 日本午夜影视 | 天堂最新资源在线 | 少妇丰满尤物大尺度写真 | 91精品国产高清一区二区三区蜜臀 | 亚洲综合自拍 | 日本老肥婆bbbwbbbwzr | 麻豆激情网 | 亚洲国产一区二区三区a毛片 | 精品国产户外野外 | 人人艹人人 | 久久亚洲欧洲 | 久久久精品一区二区 | 国产在线视频一区二区三区 | 欧美精品日韩少妇 | 男生操女生免费网站 | www.日本com| av福利在线看 | 男女日批免费视频 | 成人一区二区三区视频 | 中文字幕乱码中文乱码b站 国产一区二区三区在线观看视频 | 日本高清视频网站 | 婷婷亚洲综合 | 中文字幕人妻一区二区在线视频 | 国产一区自拍视频 | 污网站在线免费看 | 日韩福利在线视频 | 国产一区二区激情视频 | 欧美做受高潮中文字幕 | 正在播放一区二区 | 久操网在线 | 欧美性色a | 秋霞福利片 | 这里只有精品国产 | 国产丝袜一区二区三区 | 日韩女优在线 | 国产思思99re99在线观看 | 色女人网站 | 欧美成人图区 | 欧美一区二区在线 | 国产无码日韩精品 |