当前位置: 首页 > backend >正文

unity 鼠标更换指定图标

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);
    }
}

http://www.xdnf.cn/news/6225.html

相关文章:

  • MongoDB 的核心概念(文档、集合、数据库、BSON)是什么?
  • 如何选择合适的企业级商城系统前端状态管理方案?
  • 【NLP 困惑度解析和python实现】
  • 并查集原理及实现:路径压缩,按秩合并
  • 【AAAI 2025】 Local Conditional Controlling for Text-to-Image Diffusion Models
  • 《P2345 [USACO04OPEN] MooFest G》
  • 深度学习Dropout实现
  • Linux 内核 IPv4 协议栈中的协议注册机制解析
  • 在 Angular 中, `if...else if...else`
  • 默认打开程序配置错误怎么办?Windows 默认打开文件类型设置
  • 一致性哈希
  • 数据结构:ArrayList简单实现与常见操作实例详解
  • C#高级编程:加密解密
  • 自动化测试避坑指南:5大常见问题与应对策略
  • Java面向对象三大特性深度解析
  • Pass-the-Hash攻击原理与防御实战指南
  • 进程间通信(Windows事件)
  • 【教程】Docker方式本地部署Overleaf
  • 内存划分包括 Flash存储器、SRAM 和 外设寄存器
  • nginx 出现大量connect reset by peer
  • 第二章日志分析-apache日志分析
  • 秒删node_modules[无废话版]
  • 数据结构(八)——查找
  • 达梦数据库 【-6111: 字符串转换出错】问题处理
  • HVV蓝队实战面试题
  • 全新开发-iVX图形化编程VS完整IDE
  • 有关多线程
  • vue中,created和mounted两个钩子之间调用时差值受什么影响
  • Ubuntu摄像头打开失败
  • 16S18S_OTU分析(3)