MATR1X阿波羅計劃啓動一週後,其最頂級的傳奇武器NFT——“審判”已被少數幸運用戶通過開寶箱獲得,“審判”最高成交價格高達12萬美元,這一事件引起了NFT市場的熱議,也讓更多人對Web3遊戲飾品NFT的期待,本文將詳細闡述MATR1X傳奇武器NFT的誕生過程。

萬物起源——一把傳奇武器的誕生

 

隨着服務器上隨機生成器的運行,一位幸運的玩家抽取到了一把概率極低的傳奇武器。在隨機生成器中,這把傳奇武器僅有幾個核心參數:NFT編號、配置ID、磨損程度、紀念品與印花。當這些原始屬性生成完畢後,這把傳奇武器的信息已經完全確定。然而,僅憑這些原始信息還不足以展現一把真正意義上的傳奇武器。爲了給玩家呈現這把具有獨特意義的傳奇武器,我們還有許多工作要完成。

無中生有——面向Web3的NFT元數據生成

首先,我們需要補全這把傳奇武器的元數據信息。通過配置ID這個參數,我們可以從多個配置表中讀取到這把傳奇武器的各種基礎信息,比如武器類型、名字、品質等。然而,對於一個NFT,我們不能不加篩選地將所有武器信息都寫入元數據中。因此,我們會先通過一個屬性過濾器,從這把傳奇武器的所有配置信息中,篩選出我們希望呈現給玩家的屬性,並將它們全部放入元數據中。

我們遇到的另一個問題是,武器的屬性中有很多都是純粹的數據信息,比如數字7代表傳奇品質。但呈現給玩家的不能只是一個數字7。因此,我們添加了一個屬性轉換器,用於將這些屬性從數據轉換爲玩家可讀的信息。在屬性轉換器中,我們對篩選後希望放入元數據的屬性進行轉換。一方面是將數據轉換爲展示信息,另一方面是在這個過程中對所有描述信息進行語言上的轉換(目前默認使用英語)。經過轉換後,就得到了玩家所看到的元數據信息。

妙筆生花——基於Blender的雲端渲染方案

接下來,我們還需要處理元數據中最特殊也是最重要的一項內容——這把傳奇武器的圖片。由於這把傳奇武器有着獨一無二的磨損信息,並且擁有一組印花,在MATR1X FIRE中,存在許多具有不同磨損程度和各種印花組合的武器。我們無法通過設計師一次性繪製完成所有這些武器圖片。因此,我們基於Blender軟件,設計了一套渲染武器圖片的方案,並將其部署到了雲服務器上。

首先,我們的技術美術團隊在Blender中製作了一套與Unity引擎相同的材質方案,使得設計師製作的素材資源可以在Blender和Unity引擎中同時呈現。基於這套材質方案,我們還開發了Blender和Unity之間的材質轉換工具,使得已經在遊戲項目中製作完成的武器可以自動導入Blender,而無需重新制作。此外,設計師還在Blender的場景中搭建了多套適合不同角度圖片渲染的燈光和攝像機佈置,並對整個渲染環境的後期處理進行調整,完成最終的渲染效果。

通過這一方案,我們可以根據這把傳奇武器的元數據信息,創建和生成屬於它的專屬資源,並最終渲染出它用於展示的NFT圖片,從而呈現給玩家一把真正獨一無二的傳奇武器。

由點及面——搭建高性能渲染集羣

解決了這把傳奇武器的渲染問題,接下來要覺得就是如何解決大批量渲染和響應速度問題。爲此,團隊專門構建了一個渲染集羣。渲染集羣中包含一箇中心控制節點和多個渲染負載節點。

當遊戲中新創建了一個武器時,它的元數據會被立刻發送至渲染集羣的中心控制節點,並進入渲染隊列。中心控制節點會在多個渲染負載節點中選擇一個空閒的節點,並將渲染任務發送到渲染負載節點中。渲染負載節點收到渲染任務後,會立刻調用綁定的Blender渲染器,渲染這個武器的NFT圖片,並上傳至雲存儲,供未來下載使用。

通過渲染集羣的搭建,我們就能夠在玩家獲得新的武器時,第一時間爲玩家生成屬於這把武器的專屬NFT圖片。

返璞歸真——用於移動設備的元數據和資源分發方案

作爲一個GameFi項目的NFT,這把傳奇武器還有一個最重要的應用場景:在遊戲內用它大殺四方。而如何在遊戲內讓擁有這把傳奇武器的玩家拿到一模一樣的武器進行戰鬥呢?爲此,我們做了許多工作來實現這個目標。

對於元數據,每一把武器在生成元數據的時候,都會被存入一個元數據的數據庫。在NFT交易和展示環節中,它會作爲元數據的源頭提供給MATR1X平臺使用並完成NFT的上鍊。而當玩家帶着這個武器進入遊戲中時,遊戲的服務器也會從這個數據庫獲取這把武器的各種信息,讓玩家在遊戲中得到這把武器。

爲了在遊戲中再次渲染相同的武器模型,NFT圖片渲染環節中的中間材質都會一同被保留下來,並存儲到雲存儲中。玩家可以在遊戲中直接下載這些素材並與遊戲內置的素材進行結合,從而在遊戲中展現這把獨一無二的武器。爲了獲得更好的性能和穩定性,我們還搭建了一個資源分發網絡。所有需要在遊戲中使用的素材,都會被自動壓縮爲適合移動設備GPU使用的紋理格式,並根據移動設備的性能水平下發合適的資源規格。通過這種方式,我們實現了對移動設備的性能限制和NFT圖片渲染效果的兼顧與平衡。

更進一步——UGC與3D預覽

技術需要不到迭代,才能給玩家繼續呈現更精彩的NFT展示效果。對於整套方案的未來,我們有下面幾種設想。首先,我們計劃讓整套方案深度如何到資源生產環節。離線渲染的方案不僅可以作爲展示效果的生成,還可以在這個過程中才有更復雜和更豐富的方式進行素材的創建。通過這種技術,我們期望可以實現UGC內容在遊戲和NFT上的呈現。設想一下,玩家可以將自己擁有的2061、KUKU乃至其它合作的NFT素材,作爲主題刻印到武器上。另一方面,這種技術不僅可以使用在武器上,未來包括角色在內的其它新資產,也可以使用這套方案實現同樣的效果。

除此之外,我們也考慮在遊戲之外,爲玩家提供使用完全3D的形式展示玩家所擁有的遊戲資產。得益於雲端離線渲染的能力,我們可以在雲端進行復雜的資源處理,並將經過處理後的素材下發至基於H5遊戲引擎運行的網頁上。通過這種方式,並沒有直接參與遊戲的玩家也可以更好的欣賞和觀察MATR1X FIRE提供的豐富的遊戲資產。