Phaser3入门教程:第一个Phaser3游戏(中文版)(三)

  • 搭建世界

 

在使用this.add.image创建了图片对象后,那么就有了当前场景可显示的图片列表,这个图片列表即存在于你的游戏对象中。你可以在任何时候将这些图片秀出来。不过,如果图片在800x600的窗口区域外的话,你是看不见它们的(即‘离屏’),但它们仍处于场景中。

场景并不一定是一个固定的大小,它可以向任意的方向延伸。当前激活的摄像机可以控制视角在场景中移动和缩放,你也可以创建一个新的摄像机视角来观察场景。这个主题超出了本节内容,我们将在其他栏目中介绍。

现在,让我们在场景中添加几个平台,我们这样修改了一下creat函数:

var platforms;

 

function create ()

{

    this.add.image(400, 300, 'sky');

 

    platforms = this.physics.add.staticGroup();

 

    platforms.create(400, 568, 'ground').setScale(2).refreshBody();

 

    platforms.create(600, 400, 'ground');

    platforms.create(50, 250, 'ground');

    platforms.create(750, 220, 'ground');

}

快速浏览一下代码,会发现一个函数调用this.physics。含义是我们要使用物理引擎,但我们需要在开始的时候,就通过config告诉Phaser物理引擎的设置。我们来更新一下config,让它我们的游戏包含物理特性,代码如下:

var config = {

    type: Phaser.AUTO,

    width: 800,

    height: 600,

    physics: {

        default: 'arcade',

        arcade: {

            gravity: { y: 300 },

            debug: false

        }

    },

    scene: {

        preload: preload,

        create: create,

        update: update

    }

};

新增的内容是physics定义,默认为arcade物理引擎,你可以在part4.html文件中查看到这段代码,执行之后会呈现出如下场景:

我们得到了一个背景和几个平台,但我们如何让这些平台发挥正确的功能呢?这是下一章的内容 :-)

猜你喜欢

转载自blog.csdn.net/sql_cn/article/details/82699017
今日推荐