【发布时间】:2015-08-02 00:00:53
【问题描述】:
对于一个统一的游戏组项目,我目前的任务是找出以下内容:在游戏中,玩家迟早会找到一张放在桌子上的图片(在这种情况下是地图),当点击map 它将变成屏幕大小,因此您可以正确查看它,并且再次单击时,地图应该回到它在桌子上的位置。我想通过使用 UI Canvas 和 OnMouseDown 函数来实现这一点。
这是我的自动取款机:
using UnityEngine;
using System.Collections;
public class map : MonoBehaviour {
private Canvas MapDummy;
void Awake()
{
MapDummy = GetComponent<Canvas>();
}
void OnMouseDown()
{
if(MapDummy.renderMode == RenderMode.WorldSpace)
{
MapDummy.renderMode = RenderMode.ScreenSpaceOverlay;
}
}
void Update()
{
if(MapDummy.renderMode != RenderMode.WorldSpace
&& Input.GetMouseButtonDown(0))
{
MapDummy.renderMode = RenderMode.WorldSpace;
}
}
}
我没有错误,但没有任何反应。我是否以正确的方式放置组件?首先,我创建了一个 GameObject UI 画布,将组件图像添加到其中,并将名为“MapDummy”的图片作为 SourceImage 添加到图像中。我使用设置“纹理类型:Sprite”将 MapDummy 作为资产导入。然后我创建了脚本并将其放到画布上。这是正确的方法吗?
【问题讨论】:
标签: image canvas unity3d switch-statement render