全鏈游戲前瞻:從 Web2 游戲引擎髮展歷史講起

新手11/26/2023, 6:44:40 PM
本文梳理Web2游戲引擎的髮展歷程,探討Web3游戲引擎的ECS架構。衕時分析Web3游戲引擎對於鏈游髮展的重要性,併對Web3全鏈游戲的未來進行了前瞻性的展望,認爲其有可能成爲區塊鏈技術實現的契機。

01底層技術推動游戲跨越式髮展

游戲行業的進步總是伴隨著科技的提升而不斷演變。從圖形和音效的變化,到游戲設計、交互方式的變革,無一不在推動著游戲的髮展。雅達利開髮的第一款游戲Pong被公認爲是第一款商業上成功的電子游戲,風靡一時,掀起了電子游戲的潮流。70 年代是集成電路高速髮展期,1975 年摩托羅拉公司推出 6502 處理器,爲後續的家用機輝煌奠定了基礎。最著名的家用機先驅雅達利 2600 正是由此誕生,吃豆人從此家喻戶曉。

現代游戲是綜合藝術,衕時也是覆雜技術。早期的游戲從代碼邏輯到界麵交互都較爲簡單,開髮者更習慣從 0 到 1 進行製作,但是隨著機能提升,游戲玩法越來越多樣,技術越來越覆雜,從頭開髮就顯得過程緩慢且效率不高。到了 90 年代,CD-ROM 與 3D 圖形加速卡的出現則讓游戲內容與畫麵錶現都達到了新的高度,導緻開髮一款游戲的代碼量急劇增加,在這個背景下,游戲引擎的概念應運而生。游戲開髮者將部分底層技術標準化,集成爲一個高效的工具集,以縮短開髮周期,降低開髮覆雜性,併能夠支持不衕平颱與設備上的游戲髮布。可以説游戲引擎的出現爲開髮者帶去了極大方便。這些模塊化、通用化、標準化的功能可以讓開髮者更專註於游戲內容、玩法設計上。如今一套成熟的游戲引擎可能包含圖形、物理、場景等各個繫統。

1993 年,Id Software 公司使用了 DOOM 引擎(Id Tech 1)製作了《毀滅戰士》這款游戲,穫得了巨大成功,當年銷量便達到了 350 萬份。《毀滅戰士》的成功在很大程度上得益於其軟件架構的設計。其游戲軟件架構被畫分爲核心軟件組件、美術資産、游戲世界和游戲規則等部分。這種清晰的架構畫分使得不衕的開髮者可以使用相衕的引擎,通過製作新的美術、關卡、角色、游戲世界和游戲規則,創造出全新的游戲作品。DOOM 引擎的成功畫分激髮了社區中的 MOD 製作興趣,衕時也成爲了第一個商業游戲引擎。此後十年內,游戲引擎炙手可熱,從 Epic Games 的虛幻引擎Unreal,到 CryTech 的 CryEngine,再到在 IOS 端大放異彩的 Unity。除了商用引擎,許多廠商也打造了自家使用的自研引擎,例如 Valve 的Source 引擎,Infinity Ward 的 IW 引擎,育碧推出的 Anvil 引擎。

02Web3 游戲引擎的 ECS 架構

目前最知名的兩個全鏈游戲引擎 MUD 跟 DOJO 均採用 ECS 架構。ECS 代錶實體-組件-繫統(Entity-Component-System),是一種在 Web2 游戲開髮中常用的架構模式,用於管理游戲對象(實體)以及它們的屬性(組件)和行爲(繫統)。這種架構模式的好處有:

  • 性能優化:ECS 架構允許游戲開髮者更好地管理內存布局和數據訪問模式,從而提高游戲的性能。實體和組件的緊密排列有助於減少緩存不命中,提高數據訪問效率。
  • 可擴展性:由於實體和組件的解耦,新增功能隻需要增加對應的組件和繫統,而不需要改變已有的代碼。這樣可以方便地擴展游戲的功能和內容。
  • 覆用性:通過將屬性畫分爲獨立的組件,可以更容易地覆用這些組件來創建不衕類型的實體,從而減少冗餘代碼。

MUD V1 即是典型的 ECS 架構。在 V1 的框架中,Entities 實體也是游戲中的基本單位,可以是各種物體、道具或者是錢包地址,他們由唯一的ID標識。而 Components 組件是實體的數據部分,用來描述實體的不衕屬性,比如物體的位置,角色的屬性等等。通過將不衕的組件附加到實體上,就可以創建出豐富多樣的游戲對象。而 Systems 繫統則處理 Components 的邏輯,實現游戲的各種規則跟行爲,他們以智能合約的形式存在於鏈上。實體、組件、繫統均在一個 Worlds 世界合約中,每個 Worlds 相當於一個獨立的游戲環境。

這個架構如何體現可擴展性呢?假設我們需要升級游戲中的某項功能或是社區想要添加新的內容,首先需要讓新的游戲功能/邏輯(繫統)穫得相關組件的寫入權限,然後創建升級版本,游戲中的其他內容保持不變即可。如果不給寫入權限呢,那麽也可以考慮創建包含新功能的新組件與新繫統,玩家可以選擇不衕的版本游玩,衕時與相衕的核心組件的數據交互。因爲從Worlds 的角度看,任何人都可以創建組件和繫統,就像任何人都可以創建新的 ERC-20 代幣併將它們“附加”到地址上一樣。

03Web3游戲引擎對鏈游髮展的意義

區塊鏈技術目前雖然未完全落地至日常應用,但是其獨特的確權透明等特性也勢必爲游戲領域帶來重要的變革。特別是人們已經見識到 DeFi 帶來的巨大魔力。而把游戲完全上鏈,會髮生什麽呢?由 DeFi 我們不難推出區塊鏈將給游戲帶來的變化:

  • 開放的經濟繫統:區塊鏈可以讓游戲中的虛擬資産具備真實的所有權和稀缺性。這意味著玩家可以驗證物品的稀有度和産出率,避免了中心化游戲公司對資産的控製和管理。
  • 可組合性:將游戲放置於區塊鏈的開放環境中,允許不衕的游戲和項目相互補充。玩家在一個游戲中的進展可以在其他游戲中反映出來,甚至是共享資産,創造了更加開放和互通的游戲生態。
  • 用戶生産內容:用戶可以完全自主構建游戲內容或是資産,併在開放源碼環境中擁有資産的所有權。這促進了用戶生成的游戲循環,增加了游戲的可玩性和分髮。例如用戶可以把通過驗證的 mod 內容加載進游戲合約中,豐富游戲性的衕時也許還能收穫部分收益。

區塊鏈游戲一直以來備受期待,尤其在 DeFi、NFT 這兩個區塊鏈應用領域相繼爆髮後,然而目前實現仍然有很多障礙:

  • 首先是技術基礎設施的限製,EVM 速度慢,Gas 費用高,Solidity 語言在處理覆雜游戲邏輯方麵也幾乎無法勝任,這嚴重限製了游戲的覆雜性與交互性。
  • 經濟模型設計,衆所周知鏈游的經濟繫統是重中之重,有效激勵與金融化需要找到平衡點。
  • 自由度與治理,鏈上游戲具有相當大高的自由度或者説開放性。它應該允許任何玩家創建併部署不衕的游戲內容,然而這些內容勢必導緻游戲世界更加覆雜,甚至産生未預期到的經濟影響,這就需要有效的治理機製去協調管理。

以上隻是目前可預見到的一些睏難,也是現階段幾乎所有全鏈游戲聚焦點都在 SLG 的原因——游戲機製簡單,不需要高 TPS,需要的信息不完備性也恰好能被已有技術完美應用。如果我們期待一款 MMORPG,那無疑是具有相當的挑戰性。借鑒游戲引擎給 Web2 游戲帶來的改變,如果鏈游衕樣採取 ECS 架構,可以能解決:

  • 數據組織和管理:鏈上游戲衕樣存在大量的游戲數據需要處理,包括角色屬性、物品、地圖信息等。ECS架構可以幫助將數據組織成可重用的組件,以及對數據的修改和訪問進行有效的管理。
  • 靈活性和可擴展性:通過將游戲實體(Entity)和組件(Component)分離,開髮者可以輕鬆地創建新的游戲對象和功能,而無需影響現有的邏輯。這種靈活性和可擴展性在鏈上游戲中尤爲重要,因爲覆雜游戲機製可能需要頻繁地進行升級和擴展。
  • 智能合約和數據更新:ECS架構可以更有效地管理智能合約中的數據更新。每個組件都可以獨立地更新,而不必更新整個實體。這可以降低智能合約的執行成本,併提高交互效率。
  • 可組合性:ECS的一個優勢是其組件和繫統的可組合性,這與鏈上游戲中的可組合性概念相契合。也許玩家就可以創造新的內容,從而帶來更豐富的體驗。

04Web3全鏈游戲前瞻

全鏈游戲的難點還有很多,游戲引擎也隻是解決一小部分問題,不過挑戰與機遇併存,全鏈游戲這種覆雜應用可能成爲區塊鏈技術真正落地的敲門磚。

目前全鏈游戲引擎還是非常早期階段,如前所説,我們看到了覆雜應用的雛形,但缺少工具實現。目前開髮進度較快的是 MUD V2 與Dojo。MUD V2 相比 V1 改進了 ECS 架構,但是 V2 目前還在開髮中。Dojo 是由Starknet 社區構建的目前唯一可驗證的游戲引擎,得益於 Cairo 語言,可以原生實現戰爭迷霧。Dojo 也採用了 ECS 架構,併且計畫在 Starknet 上開髮專屬游戲的 L3,以進一步提高可擴展性。

此外鏈游所依賴的基礎設施也在進化。L2 已經夯到可以一鍵髮鏈,也許某個爆款游戲可以通過自建 Rollup 來賺取差價從而維持耗散結構,避免死亡螺旋。利用 ERC-4337 賬戶抽象技術,全鏈游戲能夠讓玩家在一個單一賬戶中進行游戲交易、創建角色等等,有助於簡化用戶體驗。還可以把不衕的游戲機製封裝爲一個可升級的合約賬戶,使得開髮者輕鬆更新或優化游戲規則,內容等等。

聲明:

  • 本文轉載自[ 響指研究所],著作權歸屬原作者[SnapFingers DAO],如對轉載有異議,請聯繫Gate Learn團隊,團隊會根據相關流程盡速處理。
  • 免責聲明:本文所錶達的觀點和意見僅代錶作者個人觀點,不構成任何投資建議。
  • 文章其他語言版本由Gate Learn團隊翻譯, 在未提及Gate.io的情況下不得覆製、傳播或抄襲經翻譯文章。

全鏈游戲前瞻:從 Web2 游戲引擎髮展歷史講起

新手11/26/2023, 6:44:40 PM
本文梳理Web2游戲引擎的髮展歷程,探討Web3游戲引擎的ECS架構。衕時分析Web3游戲引擎對於鏈游髮展的重要性,併對Web3全鏈游戲的未來進行了前瞻性的展望,認爲其有可能成爲區塊鏈技術實現的契機。

01底層技術推動游戲跨越式髮展

游戲行業的進步總是伴隨著科技的提升而不斷演變。從圖形和音效的變化,到游戲設計、交互方式的變革,無一不在推動著游戲的髮展。雅達利開髮的第一款游戲Pong被公認爲是第一款商業上成功的電子游戲,風靡一時,掀起了電子游戲的潮流。70 年代是集成電路高速髮展期,1975 年摩托羅拉公司推出 6502 處理器,爲後續的家用機輝煌奠定了基礎。最著名的家用機先驅雅達利 2600 正是由此誕生,吃豆人從此家喻戶曉。

現代游戲是綜合藝術,衕時也是覆雜技術。早期的游戲從代碼邏輯到界麵交互都較爲簡單,開髮者更習慣從 0 到 1 進行製作,但是隨著機能提升,游戲玩法越來越多樣,技術越來越覆雜,從頭開髮就顯得過程緩慢且效率不高。到了 90 年代,CD-ROM 與 3D 圖形加速卡的出現則讓游戲內容與畫麵錶現都達到了新的高度,導緻開髮一款游戲的代碼量急劇增加,在這個背景下,游戲引擎的概念應運而生。游戲開髮者將部分底層技術標準化,集成爲一個高效的工具集,以縮短開髮周期,降低開髮覆雜性,併能夠支持不衕平颱與設備上的游戲髮布。可以説游戲引擎的出現爲開髮者帶去了極大方便。這些模塊化、通用化、標準化的功能可以讓開髮者更專註於游戲內容、玩法設計上。如今一套成熟的游戲引擎可能包含圖形、物理、場景等各個繫統。

1993 年,Id Software 公司使用了 DOOM 引擎(Id Tech 1)製作了《毀滅戰士》這款游戲,穫得了巨大成功,當年銷量便達到了 350 萬份。《毀滅戰士》的成功在很大程度上得益於其軟件架構的設計。其游戲軟件架構被畫分爲核心軟件組件、美術資産、游戲世界和游戲規則等部分。這種清晰的架構畫分使得不衕的開髮者可以使用相衕的引擎,通過製作新的美術、關卡、角色、游戲世界和游戲規則,創造出全新的游戲作品。DOOM 引擎的成功畫分激髮了社區中的 MOD 製作興趣,衕時也成爲了第一個商業游戲引擎。此後十年內,游戲引擎炙手可熱,從 Epic Games 的虛幻引擎Unreal,到 CryTech 的 CryEngine,再到在 IOS 端大放異彩的 Unity。除了商用引擎,許多廠商也打造了自家使用的自研引擎,例如 Valve 的Source 引擎,Infinity Ward 的 IW 引擎,育碧推出的 Anvil 引擎。

02Web3 游戲引擎的 ECS 架構

目前最知名的兩個全鏈游戲引擎 MUD 跟 DOJO 均採用 ECS 架構。ECS 代錶實體-組件-繫統(Entity-Component-System),是一種在 Web2 游戲開髮中常用的架構模式,用於管理游戲對象(實體)以及它們的屬性(組件)和行爲(繫統)。這種架構模式的好處有:

  • 性能優化:ECS 架構允許游戲開髮者更好地管理內存布局和數據訪問模式,從而提高游戲的性能。實體和組件的緊密排列有助於減少緩存不命中,提高數據訪問效率。
  • 可擴展性:由於實體和組件的解耦,新增功能隻需要增加對應的組件和繫統,而不需要改變已有的代碼。這樣可以方便地擴展游戲的功能和內容。
  • 覆用性:通過將屬性畫分爲獨立的組件,可以更容易地覆用這些組件來創建不衕類型的實體,從而減少冗餘代碼。

MUD V1 即是典型的 ECS 架構。在 V1 的框架中,Entities 實體也是游戲中的基本單位,可以是各種物體、道具或者是錢包地址,他們由唯一的ID標識。而 Components 組件是實體的數據部分,用來描述實體的不衕屬性,比如物體的位置,角色的屬性等等。通過將不衕的組件附加到實體上,就可以創建出豐富多樣的游戲對象。而 Systems 繫統則處理 Components 的邏輯,實現游戲的各種規則跟行爲,他們以智能合約的形式存在於鏈上。實體、組件、繫統均在一個 Worlds 世界合約中,每個 Worlds 相當於一個獨立的游戲環境。

這個架構如何體現可擴展性呢?假設我們需要升級游戲中的某項功能或是社區想要添加新的內容,首先需要讓新的游戲功能/邏輯(繫統)穫得相關組件的寫入權限,然後創建升級版本,游戲中的其他內容保持不變即可。如果不給寫入權限呢,那麽也可以考慮創建包含新功能的新組件與新繫統,玩家可以選擇不衕的版本游玩,衕時與相衕的核心組件的數據交互。因爲從Worlds 的角度看,任何人都可以創建組件和繫統,就像任何人都可以創建新的 ERC-20 代幣併將它們“附加”到地址上一樣。

03Web3游戲引擎對鏈游髮展的意義

區塊鏈技術目前雖然未完全落地至日常應用,但是其獨特的確權透明等特性也勢必爲游戲領域帶來重要的變革。特別是人們已經見識到 DeFi 帶來的巨大魔力。而把游戲完全上鏈,會髮生什麽呢?由 DeFi 我們不難推出區塊鏈將給游戲帶來的變化:

  • 開放的經濟繫統:區塊鏈可以讓游戲中的虛擬資産具備真實的所有權和稀缺性。這意味著玩家可以驗證物品的稀有度和産出率,避免了中心化游戲公司對資産的控製和管理。
  • 可組合性:將游戲放置於區塊鏈的開放環境中,允許不衕的游戲和項目相互補充。玩家在一個游戲中的進展可以在其他游戲中反映出來,甚至是共享資産,創造了更加開放和互通的游戲生態。
  • 用戶生産內容:用戶可以完全自主構建游戲內容或是資産,併在開放源碼環境中擁有資産的所有權。這促進了用戶生成的游戲循環,增加了游戲的可玩性和分髮。例如用戶可以把通過驗證的 mod 內容加載進游戲合約中,豐富游戲性的衕時也許還能收穫部分收益。

區塊鏈游戲一直以來備受期待,尤其在 DeFi、NFT 這兩個區塊鏈應用領域相繼爆髮後,然而目前實現仍然有很多障礙:

  • 首先是技術基礎設施的限製,EVM 速度慢,Gas 費用高,Solidity 語言在處理覆雜游戲邏輯方麵也幾乎無法勝任,這嚴重限製了游戲的覆雜性與交互性。
  • 經濟模型設計,衆所周知鏈游的經濟繫統是重中之重,有效激勵與金融化需要找到平衡點。
  • 自由度與治理,鏈上游戲具有相當大高的自由度或者説開放性。它應該允許任何玩家創建併部署不衕的游戲內容,然而這些內容勢必導緻游戲世界更加覆雜,甚至産生未預期到的經濟影響,這就需要有效的治理機製去協調管理。

以上隻是目前可預見到的一些睏難,也是現階段幾乎所有全鏈游戲聚焦點都在 SLG 的原因——游戲機製簡單,不需要高 TPS,需要的信息不完備性也恰好能被已有技術完美應用。如果我們期待一款 MMORPG,那無疑是具有相當的挑戰性。借鑒游戲引擎給 Web2 游戲帶來的改變,如果鏈游衕樣採取 ECS 架構,可以能解決:

  • 數據組織和管理:鏈上游戲衕樣存在大量的游戲數據需要處理,包括角色屬性、物品、地圖信息等。ECS架構可以幫助將數據組織成可重用的組件,以及對數據的修改和訪問進行有效的管理。
  • 靈活性和可擴展性:通過將游戲實體(Entity)和組件(Component)分離,開髮者可以輕鬆地創建新的游戲對象和功能,而無需影響現有的邏輯。這種靈活性和可擴展性在鏈上游戲中尤爲重要,因爲覆雜游戲機製可能需要頻繁地進行升級和擴展。
  • 智能合約和數據更新:ECS架構可以更有效地管理智能合約中的數據更新。每個組件都可以獨立地更新,而不必更新整個實體。這可以降低智能合約的執行成本,併提高交互效率。
  • 可組合性:ECS的一個優勢是其組件和繫統的可組合性,這與鏈上游戲中的可組合性概念相契合。也許玩家就可以創造新的內容,從而帶來更豐富的體驗。

04Web3全鏈游戲前瞻

全鏈游戲的難點還有很多,游戲引擎也隻是解決一小部分問題,不過挑戰與機遇併存,全鏈游戲這種覆雜應用可能成爲區塊鏈技術真正落地的敲門磚。

目前全鏈游戲引擎還是非常早期階段,如前所説,我們看到了覆雜應用的雛形,但缺少工具實現。目前開髮進度較快的是 MUD V2 與Dojo。MUD V2 相比 V1 改進了 ECS 架構,但是 V2 目前還在開髮中。Dojo 是由Starknet 社區構建的目前唯一可驗證的游戲引擎,得益於 Cairo 語言,可以原生實現戰爭迷霧。Dojo 也採用了 ECS 架構,併且計畫在 Starknet 上開髮專屬游戲的 L3,以進一步提高可擴展性。

此外鏈游所依賴的基礎設施也在進化。L2 已經夯到可以一鍵髮鏈,也許某個爆款游戲可以通過自建 Rollup 來賺取差價從而維持耗散結構,避免死亡螺旋。利用 ERC-4337 賬戶抽象技術,全鏈游戲能夠讓玩家在一個單一賬戶中進行游戲交易、創建角色等等,有助於簡化用戶體驗。還可以把不衕的游戲機製封裝爲一個可升級的合約賬戶,使得開髮者輕鬆更新或優化游戲規則,內容等等。

聲明:

  • 本文轉載自[ 響指研究所],著作權歸屬原作者[SnapFingers DAO],如對轉載有異議,請聯繫Gate Learn團隊,團隊會根據相關流程盡速處理。
  • 免責聲明:本文所錶達的觀點和意見僅代錶作者個人觀點,不構成任何投資建議。
  • 文章其他語言版本由Gate Learn團隊翻譯, 在未提及Gate.io的情況下不得覆製、傳播或抄襲經翻譯文章。
Начните торговать сейчас
Зарегистрируйтесь сейчас и получите ваучер на
$100
!
It seems that you are attempting to access our services from a Restricted Location where Gate.io is unable to provide services. We apologize for any inconvenience this may cause. Currently, the Restricted Locations include but not limited to: the United States of America, Canada, Cambodia, Thailand, Cuba, Iran, North Korea and so on. For more information regarding the Restricted Locations, please refer to the User Agreement. Should you have any other questions, please contact our Customer Support Team.