• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            單鏈DNA

            換了個(gè)地址:http://www.cnblogs.com/vizhen/

             

            《WINDOWS游戲編程大師技巧》學(xué)習(xí)筆記--學(xué)海無涯

            終于等到在網(wǎng)上買的了,雖然這書時(shí)代有點(diǎn)老,但還是覺得還是有價(jià)值,應(yīng)該好好讀一讀,仔細(xì)閱讀當(dāng)然是要做些筆記啦。

            學(xué)習(xí)前的準(zhǔn)備工作:
                這本書的例子用的是VC++ 6.0+DirectX 7.0,所以先得到網(wǎng)上下載DirectX 7.0 SDK(8.0亦可),解壓,把Include 和lib 下的文件全部拷貝到Vc ++的對(duì)應(yīng)目錄下,然后,我就試著編譯了第一章的一個(gè)例子游戲---打磚塊的游戲,發(fā)現(xiàn)連接不了外部文件!無奈,百度一下,原來還得對(duì)編譯器做些工作:在Project/Settings   /link     Object/library  添加 ddraw.lib dxguid.lib 。

            第一章 學(xué)海無涯
                講解游戲誕生的整個(gè)過程,Windows下面的游戲運(yùn)行整個(gè)過程和游戲編程中的規(guī)范。
               “ 一個(gè)簡(jiǎn)化游戲的結(jié)構(gòu):第一步,初始化
                                                        第二步,進(jìn)入游戲循環(huán)
                                                        第三步:獲得玩家的輸入信息
                                                        第四步:執(zhí)行人工智能和游戲邏輯
                                                        第五步:渲染下一幀圖像
                                                        第六步:同步顯示
                                                        第七步:循環(huán)
                                                        第八步:關(guān)閉 ”
                啊哈原來一個(gè)游戲程序簡(jiǎn)單點(diǎn)就是這樣運(yùn)行的,游戲也并不是那么神秘額。

             另外的收獲就是游戲編程一些規(guī)范和技巧:

                    1.“你不應(yīng)當(dāng)在對(duì)運(yùn)行時(shí)間或內(nèi)存要求特別嚴(yán)格的代碼段中式用高層API。特別是與游戲內(nèi)循環(huán)有關(guān)的代碼大多需要手工編寫,否則游戲多半會(huì)遇到嚴(yán)重的速度和性能的問題。當(dāng)然,這并不一位著就不能信任DirectX等 API,因?yàn)镈irectX的設(shè)計(jì)目的就是兼顧高性能和“thin”原則。但就通常來講,應(yīng)當(dāng)避免頻繁調(diào)用高層的函數(shù)。”----這點(diǎn)是有點(diǎn)不太明白,作者是對(duì)API的性能不太信任?還是另有原因,暫且放在這里,等整體看完再研究之。

                   2.“不要害怕使用全局變量。”“由于參數(shù)要被壓棧和出棧,執(zhí)行這個(gè)函數(shù)體所需時(shí)間小于調(diào)用函數(shù)所需的時(shí)間,在這種情況下,更好的方法可以是設(shè)立一些全局變量,然后再調(diào)用前進(jìn)行賦值以傳遞參數(shù)”——時(shí)間是如此的重要!

                   3.“使用內(nèi)聯(lián)函數(shù)”--呵呵,這個(gè)上C++課時(shí)老師講啦。雖然使編譯后的程序變大了,但卻有效的提高運(yùn)行速度。

                   4.“盡量使用32位的變量而不是8位或16位變量。”
                  “struct   CPOINT
                     { 
                         short x,y;
                         unsigned char c;
                      } // end CPOINT”
                      “注意,定義這個(gè)結(jié)果看上去不錯(cuò),但實(shí)際并非如此!首先,結(jié)構(gòu)本身是一個(gè)5字節(jié)長(zhǎng)的結(jié)構(gòu)——(2*sizeof(short)+sizeof(char))=5 字節(jié)。這太糟了額,由于沒注意字節(jié)對(duì)齊,內(nèi)存尋址的時(shí)候會(huì)出大問題。”——這點(diǎn)確實(shí)不知道!標(biāo)記之。

                  5.“以類似RISC的方式來編程。換句話來說,盡量簡(jiǎn)化你的代碼,而不是是他更復(fù)雜。”——以前一直想,能一句完成,就不要寫多幾行,原來簡(jiǎn)單句子,執(zhí)行的更快。“使用二進(jìn)制移位運(yùn)算來進(jìn)行乘數(shù)是2的冪的簡(jiǎn)單整數(shù)乘法。”

                  6.“不要為簡(jiǎn)單的對(duì)象定義太多復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。鏈表結(jié)構(gòu)很好用,但并不意味著當(dāng)你所需要的其實(shí)是大約有256個(gè)固定數(shù)組的時(shí)候,你也該使用鏈表”

                  7.最后有一個(gè)小游戲,但是我對(duì)里面的碰撞算法,不太理解啊,真是有點(diǎn)難度啊。


            posted on 2009-12-27 01:21 Geek.tan 閱讀(1926) 評(píng)論(5)  編輯 收藏 引用 所屬分類: 學(xué)習(xí)筆記

            評(píng)論

            # re: 《WINDOWS游戲編程大師技巧》學(xué)習(xí)筆記--學(xué)海無涯 2009-12-27 02:46 liuliu

            有好多建議都過時(shí)了吧。現(xiàn)在所有的編譯器都能處理例如變*2為移位操作之類的。  回復(fù)  更多評(píng)論   

            # re: 《WINDOWS游戲編程大師技巧》學(xué)習(xí)筆記--學(xué)海無涯 2009-12-27 10:02 Goteet

            e...學(xué)校開c++課啊,真幸福  回復(fù)  更多評(píng)論   

            # re: 《WINDOWS游戲編程大師技巧》學(xué)習(xí)筆記--學(xué)海無涯 2009-12-27 13:46 新海網(wǎng)

            你好,歡迎添加友情連接 http://www.xiw.org.ru/index.shtml  回復(fù)  更多評(píng)論   

            # re: 《WINDOWS游戲編程大師技巧》學(xué)習(xí)筆記--學(xué)海無涯 2009-12-27 14:52 Geek.tan

            @liuliu
            因?yàn)樵鏁龅帽容^早,好像剛好是xp上市的時(shí)候出的  回復(fù)  更多評(píng)論   

            # re: 《WINDOWS游戲編程大師技巧》學(xué)習(xí)筆記--學(xué)海無涯 2009-12-27 17:57 Touchsoft

            能學(xué)習(xí)到一些不錯(cuò)的原理,我前陣日子剛讀了。
            雖然沒讀完。  回復(fù)  更多評(píng)論   

            # re: 《WINDOWS游戲編程大師技巧》學(xué)習(xí)筆記--學(xué)海無涯[未登錄] 2009-12-28 10:06 current

            這書有點(diǎn)老了 嘿嘿   回復(fù)  更多評(píng)論   

            導(dǎo)航

            統(tǒng)計(jì)

            公告

            coding是我的寂寞,我是誰的寂寞

            隨筆分類(40)

            隨筆檔案(48)

            搜索

            積分與排名

            最新評(píng)論

            評(píng)論排行榜

            日韩电影久久久被窝网| 91精品国产乱码久久久久久| 久久久久亚洲精品中文字幕| 久久se这里只有精品| 久久中文字幕人妻丝袜| 久久精品国产亚洲av水果派| 91精品国产综合久久精品| 久久精品无码一区二区app| 人妻无码精品久久亚瑟影视| 久久婷婷五月综合色奶水99啪| 久久精品中文字幕久久| 中文字幕精品久久久久人妻| 国产精品久久午夜夜伦鲁鲁| 久久亚洲国产精品五月天婷| 91精品国产综合久久婷婷| 午夜精品久久影院蜜桃| 久久99国产精品久久99| 久久精品国产久精国产一老狼| 亚洲欧美日韩精品久久| 亚洲精品美女久久777777| 久久国产高清一区二区三区| 精品熟女少妇av免费久久| 国产精品久久久久久五月尺| 国产一区二区精品久久凹凸| 国产精品99久久精品| 久久人人妻人人爽人人爽| 国产成年无码久久久免费| 久久综合久久鬼色| 国产高潮国产高潮久久久91| 国产精品久久久久久久久鸭| 色综合久久久久无码专区| 漂亮人妻被中出中文字幕久久| 久久久WWW成人| 久久久久亚洲爆乳少妇无| 精品国产青草久久久久福利| 亚洲国产成人久久精品动漫| 青青草原综合久久大伊人精品| 国产精品对白刺激久久久| 久久精品九九亚洲精品| 麻豆一区二区99久久久久| 欧美黑人又粗又大久久久|