• <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>

            戰(zhàn)魂小筑

            討論群:309800774 知乎關注:http://zhihu.com/people/sunicdavy 開源項目:https://github.com/davyxu

               :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              257 隨筆 :: 0 文章 :: 506 評論 :: 0 Trackbacks

                    游戲開發(fā)到現(xiàn)今,已經進入到一種固定模式與創(chuàng)意掙扎的階段。Activision Blizzard 剛剛超過EA成為全球最大的游戲制造商,再看下我們周圍的這些所謂的大作,無非就是版本號更高一些,畫面更好一些,然后將其他游戲熱門的創(chuàng)意進行大抄襲意外,幾乎依然保留著最初版本的痕跡和基本玩法。然后,有一些開發(fā)者,依然堅持創(chuàng)建自己的游戲,按照自己的意圖去設計全新的游戲,獨立游戲概念就此出爐。

                    說到獨立游戲,其實可以被稱作是“小游戲”,這些游戲為了快速實現(xiàn)游戲原型,一般都使用高級的游戲開發(fā)工具,比如說RPGMaker, GameMaker, ActionGameMaker等等。這些工具其實最早的鼻祖,在我認為,莫過于星際爭霸的編輯器,一個完全不需要編程就可以實現(xiàn)游戲創(chuàng)意的工具。最近,星際爭霸2介紹游戲編輯器的視頻放了出來,世界瞬間震撼了。一個RTS游戲的編輯器,居然連射擊游戲都可以制作,雖然在魔獸爭霸3的編輯器中已經可以實現(xiàn)類似于跑跑卡丁車這類游戲。

                   依然游戲很多開發(fā)者認為,那些開發(fā)工具都是為不會編程的玩家實現(xiàn)的。包括我在內,也是這樣認為的,因為我們追求的目標并不一樣,一個是追求游戲設計的樂趣,一個是追求代碼編寫的快樂以及高可定制性等。

                   使用現(xiàn)成的游戲開發(fā)工具固然簡單,但是學習的過程以及這些工具的限制,更恐怖的莫過于這些工具的BUG(類似于GameMaker中浮點數(shù)的精度問題)都讓我重新考慮傳統(tǒng)游戲開發(fā)。但同樣我會面對更多的問題:

            1. 一個好的基于Windows的引擎,最好是DX9硬件加速

            2. 基于位圖的字體,帶編輯器的粒子,GUI以及控制系統(tǒng)組件

            3. 軌跡控制,動畫幀控制,可定制的多邊形碰撞系統(tǒng)

            4. 能使用腳本,更有類似于Unreal系列的對象腳本技術,支持腳本暫停,并可調試

            5. 一個非常棒的開發(fā)環(huán)境以及能讓所有組件都可以擴展的系統(tǒng)

            也許是我要求很高,至今為止,沒有哪個引擎能支持的那么好,又免費。順便說下評價下幾個C++圖形引擎

            HGE:

            1. 使用DX8,很多DX9特性不能完全支持,例如很多DX9的API,HLSL等,雖然這些看似在2D里用處不大

            2.低效的zip讀取機制。zip的文件讀取以及查找居然采用字符串比較,也就是attach的zip越多,查找速度越慢

            3. 粒子系統(tǒng)帶有編輯器,這點很不錯,而且效果也還可以

            4. 字體要提出批評,這點做的太差了

            5. 原始版不支持unicode,使用hge社區(qū)里某大俠提供的unicode版本后,做國際化方便多了

            6. 純粹簡單游戲引擎,做下貓貓狗狗的差不多,做復雜的格斗的話,很費力

             

            SexFramework(Popcap游戲引擎)

            1. 使用DDraw,古老而又穩(wěn)定的技術,在植物對僵尸的游戲里,明顯看到,當物體過多時,渲染速度急劇下降。當然這里我覺得應該是這個游戲大量使用flash造成的吧(猜測)

            2. 支持后臺加載,這點需要大量加分。看到很多Popcap游戲邊播放動畫邊加載吧?

            3. 支持專門的包讀取,api有點像c風格io庫

            4. 因為商用,所以可以信賴,別忘記,還支持flash哦

             

            IndieLib(可以在我的博客前面的文章找到)

            1. 統(tǒng)一的C API,簡潔,漂亮,便于與.net結合做編輯器

            2. 硬件DX9加速,比HGE好多了,而且數(shù)學庫清一色使用D3DX,更是快的一塌糊涂

            3. 支持多邊形碰撞檢測,以及XML定制的動畫幀

            4.支持2d縮放,這個技術讓游戲可以變的很酷

            5. 沒有支持壓縮包讀取,但是從代碼上看,加的話應該不困難

            6. 沒有粒子支持,即便有,也沒有編輯器支持,就這點就很嚴重了

             

            各位如果有的2d引擎庫,也請推薦下

             

            Game Virtual Machine

                  之所以要提出這個概念,主要是建立在游戲的本質其實也是與網頁很接近的。

                   縱覽網頁的開發(fā)模型,不難看出這部分已經是很成熟的了。例如:ASP可以自動將你的標記過的代碼編譯成客戶端或者服務器的版本。自動排版引擎的概念徹底推翻了微軟以左上角像素的對象顯示方式。一個網頁,支持各種腳本擴展以及Flash這種RIA應用

                  游戲,如果僅僅按照類型來做限定時,GameMaker,RPGMaker這類工具已經能將游戲開發(fā)的概念抽象成一些步驟以及參數(shù)。但問題是,要使用這些工具來制作一些并不常見的游戲類型時,可能見變得非常難,當然這點上,GameMaker要做的好一些,這個工具使用了很多類似于腳本圖形化技術,說白了,底層仍然是它的腳本,只不過經過一層圖形化工具的封裝后給你使用而已。

                 我所設想的GameVirtualMachine是這樣的:

             

            建立于游戲指令系統(tǒng)之上

                   傳統(tǒng)的游戲都是建立在虛擬機基礎上,這樣做的好處就是很靈活。但同時這也造成了程序員為了實現(xiàn)一些游戲中的邏輯關系,硬生生的使用OO這種概念來模擬另外一個概念。這樣做導致了游戲代碼難于理解。

                    很現(xiàn)實的一個例子就是C++的反射問題。C#中將反射做到了編譯器以及Runtime層,這讓開發(fā)者們一門心思的進行程序設計,雖然有一些性能損失,但是對于很多C++項目不停不停的造反射這個輪子來說明顯是值得的。

                   這套指令系統(tǒng)有一些基本指令,這些基本指令類似于一個腳本系統(tǒng)基本的運算以及流程控制等等。

            簡化游戲邏輯編寫

                   建立在指令系統(tǒng)上的優(yōu)點是很明顯的。指令系統(tǒng)底層運行著游戲虛擬機,其可以對指令的運行進行控制以便實現(xiàn),讓精靈走到哪個位置,停一會再走到哪個位置的等一系列流程的操作。這些操作對于傳統(tǒng)裸寫游戲來說,不知道要寫多少次計數(shù)器,計時器。

            直觀而簡單的調試

                    因為不使用腳本語言,調試變的異常簡單,甚至于,玩家想知道游戲怎么運行的,只要打開一個GVM的調試器就可以看到諸如

                          move_sprite_to   xxx, xxxx

                          attack_enemy xxxx,xxx

            可擴展性

                  為了制作通用游戲,這套指令是可以被擴展的。例如精靈控制子集,地圖控制子集等等

                  指令集著眼的是對象,流程以及邏輯控制。而指令集的實現(xiàn)就是與底層API的交互過程。

                  如果你說現(xiàn)在編輯器不能實現(xiàn)一個飛龍隨機飛舞并由玩家控制吐火的邏輯時,你便可為這個游戲編寫一些隨機飛舞,吐火的指令,底層實現(xiàn)完全依賴于一些API。

                  創(chuàng)建指令的目的,就是讓游戲的操作變成一種組件開發(fā)的接口創(chuàng)建工程。讓更多的玩家可以為游戲邏輯互相編寫,共享代碼

                 創(chuàng)建指令的同時,你寫的指令代碼其實就是新的VM代碼。GVM系統(tǒng)會將你的VM代碼與其他VM代碼一起在游戲中運行

            編輯器可實現(xiàn)性

                   游戲不難做,難做的編輯器。編輯器里最直接的功能就是需要UNDO/REDO,這可以讓設計者在設計重新設計之間反復選擇。因為所有操作都是基于指令的。

                 其實所謂的編輯器,也就是一個腳本生成器。諸多的按鈕,ComboBox等等其實都是低效的,但是對于不會編程,或者需要快速開發(fā)的玩家來說,GUI是唯一的選擇。當然,如果在某些部分需要特殊邏輯時,就可以與指令混合編寫

            跨平臺性

                   VM的特性已經被廣為使用。從瀏覽器到Android手機操作系統(tǒng),乃至OS。因此,GVM也是可以跨平臺的。只需要在每個平臺下實現(xiàn)一些平臺相關的模塊就可以

            posted on 2009-08-26 20:42 戰(zhàn)魂小筑 閱讀(882) 評論(5)  編輯 收藏 引用 所屬分類: 游戲開發(fā)技術

            評論

            # re: [原創(chuàng)] 游戲開發(fā)工具與Game Virtual Machine 設想 2009-08-26 23:29 Sunshine Alike
            學到一些東西,謝謝!  回復  更多評論
              

            # re: [原創(chuàng)] 游戲開發(fā)工具與Game Virtual Machine 設想 2009-08-27 01:27 sonilics
            所謂引擎很難能適合所有游戲,能滿足某種類型就足夠了。  回復  更多評論
              

            # re: [原創(chuàng)] 游戲開發(fā)工具與Game Virtual Machine 設想 2009-08-28 13:14 Adrian
            創(chuàng)造游戲的人往往不會或者不想把重點放在編碼上,而是游戲內容本身的設計上,所以游戲開發(fā)工具往往比引擎或者SDK更容易創(chuàng)造出有趣的游戲!
              回復  更多評論
              

            # re: [原創(chuàng)] 游戲開發(fā)工具與Game Virtual Machine 設想 2010-04-06 08:36 rurounihs
            申請轉載,已注明轉載來源和原作者
            http://forum.indiegame.cn  回復  更多評論
              

            # re: [原創(chuàng)] 游戲開發(fā)工具與Game Virtual Machine 設想 2010-04-06 17:52 Davy.xu
            @rurounihs
            感謝,關注下你們的網站  回復  更多評論
              

            新狼窝色AV性久久久久久| 99久久做夜夜爱天天做精品| 99久久婷婷国产综合亚洲| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 久久久老熟女一区二区三区| 久久九九亚洲精品| 精品熟女少妇a∨免费久久| 波多野结衣中文字幕久久| 久久97久久97精品免视看| 久久青青草原综合伊人| 亚洲日本va午夜中文字幕久久 | 精品久久综合1区2区3区激情| 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | a级成人毛片久久| 国产三级久久久精品麻豆三级| 99久久国产综合精品五月天喷水 | 国产精品美女久久久网AV| 久久久久99这里有精品10| 久久久WWW成人| 久久人人爽人人爽人人片AV东京热| 久久99热狠狠色精品一区| 日本久久久精品中文字幕| 偷偷做久久久久网站| 狠狠久久综合| 色综合久久精品中文字幕首页| 国内精品久久久久久久久电影网| 狠狠综合久久综合88亚洲| 久久天天躁狠狠躁夜夜av浪潮 | 国产精品免费看久久久| 伊人久久大香线蕉av不变影院| 国产精品伊人久久伊人电影| 久久久精品人妻一区二区三区蜜桃 | 久久久久免费看成人影片| 欧美激情一区二区久久久| 久久人人青草97香蕉| 久久频这里精品99香蕉久| 亚洲综合久久夜AV | 中文字幕无码久久人妻| 久久久国产视频| 久久久久久久精品妇女99| jizzjizz国产精品久久|