跳到正文

理解引擎的几个概念

场景、步骤、投影、管线和资源包如何共同运行一个视觉小说。

一次点击如何变成下一句对白

  1. QuaScript 编译为可执行的 GameStep[],交给场景和引擎运行。
  2. 当前步骤把角色、对白、选项等写入引擎拥有的状态。
  3. 引擎通过 @quajs/pipeline 发布渲染投影。
  4. 渲染器把投影画到屏幕上,点击时发送用户意图。
  5. 引擎接收意图并决定是否继续、跳转或打开界面。

渲染器可以持有 DOM 节点、纹理、动画句柄和瞬时焦点,不能私自维护另一份场景进度。这样存档、重放与跨平台输出才有一致的依据。

常用名词

名称含义维护位置
Scene场景生命周期和叙事入口Engine / SceneManager
GameStep对话、动作、选择等可等待步骤QuaScript 编译结果 / TypeScript
View projection当前应当被呈现的只读视图Engine / Store
Pipeline逻辑通知与玩家意图的唯一管线@quajs/pipeline
Renderer将投影变成图像、界面和声音Web / Cocos / Native
QPKQuack 构建的资源或运行期内容包Quack / QuaAssets
RuntimeContentManager动态包激活、依赖、卸载和保存检查Engine

逻辑舞台与屏幕

横屏预设使用 1920 × 1080,竖屏预设使用 1080 × 2340。角色、背景偏移和动画轨道都先在逻辑坐标里创作。渲染器按容器大小等比缩放并居中,比例不一致时出现留边,不裁掉作者构图。

互动内容通常应落在安全区域。设备像素比、窗口大小和系统安全区只影响显示,不应写回剧情状态。详见 舞台适配设计。

选择一个发布目标

一次构建只激活 Web、Cocos、Native 中的一套 target core。普通插件和 Runtime QPK 不得自行插入其他平台的启动适配器。生成的 target-bundle-manifest.json 才是启动壳与打包器的依据。

理解这些约定后,阅读 插件概览 和 运行期内容 会更容易。

在 GitHub 查看 / 改进本页来源