1. 程式人生 > >C++遊戲開發入門專案精選:製作經典遊戲拳皇97

C++遊戲開發入門專案精選:製作經典遊戲拳皇97

對於80、90後來說,拳皇97一定不會陌生,這款經典的橫版格鬥遊戲,是一代人的回憶,許多人接觸它都是在街機上,而今天,小編要教大家制作PC版的拳皇97!看黑板,表演即將開始——


遊戲執行效果呈現

好吧遊戲介面和人物模型有點醜,不過這不是重點,重點是學習遊戲開發的思路。

一、利用GDI繪製圖形

GDI是windows與生俱來的圖形裝置介面(GraphicsDeviceInterface)的英文縮寫,主要任務是負責系統與繪圖程式之間的資訊交換,處理所有Windows程式的圖形和影象輸出。

準備一張BMP格式的背景圖片,建立一個窗體,在窗體上進行繪製,然後通過GetDC函式來獲取窗體的裝置環境DC

獲取裝置環境後,還需要在

記憶體中建立一個裝置環境,我們在記憶體中畫圖,畫好以後,直接拷貝到窗體的裝置環境上

二、關於動畫的實現

拳皇吸引玩家的一定是那酣暢淋漓的打鬥動作,我們知道用遊戲引擎骨骼動畫是最常見的,不過跟3D的渲染不同,2D遊戲是貼圖的藝術。

例如上面的兩個動畫,通過一個數組把它們儲存起來,然後依次播放。

♦執行效果

貼圖基本有兩種方式,一種採用定時器,一種則是利用訊息迴圈,目前都是採用的第二種繪製方式(訊息迴圈),也就是說遊戲中的動畫都是一幀一幀的帖上去的,就像放電影一樣。

♦添加了技能執行效果圖:

其實像拳皇97、地下城與勇士這類2D遊戲是比較適合新手小白開發的,相比於3D遊戲的骨骼動畫,2D橫版遊戲的序列幀更簡便。

在開發過程中,我們會用到C/C++語言、Win32視窗建立、訊息機制、GDI三緩衝繪圖原理等知識點。

關於怎麼快速學C/C++,可以加下小編的C/C++學習群:341+636+727,不管你是小白還是大牛,小編我都歡迎,不定期分享乾貨,歡迎初學和進階中的小夥伴。每天晚上20:00都會開直播給大家分享C/C++遊戲程式設計學習知識和路線方法,群裡會不定期更新最新的教程和學習方法,最後祝所有程式設計師都能夠走上人生巔峰,讓程式碼將夢想照進現實

●學習過程中你能學會:

1.使用API函式建立好Win32視窗。

2.將準備好的遊戲素材載入到程式中。

3.使用GDI圖形裝置介面函式繪製地圖與角色。

4.利用C/C++語法結合資料結構

與演算法演算法處理遊戲資料。

5.編寫遊戲邏輯。

●學習成效:

1.跳出控制檯,在介面程式設計中去鍛鍊自己的邏輯思維能力。

2.瞭解windows程式設計的基本框架。

3.可嘗試去開發各種介面化的程式,例如雷霆戰機俄羅斯方塊,坦克大戰等等。

一句RNG牛逼,不知刷爆了多少人的朋友圈,而LOL等六項電競正式入選亞運會,更是重新整理了我們對遊戲的認知,在眼下全民娛樂的時代,遊戲早已成為我們生活的一部分,遊戲開發也是當下和未來絕對熱門的行業。

怎麼樣?是不是也想嘗試著自己做一款小遊戲了呢?