SpriteRenderer

El componente SpriteRenderer renderiza una imagen (sprite) en la pantalla. Admite recorte, escalado, rotación, volteo, opacidad, máscara de color, tintado y mosaico (tiling). Usa el Transform de la entidad para la posición. Consulta Renderizado para una visión general.

Opciones

OpciónTipoValor por defectoDescripción
imageHTMLImageElement | stringLa imagen a renderizar, o una cadena con la URL/nombre del recurso.
layerstring"Default"La capa de renderizado.
sliceSliceRegión de la imagen a dibujar ({ x, y, width, height }).
widthnumberSustituye el ancho renderizado.
heightnumberSustituye el alto renderizado.
scaleVector2(1, 1)Escala la imagen.
offsetVector2(0, 0)Desplazamiento respecto a la posición de la entidad.
rotationnumber0Rotación en radianes.
flipHorizontallybooleanfalseVoltea la imagen horizontalmente.
flipVerticallybooleanfalseVoltea la imagen verticalmente.
opacitynumber1Opacidad entre 0 y 1.
tintColorstringColor usado para tintar la imagen.
maskColorstringColor de máscara aplicado a la imagen.
maskColorMixnumberOpacidad del color de máscara entre 0 y 1.
tiledVector2Repite la imagen en mosaico según el número de columnas y filas indicado.
smoothbooleanfalseSuaviza los píxeles. No recomendado para pixel art.

Ejemplo

import { Transform, SpriteRenderer } from "angry-pixel";

this.entityManager.createEntity([
    new Transform(),
    new SpriteRenderer({
        image: this.assetManager.getImage("player.png"),
        layer: "Default",
    }),
]);

La imagen se carga a través del Asset Manager, normalmente en el método loadAssets de la escena. Los sprites animados se controlan con el componente Animator.