界面总览 (UI Overview)

核心界面(UI)由一些基本信息和反馈组成。当玩家在看些什么,他们持有着什么时,UI会发生变化。

目录

[TOC]


FPEHUD类 (FPEHUD Class)

FPEHUD类是一个基类,它提供了一组函数来与FPEInteractionManagerScript脚本,进行互相调用。

例如,当玩家拿起一个“附加笔记”的新对象时,会告诉FPEHUD类。但是,每个FPEHUD都可以使用该信息执行任何操作。例如,FPEDefaultHUD会在屏幕的底部中心的位置显示笔记的标题和一些动画文本。但FPEMinimalHUD只会在屏幕左上角显示一个笔记的图标。你的自定义HUD可以使用我们现有的代码,或自己做一些完全不同的。 由你决定!

ArchitectureHUDs.jpg


默认的HUD (Default HUD)

这个插件中默认的HUD(FPEDefaultHUD.cs 和 FPEDefaultHUD.prefab),为所有关键交互提供了一些基本的信息和可视化。

默认情况下,neutral UI(当玩家没有查看任何“可交互物”对象时)相当的少,如下所示:

UIOverviewNeutral.jpg


但是,当玩家持有“库存物品”,并将准心指向“激活交互的类型”对象时,会如下图所示:

UIOverviewActive.jpg


当玩家手中正在查看一个对象时,UI将被完全隐藏,如下所示:

UIOverviewExamine.jpg


元素解析 (Element Breakdown)

下图详细地列出了核心界面中的元素,以及它们在屏幕上的作用和含义:

InteractionManagerUIElements.jpg

元素 元素的中文翻译———————— 说明
Reticle (A) 准心 “准心”就是屏幕中央的圆点。当“准心”图像瞄准到“可交互物”时,会做出反应。当光标位于“可交互物”对象的时,“准心”的图像会发生变化,以告诉玩家这个物品是可交互的。
InteractionTextLabel (B) 交互的文字 这个Text元素的内容,是当前“准心”瞄准的“可交互物”中的交互文字。
Control Hints (e.g. UndockHint, etc.) (C) 操作的提示 这些Text和Image提示,是FPEUIHint组件来显示和隐藏的。以及当交互操作和可用操作不同时,这个文本也会被更改。
NotificationLabel (D) 通知 当玩家查看“附加笔记”时,将显示这个Text元素。
AudioDiarySkipHintLabel (E) 跳过“音频日志”的提示 这个Text和Image元素,会向玩家显示的“跳过音频日志”的选项。它只在“日志”播放时出现,并在跳过日志或日志播放完成时消失。
AudioDiaryTitleLabel (F) “音频日志”的标题 这个Text元素,会显示当前正在播放的“音频日志”的标题,以及一些可选的文本。


JournalBackground中,包含了文本和图像元素,用于显示“可阅读物”页面,让玩家进行阅读。这仅会在玩家与“可阅读物”交互时显示。

JournalUIElements.jpg

元素 元素的中文翻译———————— 说明
JournalPage (G) “可阅读物”的页面 包含在Inspector面板中,定义的每个Journal Page(可阅读物页面)的Image元素。
JournalBackground (H) “可阅读物”的背景 这个Image元素,目前是一个单纯的黑色半透明的背景,以让“可阅读物”显示的更清楚。
NextButton (I) 下一页的按钮 点击这个按钮可将“可阅读物”向前移动一页(如果允许)。
PreviousButton (J) 上一页的按钮 点击这个按钮可将“可阅读物”向后移动一页(如果允许)。
CloseIndicator (K) 关闭的操作提示 这个Image元素会显示一个提示,提示玩家应该如何关闭“可阅读物”。
注意:
可以在FPEDefaultHUD UI Canvas中添加或删除元素。
但是,你需要对FPEDefautltHUD文件进行一些自定义。


制作自己的HUD (Making Your Own HUD)

除了本插件自带的FPEMinimalHUD脚本和预制体之外,你还可以通过制作自己的HUD,来完全自定义你的游戏交互界面。

要创建一个自定义的HUD,请创建一个新类,并将其命名为MyCustomHUD(或者其他的名字),让它作为FPEHUD类的扩展(让MyCustomHUD脚本,继承自FPEHUD类)。在MyCustomHUD脚本中,实现父类中所需要实现的函数(例如:initialize()、updateHUD()等)。添加你想要的任何其他功能。


自定义HUD数据 (Customizing HUD Data)

FPEInteractionManagerScript脚本会创建并更新此类的实例,并收集所有HUD信息,并将这些信息存储在FPEHUDData类中。FPEHUD将每帧获取FPEHUDData中的数据,并根据任何相关的数据,来更改并刷新自身。 如果要向此类中,添加新类型的交互或其他数据,来自定义HUD的使用,你可以这样做!

这是步骤:

  1. 打开FPEHUDData.cs文件,并在里面添加一些新的变量。
  2. 打开FPEInteractionManagerScript.cs文件,并更新(修改)refreshHUDData()函数,以在这些变量中设置正确的值。
  3. 在你自定义的HUD类中,你现在可以根据需要使用这些新变量。

这样就完成了!

results matching ""

    No results matching ""