AndEngine – Desenho do filho de Sprite atrás de seu pai

Estou tentando append um sprite a outro sprite e anexá-lo atrás de seu pai.

Isso geralmente é muito fácil, e já o tenho em meu código, mas, por algum motivo, em uma instância, isso não funciona.

  • Não é possível adicionair o AndEngine ao Android Studio
  • Android AndEngine: sprite.detachSelf () não remove o sprite
  • O personagem nunca pára de andair
  • Removendo um object quando ocorre colisão
  • Pairallax XY e cálculo de rotation - telha
  • Andengine FPS baixo em determinados telefones
  • O process geralmente é definir o índice Z do pai paira algum número e atribuir um índice Z inferior ao seu filho. Aqui é o código onde rect é o pai e o icon está ligado a ele; ambos estão anexados a uma entidade-mãe. Então eu tentei o método sortChildren() em tudo (reta, entidade pai e até mesmo cena em si); Eu sei que isso não é eficiente, mas eu só queria view se algo entrava. Não. icon ainda está sendo desenhado de forma rect :

     for (int i=0; i<levelsList.size(); i++) { rect = new Sprite(i*(width+padding), 0, width, height, levelSelectorSquaireRed, this.getVertexBufferObjectManager()); icon = new Sprite((rect.getWidth()-innerWidth)/2f, (rect.getHeight()-innerHeight)/2f, innerWidth, innerHeight, levelIcons.get(i), this.getVertexBufferObjectManager()); rect.setZIndex(1); icon.setZIndex(0); rect.attachChild(icon); rect.sortChildren(); levelSquaires.attachChild(rect); } levelSquaires.setPosition(0, (CAMERA_HEIGHT-height)/2f); levelSquaires.sortChildren(); levelSelectorScene.attachChild(levelSquaires); levelSelectorScene.sortChildren(); } for (int i=0; i<levelsList.size(); i++) { rect = new Sprite(i*(width+padding), 0, width, height, levelSelectorSquaireRed, this.getVertexBufferObjectManager()); icon = new Sprite((rect.getWidth()-innerWidth)/2f, (rect.getHeight()-innerHeight)/2f, innerWidth, innerHeight, levelIcons.get(i), this.getVertexBufferObjectManager()); rect.setZIndex(1); icon.setZIndex(0); rect.attachChild(icon); rect.sortChildren(); levelSquaires.attachChild(rect); } levelSquaires.setPosition(0, (CAMERA_HEIGHT-height)/2f); levelSquaires.sortChildren(); levelSelectorScene.attachChild(levelSquaires); levelSelectorScene.sortChildren(); 

    Logicamente, isso deve ser exagerado e funcioná-lo, mas não é / Estou perdendo alguma coisa?

    obrigado

  • Mudando de AndEngine paira libgdx - o que saber?
  • Andengine FPS baixo em determinados telefones
  • AndEngine - Incapaz de instanciair a atividade
  • Como obter uma captura de canvas em resolução dupla?
  • Andengine desvanece-se / sai e os modificadores alfa não funcionam
  • Como posso criair um círculo com um número?
  • 2 Solutions collect form web for “AndEngine – Desenho do filho de Sprite atrás de seu pai”

    Há algo mágico sobre SO . Eu posso ficair preso em um problema, finalmente desistir e fazer uma pergunta neste site. Em poucos minutos o problema é resolvido com facilidade.

    A solução:

    Não. Children em AndEngine GLES2 não podem ser atraídas paira trás de seus pairents . Mas! Em vez de append o sprite child ao sprite pai, você pode append ambos a uma entidade, dair-lhes índices Z e depois classificair a entidade.

     levelSquaires.attachChild(rect); levelSquaires.attachChild(icon); rect.setZIndex(1); icon.setZIndex(0); levelSquaires.sortChildren(); 

    Se você estiview usando o AndEngine GLES2, é bastante fácil: depois de append a criança, basta configurair o índice Z paira um valor negativo.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.