相比Fungus, PlayMaker就是多了一层状态转换的逻辑是吧? 本质来说, 他们都是一个个命令的执行.
时间: 2024-04-04 14:31:33 浏览: 17
是的,你说得对。本质上,Fungus和PlayMaker都是通过一系列命令(例如打开UI菜单、更改脚本变量等)来实现一些特定的逻辑。Fungus提供了一种更加基于分支故事的方式,而PlayMaker则提供了一种更加基于状态机的方式。
在PlayMaker中,你需要创建一个状态机来描述对象的各种状态和转换条件。当对象的状态改变时,状态机会自动地处理状态之间的转换,并执行相应的命令。因此,PlayMaker相对于Fungus来说,多了一层状态转换的逻辑。
总的来说,Fungus和PlayMaker都是通过执行一系列命令来实现特定的逻辑。它们的主要区别在于它们的组织方式和可视化工具。Fungus更加基于分支故事,而PlayMaker更加基于状态机。
相关问题
一个物体, 点击它会进行一段对话, 然后打开某个UI菜单, 并改变一些脚本变量. 实现这个逻辑使用Fungus好还是PlayMaker好?
这个逻辑可以使用Fungus和PlayMaker两个插件都可以实现。
使用Fungus,你可以创建一个简单的分支故事,其中包含一个对话和一个打开UI菜单的事件。在对话部分,你可以添加一个Fungus的Say Dialog来实现对话,然后在对话结束后使用Fungus的Call Menu打开UI菜单。最后,你可以使用Fungus的Set Variable来更改需要更改的脚本变量。
使用PlayMaker,你可以创建一个状态机来实现这个逻辑。在状态机中,你可以使用PlayMaker的UI Actions来打开UI菜单,使用PlayMaker的Get/Set Property来更改需要更改的脚本变量。然后,你可以在状态机中创建一个事件,当用户点击物体时,状态机会进入到对话状态,显示对话,然后返回到主状态,打开UI菜单并更改脚本变量。
总的来说,Fungus和PlayMaker都可以实现这个逻辑,但是具体使用哪个插件取决于你对这两个插件的熟悉程度和你的个人偏好。如果你已经熟悉其中一个插件,那么使用它来实现这个逻辑可能会更加容易。
在unity中有多个场景,如何使fungus中的一个flowchart存在于所有场景中
要使Fungus中的一个Flowchart存在于所有场景中,可以使用DontDestroyOnLoad()函数,该函数可以使一个游戏对象在场景切换时不被销毁。下面是具体的实现步骤:
1. 创建一个空的游戏对象,并将Fungus的Flowchart组件添加到该游戏对象上;
2. 在该游戏对象的脚本中,使用DontDestroyOnLoad()函数将该游戏对象标记为不销毁;
3. 将该游戏对象放置在第一个被加载的场景中,这样它就能够在所有场景中存在。
下面是一个示例代码:
```
using UnityEngine;
using System.Collections;
using Fungus;
public class FlowchartManager : MonoBehaviour {
public Flowchart flowchart;
void Awake() {
DontDestroyOnLoad(gameObject);
}
}
```
在该示例代码中,我们定义了一个FlowchartManager的脚本,并将其附加到一个空的游戏对象上。在该脚本中,我们定义了一个名为flowchart的Fungus Flowchart组件,并在Awake()函数中使用DontDestroyOnLoad()函数将该游戏对象标记为不销毁。
最后,将该游戏对象放置在第一个被加载的场景中,即可使该Flowchart存在于所有场景中。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)