《MFC遊戲開發》筆記一 系列簡介

2021-07-04 07:06:18 字數 2704 閱讀 2794

分類: 【c/c++】遊戲開發

2013-07-11 12:05

13084人閱讀收藏 

舉報遊戲開發

mfc2darpg

c++

鑑於有同學需要**學習,我以後會把**整體的貼上出來,以方便大家參考,但是還是建議大家自己動手寫一遍。在筆記二中調整視窗的**寫完後,在本系列教程中大家就只用關注cchildview.h和cchildview.cpp這兩個檔案,所以我會每次貼出這兩個檔案的全部**。

by霧央 2013.7.14

by霧央 2013.7.15

by霧央 2013.7.18

從筆記十一開始,霧央將系列名稱更新為《c++遊戲開發》,原因是這個教程並沒有多麼深入mfc,只是借用了mfc的框架和貼圖,原來名稱可能誤導一些同學,而且霧央更希望講解的是遊戲開發的一些思想,而不侷限於mfc。

by霧央 2013.7.22

一、我的遊戲開發學習之路

很多人走上計算機道路最初的原因就是懷揣著遊戲開發的夢想,至少我是這樣的。最初學習的日子是極度痛苦的,對於遊戲開發充滿著熱情,但是卻只能每天在控制台黑乎乎的視窗下寫程式,不知道怎麼樣才能寫出圖形介面的遊戲程式,我記得我當時在網上四處搜尋資料得到的結果大都是說要去學習一門圖形庫,比如directx、opengl或者學習win32 api,再古老的就是graphic庫了。directx和opengl對於乙個新手來說真的太難了,一大堆複雜的名詞和概念,對於數學的要求都讓人望而退卻;win32 api函式太多,講解遊戲開發的資料太少,至少當時我是沒怎麼搜尋到,而graphic庫是tc專用的,大概已經沒有人用了,當時一度感覺開發乙個好看的遊戲太艱難了,好在後來在網上搜到了easyx圖形庫(

),這個是由yangw80

先生利用windows程式設計開發的乙個圖形庫,介面和graphic基本一樣,且配有詳細的chm文件說明,建議剛接觸程式設計的同學可以去了解一下,至少它可以讓你快速開發出乙個圖形程式,很感謝

bestans

寫的easyx圖形開發教程

skills/view.aspx?id=45

,當時我剛學完了c語言,看著這個教程,做出了自己的圖形介面的學生成績管理系統和貪吃蛇、掃雷遊戲。這個圖形庫支援的功能不是很多,比如實現輸入框就是蠻困難的乙個事情,但是利用它,實現乙個像樣的遊戲demo已經不是問題了,也可以告別控制台視窗了。

後來我們學校進行了專業實訓,實訓的內容是mfc開發,做的是遊戲,截圖如下:

先來一張城鎮地圖:

再來一張野外地圖:

做的是乙個像冒險島那樣的橫版遊戲,雖然不是很完善,但是遊戲最基本的東西基本都具有了,當然要非常感謝我的美工隊友的付出,事實上,我個人認為,遊戲基本就是美術+if/else堆起來的。

一直以來,自己對於3d遊戲充滿了興趣,後來在csdn看到淺墨大神的專欄《visual c++遊戲開發》後,開始看著淺墨的教程,自學3d遊戲,到現在算是剛入門吧,可惜淺墨由於非常忙,停止了部落格的更新。

上面大概就是自己在遊戲開發道路上的學習過程,到現在,我仍然是初學者,但是我很佩服淺墨的分享精神,對過去自己所走的彎路、經歷的痛苦也記憶猶新,希望可以把自己所學習到的知識分享出來,幫助那些曾和我一樣懷有遊戲開發夢想的少年們。

二、關於《mfc遊戲開發》系列

1.物件導向

我文筆不好,技術也一般,因此這個《mfc遊戲開發》系列面向的物件是遊戲初學者,有什麼問題,路過的高手請指出,在此表示感謝。

2.學習基礎

學習的要求是掌握了c語言,對於c++只需要知道最基礎的類的概念就好,不熟並不妨礙你寫遊戲。遊戲採用mfc單文件開發,如果不會mfc也沒有什麼問題,我會從第 一步手把手進行**教程,我的開發環境是vs2010,win7。

3.更新

現在是暑假期間,我時間比較多,會盡快更新。我保證,在教程結束的時候,大家至少可以寫出我上面貼出的截圖中的遊戲,即乙個2d遊戲demo。

4.反饋

說明:在網上很多人不建議使用mfc開發遊戲,它封裝了很多使用不到的東西,gdi繪圖效率低下,但是我覺得,遊戲開發的思想是一樣的,mfc只是一種工具,只要利用它能方便我們做出自己的遊戲,實現自己的夢想,又有何不可呢?況且,上面我做的2d動作角色扮演遊戲,fps可以達到60幀,不會產生一點點的卡,也就是說,我們做的是簡單的遊戲,效率這方面我覺得暫時可以不用考慮mfc帶來的影響。

另外,我知道很多懷有遊戲開發夢想的同學,選擇了去學習乙個遊戲引擎。確實,利用遊戲引擎可以快速的開發出自己的遊戲,甚至利用rpg maker這樣的工具,連一行**都不用寫,就可以拖出乙個像樣的rpg遊戲,但是這樣對於我們自己的成長,又有多大的幫助呢?從最基礎的部分學習起,我們可以認識到遊戲引擎的實現原理,甚至寫出自己的遊戲引擎,霧央現在就打算慢慢寫乙個自己的遊戲引擎。我覺得,在學習階段,大家還是自己從底層寫**做遊戲比較好,工作階段,大家利用遊戲引擎開發遊戲才是最正確的選擇。

開發的一系列注意事項筆記(持續更新)

一 2016 07 21 開發前設計好資料庫,將需要控制的字段做好記錄 如規定 使用者名稱不能超15個字等 之後前端開發人員需要在前端加上這些輸入的控制。二 2016 07 21 如果存在使用者賬戶系統,在需要對登入賬戶進行操作時,絕對不能通過http傳輸將使用者的主鍵 如使用者id 傳過來,因為這...

實操筆記 python 動態生成一系列變數

可以使用內建函式locals 生成一系列的動態變數如a1,a2,a3 names locals for i in range 3 names a str i i print a str i print names a str i out a00 a11a22 問題 主要是python執行sql操作 ...

web開發jsp頁面遇到的一系列問題

一 web總結 1.jsp頁面知識點鞏固 1.1字串數字格式化轉換 taglib prefix fmt uri 整數帶千分符顯示 整數顯示 兩位小數捨入顯示 兩位小數捨入,不足兩位小數補0顯示 貨幣顯示 與number類似擴充套件pattern 百分數顯示 與number類似擴充套件pattern ...