【发布时间】:2015-02-07 15:21:02
【问题描述】:
我正在制作一个类似块的游戏,现在我想在特定块上有鼠标悬停时实现突出显示块(游戏对象)。
我尝试过这样的事情(我不确定这是不是最好的方法,但这只是我的想法):
#pragma strict
public class BlockSelecting extends MonoBehaviour {
public var hovering : boolean = false;
public var xpos : float;
public var ypos : float;
function Start () {
}
function Update () {
}
function OnMouseExit () {
hovering = false;
}
function OnMouseOver ()
{
hovering = true;
xpos = Input.mousePosition.x;
ypos = Input.mousePosition.y;
}
function OnGUI ()
{
GUI.DrawTexture(new Rect(xpos, xpos, 26, 26), (Resources.Load("highlight") as Texture2D));
}
}
这不起作用,因为纹理没有显示鼠标指针的位置。有什么我看不到的,或者这是错误的方法吗?我的高亮资源只是一个透明矩形的 26x26(块为 25x25)2D 纹理,所以看起来它被高亮了...
附:我的计划是使用悬停布尔值来检查玩家是否仍在悬停,如果不是,则应删除/隐藏纹理(有关如何执行此操作的任何想法?)。
【问题讨论】:
标签: unity3d hover unityscript