Скрипт C# для создания эффекта следа курсора в Unity

Ниже приведен скрипт, который генерирует след, следующий за курсором мыши в Unity.

Sharp Coder Видео проигрыватель

  • Создайте новый скрипт, назовите его SC_CursorTrail и вставьте в него приведенный ниже код:

SC_CursorTrail.cs

using UnityEngine;

public class SC_CursorTrail : MonoBehaviour
{
    public Color trailColor = new Color(1, 0, 0.38f);
    public float distanceFromCamera = 5;
    public float startWidth = 0.1f;
    public float endWidth = 0f;
    public float trailTime = 0.24f;

    Transform trailTransform;
    Camera thisCamera;

    // Start is called before the first frame update
    void Start()
    {
        thisCamera = GetComponent<Camera>();

        GameObject trailObj = new GameObject("Mouse Trail");
        trailTransform = trailObj.transform;
        TrailRenderer trail = trailObj.AddComponent<TrailRenderer>();
        trail.time = -1f;
        MoveTrailToCursor(Input.mousePosition);
        trail.time = trailTime;
        trail.startWidth = startWidth;
        trail.endWidth = endWidth;
        trail.numCapVertices = 2;
        trail.sharedMaterial = new Material(Shader.Find("Unlit/Color"));
        trail.sharedMaterial.color = trailColor;
    }

    // Update is called once per frame
    void Update()
    {
        MoveTrailToCursor(Input.mousePosition);
    }

    void MoveTrailToCursor(Vector3 screenPosition)
    {
        trailTransform.position = thisCamera.ScreenToWorldPoint(new Vector3(screenPosition.x, screenPosition.y, distanceFromCamera));
    }
}

Нажмите «Воспроизвести» и наблюдайте за следом, следующим за курсором.

Рекомендуемые статьи
Скрипт для создания выключателя света в Unity
Скрипт просмотра мыши для Unity
Скрипт стрельбы из огнестрельного оружия с использованием Raycast и снарядов для Unity
Учебное пособие по 2D-атакам в ближнем бою для Unity
Эффект замедленного движения в Unity
Как настроить джойстик для движения в Unity
Учебное пособие по таймеру обратного отсчета для Unity