Phaser е рамка за създаване на двуизмерни HTML5 игри за десктоп и мобилни устройства. Това е свободен софтуер, разработен от Photon Storm.

Phaser използва технологиите Canvas и WebGL и може автоматично да превключва между тях въз основа на поддръжката на браузъра. Това позволява бързо изобразяване на настолен компютър и мобилно устройство. Използва и библиотеката Pixi.js.

История Ричард Дейви обявява първото издание на Phaser в публикация в блог през април 2013 г. Версия 1.0 е пусната през септември и включва библиотеката Pixi.js.

Phaser 3.0.0 е пуснат на 13 февруари 2018 г. Повечето елементи и функции на рамката са изградени от нулата, като се използва изцяло модулна структура и подход, ориентиран към данни. Phaser 3 включва чисто нов персонализиран WebGL рендър, предназначен за модерни 2D игри. Оттогава голяма част от документацията и примерите за потребителите са завършени и повечето функции са внедрени.

На 19 август 2019 г. е обявен Phaser 4, който е опит за пренаписване на Phaser 3 в TypeScript.

Основната структура на проект за HTML5 игра Проектът за HTML5 игра обикновено се състои от следните папки и файлове:

Scripts/ (или js/) : В тази папка се намира основният файл на рамката, който обикновено се нарича Phaser.js. Съдържа файл с кода на играта, който използва рамката. Src/ : Тази папка е предназначена за съхраняване на изходни файлове. Тези файлове в крайна сметка ще бъдат компилирани, за да се създаде пълният код на играта. Assets/ : В тази папка има различни подпапки: Images : Съдържа графични файлове. Maps : Съдържа данни, необходими за 2D играта. Sounds : Това е мястото, където се съхраняват звуковите ефекти за играта, често в множество формати. Music : Съдържа музиката за играта. Misc : Тук се съхраняват различни данни като диалогови файлове, скриптове за изпълнение и други специални файлове. Index.html : Този файл служи като начална точка за играта. Той настройва играта и инициализира процеса на зареждане. JavaScript обработва взаимодействията след първоначалната настройка. Този html файл може също да включва основен стил за позициониране на играта на уеб страницата и създава потребителски интерфейс (UI) около нея.

Архитектура и характеристики Phaser може да работи във всеки уеб браузър, който поддържа елемента canvas. Игрите, направени с Phaser, се разработват или на JavaScript, или на TypeScript. Необходим е уеб сървър за зареждане на ресурси като изображения, аудиозаписи и други файлове с игри, тъй като браузърите изискват уеб страниците да имат достъп до файлове само от същия произход.

Phaser може да работи с WebGL или елемента canvas, с опция за използване на WebGL, ако браузърът го поддържа, или ако дадено устройство не го поддържа, ще се върне обратно към canvas.

Физика Phaser се доставя с 3 физически системи: Arcade Physics, Ninja Physics и P2.JS.

От Phaser 3.6 има два основни физически двигателя. Те се наричат Arcade и Matter. Има и по-малко известен двигател, подобен на Arcade, наречен Impact.

Arcade е може би най-използваният от трите, тъй като е бърз и лесен за използване. Той използва подравнени по ос (не завъртяни) правоъгълници и кръгове за откриване на сблъсък върху всички основни функции на физическия двигател като гравитация, ускорение и съпротивление. Недостатъкът му са ограничените възможности.

Matter е по-усъвършенстваният, но неговата сложност също се повишава с добавените функции. Той е в състояние да симулира много реалистична физика на цялото тяло. Поддържа множество функции като твърди, сложни и съставни тела, стабилно подреждане и физически свойства като маса и плътност.

Impact много прилича на Arcade, но има някои предимства.

Източници

Външни препратки

Phaser в GitHub Дискусионен форум в html5gamedevs.com

Категория:Свободен софтуер Категория:Софтуер от 2013 година