🎬学会如何在Unity项目中改变 鼠标样式 !📢前言
🏳️🌈第一种方式:在编辑器中修改鼠标样式一起里看一下吧! 修改图片样式首先我们需要一个图片来代替默认的鼠标样式 那就在网上随意找一个自己看着顺眼的来试一下吧!
比如上面我找了几个图片,然后导入到Unity中,会发现图片默认是Default格式的 这个格式是不行的,要进行处理,将这几张图片全改为Cursor格式 修改方法:选中图片,然后在属性面板上将Texture Type改为Cursor,如下图所示 改完之后记得点一下右下角的Apply就好了!
修改鼠标样式在Edit->Project Setting->Player->Default Cursor中设置,将更改好的图片拖拽赋值即可 如下图所示:
🏳️🌈第二种方法:通过代码进行修改核心代码释义核心代码也很简单,就下面这一行: Cursor.SetCursor(cursorTexture1, Vector2.zero, CursorMode.Auto);
方法中的参数分别是: Texture2D texture, //要替换的光标图片 Vector2 hotspot, // 响应区域 (vector2.zero) CursorMode cursorMode//渲染形式,auto为平台自适应显示
只要在想要修改鼠标样式的时候调用这一行代码,将里面的第一个参数赋值成我们想要的图片样式就好了! 实例代码操作知道了修改方法,我接下来直接上一个完整代码看一下效果 using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI;
public class Test1 : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler, IPointerUpHandler, IPointerDownHandler { public Button _btn1;
public Texture2D cursorTexture1;//要替换的光标图片1 public Texture2D cursorTexture2;//要替换的光标图片2 public Texture2D cursorTexture3;//要替换的光标图片3
Texture2D t1;
private void Awake() { _btn1.onClick.AddListener(() => { Cursor.SetCursor(cursorTexture3, Vector2.zero, CursorMode.Auto); }); }
//鼠标进入3D物体后执行 void OnMouseEnter() { Cursor.SetCursor(cursorTexture1, Vector2.zero, CursorMode.Auto); } //鼠标离开3D物体后执行 void OnMouseExit() { Cursor.SetCursor(null, Vector2.zero, CursorMode.Auto); } //鼠标进入UI后执行 public void OnPointerEnter(PointerEventData eventData) { Cursor.SetCursor(cursorTexture1, Vector2.zero, CursorMode.Auto); } //鼠标离开UI后执行 public void OnPointerExit(PointerEventData eventData) { Cursor.SetCursor(null, Vector2.zero, CursorMode.Auto); } //在UI中鼠标点击后执行 public void OnPointerDown(PointerEventData eventData) { Cursor.SetCursor(cursorTexture2, Vector2.zero, CursorMode.Auto); } //在UI中鼠标抬起后执行 public void OnPointerUp(PointerEventData eventData) { Cursor.SetCursor(cursorTexture1, Vector2.zero, CursorMode.Auto); } }
将该脚本挂载到想要改变样式的UI上和一个3D物体上,然后将图片拖上去即可 这里注意,图片的样式还是Cursor才行!
我在代码中添加了几个鼠标的接口,分别是鼠标进入UI、离开UI、鼠标点击和抬起后的回调方法! 然后在不同的回调进行不同的鼠标样式切换就好了,下面来看一下实际效果:
可以看到默认是白色的,这是第一种方法中设置的。 然后进入到下面的UI中就会变成黄色,在该UI中按下鼠标就会变成绿色 进入3D物体Cube后也会变成黄色,点击测试按钮就会变成蓝色 这都是在代码中设置的,可以按照自己的需求修改即可!
👥总结本篇文章用两种方法介绍了怎样在Unity中修改鼠标的样式 以及写了一个简单的实例来看一下效果,在实际项目开发中还是会用到的! 今天的小技巧你学会了吗!有用的话记得三连支持一下嗷~
|