/ / Libgdx texturas múltiples en un sprite - java, libgdx

Libgdx texturas múltiples en un sprite - java, libgdx

Estoy trabajando para un juego y me metí en este punto: me gustaría tener 2 texturas en un solo sprite, ¿es posible?

Quiero decir: necesito que uno se coloque en un ángulo específico y el otro para que gire continuamente. He estado buscando en internet pero no encontré nada relacionado.

O ... ¿hay una mejor manera de hacer esto?

Respuestas

0 para la respuesta № 1

UN Sprite hereda de un TextureRegion. Esta es la definición de TextureRegion:

Define un área rectangular de una textura.

Entonces un Sprite realmente es solo una pieza de Textura, eso significa que solo puedes transformar un Sprite como un todo.

Si desea envolver varios Sprites en una sola clase, sugiero usar Scene2D. Podrías dibujar dos sprites en Actor.draw():

public void draw() {
sprite1.draw();
sprite1.rotate(…);
…
sprite2.draw();
…
}

El actor se agrega a una Stage

stage.addActor(actor);

0 para la respuesta № 2

Sprite es un TextureRegion que contiene información de geometría, color y otra textura para el dibujo, por lo que no puede mantener varias texturas en un Sprite y utilizarlas todas para dibujar.

Asi que usa 1S t si no estas usando scene2d más ir con 2Dakota del Norte o 3rd opción.

  1. Cree una clase propia que contenga dos textureRegion y dibuje usted mismo de acuerdo con sus requisitos.

  2. Crear un Group Como padre de tus imágenes. Crear diferente Imageagregar especifico Action, Color y otra propiedad y luego agregar al grupo padre.

  3. Crea una Imagen Compuesta heredando Image clase y agregue una nueva TextureRegion como propiedad de su nueva clase. anular draw (Batch batch, float parentAlpha) Método y dibuja tu textura añadida.