Oi,
apesar de que o pivô e a âncora são super confusos, se eu imaginar a âncora como aquele ponto redondo que posso definir no photoshop ou no editor de flash antigo como o ponto de rotação, o que acontece no pixi é que todo o conteúdo do objeto de exibição é redesenhado, definindo a âncora como a origem apontar.
var app = new PIXI.Application(800, 600, {backgroundColor : 0x1099bb});
document.body.appendChild(app.view);
var bunny = PIXI.Sprite.fromImage('required/assets/basics/bunny.png');
var container = new PIXI.Sprite();
container.addChild(bunny);
container.x = 0;
container.y = 0;
app.stage.addChild(container);
bunny.anchor.set(0.5);
//bunny_c.pivot.set(15,5);
Com este exemplo, espero que o coelho esteja com a âncora que afeta sua rotação alterada, mas não o coelho seja redesenhado!
Cada elemento tem uma transformação, que é posição / rotação / pivô
Sprites possuem âncora, ou seja, "este ponto de textura deve estar em (0,0) do sistema de coordenadas local".
O pivô de rotação é sempre (0,0) do sistema de coordenadas local.
Se desejar um comportamento diferente, você pode alterar a classe Transform e criar instâncias de seu Transform corrigido para os elementos afetados.
https://github.com/pixijs/pixi.js/blob/dev/src/core/display/TransformStatic.js
https://github.com/pixijs/pixi.js/blob/dev/src/core/sprites/Sprite.js#L174
Além disso, o coelho é redrawn
cada quadro no pixi. A biblioteca não possui mecanismos para rastrear todas as mudanças, ela simplesmente funciona. Caso contrário, pode pesar 3 MB ou mais :)
Para o seu caso, é melhor definir o pivô no centro do coelho. Certifique-se de fazer isso por constantes, use bunny.texture.width
apenas quando estiver carregado.
@DavidGOrtega fechando isto porque sinto que sua pergunta foi respondida. Sinta-se à vontade para reabrir se tiver mais problemas!
Este tópico foi automaticamente bloqueado, pois não houve nenhuma atividade recente depois que ele foi fechado. Abra um novo problema para bugs relacionados.