Version: 2019.3
"Recetas" para usar Vectores
Dirección y Distancia de Un Objeto a Otro

Entendiendo la Aritmética de Vectores

La aritmética de Vectores es fundamental para las gráficas 3D, física y animación y son útiles entenderlos con profundidad para sacarle el mayor provecho a Unity. Debajo hay descripciones de las operaciones principales y algunas sugerencias acerca de las muchas cosas que se pueden hacer con ellas.

Adición

Cuando dos vectores son agregados juntos, el resultado es equivalente a tomar los vectores originales como “pasos”, uno después del otro. Tenga en cuenta que el orden de los dos parámetros no importa, ya que el resultado es el mismo de la misma manera.

Si el primer vector es tomado como un punto en el espacio, entonces el segundo puede ser interpretado como el desplazamiento o “salto” desde esa posición. Por ejemplo, para encontrar un punto 5 unidades encima de una ubicación en el suelo, usted puede utilizar el siguiente cálculo:-

 var pointInAir = pointOnGround + new Vector3(0, 5, 0);

Si los vectores representan fuerzas, entonces es más intuitivo pensar en ellos en términos de su dirección y magnitud (la magnitud indica el tamaño de la fuerza). Agregar dos vectores de fuerza resulta en nuevo vector equivalente a la combinación de las fuerza. Este concepto suele ser útil cuándo se aplique fuerzas con varios componentes actuando una vez (eg, un cohete siendo propulsado hacia al frente puede también ser afectado por un viento cruzado).

Substracción

La resta de Vectores se utiliza con mayor frecuencia para obtener la dirección y distancia de un objeto a otro. Tenga en cuenta que el orden de los dos parámetros importa con la substracción:-

// .El vector d tiene la misma magnitud que c pero apunta en la dirección opuesta
var c = b - a;
var d = a - b;

Como con los número, agregando el negativo de un vector es lo mismo que restar el positivo.

// Ambos dan el mismo resultado.
var c = a - b;
var c = a + -b;

El negativo de un vector tiene la misma magnitud como el original y apunta a lo largo de la misma linea pero exactamente en la posición opuesta.

Multiplicación y División Escalar

Cuando discutan vectores, es común referirse a un número ordinario (eg, un valor float) como escalar. El significado de esto es que un escalar solo tiene una “escala” o una magnitud dónde un vector tiene ambas magnitud y dirección.

Multiplicar un vector por un escalar resulta en un vector que apunta en la misma dirección como el original. No obstante, la nueva magnitud del vector es igual a la magnitud original multiplicado por el valor escalar.

Del mismo modo, la división escalar divide la magnitud del vector original por el escalar.

Estas operaciones son útiles cuándo el vector representa el desplazamiento de un movimiento o una fuerza. Ellas le permiten a usted cambiar la magnitud del vector sin afectar su dirección.

Cuando cualquier vector es dividido por su propia magnitud, el resultado es un vector con una magnitud de 1, que es conocido como un vector normalizado. Si un vector normalizado es multiplicado por un escalar entonces la magnitud del resultado va a ser igual al valor del escalar. Esto es útil cuándo la dirección de una fuerza es constante pero la fuerza es controlable (eg, la fuerza de la llanta de un carro siempre empuja hacia el frente pero el poder es controlado por el conductor).

Producto Punto

El producto punto toma dos vectores y devuelve un escalar. Este escalar es igual a las magnitudes de dos vectores multiplicados juntos y el resultado es multiplicado por el coseno del ángulo entre los vectores. Cuando los dos vectores son normalizados, el coseno esencialmente declara qué tan lejos el primer vector se extiende en la dirección del segundo (o vice-versa - el orden de los parámetros no importa).

Es bastante fácil pensar en términos de ángulos y luego encontrar los cosenos correspondientes utilizando una calculadora. Sin embargo, es útil tener un entendimiento intuitivo de algunos de los valores coseno principal como se muestran en el diagrama abajo:-

El producto punto es una simple operación que se puede utilizar en lugar de la función Mathf.Cos o la operación de la magnitud del vector en algunas circunstancias (no hace exactamente la misma cosa pero algunas veces el efecto es equivalente). No obstante, calcular la función del producto punto toma mucho menos tiempo de CPU y entonces puede ser una optimización valiosa.

Producto Cruz

Las otras operaciones están definidas para vectores 2D y 3D y de hecho con vectores con cualquier número de dimensiones. El producto cruz, por contraste, solo es significante para vectores 3D. Toma dos vectores como input y devuelve otro vector como su resultado.

El vector resultante es perpendicular a los dos vectores input. La “regla de la mano izquierda” puede ser utilizada para recordar la dirección del vector output del orden del los vectores input. Si el primer parámetro es igualada hasta el dedo pulgar de la mano y el segundo parámetro para el dedo índice, entonces el resultado será apuntar en la dirección del dedo medio. Si el orden de los parámetros es revertido entonces el vector resultante va a apuntar exactamente en la dirección opuesta pero va a tener la misma magnitud.

La magnitud del resultado es igual a las magnitudes de los vectores input multiplicados juntos y luego ese valor multiplicado por el seno del ángulo entre ellos. Algunos valores útiles de la función seno son mostrados abajo:-

El producto cruz puede parecer complicado ya que combina varias piezas útiles de información en su valor devuelto. Sin embargo, como el producto punto, es muy eficiente matemáticamente y se puede utilizar para optimizar el código que de otro modo dependerá de funciones trascendentales lentas.

"Recetas" para usar Vectores
Dirección y Distancia de Un Objeto a Otro