在本文中,我将解释如何将ink与Unity项目集成,以及如何使用ink API与我们的小说网站源码系统进行交互。
在我们开始之前,请确保您有一个包含一些对话和选择的墨水文件。您可能想下载并使用我准备的示例故事。这实际上是来自Guilt Free的简化场景,通过分享这一点,我想向您展示一个真实的视觉小说系统源码示例和实际代码的技术。
完整源码:xsymz.icu
项目设置
继续在 Unity 中创建一个新的 2D 项目。然后添加您可以在此处找到的墨水插件。
在ink插件文件夹(Plugins/Ink)里会有一个Example场景,你可以在里面玩很简单的小说。这个场景的逻辑将用 BasicInkExample 脚本编写。它处理开始故事、点击对话和选择选项。如果您愿意,请查看它,因为我们将密切模仿它在我们自己的游戏中的作用。不过,我们不会使用它,因为最好边做边学!
用户界面设置
在我们做任何 UI 工作之前,让我们确保画布设置正确。在 Canvas 上,您应该找到 Canvas Scaler 组件。确保 UI Scale Mode 设置为 Scale With Screen Size。这将确保屏幕上的元素在任何屏幕尺寸上看起来都一样。我还喜欢将参考分辨率设置为 1920 x 1080,因为这是我最常使用的分辨率,但我将把它留给你。
如果您熟悉视觉小说,您就会知道大多数时候它们的屏幕底部都有一个大文本框。它显示故事的线条,我们可以通过按下按钮来点击。这就是我们现在所需要的。继续,将这些组件添加到您的场景中。它可能看起来类似于:
连接墨水
现在让我们在层次结构中创建一个空对象并将其命名为 InkManager。然后向其中添加一个具有相同名称的新脚本。这将是我们游戏的核心,充当故事和统一项目之间的桥梁。在 InkManager 类的顶部写下这些行:
[SerializeField]
private TextAss