簡體   English   中英

如何在沒有舞台的情況下使用pixi.js?

[英]How to use pixi.js without Stage?

我有這個pixi.js代碼,它做了它應該做的事情:繪制一個矩形。

   var stage, renderer, graphics;

    (function () {
      // init PIXI
      // create an new instance of a pixi stage
      stage = new PIXI.Stage(0x66FF99);

      // create a renderer instance.
      renderer = PIXI.autoDetectRenderer(400, 300);

      $('#pixi-area').append(renderer.view);

      graphics = new PIXI.Graphics();
      graphics.beginFill(0xFFFFFF);
      graphics.lineStyle(1, 0xFF0000);
      graphics.drawRect(20, 20, 150, 150);
      stage.addChild(graphics);
      renderer.render(stage);
    }());

但是,在控制台中我得到了聲明

You do not need to use a PIXI Stage any more, you can simply render any container.

如果不使用PIXI.Stage()我該如何做同樣的PIXI.Stage()

我其實剛遇到同樣的問題! 我最終找到了PIXI的新文檔,可以在http://pixijs.github.io/docs/index.html找到。

它們引用的容器是為替換Stage對象而引入的新對象。 http://pixijs.github.io/docs/PIXI.Container.html#toc1

stage = new PIXI.Stage(0x66FF99)

現在變成,

var container = new PIXI.Container();

希望這可以幫助! :)

你應該從:

var stage = new PIXI.Stage(0x65C25D);

至:

var stage = new PIXI.Container();

如果您仍想使用背景顏色,可以在聲明renderer時指定它:

var renderer = PIXI.autoDetectRenderer(width, height, {
    backgroundColor: 0x65C25D
});

正如@ Mattnv92所提到的,任何繼承自Container (formarly DisplayObjectContainer )的對象,例如Sprite,Graphics等,現在可以直接渲染到畫布,如果我沒有弄錯的話。

所以改變stage = new PIXI.Stage(0x66FF99); to stage = new PIXI.Container(); 應該做。

Ť

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM