Я пытаюсь рассчитать, под каким углом ударить по бильярдному шару, и предсказать, куда пойдет мяч. Я думал, что целевой шар должен двигаться в нормальном направлении.. но он движется в совершенно другом направлении.
RaycastHit2D hit = Physics2D.CircleCast(cue.position, _radius, dir, 100f, ~(ignoreLayer));
if (hit.collider != null)
{
Debug.DrawRay(hit.collider.transform.position, -1f * hit.normal,
Color.green, Time.fixedDeltaTime);
}
Вот результат:
Установить скорость
rb.velocity = dir * force;
Результат:
Как найти точное направление движения, спасибо
Изменить:
Я пробовал Double Radius Casting, это работает только наполовину ... только когда луч находится внутри внутреннего круга.