Pixi.js: setBackgroundColor?

Созданный на 11 мая 2015  ·  12Комментарии  ·  Источник: pixijs/pixi.js

Привет,

Есть ли замена для stage.setBackgroundColor в v3?

Самый полезный комментарий

Чтобы увидеть эффект, вам нужно вызвать метод render рендерера следующим образом (я изменил цвет на красный, чтобы сделать его более очевидным):

var renderer = PIXI.autoDetectRenderer(256, 256, {antialiasing: false, transparent: false, resolution: 1});
    document.body.appendChild(renderer.view);
    renderer.backgroundColor = 0xff0000;

    var scene = new PIXI.Container();

    var render = function() {
        renderer.render(scene);
        requestAnimationFrame(render);
    }

    render();

Вот рабочий код PIXI 3.0.3: http://miriti.github.io/pixi-background/

Все 12 Комментарий

Привет, @kittykatattack !
Попробуй это:

renderer = new PIXI.WebGLRenderer(800, 600);
renderer.backgroundColor = 0x061639;

Спасибо!
Может быть, я схожу с ума (очень возможно !!) - но у меня это не работает.
Ваш код создает пустой холст в моей системе (я использую v3.0.3)

Кроме того, backgroundColor не является свойством объекта рендеринга, согласно текущим документам API?
Вот код, который я сейчас использую, который просто создает стандартный черный контекст WeGL.

var renderer = PIXI.autoDetectRenderer(256, 256, {antialiasing: false, transparent: false, resolution: 1});
document.body.appendChild(renderer.view);
renderer.backgroundColor = 0x061639;

Чтобы увидеть эффект, вам нужно вызвать метод render рендерера следующим образом (я изменил цвет на красный, чтобы сделать его более очевидным):

var renderer = PIXI.autoDetectRenderer(256, 256, {antialiasing: false, transparent: false, resolution: 1});
    document.body.appendChild(renderer.view);
    renderer.backgroundColor = 0xff0000;

    var scene = new PIXI.Container();

    var render = function() {
        renderer.render(scene);
        requestAnimationFrame(render);
    }

    render();

Вот рабочий код PIXI 3.0.3: http://miriti.github.io/pixi-background/

Спасибо за помощь, это работает!

Почему этого не видно в документации @miriti ? Я искал это целую вечность, прежде чем перейти к проблемам!

@ невольно хороший вопрос! Не знаю .. Я только что посмотрел в коде. По какой-то причине у него нет документа: https://github.com/GoodBoyDigital/pixi.js/blob/master/src/core/renderers/SystemRenderer.js#L148

@miriti PRd :)

Исправлено в 4827cea4bfd4af99bb363c2230da1393ed8221c4

Вы, ребята, сталкивались с поведением, когда вспыхивает черный фон перед тем, как сработает ваш новый backgroundColor? Я использую ClojureScript-land, поэтому у меня нет под рукой pastebin, но я в основном делаю то, что вы ожидаете, - создаю autoDetectRenderer [за исключением того, что я указываю {view: a-preexisting-canvas-element } необязательный аргумент вместо того, чтобы добавлять его напрямую], а затем устанавливаем для его .backgroundColor значение 0xFFFFFF. И я вижу вспышку черного фона на 0,5 секунды перед тем, как сработает мой .backgroundColor.

Я делаю что-то идиотское / это хорошо известная проблема с очевидным исправлением? Спасибо!

@jrheard Render сразу после определения вашей сцены / сцены устранит проблему с черной вспышкой. Например:

var renderer = PIXI.autoDetectRenderer(width, height);  
renderer.backgroundColor = 0xFF0000;  
var stage = new PIXI.Container();  
renderer.render(stage);  
[...]

Вместо того

var renderer = PIXI.autoDetectRenderer(width, height);  
renderer.backgroundColor = 0xFF0000;  
var stage = new PIXI.Container();  
[...]  
renderer.render(stage);

Вероятно, вы захотите сделать это несколько раз:

var renderer = PIXI.autoDetectRenderer(width, height);  
renderer.backgroundColor = 0xFF0000;  
var stage = new PIXI.Container(); 
renderer.render(stage);
[...]  
renderer.render(stage);

извините за задержку с ответом - это устранило мою проблему. Благодарность!

Этот поток был автоматически заблокирован, поскольку после его закрытия в последнее время не было никаких действий. Пожалуйста, откройте новую проблему для связанных ошибок.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги