@Wadim_wadim2000

Unity как добавить сюда offset?

У меня вот тут есть скрипт, но он сделан так, что растягивает линию чисто от точки до точки. Подскажите, как сделать так, чтобы линия растягивалась от спрайта до места клика (WorldPos) - например offset, ну то есть, не до точки, а немного ближе.

вот скрипт:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class w : MonoBehaviour
{
    public GameObject arrow_end;
    public GameObject arrow_line;
    public GameObject player;
    public float arrow_end_offset;
    void Start()
    {
        arrow_end.SetActive(false);
    }
    void Update()
    {
        if(Input.GetMouseButtonDown(0))
        {
            var mousePos = Input.mousePosition; mousePos.z = 60f;
            var worldPos = Camera.main.ScreenToWorldPoint(mousePos);
            var sprite_pos = player.transform.position;
            var rot_diff = sprite_pos - worldPos;
            var rotation = (Mathf.Atan2(rot_diff.y, rot_diff.x) * Mathf.Rad2Deg) - 0f;

         
            float dist = Vector2.Distance(sprite_pos, worldPos);

            arrow_end.transform.position = worldPos;
            arrow_end.transform.rotation = Quaternion.Euler(0.0f, 0.0f, rotation);
            arrow_end.transform.position += arrow_end_offset * - arrow_end.transform.up;
            arrow_end.transform.gameObject.SetActive(true);

            arrow_line.transform.position = (sprite_pos + worldPos) / 2f;
            arrow_line.transform.right = Vector3.Normalize(sprite_pos - worldPos);
            Vector3 scale = new Vector3(Vector3.Distance(worldPos, sprite_pos), 1f, 1f);
            arrow_line.transform.localScale = scale;
            
          

           

        }      
    }
}
  • Вопрос задан
  • 37 просмотров
Пригласить эксперта
Ответы на вопрос 1
DanceM
@DanceM Куратор тега Unity Game Engine
Кто хочет -ищет способ, кто не хочет -ищет причину
Расчеты написать надо. Взять одну точку, вторую, получить вектор, нормализировать вектор, умножить на величину смещения, после отнять или прибавить куда надо.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы