我們很高興宣佈 PixiJS 宇宙的啟動,這是一項計劃,旨在進一步提升 PixiJS 的功能,讓開發人員能更輕鬆地打造令人驚豔的遊戲和應用程式。
多年來,PixiJS 一直是網路上最受歡迎的 2D 渲染器,但它始終「只是一個渲染引擎」。社群建立了許多出色的工具來協助開發人員使用 PixiJS 撰寫遊戲和應用程式,但我們缺乏人力來維護和改進這些工具,這導致社群出現分歧。為了解決這個問題,Playco 集結了一組專責的開發人員團隊,將全職致力於 PixiJS。在未來的 12 個月中,我們規劃了超過十項專案,而在此公告中,我們想介紹其中的部分專案。
第一階段
我們有多項新的專案正在進行中,而且我們將在今年分為四個階段發布這些專案。我們目前正接近第一階段的尾聲,在這個階段我們已經發布了多款令人興奮的 PixiJS 新工具和程式庫。
PixiJS 網站
首先,我們很高興地宣佈我們將發布 PixiJS 新網站的測試版。
目前的指南隨著多年來不斷地自然發展而飽受其害,缺乏結構,導致許多 PixiJS 指南分佈在多個網站上。這個新的網站將把所有您需要的信息整合在一個地方,而且可以輕鬆搜尋。
我們也計劃改善指南,增加更多的指南和範例,並且考慮把指南翻譯成其他語言。
如果您有任何關於如何改善網站的想法,請務必告訴我們!
PixiJS React
接著是 PixiJS React,一個能用在 React 應用中的 PixiJS 程式庫。PixiJS React 是由 Patrick Brouwer 建立的 react-pixi
程式庫延續,這個程式庫被 PixiJS 社群廣泛用於 React 專案中。PixiJS 已經接手維護此程式庫,並專注於改善這個程式庫的表現、文件和新功能支援。
這個程式庫提供一個易於使用的介面,讓開發人員能輕鬆用 PixiJS 建立 React 應用程式。這個程式庫整合了 PixiJS 的所有核心功能,並允許您為第三方程式庫建立自訂元件。
PixiJS Open Games
現在我們發表一個稱為「PixiJS 開源遊戲」的新儲存庫。這是一個開放原始碼遊戲的集合,用來展示如何使用 PixiJS 建立遊戲,並在 MIT 授權下發行。這些遊戲的目的是提供使用 PixiJS 進行遊戲開發的專業範例。
前兩個發行的遊戲為「三消遊戲」和「泡泡射擊遊戲」。這些遊戲不僅展示如何使用 PixiJS 進行遊戲開發,也展示如何使用其他程式庫,例如 PixiJS UI 和 AssetPack。我們也規劃發行更多遊戲,演示如何與其他程式庫(例如 PixiJS Layout 和 PixiJS React)一起使用 PixiJS。
對於想要學習如何使用 PixiJS 開發遊戲的遊戲開發者來說,PixiJS 開源遊戲有望成為寶貴的資源,對於正在尋找使用 PixiJS 建立自己的遊戲的開發者來說,這也是一個很棒的靈感來源。這個專案在 GitHub 上提供給想要探索程式碼或加入這個專案的任何人。
PixiJS UI 和 PixiJS Layout
PixiJS UI 是給想要用 PixiJS 建立美觀且實用的使用者介面的開發人員的新程式庫。這個程式庫包含許多元件,例如按鈕、核取方塊、滑桿、文字輸入、捲軸檢視、清單、單選按鈕和進度條,能輕鬆整合到您的遊戲中。這些元件高度可自訂,允許您調整每個元素的外觀和行為,以符合您遊戲的特定需求。
PixiJS UI 已使用在所有開放原始碼遊戲中,歡迎查看這些遊戲的實際應用。
PixiJS Layout 是另一個能讓您的開發工作變得更容易的程式庫。這個程式庫能讓您使用 PixiJS 建立回應式版面,這表示您可以設計出能適應不同螢幕大小和長寬比的介面。PixiJS Layout 能與 PixiJS UI 搭配良好,讓您能同時運用這兩個程式庫,建立複雜的動態介面,以根據使用者輸入和螢幕變更做出回應。
有了 PixiJS Layout,您就能彈性建立可重新調整大小的版面,讓版面能適合任何螢幕大小或裝置。這表示您的遊戲介面在所有裝置上看起來都很棒,從小型的行動裝置到大型桌機顯示器皆然。
PixiJS Layout 仍在開發中,但在接下來的幾個星期內就會準備完成。
AssetPack
最後,第一階段,我們宣布推出 AssetPack。
資產管理是開發應用程式的重要環節,新的 AssetPack 函式庫目標便是讓這個流程更容易。AssetPack 是與任何架構相容的函式庫,包括 PixiJS、ThreeJS 以及 Phaser,它提供了各種功能以協助開發人員有效管理他們的資產。AssetPack 的主要特色是可以自動產生新的資產。舉例來說,你可以提供一個資料夾的個別影像給它,它會產生 sprite sheet,可以大幅提升應用程式的效能。它還提供了外掛程式來產生 mipmap、將字型轉換為不同的格式、將音訊轉換為不同的格式、壓縮影像、縮小 JSON 檔案。這些功能有助於開發人員最佳化他們的資產以加速載入時間、提升效能並改善使用者體驗。
我們很快就會發佈一篇部落格新文章,提供更多關於如何使用它的詳細資訊,加上許多有用的功能與與任何架構相容的設計,如果你想要立即上手,可以到 GitHub 倉庫看看
第二階段
第二階段將於近期展開,目標是讓使用 PixiJS 應用程式變得更容易。
PixiJS JumpStart
Jumpstart 是 PixiJS 團隊所開發的全新 CLI 工具,目的是簡化建立新的 PixiJS 應用程式的流程。有了這個工具,開發人員將不再需要設定複雜的工具,或是擔心設定不同的綑綁器和架構。這個工具將為你處理所有設定,讓你專注於建置你的應用程式。
Jumpstart 類似於其他 CLI 工具,例如 Create-React-App 或 Create-Vue,而這些工具在前端開發社群中非常受到歡迎。這個工具將提供不同綑綁器和架構的範本,包括 webpack、parcel、rollup 等,這有助於開發人員輕鬆上手 PixiJS,不論他們偏好的工具和工作流程為何。有了 Jumpstart,你可以在幾分鐘內建立新的 PixiJS 應用程式,並立即開始建置。
PixiJS Dev Tools
PixiJS Dev Tools 將作為一個瀏覽器擴充功能,預計將於近期發佈,目的是協助開發人員除錯他們的 PixiJS 應用程式。此工具的目標是讓開發人員更輕鬆了解 PixiJS 的內部運作機制,最佳化他們的程式碼並遵循最佳實務。它設計的目的是幫助開發人員診斷效能問題,並檢視其應用程式所消耗的資源。
PixiJS Dev Tools 的主要特色之一,便是它能協助開發人員了解 PixiJS 中的批次處理程序。批次處理是一種用於最佳化同一個繪製呼叫中多個物件的繪製的技術。這個流程對於初階開發人員來說可能很難理解。PixiJS Dev Tools 的目標是讓除錯和最佳化物件的繪製變得更容易。
整體來說,PixiJS Dev Tools 將會是一個強而有力的工具,可以協助開發人員更輕鬆地使用 PixiJS 建置高執行效能、視覺上令人驚豔的應用程式。透過讓開發人員更深入了解 PixiJS 的內部運作機制,這個工具組能幫助開發人員最佳化他們的程式碼,並建立更有效率且更具吸引力的應用程式。
第三階段
第三階段,我們將揭曉長期專案。這些是我們對 PixiJS 生態系統的重要變更,令我們感到 vô cùng 興奮
Comet
Comet 將是一個新的編輯器,旨在使使用 PixiJS 設計與建立遊戲及應用程式變得比以往更簡單。此編輯器擁有直覺且友善的使用者介面,旨在吸引設計師和開發人員,讓這兩群人得以更有效率地协作和工作。
Comet 的突出功能之一是它提供建立和編輯場景、精靈圖像、動畫等項目的視覺化介面。這表示設計師得以建立與編輯複雜的場景,而無需撰寫任何程式碼。此編輯器提供一系列建立精靈圖像、動畫和其他遊戲元素的工具和選項,讓入門建立遊戲和應用程式變得容易。
此外,開發人員將會對執行時間播放器功能感到滿意,這個功能讓他們得以輕鬆地在其應用程式中重新建立場景。這讓測試與重複設計變得容易,能確保最終產品既實用又具視覺吸引力。而透過多使用者、即時协作功能,Comet 讓團隊能輕易地一同工作、分享素材與點子,在創紀錄的時間內建立高品質的遊戲和應用程式。
PixiJS v8
PixiJS v8 將會是下一個主要版本,代表著從頭開始徹底改寫 PixiJS。開發團隊運用他們多年來累積的豐富經驗,對 PixiJS 核心程式碼引擎進行改善和最佳化。新版的 PixiJS 旨在變得更快更有效率,與 v7 相比(目前處於 x2),在渲染效能上獲得大幅提升
PixiJS v8 最令人興奮的功能之一是納入一級支援 WebGPU,而 WebGPU 是一項新的圖形 API,正由主要的瀏覽器供應商進行開發。這將使開發人員得以善用進階 GPU 功能,而這些功能能大幅提升圖像密集型應用程式的效能。除了支援 WebGPU,PixiJS 團隊也為最佳化畫布渲染器付出了極大的努力,這將成為開發人員在尋求減少程式碼包大小時的一級選項。
整體而言,PixiJS v8 代表著我們向前邁出一大步,開發人員可以期待一個快上許多也更有效率的程式碼引擎,而它更適合用於建立複雜的圖像密集型應用程式。
第四階段
第四階段代表著 PixiJS 邁入新領域,因為我們希望更深入探討嚴格的 2D 渲染以外的範圍。
PixiJS 3D
多年以來,Goodboy(現在是 Playco)擁有基於 PixiJS 構建的內部 3D 程式碼引擎 Odie。我們現在計畫將其開源,對於那些想要在遊戲或應用程式中無縫混合 2D 和 3D 內容的人來說,這是一項令人振奮的消息。使用 PixiJS 3D,您不再需要在程式碼引擎或框架之間切換,即可在專案中納入 3D 元素。
儘管這是一個長期專案,但團隊正持續取得進度,並計畫於今年稍晚分享更多資訊。此版本將大幅擴充 PixiJS 的功能,並賦予開發人員在建構應用程式時更大的彈性。
PixiJS 遊戲引擎
最後,我們很興奮地宣布,即將投入一個名為 PixiJS 遊戲引擎的新程式庫。此遊戲引擎的目標是提供您對 2D/3D 遊戲引擎的所有期待,並提供許多功能和工具,讓遊戲開發更簡易且更有效率。
PixiJS 遊戲引擎的一些功能將包含對物理引擎、音訊、輸入處理、資產載入和管理、狀態管理、動畫和補間等的支援。
結論
我們分享了不少關於 PixiJS 社群將迎來哪些新專案和更新的令人興奮的消息。在接下來的幾個月內,有許多值得期待的事情。
我們要誠摯地感謝 PixiJS 社群、其貢獻者和 Playco 讓這一切成為可能。我們很興奮能看到您使用這些新工具和資源,並期待持續為 PixiJS 生態系提供支援並協助其成長。歡迎務必查看上面提到的 GitHub 連結,並持續關注更多關於 PixiJS Universe 的最新消息!