Unity3d动画光标

Unity3d动画光标

问题描述:

对于改变光标我用这个:Unity3d动画光标

UnityEngine.Cursor.SetCursor(CursorTexture, 
new Vector2(CursorTexture.width, CursorTexture.height) * 0.5f, 
CursorMode.ForceSoftware); 

我想要的东西发生在动画光标。

是否可以使用Cursor.SetCursor来初始化游标?

+0

为什么不可能这样?只要按设定的时间间隔更改光标,您已经有了这样的代码。 – LearnCocos2D 2014-09-25 09:59:02

+0

我创建了18个图像(旋转10度)。我尝试使用这种方法,但是当我在浏览器中运行游戏时,游标不旋转,但在编辑器中它有效。 公共的IEnumerator AnimateCursor() { \t \t而(真) \t \t { \t \t如果(this.IsAnimatable(this.Cursor)) \t \t { \t \t cursorIndex ++; \t \t var t = GetTexture(this.Cursor,this.cursorIndex); \t \t \t \t如果(T == NULL) \t \t \t \t { \t \t \t \t \t cursorIndex = 0; \t \t \t \t \t t = GetTexture(this.Cursor,this.cursorIndex); \t \t \t \t} \t \t \t \t this.SetCursorTexture(T); \t \t \t} \t \t \t收率返回新WaitForSeconds(0.1F); \t \t} \t} – Oksana 2014-09-26 03:14:58

+0

也许存在其他方法,我可以使用一个图像(许多图像istead)。 – Oksana 2014-09-26 03:20:49

你可以像LearnCocos2D所说的那样做。问题在于它会闪烁很多,而你最可能遇到的另一个问题是鼠标指针会很慢。这是因为软件鼠标指针不是由硬件渲染的,所以它总是在指针设备上的实际用户输入之后的两帧。

然后,为了使动画纹理在网络浏览器上工作,您需要确保导出所需的着色器,如果您的网络播放器项目的资源文件夹上有任何内容,因为许多着色器没有被导出到Web构建默认。如果您使用标准漫反射,它应该可以工作,但我认为对于鼠标指针,因为它很可能使用透明度,所以默认情况下它可能不起作用。您需要查找正在使用的实际着色器,并通过手动将其导出用于构建。

Unity至少应该在PC上支持硬件动画光标,但可惜它不会...