Script C# pour créer un effet de trace de curseur dans Unity

Vous trouverez ci-dessous un script qui génère une trace qui suit le curseur de la souris dans Unity.

Sharp Coder Lecteur vidéo

  • Créez un nouveau script, nommez-le SC_CursorTrail puis collez-y le code ci-dessous:

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));
    }
}
  • Attacher SC_CursorTrail à la caméra principale

Appuyez sur Play et observez le sentier qui suit le curseur.

Articles suggérés
Script pour créer un interrupteur d'éclairage dans Unity
Effet de ralenti dans Unity
FPC Swimmer - Un atout Unity complet pour les environnements aquatiques immersifs
Script de recherche de souris pour Unity
Script de tir au pistolet basé sur Raycast et Projectile pour Unity
Comment configurer le contrôleur de joystick pour le mouvement dans Unity
Tutoriel d'attaque de mêlée 2D pour Unity