如何使用 Phaser 3 绘制多边形?

我正在尝试使用 Phaser 3 框架绘制一个简单的多边形形状。问题是:多边形没有出现。


var config = {

        type:Phaser.AUTO,

        width:800,

        height:600,

        scene: {

            preload: preload,

            create: create,

        }

    };


    var game = new Phaser.Game(config);


    var poly;

    var graphics;


    function preload() {}


    function create() {


        poly = new Phaser.Geom.Polygon();

        poly.setTo([ new Phaser.Geom.Point(200, 100), new Phaser.Geom.Point(350, 100), new Phaser.Geom.Point(375, 200), new Phaser.Geom.Point(150, 200) ]);



        graphics = this.add.graphics(0, 0);

        graphics.fillPoints(poly.points, true);

    }

我得到的错误是:“Phaser.Polygon 不是构造函数”,但我在有关 Phaser 的教程中看到了该代码。


编辑:我按照 PhotonStorm 的建议更改了代码,现在我没有收到错误,但多边形仍然没有出现。


EDIT2:通过在图形对象上调用 lineStyle 和 fillStyle 来解决。


graphics = this.add.graphics(0, 0);


graphics.lineStyle(5, 0xFF00FF, 1.0);

graphics.fillStyle(0xFFFFFF, 1.0);

graphics.fillPoints(poly.points, true);


慕桂英546537
浏览 319回答 1
1回答

森栏

它是Phaser.Geom.Polygon。这是它的文档页面。一个基本的例子:    var polygon = new Phaser.Geom.Polygon([        400, 100,        200, 278,        340, 430,        650, 80    ]);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript