Skip to content

多工作流协同

ShxNovel 采用 模式驱动 (Schema-driven) 的设计理念,确保了在多人团队协作中,资源配置、代码逻辑与剧情创作能够高度并行,且尽量避免相互干扰。这种设计使不同角色能够在共享同一工程的前提下,高度并行地工作,且无需依赖运行时调试来发现错误。

各工作流在构建阶段生成的类型提示文件会被统一输出到 /.vn 目录中。例如 /.vn/assets.d.ts 中描述的资源类型可以被 World 工作流直接依赖,一旦类型文件更新,其它工作流即可在编辑器中自动获得最新的补全与校验,而无需显式导入或手动同步。

通过以类型与结构为核心的协作方式,引擎更接近「静态可验证的制作管线」,而不是依赖运行时试错的黑箱系统。

在多人协作场景中,我们推荐将 /.vn 目录通过 Git 管理(默认已启用)。由于 Assets(艺术)、World(资源与视觉语义)与 Rewrite(叙事)三个工作流在逻辑上是相互正交的:

  • 剧本作者修改剧情脚本,不会影响渲染配置或资源定义
  • 开发者升级 Shader 或运行时实现,也无需担心破坏既有的叙事结构

在进行更新时,各工作流的产物可以 直接覆盖独立更新。这种低耦合的协作模式显著减少了跨角色协作中常见的合并冲突(Merge Conflict),避免团队陷入反复手工对齐状态的困境。

尽管三个工作流在类型与产物上存在关联,但它们在实际开发中可以 并行推进。在未完成前置构建的情况下,部分类型提示与自动补全能力可能暂时不可用,但这并不会阻断开发流程。

因此,我们建议团队在项目初期进行一次完整的沟通与设计对齐,明确每个工作流的职责与产物边界。
在此基础上,可以采用以下协作方式:

  1. 艺术工作流
    先使用空白文件或占位资源,提前确定文件结构与命名规范,
    以便资源分析工具能够扫描并识别这些资产。

  2. 程序 & 艺术工作流(World)
    预先定义世界中将要使用的元素名称,以及它们对应的资源使用方式。
    在早期阶段,可以仅使用 undefined 或占位配置进行声明。

  3. 剧本工作流(Rewrite)
    优先完成文本剧情的编写,将演出与动画意图暂时以注释形式标注,
    并在后续开发过程中逐步补充具体实现。

通过 约定资源的存在,团队可以更清晰地划分任务职责,并同时推进多个工作流,显著提高效率。


尽管 ShxNovel 的多工作流设计支持高度并行,但在以下情况下,不建议立即开启完全并行的开发模式:

  • 世界观与核心表现尚未稳定
    如果角色数量、立绘结构、镜头表现方式仍在频繁变动,此时过早并行可能会导致反复返工。

  • 资源命名规范尚未达成共识
    在 assets / world / rewrite 三个工作流中,名称是最重要的“隐性契约”。
    若命名规则尚不清晰,容易在后期引发大量修正。

  • 首次使用 ShxNovel 的团队
    对引擎边界尚不熟悉时,建议先以串行方式完成一个最小 Demo,再逐步引入并行协作。

在这些场景下,推荐先完成一轮 World → Rewrite → Runtime 的最小实现,待稳定后再切换到并行开发。