Hi, I want to use a custom shader on a sprite object as well as on a camera. But when I do that, the sprite object with a custom shader flips vertically. Copy and paste the following code in the playground (to simplify, i am using Phaser’s TextureTintPipeline shader):
var config = {
type: Phaser.WEBGL,parent: 'phaser-example',width:500,height:500,
scene: {preload: preload,create: create}
};
var game = new Phaser.Game(config);
function preload() {
this.load.image('atari', 'assets/sprites/atari400.png');
this.game.renderer.addPipeline("custom",
new Phaser.Renderer.WebGL.Pipelines.TextureTintPipeline({
game:game,
renderer:game.renderer
}));
}
function create() {
this.add.sprite(150, 100, 'atari').setPipeline('custom')
this.add.sprite(350,100,"atari")
this.cameras.main.setRenderToTexture("custom");
}
As you can see the sprite on the left is flipped. I can “fix” this by flipping Y on the main camera and ALL game objects in a scene that aren’t using custom shaders, but this hackish workaround requires me to keep track of all the game objects in the scene myself. Am i missing something? This cannot be an expected behaviour. Thanks.