C#-Skript zum Erstellen eines Cursor-Trail-Effekts in Unity
Unten sehen Sie ein Skript, das eine Spur generiert, die dem Mauszeiger in Unity folgt.
- Erstellen ein neues Skript, nennen Sie es SC_CursorTrail und fügen Sie dann den folgenden Code ein:
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));
}
}
- Hängen Sie SC_CursorTrail an die Hauptkamera an
Drücken Sie „Play“ und beobachten Sie die Spur, die dem Cursor folgt.