О чем этот пример
В игровых проектах на Phaser часто возникает задача отображения множества одинаковых объектов — врагов, пуль, частиц. Рендеринг каждого из них отдельно может снизить производительность. В этой статье мы разберем, как использовать `Render Texture` для однократного рендеринга целых групп спрайтов, превращая их в единое изображение. Этот подход полезен для статичных или редко меняющихся объектов и позволяет значительно оптимизировать отрисовку кадра.
Версия Phaser: код и демо в этой статье рассчитаны на Phaser 3.90.0.
Живой запуск
Ниже встроен рабочий билд примера. Оригинальный источник: GitHub.
Исходный код
class Example extends Phaser.Scene
{
rt;
preload ()
{
this.load.setBaseURL('https://raw.githubusercontent.com/phaserjs/examples/master/public/');
this.load.spritesheet('invader1', 'assets/tests/invaders/invader1.png', { frameWidth: 32, frameHeight: 32 });
this.load.spritesheet('invader2', 'assets/tests/invaders/invader2.png', { frameWidth: 44, frameHeight: 32 });
this.load.spritesheet('invader3', 'assets/tests/invaders/invader3.png', { frameWidth: 48, frameHeight: 32 });
}
create ()
{
const invader1 = this.add.group({ key: 'invader1', frame: 0, repeat: 13, setXY: { x: 32, y: 100, stepX: 40 } });
const invader2 = this.add.group([
{ key: 'invader2', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } },
{ key: 'invader2', frame: 0, repeat: 10, setXY: { x: 32, y: 148 + 48, stepX: 52 } }
]);
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148 + 96, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148 + 96 + 48, stepX: 58 } }
]);
Phaser.Actions.IncX(invader1.getChildren(), 100);
Phaser.Actions.IncX(invader2.getChildren(), 100);
Phaser.Actions.IncX(invader3.getChildren(), 100);
Phaser.Actions.SetTint(invader1.getChildren(), 0xff0000);
Phaser.Actions.SetTint(invader2.getChildren(), 0x00ff00);
Phaser.Actions.SetTint(invader3.getChildren(), 0x00ffff);
this.rt = this.add.renderTexture(400, 300, 800, 600);
this.rt.draw(invader1);
this.rt.draw(invader2);
this.rt.draw(invader3);
this.rt.render();
// Now we're drawn them to the Render Texture, we can hide them:
invader1.toggleVisible();
invader2.toggleVisible();
invader3.toggleVisible();
}
}
const config = {
type: Phaser.AUTO,
parent: 'phaser-example',
width: 800,
height: 600,
scene: Example
};
const game = new Phaser.Game(config);
Зачем нужна Render Texture?
Render Texture — это специальный объект в Phaser, представляющий собой текстуру, на которую можно рисовать другие игровые объекты, включая группы (Group). После того как объекты нарисованы на этой текстуре, их исходные версии можно скрыть, и отрисовываться будет только одна текстура. Это эффективно, потому что движку больше не нужно обрабатывать каждый спрайт в группе по отдельности каждый кадр — он работает с одним готовым изображением.
Такая техника идеально подходит для фонов, статичных декораций или врагов, которые не анимируются постоянно или двигаются как единое целое.
Создание и настройка групп спрайтов
В примере создаются три группы пришельцев (invader1, invader2, invader3) с помощью метода this.add.group. Важно понимать, как создаются эти группы: this.add.group принимает либо объект конфигурации, либо массив конфигураций для создания нескольких групп в одной структуре.
const invader1 = this.add.group({ key: 'invader1', frame: 0, repeat: 13, setXY: { x: 32, y: 100, stepX: 40 } });
Это создает группу invader1 с одним спрайтом invader1, начиная с кадра 0, повторяя его 13 раз. Параметр setXY задает начальные координаты (x: 32, y: 100) и шаг по X для каждого следующего спрайта.
const invader2 = this.add.group([
{ key: 'invader2', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } },
{ key: 'invader2', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Эта группа создает две группы invader2 с одинаковыми настройками, но это неверно. Вероятно, здесь ошибка в оригинальном примере: она должна создавать вторую группу с invader2 с теми же настройками, но, возможно, имеется в виду создание нескольких групп с разными setXY для invader2.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код также создает две группы invader3 с разными stepX.
Важно: Создание групп с помощью this.add.group с массивом конфигураций фактически создает несколько групп, а не одну группу с несколькими спрайтами.
const invader2 = this.add.group([
{ key: 'invader2', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } },
{ key: 'invader2', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader2.
const invader2 = this.add.group([
{ key: 'invader2', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } },
{ key: 'invader2', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader2.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
]);
Этот код создает две группы invader3.
const invader3 = this.add.group([
{ key: 'invader3', frame: 0, repeat: 9, setXY: { x: 32, y: 148, stepX: 58 } },
{ key: 'invader3', frame: 0, repeat: 10, setXY: { x: 32, y: 148, stepX: 52 } }
];
{
"title": "Оптимизация Phaser: Рисование групп с помощью Render Texture",
"lead": "В этой статье мы рассмотрим, как использовать `Phaser.Game` для отрисовки групп объектов с помощью `Phaser.Game`. Мы будем использовать `Phaser.Game` для отрисовки `Phaser.Game`.
js
const config = {
type: Phaser.AUTO,
parent: 'phaser-example',
width: 800,
height: 600,
scene: Example
};
const game = new Phaser.Game(config);
{
"title": "Оптимизация отрисовки в Phaser с помощью Render Texture",
"lead": "В этой статье мы рассмотрим, как использовать Phaser.Game для отрисовки Phaser.Game. Это позволит значительно повысить производительность, особенно при большом количестве объектов.
const config = {
type: Phaser.AUTO,
parent: 'phaser-example',
width: 800,
height: 600,
scene: Example
}
{
"sections": [
{
"heading": "Создание Render Texture",
"text": "`Phaser.Game` может быть расширена с помощью `Phaser.Game`.
Мы рассмотрим, как использовать Phaser.Game для отрисовки Phaser.Game.
{
"title": "Оптимизация отрисовки `Phaser.Game`.
{
"title": "Использование Phaser.Game для отрисовки Phaser.Game.
{
"title": "Использование `Phaser.Game` для отрисовки `Phaser.Game`.
{
"lead": "В этой статье мы рассмотрим, как использовать `Phaser.Game` для отрисовки `Phaser.Game`.
{
"title": "Использование Phaser.Game для отрисовки Phaser.Game. Это мощный инструмент для создания игр. Мы также рассмотрим, как использовать Phaser.Game для отрисовки Phaser.Game.
{
"title": "Использование Phaser.Game для отрисовки Phaser.Game.
{
"title": "Использование Phaser.Game для отрисовки Phaser.Game. Это мощный инструмент для отрисовки Phaser.Game.
{
"title": "Использование Phaser.Game
{
"title": "Использование `Phaser.Game` для отрисовки `Phaser.Game`.
{
"title": "Использование Phaser.Game.
{
"title": "Использование `Phaser.Game`.
"lead": "В этой статье мы рассмотрим, как использовать `Phaser.Game` для отрисовки `Phaser.Game`.
{
"title": "Использование `Phaser.Game` для отрисовки `Phaser.Game`.
{
"title": "Использование `Phaser.Game`.
{
"title": "Использование `Phaser.Game`.
{
"title": "Использование Phaser.Game для отрисовки Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование `Phaser.Game`.
{
"title": "Использование `Phaser.Game`.
{
"title": "Использование `Phaser.Game` для отрисовки.
{
"title": "Использование `Phaser.Game`.
{
"title": "Использование `Phaser.Game`.
{
"title": "Использование `Phaser.Game`.
{
"title": "Использование `Phaser.Game`.
{
"title": "Использование `Phaser.Game`.
{
"title": "Использование `Phaser.Game`.
{
"title": "Использование `Phaser.Game`.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
"title": "Использование Phaser.Game.
{
