• <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ú)涯

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

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

            第一章 學(xué)海無(wú)涯
                講解游戲誕生的整個(gè)過(guò)程,Windows下面的游戲運(yùn)行整個(gè)過(guò)程和游戲編程中的規(guī)范。
               “ 一個(gè)簡(jiǎn)化游戲的結(jié)構(gòu):第一步,初始化
                                                        第二步,進(jìn)入游戲循環(huán)
                                                        第三步:獲得玩家的輸入信息
                                                        第四步:執(zhí)行人工智能和游戲邏輯
                                                        第五步:渲染下一幀圖像
                                                        第六步:同步顯示
                                                        第七步:循環(huán)
                                                        第八步:關(guān)閉 ”
                啊哈原來(lái)一個(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)的代碼大多需要手工編寫(xiě),否則游戲多半會(huì)遇到嚴(yán)重的速度和性能的問(wèn)題。當(dāng)然,這并不一位著就不能信任DirectX等 API,因?yàn)镈irectX的設(shè)計(jì)目的就是兼顧高性能和“thin”原則。但就通常來(lái)講,應(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é)。這太糟了額,由于沒(méi)注意字節(jié)對(duì)齊,內(nèi)存尋址的時(shí)候會(huì)出大問(wèn)題。”——這點(diǎn)確實(shí)不知道!標(biāo)記之。

                  5.“以類(lèi)似RISC的方式來(lái)編程。換句話來(lái)說(shuō),盡量簡(jiǎn)化你的代碼,而不是是他更復(fù)雜。”——以前一直想,能一句完成,就不要寫(xiě)多幾行,原來(lái)簡(jiǎn)單句子,執(zhí)行的更快。“使用二進(jìn)制移位運(yùn)算來(lái)進(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 閱讀(1936) 評(píng)論(5)  編輯 收藏 引用 所屬分類(lèi): 學(xué)習(xí)筆記

            評(píng)論

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

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

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

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

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

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

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

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

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

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

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

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

            導(dǎo)航

            統(tǒng)計(jì)

            公告

            coding是我的寂寞,我是誰(shuí)的寂寞

            隨筆分類(lèi)(40)

            隨筆檔案(48)

            搜索

            積分與排名

            最新評(píng)論

            評(píng)論排行榜

            97久久精品人人澡人人爽| 久久午夜电影网| 久久人妻少妇嫩草AV蜜桃| 久久天天躁夜夜躁狠狠躁2022 | 久久久久女教师免费一区| 欧美大战日韩91综合一区婷婷久久青草 | 99久久www免费人成精品| 精品久久久久久成人AV| 国内精品久久久久久久久电影网| 久久久久香蕉视频| 97r久久精品国产99国产精| 久久毛片免费看一区二区三区| 亚洲va久久久噜噜噜久久| 国产福利电影一区二区三区久久老子无码午夜伦不 | 99久久超碰中文字幕伊人| 婷婷综合久久中文字幕| 久久精品国产亚洲AV蜜臀色欲| 波多野结衣中文字幕久久| 久久综合日本熟妇| 久久精品成人免费看| 亚洲中文字幕无码久久2017| 国内精品久久久久久久coent| 91精品国产91久久综合| 伊人久久大香线蕉AV色婷婷色| 久久久精品久久久久久| 色综合久久88色综合天天| 99久久er这里只有精品18| 亚洲中文久久精品无码ww16| 色欲综合久久躁天天躁| 9191精品国产免费久久| 99精品久久久久中文字幕| 亚洲精品tv久久久久久久久| 久久这里只有精品首页| 亚洲午夜精品久久久久久app| 久久久久香蕉视频| 久久精品女人天堂AV麻| 久久久久久久国产免费看| 久久97久久97精品免视看| 久久久久九九精品影院| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 97久久国产综合精品女不卡|