Ir al contenido
Descargar

Cámara

Cada room tiene una cámara, configurada en el Inspector de la room. En el código, está en scene().camera.

Propiedad Tipo Qué es
x, y float Esquina superior izquierda del área mostrada, en coordenadas del mundo.
zoom float Cuánto se amplía el mundo (1 = sin zoom). La interfaz y el onRenderGui no se amplían, y mouseX()/mouseY() ya vienen en coordenadas del mundo.
bounded bool true = al seguir un objetivo, la cámara no sale de la room. Movida a mano, no está limitada.
smoothing float De 0 a 10. 0 se pega al objetivo; 10 es muy suave.
deadzoneW, deadzoneH float Tamaño del rectángulo central en el que el objetivo se mueve sin mover la cámara.
Función Qué hace Ejemplo
void follow(Handle<Entity> target) Pasa a seguir una instancia. La cámara se centra en ella ya en el primer cuadro. scene().camera.follow(handle());
void stopFollowing() Deja de seguir; la cámara se queda donde está. scene().camera.stopFollowing();
void shake(float strength, float seconds) Sacude la pantalla durante seconds segundos, hasta strength píxeles a cada lado, debilitándose hasta parar. scene().camera.shake(3, 0.2f);
void onSpawn() override {
scene().camera.follow(handle()); // sigue a esta instancia
scene().camera.smoothing = 4;
scene().camera.bounded = true;
}

handle() devuelve una referencia segura a esta instancia: mira Handles.