電腦遊戲製作開發設計論壇 首頁 電腦遊戲製作開發設計論壇
任何可以在PC上跑的遊戲都可以討論,主要以遊戲之製作開發為主軸,希望讓台灣的遊戲人有個討論、交流、教學、經驗傳承的園地
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入 

Google
[問題]想學習看懂MFC

 
發表新主題   回覆主題    電腦遊戲製作開發設計論壇 首頁 -> 遊戲程式中級班:資料結構、Win32 API、各種視窗函式庫
上一篇主題 :: 下一篇主題  
發表人 內容
winpu027
稍嫌羞澀的路人


註冊時間: 2007-09-02
文章: 4

0.00 果凍幣

發表發表於: 2007-9-2, AM 8:43 星期日    文章主題: [問題]想學習看懂MFC 引言回覆

小弟在看了
C&C++完美經典
挑戰C++程式語言
C/C++程式設計
Visual C++6 完全功略

之後又看了
http://www.ulinks.com.tw/win32/
網站學習了win32 API

然後去看
Vsual C++ 遊戲設計魔法寶典 榮欣

前面1~6章是用Win API架構
也就是
代碼:
int APIENTRY _tWinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPTSTR    lpCmdLine,
                     int       nCmdShow)
{...}
ATOM MyRegisterClass(HINSTANCE hInstance)
{...}
BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{...}
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{...}

的方式來寫範例因為有看過上面的網站 所以這個是可以看的懂的
但是在第6章後半,突然出現了
代碼:
void canvasFrame::OnTimer(UINT nIDEvent)
{...}

感覺好像是二本不同的書....熊熊給他看不懂,這個寫法應該是MFC的架構吧(有錯請訂指正,我也不懂><)
想請問一下各位先進如何看懂MFC呢?
翻了一下書後面的DirectX 都是用這種方法寫的呢~想快點進入3D
可以推薦一下書,或者網站(中文><),可以讓小弟進入MFC的世界嗎,感謝><


winpu027 在 2007-9-3, PM 2:11 星期一 作了第 1 次修改
回頂端
檢視會員個人資料 發送私人訊息
yag
Site Admin


註冊時間: 2007-05-02
文章: 688

2673.35 果凍幣

發表發表於: 2007-9-2, AM 11:56 星期日    文章主題: Re: [問題]想學習看懂MFC 引言回覆

的確是MFC的架構
話說榮欽在早期還有出過一本「新Visual C++遊戲設計」
那本的內容是講用MFC寫遊戲的
你在第6章看到的程式碼,跟那本在第4章的程式碼一樣
神奇的地方是,遊戲設計魔法寶典以Win32為主,但D3D的部份卻是MFC的架構
而新Visual C++遊戲設計以MFC為主,但D3D的部份卻是Win32的架構
我也不知道榮欽在搞什麼...
總之,那個雖然是MFC不過只有Frame跟App而已,要理解應該不是太難
把它想成兩個類別就行了,而程式進入點從WinMain換成了InitInstance
訊息方面,OnTimer的內容就跟Win32處理WM_TIMER的內容是一樣的

話說,你那本Visual C++6 完全功略應該就是在講MFC的吧?
寫遊戲的話,一般來說MFC不需要懂太多
很少有人用MFC當架構寫大型遊戲的
因為DirectX本身就可以建立視窗
所以MFC的部份你大可以忽視
只要把其中D3D的部份弄懂就行了
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
winpu027
稍嫌羞澀的路人


註冊時間: 2007-09-02
文章: 4

0.00 果凍幣

發表發表於: 2007-9-2, PM 12:51 星期日    文章主題: 引言回覆

感謝大大

Visual C++6 完全功略這本開頭都還是基礎,從第12章才講到視窗MFC
而且並沒有對程式詳加註解,所以有看沒有懂><(沒有懂就不會實用)

MFC跟API對我來說就像"文言文"跟"普通話"一樣,我還是比較看的懂普通話
看來有必要把"新Visual C++遊戲設計"買回來K一下了,從D3D那邊開始看嚕!
感謝大大告知有這樣一本書
回頂端
檢視會員個人資料 發送私人訊息
yag
Site Admin


註冊時間: 2007-05-02
文章: 688

2673.35 果凍幣

發表發表於: 2007-9-2, PM 3:53 星期日    文章主題: 引言回覆

新Visual C++遊戲設計是很久以前的書了
現在恐怕已經絕版了喔
而且遊戲設計魔法寶典新Visual C++遊戲設計裡的D3D介紹得很少
與其去買Visual C++遊戲設計(假如真的有找到)
還不如買「3D遊戲程式設計入門」(博碩出版)
同樣都是買一本書
不如直接往專講D3D的書去下手
並不是每本書都必須從頭讀到尾全盤了解的
挑有用的讀就好了
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
happylin
略有貢獻的成員


註冊時間: 2007-07-26
文章: 70

127.34 果凍幣

發表發表於: 2007-9-3, AM 10:45 星期一    文章主題: Re: [問題]想學習看懂MFC 引言回覆

winpu027 寫到:


代碼:
void canvasFrame::OutTimer(UINT nIDEvent)
{...}



這個程式看起來一點也不相是MFC .
MFC 的timer out 不是寫OutTimer
是用OnTimer(UINT nIDEvent)
且MFC 的慣用寫法. class 名稱第一個字母都是大寫的. 且大部份都是C 這個字元
如 void CMainFrame::OnTimer(UINT nIDEvent)
回頂端
檢視會員個人資料 發送私人訊息
yag
Site Admin


註冊時間: 2007-05-02
文章: 688

2673.35 果凍幣

發表發表於: 2007-9-3, PM 12:18 星期一    文章主題: Re: [問題]想學習看懂MFC 引言回覆

happylin 寫到:
winpu027 寫到:


代碼:
void canvasFrame::OutTimer(UINT nIDEvent)
{...}



這個程式看起來一點也不相是MFC .
MFC 的timer out 不是寫OutTimer
是用OnTimer(UINT nIDEvent)
且MFC 的慣用寫法. class 名稱第一個字母都是大寫的. 且大部份都是C 這個字元
如 void CMainFrame::OnTimer(UINT nIDEvent)

呵呵
OutTimer是winpu打錯了
書上的是OnTimer沒錯
至於canvasFrame則是榮欽改的
繼承自CFrameWnd
的確是MFC沒錯
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
winpu027
稍嫌羞澀的路人


註冊時間: 2007-09-02
文章: 4

0.00 果凍幣

發表發表於: 2007-9-3, PM 2:15 星期一    文章主題: 引言回覆

請問一下大大
3D遊戲程式設計入門
是用win32 API方式教學的嗎?
(還是沒有找到MFC的書><)
回頂端
檢視會員個人資料 發送私人訊息
yag
Site Admin


註冊時間: 2007-05-02
文章: 688

2673.35 果凍幣

發表發表於: 2007-9-3, PM 4:34 星期一    文章主題: 引言回覆

winpu027 寫到:
請問一下大大
3D遊戲程式設計入門
是用win32 API方式教學的嗎?
(還是沒有找到MFC的書><)


基本視窗部份是用Win32 API建立的
不過也就只有這麼一部份

書名有Visual C++的
大多就是在講MFC
如果要經典一點的
微軟有出過一本Windows程式設計使用MFC
原作者Jeff Prosise
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
從之前的文章開始顯示:   
發表新主題   回覆主題    電腦遊戲製作開發設計論壇 首頁 -> 遊戲程式中級班:資料結構、Win32 API、各種視窗函式庫 所有的時間均為 台灣時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
可以 在這個版面附加檔案
可以 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作