欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【Unity3D】改变鼠标样式

程序员文章站 2022-07-12 23:35:36
...

Unity3D改变鼠标样式很简单,直接就封装好方法,以满足在游戏里面定制自己的鼠标样式的需求。下面举一个例子来说明这个问题。我需要将光标改成如下的形状:

【Unity3D】改变鼠标样式

注意这张图片是经过处理的png,白色的地方都用photoshop抠成透明了。

要在游戏里面实现如下的效果:

【Unity3D】改变鼠标样式

将a.png导入Unity3D,可以在主摄像机挂载如下的脚本CursorChange.cs:

using UnityEngine;
using System.Collections;

public class CursorChange : MonoBehaviour
{
    public Texture2D cursorTexture;
    void Start()
    {
        Cursor.SetCursor(cursorTexture, Vector2.zero, CursorMode.Auto);
    }
}
之后将导入的a.png设置为不压缩、完全保真:

【Unity3D】改变鼠标样式

再赋予给CursorChange.cs中的Texture2D cursorTexture即可:
【Unity3D】改变鼠标样式

这里脚本就一行,就要是3个参数,第1个参数cursorTexture大家已经知道是什么了,第2个参数Vector2.zero,也就是二维坐标(0,0)是指取材质图片a.png的左上角作为点击点:

【Unity3D】改变鼠标样式

第3个参数CursorMode.Auto是指渲染形式,Audo为平台自适应显示,支持此样式则显示,不支持不显示。ForceSoftware强制平台显示此样式。这东西发布到安卓平台应该会隐藏的。