Volver a la página principal
jueves 24 abril 2025
5

¿Qué hace normalized de un Vector en Unity?

La propiedad normalized de un vector en Unity devuelve una copia del vector con la misma dirección pero con una magnitud (longitud) de 1, es decir, lo convierte en un vector unitario.

¿Para qué sirve normalized en Unity?

En Unity, los vectores se utilizan constantemente para representar direcciones y posiciones. Cuando se necesita la dirección de un vector sin importar su magnitud, se usa la propiedad .normalized. Esta propiedad no modifica el vector original, sino que devuelve una versión normalizada del mismo.

Por ejemplo, si tienes un vector de movimiento o dirección, normalizarlo es útil para aplicar fuerzas, direcciones de movimiento o calcular distancias proporcionales sin que la magnitud original influya en el resultado.

Vector3 direccion = new Vector3(3, 0, 4);
Vector3 direccionNormalizada = direccion.normalized;
// direccionNormalizada ahora es (0.6, 0.0, 0.8)

Internamente, normalized divide cada componente del vector por su magnitud. Si el vector es (0, 0, 0), el resultado será también (0, 0, 0), ya que no puede normalizarse un vector nulo.

Ejemplos de uso

Movimiento de un objeto en una dirección constante

transform.position += direccion.normalized * velocidad * Time.deltaTime;

Comparar direcciones

if (Vector3.Dot(dir1.normalized, dir2.normalized) > 0.95f) {
    Debug.Log("Ambas direcciones son casi iguales");
}

Aplicar fuerza en una dirección sin alterar la magnitud original

rigidbody.AddForce(direccion.normalized * fuerza);

Documentación oficial

Puedes consultar más sobre Vector3.normalized en la documentación oficial de Unity:

Etiquetas:
csharp
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer