es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo hacer funcionar la función de conducción en Unity.

La función que quiero crear es como montar a caballo. Cuando el jugador A salta sobre el jugador B, se quedarían pegados uno al otro, y el jugador A tendría el control de ambos. El jugador A puede mover a los dos jugadores como si fueran un solo cuerpo. Primero, agrego una fixedjoint entre los rigidbody de los dos jugadores, y luego establezco al jugador A como objeto principal del jugador B. Esto funciona la mayoría del tiempo. Pero el problema con FixedJoint es que cuando la velocidad del jugador A es demasiado alta, tiemblan bastante. ¿Hay alguna manera de solucionar este problema?

riderGamePlayer.transform.position = transform.position + Vector3.up * riderY;
riderGamePlayer.gameObject.AddComponent<fixedjoint>();
riderGamePlayer.gameObject.GetComponent<fixedjoint>().connectedBody = transform.GetComponent<rigidbody>();
transform.parent = riderGamePlayer.transform;

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para solucionar el problema de movimiento tembloroso cuando la velocidad de PlayerA es demasiado rápida al montar en PlayerB, podemos intentar ajustar las propiedades del componente FixedJoint. Específicamente, podemos experimentar con aumentar el valor de la propiedad “breakForce” para hacer la unión más rígida y menos propensa a romperse bajo tensión. Otra opción es utilizar una unión configurable en su lugar, lo cual proporciona un mayor control sobre la física de la unión y puede ser más adecuado para los requisitos específicos de la función de montar. Además, podemos intentar ajustar las configuraciones de física para los rigidbodies involucrados, como aumentar su masa o ajustar sus valores de arrastre y arrastre angular para reducir el movimiento no deseado.

Comments are closed.