1.准备两张图  要求图片导入设置如下

  • 将 Texture Type 改为 Cursor

  • 确保 Read/Write Enabled 已勾选

  • 取消勾选 Generate Mip Maps

  • 将 Filter Mode 设为 Point (保持清晰边缘)

  • 将 Compression 设为 None (无压缩)

2.创建脚本,把脚本挂到场景中  ,该场景就有了效果

脚本如下:

using UnityEngine;


//更换鼠标箭头
public class DualStateCursor : MonoBehaviour
{
    [Header("Cursor Textures")]
    public Texture2D normalCursor;    // 默认状态图标
    public Texture2D clickedCursor;   // 点击状态图标
    public Vector2 hotSpot = Vector2.zero; // 点击热点位置
    public CursorMode cursorMode = CursorMode.Auto;

    private void Start()
    {
        // 初始化设置为普通图标
        SetNormalCursor();
    }

    private void Update()
    {
        // 鼠标按下时切换图标
        if (Input.GetMouseButtonDown(0))
        {
            SetClickedCursor();
        }
        // 鼠标释放时恢复图标
        else if (Input.GetMouseButtonUp(0))
        {
            SetNormalCursor();
        }
    }

    private void SetNormalCursor()
    {
        Cursor.SetCursor(normalCursor, hotSpot, cursorMode);
    }

    private void SetClickedCursor()
    {
        Cursor.SetCursor(clickedCursor, hotSpot, cursorMode);
    }

    private void OnDestroy()
    {
        // 游戏结束时恢复默认光标
        Cursor.SetCursor(null, Vector2.zero, cursorMode);
    }
}

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐