Как сделать hit.point с оффестом Unity?

Для того чтобы получить точку попадания (hit.point) с учетом оффсета в Unity, следует использовать метод RaycastHit.point и добавить к нему ваш оффсет.

Прежде всего, необходимо обработать столкновение объектов с помощью Raycast, чтобы получить структуру данных RaycastHit, содержащую информацию о попадании (точка попадания, нормаль и т.д.).

Вот как можно получить hit.point с учетом оффсета:

Vector3 offset = new Vector3(0.1f, 0, 0); // Устанавливаем оффсет по x

RaycastHit hit;
if (Physics.Raycast(transform.position, transform.TransformDirection(Vector3.forward), out hit, Mathf.Infinity))
{
    Vector3 hitPointWithOffset = hit.point + offset;
    
    Debug.Log("Точка попадания с оффсетом: " + hitPointWithOffset);
}

В данном примере мы сначала выполняем Raycast в направлении передней оси объекта, используя transform.TransformDirection(Vector3.forward), затем проверяем попадание и, если оно произошло, получаем точку попадания в переменной hit.point. И, наконец, добавляем к этой точке оффсет offset, чтобы получить итоговую точку попадания с учетом оффсета.

Обратите внимание, что данное решение предполагает, что у вас уже есть объект, вызывающий Raycast (например, скрипт на объекте с компонентом Collider). Если у вас другая структура сцены или другие условия, код может отличаться.

Надеюсь, что данное объяснение поможет разобраться в том, как получить точку попадания с оффсетом в Unity! Если у вас возникнут дополнительные вопросы, не стесняйтесь спрашивать.