Мне пришлось немного изучить, так как кажется, что это не стандарт (по крайней мере, с точки зрения учебника), но вам нужно создать объект BitmapData и использовать холст для рисования фигур. Это не так весело, как использование game.add.graphics для создания кругов, многоугольников и т. д., но работает хорошо.
Вот как вы создаете платформу:
//creates the BitmapData object, you can use it to create figures:
var floor = game.add.bitmapData( 400, 20 ); //width, height
//this fills the whole object with a color:
floor.fill( 200, 100, 0, 1 ); //Red, Green, Blue, Alpha
//floor will have a canvas context object to draw figures.
//Here are some more examples:
//http://www.html5canvastutorials.com/tutorials/html5-canvas-circles/
//after you finish drawing, you need to convert the object to a sprite:
var floorSprite = game.add.sprite( 100, 500, floor );
//this adds physics to the object and adds a .body property:
game.physics.arcade.enable( floorSprite );
//stops the object in place and prevents other objects from displacing it:
floorSprite.body.allowGravity = false;
floorSprite.body.immovable = true;
Вот как вы можете создать платформу, не полагаясь на файлы изображений. Я видел несколько руководств, использующих файлы вместо создания платформы, и я думаю, что это пустая трата времени.
Кроме того, я думаю, вам нужно преобразовать ваш вектор в растровое изображение, потому что векторная физика довольно тяжела для оборудования (или так кажется).
Надеюсь, это поможет еще нескольким людям!
person
René Olivo
schedule
04.05.2014