Хорошо, для этой задачи мне нужно скоординировать физику удара по игровому объекту в определенной точке и анимацию, чтобы создать иллюзию удара по персонажу, и он отступает , как будто движется этой точкой контакта.
У меня есть твердые тела как по поражающему объекту, так и по поражаемому персонажу, и я могу сказать, когда поражающий объект входит в коробочный коллайдер персонажа.Сначала я подумал о том, чтобы создать импульс в точке контакта, а затем активировать мою предварительно созданную анимацию персонажа -
Vector3 direction = (this.transform.position - collider.transform.position) / (this.transform.position - collider.transform.position).magnitude;
this.transform.GetComponent<Rigidbody>().AddForce(direction, ForceMode.Impulse);
Проблема заключается в том, что персонаж просто медленно плывет против объекта удара (у Rigidbody проверена гравитация).на персонажа), и в зависимости от того, где персонаж стоит, анимация выглядит не скоординированной с ударом.
Я хотел посмотреть, есть ли оптимизированный способ сделать это - как я могу создать реалистичный удар / движениеобратная ситуация в Unity?