Phaser桌面和手機遊戲HTML5框架
Phaser是一個流行的2D開源遊戲框架,可以用來開發桌面或手機瀏覽器HTML5遊戲,適合側視或頂視風格:
Phaser同時支援Canvas和WebGL渲染引擎,預置了完備的精靈動畫、輸入 管理、瓦片地圖、補間動畫、資源載入器、物理系統、粒子系統等特性,幾乎能夠 滿足你開發一個2D遊戲的任何需求:
Phaser最值得稱道的是它的外掛機制,以及由此而衍生出的Phaser生態 社群。例如,藉助於isometric外掛,你可以開發出具有(偽)3D效果的遊戲:
Phaser的下一個版本是3.0(剛釋出),因此目前2.x版本的維護由社群繼續,被稱為Phaser CE —— Community Edition。
Phaser框架的絕大部分功能,都打包在單一phaser.js檔案中。我們只需要 在宿主HTML檔案中引入這個框架檔案,就可以開始使用Phaser:
<script src="lib/phaser.js"></script>
幾乎所有的框架API,都定義在Phaser名稱空間之下。例如,我們通過例項化Phaser.Game類來啟動框架:
var game = new Phaser.Game()
框架將在文件中,使用預設引數建立一個800×600畫素大小的Canvas元素,作為 遊戲的畫布。
√ 指定遊戲尺寸
當然,我們可以自行指定遊戲的大小。例如,設定遊戲大小為700×300畫素:
var game = new Phaser.Game(700,300)
√ 指定渲染器
Phaser採用經過修改的Pixi庫作為底層渲染實現,因此可以支援canvas 和webgl。在預設情況下,Phaser將自動進行選擇,不過我們可以在啟動 框架時指定期望採用的渲染引擎。例如,下面的程式碼啟用了Canvas渲染器:
var game = new Phaser.Game(700,300,Phaser.CANVAS)
Phaser支援的渲染器選項包括:
Phaser.AUTO : 讓框架自動選擇渲染器
Phaser.CANVAS:使用Pixi的Canvas渲染器
Phaser.WEBGL:使用Pixi的WebGL渲染器
Phaser.WEBGL_MULTI:使用Pixi的WebGL渲染器,並啟用多紋理支援模式
Phaser.HEADLESS:無頭渲染。使用Pixi的Canvas渲染器,但不把canvas元素 新增到DOM中,也不進行實際的渲染
√ 指定遊戲畫布父元素
預設情況下,Phaser會將建立的canvas元素插入到文件的body元素尾部。 不過我們可以顯式地指定其父元素。
例如,下面的程式碼將在屬性id為ezgame的DOM元素中建立遊戲畫布:
var game = new Phaser.Game(700,300,Phaser.AUTO,`ezgame`)
也可以傳入一個HTML元素來指定遊戲畫布的父元素。例如:
var host=document.queryrSelector(`#ezgame`)
var game=new Phaser.Game(700,300,Phaser.AUTO,host)
如果指定一個空的id,框架就會使用body元素作為遊戲畫布的父元素。 例如:
new Phaser.Game(700,300,Phaser.AUTO,``)。
需要注意的是,遊戲畫布的父元素應當將padding設定為0,否則框架在計算 尺寸時會產生偏差。
寫了個phaser的教程,www.hubwiz.com/course,學習頁面的截圖如下所示,對剛玩遊戲的朋友應該有些幫助:
相關文章
- phaser框架製作遊戲的例子,加上自己的註釋框架遊戲
- Phaser遊戲框架與HTML Dom元素之間的通訊互動遊戲框架HTML
- HTML5 桌面通知:Notification APIHTMLAPI
- phaser常用API總結API
- 3個CSS3和HTML5新框架CSSS3HTML框架
- heX:用HTML5和Node.JS開發桌面應用HTMLNode.js
- 當動態桌面遇上 HTML5HTML
- html5桌面應用HTML
- HTML5 Web Notifications 桌面推送小記HTMLWeb
- HTML5 開發框架HTML框架
- Top 10:HTML5、JavaScript 3D遊戲引擎和框架HTMLJavaScript3D遊戲引擎框架
- 併發工具類(五) Phaser類
- 聊聊HTML5中的Web Notification桌面通知HTMLWeb
- 高併發之Phaser、ReadWriteLock、StampedLock
- 分享開發HTML5手機遊戲的5個注意要點HTML遊戲
- 為手機遊戲的品牌市場營銷創造分析框架遊戲框架
- Flutter現支援Web和桌面,一躍成為前沿大一統框架FlutterWeb框架
- 11個移動應用開發的HTML5框架和應用HTML框架
- JavaFX桌面應用-構建程式框架Java框架
- 桌面軟體開發框架大賞框架
- 7個HTML5移動開發框架,初學HTML5必看HTML移動開發框架
- 桌面應用開發有哪些主流框架?框架
- 開發桌面應用框架 Atom Shell框架
- HTML5基礎入門之常見的HTML5框架有哪些?HTML框架
- HTML5前端程式設計常用的框架HTML前端程式設計框架
- html5移動前端框架 UI webappHTML前端框架UIWebAPP
- 8款實用HTML5開發框架HTML框架
- 基於HTML5的CSS框架元件BootFlatHTMLCSS框架元件boot
- HTML5前端框架Amaze UI全面開源HTML前端框架UI
- 原始碼分析:Phaser 之更靈活的同步屏障原始碼
- 桌面應用開發框架Griffon 1.0釋出框架
- 幾款流行的HTML5 UI 框架比較HTMLUI框架
- 16個最佳響應式HTML5框架分享HTML框架
- kendo ui:開源的html5開發框架UIHTML框架
- PhoneJS - HTML5 JavaScript 移動開發框架JSHTMLJavaScript移動開發框架
- [譯] 如何使用 Phaser 3 和 TypeScript 在瀏覽器中構建一個簡單的遊戲TypeScript瀏覽器遊戲
- Electron-Vite2-MacUI桌面管理框架|electron13+vue3.x仿mac桌面UIViteMacUI框架Vue
- gnome3的解除安裝,和KDE桌面和genome桌面的切換,。