繁体   English   中英

从某个角度出发统一场景?

[英]Start scene from certain point in unity?

我在游戏开发方面是一个新手,我将Unity与结合使用Blender中制作的Models的C#结合使用。

我想知道是否有办法从某个角度“播放”场景。 例如,如果我有一个游戏(为简单起见,现在是单个场景)并且想测试游戏的某个部分(例如,我想测试该场景中第5个任务中的第3个,那么假设您只能访问第2个任务(如果您成功完成了第一个),依此类推)。

但是我真的不想在整个场景中玩一段时间,只是想达到我最初想要测试的程度。

我怎样才能做到这一点? 而且,如果无法通过某些简单方式实现此目标,是否有某种解决方法?

谢谢!

不知道我是否理解正确,但是如果您想在项目中从一个场景跳到另一个场景,则始终可以使用sceneManager。

https://docs.unity3d.com/ScriptReference/SceneManagement.SceneManager.LoadScene.html

希望能有所帮助。

在您的课程中,创建一个变量,其中包含启动任务的值。 例如3。

然后出于测试目的,在Start()方法中,可以检查该变量的值并编写一些代码以更改场景中的元素以表示相应的quest(在这种情况下为3),例如字符的位置,或者下一个目标或与任务相关的任何事物。

您可以将此变量设置为公共变量,以便可以从单位更改其值,而不必每次都打开脚本。

我不确定这对您的游戏是否可行,但是如果您对每个任务有很多改变,那么最好为每个任务设置不同的场景。

这是有关我的操作方式的示例代码。希望对您有所帮助。创建一个名为GoScene1的C#脚本

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class GoScene1 : MonoBehaviour {
    public void Scene1Change() {
        Application.LoadLevel("GoScene1");
    }
}

然后创建一个名为GoScene2的C#脚本

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class GoScene2 : MonoBehaviour {
    public void Scene2Change() {
        Application.LoadLevel("GoScene2");
    }
}

这是屏幕截图... 在此处输入图片说明 在此处输入图片说明

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM