全鏈游戲前瞻:從 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