在CSDN上看到了《搜狐暢游發布3D游戲引擎Genesis-3D 基於MIT協議開源》(http://www.csdn.net/article/2013-11-21/2817585-changyou-Genesis-3D-open-source)的新聞,就把這個引擎下載安裝了。
用過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最新課程