Skip to main content

Player Data 类型

Player Data 类型 World Preview

一个极简示例,演示 PlayerData 接口支持的数据类型。

访问 Player Data 类型示例世界亲自体验!

支持的数据类型包括:

  • bool
  • byte
  • byte[]
  • int
  • float
  • double
  • long
  • short
  • string
  • sbyte
  • uint
  • ulong
  • ushort
  • Vector2
  • Vector3
  • Vector4
  • Quaternion
  • Color
  • Color32

使用示例​

在客户端:

  1. 进入世界
  2. 点击按钮 “Set Test Data”
  3. 观察显示内容更新为测试数据

在编辑器中:

  1. 打开 VRChat SDK > ClientSim Player Data editor window
  2. 在播放模式下点击按钮时,观察测试数据也在此处更新
  3. 您可以清除并重新设置测试数据
  4. 您可以打开包含测试数据的 JSON 文件,手动更新,然后在编辑器窗口中点击刷新以显示更新后的测试数据

导入示例​

按照以下步骤将此示例添加到您的 Unity 项目:

  1. 从 Unity 编辑器菜单的 "VRChat SDK > 🏠 Example Central" 中打开示例中心窗口
  2. 在列表中找到此预制体,或按标题(与本页标题相同)搜索
  3. 按"导入(Import)"按钮将 Unitypackage 导入到您的项目中

技术解析​

PlayerDataController 有一个 SetTestData 方法,用于设置一些示例玩家数据,通过场景中的按钮触发。

它使用 OnPlayerDataUpdated 方法监听玩家数据的更新。它会检查本地玩家的数据是否已更改,如果是,则获取新数据并将其格式化为可读字符串。此字符串包括数据类型(bool、int、string)和与玩家唯一 ID 关联的值等详细信息。

格式化后的数据随后使用 TextMeshProUGUI 组件显示在屏幕上。

该脚本包含一个辅助函数 PlayerDataToString,用于检查存储在特定键下的数据类型并将其转换为字符串以便显示。此函数支持所有可持久化的数据类型。

如果无法识别玩家数据类型,它会输出错误消息,指示类型未知。