跳转到内容

第 0 章 · 从一盏灯到一局游戏

约 1 分钟 难度:1 动手章

这一章解决:从 Vol.1 的「一盏同步灯」到 Vol.2 的「一局游戏」之间,差的不只是代码量。状态从一份变成多份时,会暴露 Vol.1 没回答的问题。

先看一下

Vol.1 末尾做了一盏同步灯:两个玩家都看到灯亮了。在 VRChat 世界里这已经能跑。但如果让这盏灯在两个玩家都按一次之后才变绿,这个改动会立刻引出新问题:每个玩家自己的”按过没”算谁的状态?掉线再回来这个状态还在不在?两个玩家同时按下会不会重复计数?

这一章会拿到什么

  • 一个能跑的”两人按一次才变绿”的最小示例
  • 一份本章改造后暴露的具体问题清单
  • 这份清单和第一部七章的对应关系

依赖前面

  • Vol.1 第六部的同步灯([UdonSynced] + RequestSerialization 基本用法)
  • VCC、Unity 编辑器、Build & Test 的常规流程

这一章是 0 章过渡章,写完后会包含:

  • 完整可粘贴脚本(每行带注释),把同步灯改造成”两人按一次才变绿”
  • 改造后的脚本暴露的几个问题清单:每位玩家的”按过没”放哪里、Master 离开会怎样、迟入玩家看到什么、两人同时按会怎样
  • 这份清单和第一部七章的承诺对齐:第 1 章拆状态、第 2 章选通道、第 3 章谈 Owner、第 4 章生命周期、第 5 章迟入、第 6 章预算、第 7 章 Debug

写作时遵循章首钩子四元素 + 章末三件套硬结构(design/writing-cheatsheet.md)。

占位

场景预期实际
两个客户端 Build & Test
第三个玩家迟入
Master 离开
  • 占位