스티어링을 추가하려는 간단한 하향식 자전거 게임이 있습니다. 자전거의 방향과 속도를 결정하기 위해 앞 바퀴의 방향을 사용하는 방법을 알고 싶습니다.
void Update ()
{
//Get input from user Vertical: 0 to 1, Horizontal -1 to 1
float forwardInput = Input.GetAxis("Vertical");
float sidewaysInput = Input.GetAxis("Horizontal") * m_steeringAmount;
// Turn front wheel
m_frontWheelTransform.localEulerAngles = new Vector3(0, sidewaysInput, 90);
// get speed and drag
float speed = m_velocity.magnitude;
Vector3 forwardDrag = -m_forwardDragConstant * m_velocity * speed;
// calculate acceleration
float engineForce = forwardInput * m_enginePower;
Vector3 forwardTraction = transform.forward * engineForce;
Vector3 forwrdForce = forwardTraction + forwardDrag;
Vector3 acceleration = forwrdForce / m_mass;
// update velocity and position
m_velocity += acceleration * Time.deltaTime;
transform.localPosition += m_velocity * Time.deltaTime;
}
자전거 속도를 전륜과 후륜에 적용하고 자전거의 방향을 결정하기 위해 위치의 차이를 사용하려고했지만 앞으로 드래그하면 혼란 스럽습니다.
madshogo 의견을 기반으로 편집