成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

游戲引擎是什么?游戲引擎的層級架構(gòu)

移動開發(fā) Android
游戲引擎,是一組完整的解決方案,能夠在保持一定彈性的原則下,提供最大程度的功能性與便利性。除了包含繪圖引擎的功能之外,可能也會包含播放音樂音效的音效引擎、判斷物理碰撞行為的物理引擎等其他功能面的元件。

游戲程式的領(lǐng)域中,最常聽到的專有名詞,可以說是非 Game Engine(游戲引擎)莫屬了。聽起來是個很炫很酷的名詞,但其實游戲引擎一詞經(jīng)常被過度泛稱與誤用。所謂的游戲引擎架構(gòu),由低階 (Low-Level) 至高階 (High-Level) 可細(xì)分為以下三個層級 (Layer)

  • 繪圖 API(例如:DirectX 與 OpenGL)
  • 繪圖引擎(例如:OGRE、Renderware 與 Gamebryo)與其他引擎
  • 游戲引擎(例如:Unreal 與 Torque)

繪圖 API,負(fù)責(zé)掌管程式與硬體間的溝通,將硬體層的功能與特徵抽象化,提供一組標(biāo)準(zhǔn)化的介面供程式設(shè)計者使用。目前 DirectX 與 OpenGL 已成為業(yè)界兩大標(biāo)準(zhǔn)。此層級屬于繪圖底層的規(guī)格化與標(biāo)準(zhǔn)化,有利于引擎與游戲開發(fā)者以及整個業(yè)界的發(fā)展,使開發(fā)者可以專注在更具體與游戲相關(guān)的引擎架構(gòu)上,而不會受制于各家廠商不同硬體實做內(nèi)容所產(chǎn)生的限制。

繪圖引擎,將底層的繪圖 API 包裝成與實做無關(guān)的介面,甚至能夠提供數(shù)種不同平臺的繪圖 API 以供跨平臺開發(fā)使用,更進一步的為程式設(shè)計者帶來許多的功能性以及便利性。使用繪圖引擎對于開發(fā)者來說***的益處,就是可以使用以繪圖 API 建構(gòu)起來的各種繪圖架構(gòu)與技術(shù),例如 Scene Graph 架構(gòu)、空間分割、資源管理、光影處理等等。

游戲引擎,則是一組完整的解決方案,能夠在保持一定彈性的原則下,提供***程度的功能性與便利性。除了包含繪圖引擎的功能之外,可能也會包含播放音樂音效的音效引擎、判斷物理碰撞行為的物理引擎等其他功能面的元件。相較于單純的繪圖引擎,一個完整的游戲引擎,更需要提供許多的編輯器與工具,例如地形編輯器、人物動作編輯器等等。而游戲引擎與美術(shù)設(shè)計軟體(例如 3ds Max)的整合性也相當(dāng)重要;如果引擎內(nèi)含強大的編輯工具與外掛輸出程式,不僅能為程式開發(fā)者節(jié)省時間,為企畫與美術(shù)設(shè)計者帶來便利性,更能夠降低人為錯誤的發(fā)生率,進一步加速游戲的開發(fā)流程。

除了上述的繪圖 API、繪圖引擎與游戲引擎層級之外,還有一個稱為游戲框架 (Game Framework) 的層級。在軟體開發(fā)的領(lǐng)域中,所謂的 Framework 是指一個在軟體系統(tǒng)中可重復(fù)利用的設(shè)計。與游戲相關(guān)的著名框架系統(tǒng)有用來開發(fā) Xbox360 游戲的 XNA Framework 與微軟大力推行的 .NET Framework。框架系統(tǒng)需要能在提供現(xiàn)成實做版本的情況下,同時保留具有彈性且可擴充的介面,以期達到框架的可重復(fù)利用性。

此外,由于游戲產(chǎn)業(yè)的蓬勃發(fā)展,專注于開發(fā)繪圖引擎與游戲引擎的公司也越來越多,于是出現(xiàn)了一個新興的專有名詞稱之為 Middleware(中介軟體)。中介軟體是用來提供某特定層面的功能性元件,目的在于節(jié)省游戲開發(fā)的時程與風(fēng)險,包含像是繪圖引擎、物理引擎、人工智慧引擎、音效引擎等等都可以算是中介軟體的一種。目前也有中介軟體開發(fā)廠商,提供包含伺服器端與客戶端程式在內(nèi),開發(fā) MMO 游戲的完整解決方案。

在游戲程式開發(fā)中,最困難的關(guān)鍵點往往在于各層級間的橋接與溝通部分。對于各個層級,開發(fā)者需要盡可能使它們達到彼此獨立不相依的情況,減少各層級之間的耦合性,在這樣的設(shè)計模式之下,才有利于達到元件化、層級化的高度可再利用游戲引擎。簡而言之,也就是將介面與實做分離的設(shè)計概念。在最理想的情況下,希望能夠?qū)?strong>引擎框架的泛用程式碼與和特定游戲相關(guān)的程式碼兩部分完全分離而治,以期達到在引擎相關(guān)程式碼變動最少的情況之下,能夠提供給不同的游戲程式碼來使用。

游戲引擎所提供的功能,就像是玩樂高玩具一樣,我們可以使用積木箱里各種不同形狀的基本積木,組合出夢想藍圖中的巨大模型。這些基本積木就像是游戲引擎中的各種元件,可以根據(jù)不同游戲?qū)0傅牟煌枨?,取出合適的積木元件拼湊組合成為一個完整的游戲。而這個從積木組成模型的步驟,則需要一個規(guī)格化、標(biāo)準(zhǔn)化的程序,使得「組裝」這個動作,變得很直覺易懂,無論未來積木的內(nèi)容材料是否有改變,都不會對使用者造成太大的影響。積木的「組裝」動作就像是程式的「介面」一樣,任意變動積木的組合方法或是介面的使用方法,都會造成使用者的困擾與不便,并且大幅降低復(fù)制使用經(jīng)驗的可能性。

然而在真正的開發(fā)過程中,我們可能會發(fā)現(xiàn),要達成各層獨立、介面實做分開是非常不容易的任務(wù)。特別是在程式架構(gòu)不良的情況下,會使得日漸龐大的游戲程式碼層層交疊、錯綜盤根,就像是地基不穩(wěn)卻又拼命往上加蓋的高樓一樣搖搖欲墜。因此正如設(shè)計模式書中的設(shè)計思維所述:應(yīng)該著力于將「變動」與「不變動」的部分抽離分開,分別封裝「變動」與「不變動」的概念,才能夠?qū)⑦M行變動時所需耗費的心力降至***。

責(zé)任編輯:徐川 來源: net
相關(guān)推薦

2015-07-06 17:12:31

游戲開發(fā)引擎cocos游戲引擎

2015-07-06 17:36:17

Cocos游戲開發(fā)引擎

2011-07-18 10:53:09

2011-07-18 11:07:12

iPhone 游戲 引擎

2011-07-18 12:29:10

2011-07-18 11:23:29

iPhone 游戲 動畫

2011-07-18 11:39:58

iPhone 游戲 引擎

2013-04-07 14:36:19

手機游戲手機游戲引擎

2014-07-15 10:34:14

Android游戲引擎

2014-04-20 22:07:31

手游引擎社交

2015-07-08 16:38:10

Cocos游戲引擎

2014-02-20 10:35:14

JavaScript游戲引擎

2010-09-30 13:48:10

J2ME游戲引擎

2014-09-25 11:25:19

游戲引擎架構(gòu)設(shè)計

2014-07-17 11:10:19

Android開源游戲引擎

2011-05-31 15:45:38

Android 游戲引擎 開源

2015-08-27 16:35:10

Unity游戲引擎Linux

2013-06-07 13:20:16

Android開發(fā)開源游戲引擎游戲開發(fā)

2014-03-04 14:33:03

開源引擎開源游戲項目

2012-12-24 08:46:50

iOSUnity3D
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 性网站免费 | 国产精品免费一区二区 | 天堂影院av| 99热最新| 亚洲资源站 | www.日韩欧美 | 久久国产精品一区二区三区 | 久草视频观看 | 精品1区| 日朝毛片| 一区二区三区久久 | 日本视频一区二区三区 | 久草免费在线视频 | 中文字幕一区二区三区乱码在线 | 国产一区二区麻豆 | 午夜影院在线观看视频 | 亚洲日本三级 | 国内精品视频在线观看 | 粉嫩av久久一区二区三区 | 麻豆视频在线免费看 | 久久精品国产a三级三级三级 | 精品国产乱码久久久久久88av | 热re99久久精品国产99热 | 2023亚洲天堂 | 欧美日韩在线精品 | 久久国产精品免费一区二区三区 | 精品国产黄a∨片高清在线 成人区精品一区二区婷婷 日本一区二区视频 | 亚洲网一区 | 成年精品| 亚洲欧美一区二区三区视频 | 国产日产欧产精品精品推荐蛮挑 | 精品视频在线观看 | 97精品超碰一区二区三区 | 日韩精品一区二区三区在线观看 | 99成人在线视频 | 中文字幕精品一区久久久久 | 久久久www | 国产第二页 | 日韩精品久久一区二区三区 | 一级二级三级在线观看 | 国产精品久久久久久 |