模仿Windows的消息驅動機制獲得了成功

模仿Windows的消息驅動機制,管理窗口,用回調函數處理事件,已經獲得了成功。現在在UI方面,窗口已經可以實現拖拽、激活焦點、失去焦點等等特性,而且還能設置回調函數對消息進行相應的處理,消息用的完全是Windows標準WM消息,而且參數也是兩個wParam和lParam,當然了,消息我只是用了很少的幾個,爲的是節省定義的時間和符合使用習慣。參數是自己定義的。按照這個基本框架,遊戲的UI方面已經沒有什麼太大的問題了,剩下來的工作就是把UI的控件寫完。因爲現在僅僅有CForm和CLabel兩個類,我還需要CButton,CInputBox,CScrollBar,CListBox,CMessageBox……等等。

當然了,完成了最基本的控件我就可以先把注意力放在遊戲本身上面,UI控件再需要的時候再寫也不遲,再說寫UI本身是個麻煩事,配合Skin,還有N多的座標判斷,然後還要處理消息等等。這些無趣的事情啊~對做遊戲來說,就像上課與畢業,繁瑣但是不能跳過,鬱悶死啦!

從控件抽身出來之後,再花一點時間把CSurface類完善一下,讓它能讀取Jpg的文件。用Intel的庫,現成的,very good。現在對我來說出成品纔是最終要的,太原始的原理文件格式以後再花點時間補上去。

然後呢,配合幾個簡陋的控件,我就可以開始做RPG的地圖編輯器了。這時候也是找美工的時候,當編輯器做完了,就要開始找人幫忙了。寫劇本什麼的。然後趁這段時間把完成端口模型完完全全的學習一次,開始做服務器/客戶端的模塊部分。最後,就是大量數據的包裝,還有服務器腳本解釋器,找人寫腳本……etc。。。

彷彿看到了光明的未來。。

其實,路還十分遠……很多東西說出來是很簡單的。。


備註:
    1。花點時間把CCursor類換成兩種實現模式,一種是Bmp,一種是Ani。一般來說用Ani實現吧。
    2。看看關於引用計數的文章,如果出現兩個窗口同時引用一個控件的話,多次釋放會出現錯誤。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章