我正在使用Unity
开发一个应用程序,我在其中创建了两个Scene
。如果用户注视Scene 1
中的一个对象,它应该转到{{1} }}。我有下面的代码,但是我收到了错误。
消息代码: -
Scene 2
答案 0 :(得分:1)
您应该使用适当的值初始化变量,并使用scene manager to load new scene,如下所示 -
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.EventSystems;
public class time : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler {
public float gazeTime = 2f;
private float timer = 0f;
private bool gazedAt = false;
// Use this for initialization
void Start () {
}
void Update(){
if (gazedAt)
{
timer += Time.deltaTime;
if (timer >= gazeTime)
{
SceneManager.LoadScene("OtherSceneName");
timer = 0f;
}
}
}
public void ss(string scenetochangeto)
{
gameObject.SetActive (true);
}
public void OnPointerEnter(PointerEventData eventData)
{
//Debug.Log("pointer enter");
gazedAt = true;
}
public void OnPointerExit(PointerEventData eventData)
{
//Debug.Log("pointer exit");
gazedAt = false;
}
}
使用您需要加载的场景名称("OtherSceneName"
)更改scenetochangeto
。
答案 1 :(得分:0)
你没有指明你得到的错误,但要注意:Update()
是Unity引擎的“特殊”功能,需要大写U.它永远不会像现在一样工作。