Как заставить объект падать на одной линии с целью при применении эффекта ветра?

Я делаю игру с бумажным броском в Unity3d. Я реализую эффект ветра, используя постоянную силу. Я хотел знать, как заставить объект падать на одной линии с целью, т. е. если объект проходит над целью, он должен идти или падать на одной линии с целью, а не позади или впереди цели. В настоящее время, когда я смахиваю с постоянной силой, для разных углов смахивания расстояние, пройденное объектом, различается. Помощь будет высоко оценена.


person bhoomi    schedule 06.02.2013    source источник


Ответы (1)


В FixedUpdate используйте Physics.Raycast, чтобы проверить, находится ли объект над целью. Если это так, установите значения x и z для rigidbody.velocity равными нулю (при условии, что y является осью вверх/вниз в вашем игровом мире) и отключите компонент ConstantForce (т.е. gameObject.GetComponent<ConstantForce>().enabled = false). Обратите внимание, что это не будет самым реалистичным из движений, так как будет казаться, что объект внезапно движется прямо вниз, когда он проходит над целью, но похоже, что это то, что вы хотите.

person Ghopper21    schedule 10.02.2013