【发布时间】:2017-12-02 18:17:41
【问题描述】:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class mouseScript : MonoBehaviour {
public Texture2D cursorTexture;
public CursorMode cursorMode = CursorMode.Auto;
public Vector2 hotSpot = Vector2.zero;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
void OnMouseEnter()
{
Debug.Log("texture mouse " + cursorTexture + " cusor visiblity" + Cursor.visible);
Cursor.SetCursor(cursorTexture, hotSpot, cursorMode);
}
void OnMouseExit()
{
Cursor.SetCursor(null, Vector2.zero, cursorMode);
}
}
我更改了鼠标图像属性:
- 纹理类型 - 光标
- 读/写 - 启用 html5 - 覆盖 webgl
- 最大尺寸 - 32
- 格式 - RGB
- 压缩 - DXT1
我用这个编码来改变鼠标光标。在统一编辑器中它工作正常,当我导出到 html5 鼠标时,光标没有改变。
当我在浏览器中调试场景时,它会显示如下错误:
加载此 URL 时出错:无法加载 blob 的源代码:http://localhost:56077/f3a83177-83ac-4798-81fe-1b07da4548c2。 [异常...“无法打开输入源'file:////localhost:56077/f3a83177-83ac-4798-81fe-1b07da4548c2'”nsresult:“0x80520001(NS_ERROR_FILE_UNRECOGNIZED_PATH)”位置:“JS 框架 :: 资源: //gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/DevToolsUtils.js :: mainThreadFetch :: line 518" data: yes] 堆栈:mainThreadFetch@resource://gre/modules/commonjs/toolkit/loader.js -> resource://devtools/shared/DevToolsUtils.js:518:5 _getSourceText/ resource://devtools/server/actors/source.js:393:27 process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:922:23 walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:806:7 scheduleWalkerLoop/ resource://gre/modules/Promise-backend.js:742:11 行:518,列:0
【问题讨论】:
-
虽然我的评论不能完全解决您的问题,但您可以创建一个Javascript plugin 来更改 HTML 正文元素的类。然后,根据body的class,你就可以change the cursor image in CSS
标签: c# html unity3d mouse-cursor unity-webgl