1. 程式人生 > >山寨Unity3D?搜狐暢遊的免費開源遊戲引擎Genesis-3D

山寨Unity3D?搜狐暢遊的免費開源遊戲引擎Genesis-3D

         用過Unity3d的朋友會發現,Genesis-3D的介面非常類似於Unity3d:主選單都是“新建工程”、“新建場景”;在場景樹中可以建立攝像頭、立方體、粒子、燈光等;在左下角的“工程”中可以建立C#指令碼、材質、精靈等;螢幕中間區域是場景編輯器,可以到“遊戲”標籤中檢視預覽效果;指令碼編輯器也是使用MonoDevelop;也可以像Unity3d一樣直接把遊戲部署到Android、Windows PC、IOS、網頁等平臺下,實現一次開發多平臺部署的效果。

     遊戲指令碼同樣是和GameObject繫結,語法和類庫有著濃重的Unity3d的影子,相似點太多了,感興趣的可以下載下來感受一下。

     像Unity3D一樣,Genesis-3D也是使用Mono實現的跨平臺,指令碼使用C#,物理引擎使用Nvidia的Physx。

    Unity3d可以支援遊戲一次開發就部署到Android、IOS、Windows等平臺下,而且Unity3d授權費比較便宜,只有幾千美元,所以迅速成為了實戰佔有率非常高的遊戲開發引擎,據2013年初Unity官方給出的資料,IOS上已經有55%的遊戲使用Unity3d開發,Android上也有很多遊戲使用Unity3d開發。

    這次搜狐暢遊推出的Genesis-3D更給力,基於MIT協議開源引擎,並且遊戲開發者可以免費使用、隨意修改引擎程式碼。

如果Genesis-3D官方的社群支援足夠給力,那麼遊戲開發者將會有了更好用、開源且免費、國產的遊戲開發引擎。

    Genesis-3D原始碼基於MIT協議釋出,不過到目前為止,Genesis-3D還沒有對外開放,據官方論壇帖子說明(http://bbs.9tech.cn/topic-365362-1.html),程式碼將會在12月上旬釋出。不過釋出形式是提供zip包下載,看來還是“給你看程式碼”的“開源專案”,並沒有提供官方的原始碼控制伺服器,這樣社群很難去貢獻程式碼了。如果把程式碼託管到CSDN的Code平臺、github、codeplex等會更好,不知道官方以後是否會做這件事,畢竟不接受社群貢獻的開源專案並不是真的開源

(參考我的文章《“開源”是什麼,能吃嗎?》http://www.cnblogs.com/rupeng/p/3139537.html)

    很多人見到Genesis-3D說的第一句話就是“這不就是山寨的Unity”嗎?下面是Unity的介面:

    雖然官方一直說“Genesis-3D是搜狐暢遊投資3000萬美元自主研發,,從未對任何引擎進行抄襲或侵權。Genesis-3D在遵守開源協議的基礎上,最底層的執行緒、記憶體等管理庫使用的是Nebula3和Ogre的部分程式碼;中間層使用了模組化設計,包括MyGUI、OpenAL、PhysX等第三方的開源庫或者商業庫;上層使用元件化的設計思想;編輯器使用了WPF進行介面開發,同時使用SWIG來暴露C++介面供C#使用。作為一款開源引擎,我們使用MIT協議。我們大量使用了開源社群的產品,遵守並按照授權協議公開原始碼以及對於第三方開源庫的修改。”有一些人也辯解“只是設計器介面上吸收了Unity的靈感”,不過據小道訊息(從微博看到的訊息,本人不為此負責,請勿轉發抄500):搜狐暢遊曾經購買過Unity3d引擎,並且做為大客戶獲得了Unity3d的原始碼(注意Unity3d不是開源的,花大價錢買商業引擎送原始碼是一個行業慣例),開發Genesis-3D過程中曾經組織開發人員加急把Unity3d的原始碼改的讓人抓不到抄襲的證據。據說搜狐暢遊開源Genesis-3D的原因也是因為使用的Ogre、MyGUI、OpenAL的這些開源專案,由於開源協議的要求所以不得不開源(不過,總比那些使用了開源專案還不遵守開源協議的臭流氓企業強多了)。再次宣告,僅是微博上看到的小道訊息,作者楊中科不對此小道訊息負責。

    當然我更願意相信這是一款純國產的遊戲開發引擎,用國產,我驕傲,還免費,更驕傲!

    還有一個好訊息,基於Genesis-3D開發的遊戲,如果通過搜狐暢遊的渠道進行代理,暢遊優先代理運營。搜狐暢遊免費開放Genesis-3D的目的也是讓遊戲開發者環繞在他的周圍,由搜狐暢遊打造一個遊戲生態鏈,就像觸寶科技通過Cocos2d-x打造的平臺一樣。中小型遊戲開發商使用Genesis-3D沒問題,但是一些大的遊戲公司我想可能還不會認Genesis-3D的帳的,畢竟大的遊戲公司更傾向於使用Cocos2d、unity、ogre等中立的引擎或者自主研發的引擎。

    無論怎樣,對於搜狐暢遊釋出Genesis-3D免費且開源,我還是頂一個!無論是Unity3d還是Genesis-3D都是主要使用C#做指令碼語言,對於一些C#/.Net程式設計師轉行做遊戲開發都是一個好的開始!希望Genesis-3D能走好腳下的路!

如鵬網.Net培訓班正在報名,有網路的地方就可以參加如鵬網的學習,學完就能高薪就業,點選此處瞭解

    三年前只要懂“三層架構”就可以說“精通分層架構”;現在則需要懂IOC(AutoFac等)、CodeFirst、lambda、DTO等才值錢;

    三年前只要會SQLServer就可以說自己“精通資料庫開發”;現在則需還需要掌握MySQL等開源資料庫才能說是“.Net開源”時代的程式設計師;

    三年前只要會進行使用者上傳內容的安全性處理即可;現在則需要熟悉雲端儲存、CDN等才能在雲端計算時代遊刃有餘;

    三年前只要掌握Lucene.Net就會說自己“熟悉站內搜尋引擎開發”;現在大家都用ElasticSearch了,你還用Lucene.Net就太老土了;

    三年前發郵件還是用SmtpClient;現在做大型網站發郵件必須用雲郵件引擎;

    三年前快取就是Context.Cache;現在則是Redis、Memcached的天下;

    如鵬網再次引領.Net社群技術潮流!點選此處瞭解如鵬網.Net最新課程