知名沙盒遊戲當個創世神(Minecraft)在斯德哥爾摩的Java團隊,決定以MIT授權開源程式碼,以函式庫的形式釋出,開發者可以用來改進Minecraft mods、任意使用在其他遊戲專案上,或是對Minecraft Java引擎進行貢獻。

Minecraft的Java團隊計劃逐步開放不同功能的函式庫,開發人員不再需要在自家遊戲中,重複開發這些函式庫已經提供的功能。Java開發人員Nathan Adams提到,這些程式碼都在Minecraft使用,而Minecraft是一個熱門的遊戲,因此函式庫的的強健性經過一定程度的測試。

第一個階段,Minecraft開發團隊開源了兩個函式庫,分別是命令引擎Brigadier以及資料格式轉換器DataFixerUpper。Brigadier是為遊戲提供命令功能的函式庫,玩家可以輸入像是/give Dinnerbone sticks這樣的指令,Brigadier會將句子拆分成小片段來執行,另外這個函數也可用於對話過程,將使用者輸入的文字,轉換成Minecraft所能執行的實際功能。Brigadier不可用於遊戲,也可用於如即時通訊軟體的聊天機器人等其他應用。Brigadier開源了一個星期,已經吸引來許多開發者著手修改程式碼。

另一個開源的函式庫為DataFixerUpper,是Minecraft遊戲引擎中重要的一部分,用在累加建置、合併以及資料最佳化轉換,用來轉換不同版本遊戲間的遊戲資料。Nathan Adams表示,就如同許多遊戲一樣,Minecraft的遊戲資料格式隨著遊戲發展而改變,但玩家載入的地圖檔可能非常的老舊,可能是從網路上下載的數年前資料,DataFixerUpper可將舊資料轉換成最新版的格式。比起Brigadier,DataFixerUpper就沒這麼使用者友善了,而這也是Minecraft開源的一部分原因。
Nathan Adams提到,下一個他們要開源的函式庫會是Blaze3D,這是一個他們完全重寫的渲染引擎,目標將在1.14版中實作。


Advertisement

更多 iThome相關內容