启动并运行后,下面是一些后续步骤,帮助您熟悉 Fungus 中的故事讲述功能。
添加角色
我们可以将 Say 命令说出的单词与特定角色关联起来。考虑以下汤姆和杰瑞的场景:
为了在 Fungus 中实现上述功能,我们需要创建并命名两个角色。请执行以下操作:
- (设置)创建一个新场景,在场景中添加一个Fungus Flowchart,并在Flowchart中选择Block。
- 将流程图块重命名为“猫和老鼠”。
- 选择菜单:
Tools | Fungus | Create | Character
:
- 现在您应该可以在层次结构窗口中看到一个名为“Character”的新游戏对象“Character”。
- 确保选中游戏对象“Character”,然后在 Inspector 中编辑其属性。将游戏对象重命名为“Character1 - Tom”,然后在其 Character (Script) 组件中将名称文本设置为“Tom”,将名称颜色设置为红色:
- 重复前两个步骤创建第二个角色“Character2 - Jerry”,然后在其角色(脚本)组件中将名称文本设置为“Jerry”,将名称颜色设置为蓝色:
- 现在我们有两个角色游戏对象,我们可以根据需要将它们分配给任何 Say 命令。
- 为汤姆创建一个 Say Command,文本为“那只老鼠在哪里?”,将该 Say Command 的角色设置为“Character1 - Tom”:
- 对剩余 3 条语句重复上述步骤,得到:
- 杰瑞“那只猫在哪里?”
- 汤姆“啊哈……”
- 杰瑞“Arrrrgggggggg!!!!!!!”从Hiearchy中的Character游戏对象菜单中为每个说命令分配适当的角色。
- 现在,你的 Block 中应该有 4 个 Say 命令序列:
- 当你运行场景时,你应该看到一系列语句,清楚地显示谁在说什么 - 既给出了角色名称,并且该名称根据我们为角色游戏对象设置的属性着色(红色代表汤姆,蓝色代表杰瑞):
人物肖像图片
如果为角色添加一个或多个肖像图像,则该角色的每个 Say 命令都可以定义应显示哪些肖像图像,以及角色的(彩色)名称。
要为角色添加肖像图像,请执行以下操作:
- (设置)创建一个新场景(Scene),在场景中添加一个Fungus Flowchart,并在Flowchart中选择Block。
- 将流程图块重命名为“The case of the missing violin”(丢失的小提琴案)。
- 创建一个角色(character),并在检查器中为您的角色提供名称文本(我们选择“Sherlock”)和名称颜色。
- 现在在检查器中单击添加肖像按钮(加号“+”),以获得一个可添加肖像图像的“插槽”:
- 将适当的图像拖到新的肖像图像槽中(在此屏幕截图中,我们使用了 Sherlock 示例项目中的“condident”图像)。还要设置图像所面向的方向(左/前/右):
- 创建第二个角色(例如约翰,使用名称颜色蓝色,以及肖像图像“恼火”)。
- 现在在 Fungus Flowchart 中选择你的块,这样你就可以添加一些要执行的命令...
- 为你的 Sherlock 角色创建一个 Say 命令,说“Watson,你看到我的小提琴了吗?”并选择肖像“自信”(因为这是我们添加到角色中的唯一内容):
- 添加第二个 Say 命令,这次针对角色 John,说“不,你为什么不使用你惊人的推理能力自己找到它......”并为 John 选择了‘恼火’的肖像。
- 当你运行场景时,你应该看到一系列语句,清楚地显示了谁在说话,既有彩色的名字文本,也有你为每个 Say 命令选择的肖像图像:
正如你在一些 Fungus 示例项目中看到的,许多游戏会为每个角色提供各种不同的肖像图像,以允许全方位的视觉情感表达来支持 Say 命令的文本:
角色阶段
在 Fungus 中,肖像图像可以以两种方式使用。
- 它们可以作为Say Dialog 中Say
命令的一部分显示。
- 或者,可以使用肖像命令在 Fungus Stages
内的屏幕上显示和移动肖像。
创建一个覆盖整个游戏窗口的简单阶段,如下所示:
- (设置)创建一个新场景,在场景中添加一个Fungus Flowchart,并在Flowchart中选择Block。
- 将流程图块重命名为“stage demo”。
- 通过选择菜单在场景中创建 Fungus Stage 游戏对象
Tools | Fungus | Create | Stage
:
- 现在您应该看到一个新的游戏对象“舞台”被添加到场景层次结构中。
- 如果您选择它,您将在 Inspector 中看到它的属性。我们可以保留默认设置,因为这些设置是为了让舞台覆盖整个游戏窗口。舞台内有一些子游戏对象,但您不必担心这些,除非您要为特定游戏效果对舞台进行一些高级自定义。
现在您已经在场景中添加了 Fungus Stage,您将能够使用 Fungus Flowchart Blocks 中的肖像命令使大型肖像图像出现/移出屏幕……
肖像命令
一旦你有了 Fungus 舞台和角色,你就可以指示 Fungus 在屏幕上显示/移动角色肖像图像。要使角色图像作为场景的一部分出现,请执行以下操作:
- (设置)创建一个新场景,在场景中添加一个Fungus Flowchart,并在Flowchart中选择Block。
- 将流程图块重命名为“sherlock enters dramatic”。
- 通过选择菜单在场景中创建一个 Fungus Stage 游戏对象:
Tools | Fungus | Create | Stage
。
- 创建一个新角色,将游戏对象命名为“Character1 - Sherlock”,将名称文本设置为“sherlock”,将名称颜色设置为绿色。为该角色添加肖像(我们使用了 Fungus 示例项目“Sherlock”中的 sherlock-confident 图像)。并将图像朝向适当的一侧(在我们的例子中是左侧):
- 通过单击添加命令按钮(加号“+”),然后选择菜单来添加肖像命令
Narrative | Portrait
::
- 现在,您将在检查器的上半部分看到新的 Portrait 命令,并在检查器的下半部分看到其命令属性。请注意突出显示的(绿色)命令行右侧的红色感叹号 - 这表示命令有一个或多个未设置的必需属性。我们看到错误消息“未选择字符”
:
- 将肖像的角色设置为“Character1-sherlock”,并设置以下属性:
- 肖像:自信
- 朝向:<-- (左)
- 移动:是(勾选复选框)
- 起始位置:屏幕外右侧
- 到位置:右
- 运行场景时,Sherlock 肖像图像应从屏幕外右侧开始进入视野。图像在进入屏幕三分之一处时停止:
注意,常见的命令流序列是:
- 在屏幕上输入字符(纵向命令),
- 然后让该角色说些什么(说命令),
- 然后让另一个角色进入屏幕(肖像命令),
- 然后第二个字符说了一些话(说命令)。
以下是学习如何创建真菌角色的秘诀(秘诀:列出供角色使用的肖像图像)中探讨的“丢失的小提琴案”两句话场景的序列:
下面我们来看看运行此类工作流程后的 Play Mode 用户体验输出:
播放音乐
音乐声音片段会循环播放,因此播放结束后会重新启动。通常,块中的第一个命令是播放音乐命令。按如下方式将音乐添加到块中:
- (设置)创建一个新场景,在场景中添加一个Fungus Flowchart,并在Flowchart中选择Block。
- 通过单击检查器中的添加命令(加号“+”按钮),然后选择菜单:
Audio | Play Music
,向当前块添加播放音乐命令。
- 确保在检查器顶部选择了播放音乐命令(绿色突出显示),然后将所需的音乐剪辑文件拖到检查器下半部分的“音乐剪辑”属性中:
- 根据需要更改音量(默认值为 1,值介于 0.0 和 1.0 之间,代表音量百分比从 0% - 100%)。
- 播放您的场景 - 音乐片段应该播放,并不断循环。
注意:如果您希望从已知时间点(而不是从头开始)播放音乐片段,请在播放音乐命令的检查器属性“时间”中输入所需的时间点。
分支叙事
让我们使用上面的 Say 命令来提出一个棘手的数学问题,并通过为用户提供“正确”和“错误”答案的选择来演示 Menu 命令。Menu 命令将控制权转移到另一个块 - 因此我们需要添加 2 个新块来对应这 2 个答案。执行以下操作:
- (设置)创建一个新场景,在场景中添加一个Fungus Flowchart,并在Flowchart中选择Block。
- 将流程图中的块重命名为“问题”。
- 创建一个“说”命令,用故事文本
来询问问题:“2 + 2 等于多少?”。
- 取消选中“等待点击”复选框(这样我们就可以在 Say 命令显示问题后立即看到菜单选项):
- 创建一个名为“正确”的新块,其中包含一个Say
命令,文本为“做得好,你数学很好!”。单击流程图窗口中的加号按钮,向流程图添加一个新块,将其重命名为“正确”,然后添加该 Say 命令:
- 选择“问题”块,然后通过单击检查器中的加号添加命令按钮并选择菜单:来添加菜单命令
Narrative | Menu
。
- 在检查器窗口的上半部分选择这个新的菜单命令(绿色),将文本设置为目标块
“是”,并将
设置为新的“正确”块:
- 现在您应该看到在流程图窗口中命令的‘流程’如何从块“hello”更改为块“Correct”:
- 添加第二个名为“错误”的新块,其中包含一个带有文本“运气不好,或许可以考虑非数学的职业道路...”的 Say 命令。
- 现在我们需要在“你好”块中添加另一个菜单命令,为用户提供数学问题的“否”答案,如果他们不同意 2 + 2 = 4,则将控制权移交给“错误”块。选择“你好”块,然后添加菜单命令。在检查器窗口的上半部分选择此新菜单命令(绿色),将文本设置为目标块
“否”,将
设置为新的“错误”块。
- 现在您应该在流程图窗口中看到“hello”块如何将控制权传递给“正确”块或“错误”块 - 具体取决于用户选择的菜单答案。
- 运行场景,您应该会看到屏幕底部出现“Say”问题,屏幕中间还会出现两个菜单按钮“是”和“否”。单击“是”将运行“正确”块的命令,单击“否”将运行“错误”块的命令:
更改背景颜色
Unity 相机决定场景运行时用户看到的内容。当相机矩形的全部或部分区域内没有任何内容时,会显示纯色“背景”。Unity 相机的默认背景为中等深蓝色。您可以按如下方式更改此背景:
- (设置)创建一个新的 2D 场景,除非您已经有一个可以使用的场景。
- 在层次结构中选择主摄像机。
- 在相机组件的检查器中,单击并为背景属性选择一个不同的值 - 通常黑色效果很好。
- 现在,当相机矩形(视锥)的任何部分不显示任何游戏对象时,用户所看到的颜色将是您的自定义背景颜色。
背景精灵
要将 Unity 项目文件夹中的任何精灵图像文件添加到当前场景中,只需将对精灵图像文件的引用从项目窗口拖到场景窗口,然后根据需要旋转/调整大小即可。精灵将作为新的游戏对象(与精灵项目图像文件同名)出现在层次结构窗口中:
注意:您可能看不到精灵,因为我们看到的内容取决于相机的当前设置。相机显示的内容、其移动方式等都可以通过 Fungus Views 和与 Views 相关的命令来控制。
使用视图
场景的主摄像头向用户显示的内容以及它如何移动等都可以通过与视图相关的 Fungus Views 和 Fungus Commands 进行控制。Fungus View 是层次结构中的特殊游戏对象,它显示为一个绿色轮廓的内矩形,左右两侧有两个填充的绿色矩形。轮廓内矩形的比例为 4:3。外矩形(包括两个填充的绿色左矩形和右矩形)的比例为 16:9。这两个比例涵盖了几乎所有常见的手机、平板电脑和计算机屏幕的宽高比。因此,安排视图以使背景 Sprite 图像对视图的内矩形和外矩形都看起来不错,几乎可以确保您的游戏在任何设备上看起来都不错。将摄像头的背景颜色设置为黑色等颜色也意味着在具有奇怪比例的罕见设备上,显示视图外矩形之外的内容,游戏仍然看起来完全可以接受。
要将视图添加到当前场景,请执行以下操作:
- (设置)创建/编辑具有 Sprite 背景图像游戏对象的场景
- 选择菜单:
Tools | Fungus | Create | View
:
- 将此视图重命名为“View1”。
- 使用两个白色方块调整视图大小(保持其比例)。使用中心方块轮廓或垂直和水平箭头在场景窗口周围移动视图。
- 确保在层次结构中选择了视图,然后定位视图,使其大致位于背景精灵图像的中心
- 调整视图的大小(如有必要,可重新定位)使其尽可能大,但要确保其外部矩形保持在背景精灵的范围内。(请注意,我们已将精灵染成红色,以便在此屏幕截图中更容易看到绿色视图矩形):
- 注意:你还可以使用 Unity 旋转工具旋转视图
注意:直到您添加“淡入视图”真菌命令,您仍然可能无法在场景播放时在游戏窗口中看到精灵,因为主摄像机尚未调整大小并与视图对齐。
淡入视图命令
一旦你有了一个包含一些背景精灵和真菌视图的场景,你就可以使用真菌相机相关的命令来控制用户看到的内容。最简单的相机控制是让游戏窗口从纯色淡入主相机,调整大小、定位(如果需要,还可以旋转)以显示指定的真菌视图。执行以下操作:
- (设置)创建/编辑一个包含背景精灵图像的场景,以及一个已定位以显示全部/部分精灵的真菌视图。
- 在 Fungus Flowchart 中将该块重命名为“Camera Control”。
- 向块添加新的“淡入视图”命令。首先单击检查器窗口下半部分的加号按钮,添加新命令,然后选择菜单
Camera | Fade To View
:
- 现在将“View1”从层次结构窗口拖到检查器中淡入视图命令的“目标视图”属性中:![assign Target View] [assign Target View]: ./telling_a_story/08_add_view/6_drag_view.png "assign Target View"
- (我们将保留默认值 1 秒并从黑色淡出)。
- 运行场景时,游戏窗口应该开始呈纯黑色,然后视图矩形内的背景精灵图像应该慢慢淡入视野。
- 现在将“View1”从“Hierarchy”窗口拖到