El Wheel Collider es un collider especial para vehículos del suelo. Tiene una detección de colisión integrado, física de ruedas, y un modelo de deslizamiento basado en la fricción de la llanta. Puede ser utilizado para objetos que no sean ruedas, pero es específicamente diseñado para vehículos con ruedas.
Para obtener orientación sobre el uso de Wheel Collider, consulte el Unity Wheel Collider tutorial.
Propiedad: | Función: |
---|---|
Mass | Masa de la rueda. |
Radius | Radio de la rueda. |
Wheel Damping Rate | Este es un valor de amortiguación aplicado a la rueda. |
Suspension Distance | La distancia máxima de extensión de la suspensión de una rueda, medida en el espacio local. La suspensión siempre extiende para abajo a través del eje-Y local. |
Force App Point Distance | Este parámetro define el punto dónde las fuerzas de la rueda serán aplicadas. Esto se espera que sea en metro desde la base de la llanta en la posición de descanso a lo largo de dirección recorrida de la suspensión. Cuando forceAppPointDistance = 0 las fuerzas serán aplicadas en la base de la rueda cuando descanse. Un mejor vehículo debería tener fuerzas aplicadas justo debajo del centro de masa del vehículo. |
Center | Centro de la rueda en el espacio local del objeto. |
Suspension Spring | La suspensión intenta alcanzar una Target Position al agregar fuerzas de spring (resorte) y damping (amortiguación). |
Spring | La fuerza del resorte intenta alcanzar una Target Position. Un valor mayor hace que la suspención alcance la Target Position más rápdio. |
Damper | Amortigua la velocidad de suspensión. Un valor mayor hace que la Suspension Spring se mueva más lento. |
Target Position | La distancia de descanso de la suspensión a lo largo de la Suspension Distance. 0 mapea una suspensión completamente extendida, y 1 mapea a una suspensión completamente comprimida. El valor predeterminado es cero, el cual coincide con el comportamiento de la suspensión regular de un carro. |
Forward/Sideways Friction | Propiedades de la fricción de la llanta cuando la rueda está rodando hacia adelante y hacia los lados. Vea la sección Wheel Friction Curves a continuación. |
La detección de colisión de la rueda está realizada al emitir un rayo desde el Center hacia abajo a través del eje Y local. La rueda tiene un Radius y puede ser extendida hacia abajo de acuerdo a Suspension Distance. El vehículo está controlado desde scripting utilizando diferentes propiedades: motorTorque, brakeTorque y steerAngle. Vea la Wheel Collider scripting reference para más información.
El Wheel Collider computa la fricción de manera separada desde el resto del motor de física, utilizando un modelo de fricción a base de deslizamiento. Esto permite un comportamiento más realista pero también causa que los Wheel Colliders ignoren ajustes de Physic Material estándar.
Usted no vuelve o rueda objetos WheelCollider para controlar el carro - los objeto que tienen un WheelCollider adjunto deberían siempre estar fijos relativos al carro en sí mismo. Sin embargo, usted podría querer prender y rodar las representaciones gráficas de la ruega. La mejor manera para hacer esto es configurar objetos separados para Wheel Colliders y ruedas visibles.
Tenga en cuenta que el gráfico de gizmo para la posición de WheelCollider no se actualiza en playmode:
!Posición del Gizmo del WheelCollider en el tiempo de ejecución utilizando una distancia de suspención de 0.15](../uploads/Main/WheelColliderGizmo.jpg)
Debido a que los carros puede lograr grandes velocidades, obtener una geometría de colisión en la pista de carreras correcta es muy importante. Específicamente, el collision mesh no debería tener pequeños bultos o golpes que componen los modelos visibles (e.g. postes de cercas). Usualmente un collision mesh para la pista de carreras está hecha de manera separada del mesh visible, hace el collision mesh tan suave como se pueda. También no debería tener objetos delgados - si usted tiene un borde de pista delgado, hágalo más ancho en un collision mesh (o quite completamente el otro lado si el carro no puede nunca ir ahí).
La fricción de la llanta puede ser descrita por la Wheel Friction Curve mostrada debajo. Hay curvas separadas para la dirección hacía adelante (rodar) de la rueda y para la dirección hacia los lados. En ambas dirección lo que primero se determina es qué tanto la llanta se resbala (basado en la diferencia de velocidad entre el caucho de la llanta y la calle). Luego este valor de deslizamiento es utilizado para encontra la fuerza de la llanta ejercida en el punto de contacto.
La curva toma una medida del deslizamiento del neumático de la llanta como un input y da una fuerza como un output. La curva es aproximada por una ranura de dos piezas. La primera sección va desde (0 , 0) a _ (ExtremumSlip , ExtremumValue), a tal punto que la tangente de la curva es cero. La segunda sección va desde (ExtremumSlip , ExtremumValue)_ to (AsymptoteSlip , AsymptoteValue), dónde la tangente de la curva es nuevamente cero:
La propiedad de llantas reales es que para un deslizamiento de neumáticos bajo estas pueden ejercer altas fuerzas, ya que el caucho compensa al neumático al estirarse. Luego cuando el neumático se pone muy alto, las fuerzas son reducidas ya que la llanta comienza a deslizarse o girar. Por lo tango, las curvas de fricción de la llanta tienen una forma como la imagen de arriba.
Propiedad: | Función: |
---|---|
Extremum Slip/Value | Punto extremo de Curva. |
Asymptote Slip/Value | Punto asintótico de la curva. |
Stiffness | Multiplicador para el Extremum Value y Asymptote Value (predeterminado es 1). Cambia la rigidez de la fricción. Configurando esto a cero va a completamente desactivar toda la fricción de la rueda. Usualmente usted modifica la rigidez en el tiempo de ejecución para simular varios materiales del suelo desde scripting. |