语音聊天 是基于接近度的聊天功能,根据你与发言的其他用户的距离来模拟现实的通信。你离另一个用户的虚拟形象越近,他的声音就越响亮;反之,你离得越远,他的声音就越柔和。
语音聊天仅适用于最多支持 50 用户的地方。

启用语音聊天
在启用体验中的语音聊天之前,您必须首先发布它以启用 Studio 中的游戏设置菜单。
- 在工作室打开你的体验。
- 切换 启用麦克风 ,使选择器从灰色变为绿色。
- (可选) 为了在您的体验中提高用户之间的通信,切换 启用相机 以允许合格的用户通过移动动画他们的虚拟形象。
- 发布将保存更改的地方。
语音聊天现在将提供给已验证的 13+ 用户,他们选择启用该精选,体验中的每个地方最多 50 用户。
设置最大用户数
如果您以前在一个地方设置了最大用户数超过 50,那么您需要将其减少以支持语音聊天。
- 在 游戏设置 对话框的左侧导航中,选择 地点 。你体验中的每个地点都会显示。
- 单击位置旁边的 ⋯ 按钮,然后选择 配置位置 。
- 在 最大玩家 字段中,输入少于或等于 50 的任何数字。
- 点击 保存 按钮,然后发布以保存更改。
当你将位置中的最大用户数更新为少于 50 时,可能会出现已配置为不同、更高数量的服务器。由于这些服务器不支持语音聊天,建议重新启动服务器。
禁用每个地场景
如果你不想为每个体验中的地方启用语音聊天,你可以在特定地点禁用它,这样通过 EnableDefaultVoice 属性就不会有语音资格。
要禁用体验中特定地点的语音聊天:
在工作室打开地点。
在工具栏的 模型 选项卡中,单击 服务 标志。
选择 VoiceChatService 并单击 插入 。
在 浏览器 窗口中,选择 VoiceChatService 。
在 属性 窗口中,禁用 启用默认语音 属性。
发布地方以保存更改,并重新启动服务器以确保更改对目前运行您体验的所有服务器生效。
检查语音聊天状态
您可以通过调用 IsVoiceEnabledForUserIdAsync() 在 LocalScript 中检查用户是否启用了语音聊天,或在 Script 中设置 RunContext 为 Enum.RunContext.Client 。
客户端脚本 - 检查语音聊天状态
local Players = game:GetService("Players")
local VoiceChatService = game:GetService("VoiceChatService")
local localPlayer = Players.LocalPlayer
local success, enabled = pcall(function()
return VoiceChatService:IsVoiceEnabledForUserIdAsync(localPlayer.UserId)
end)
if success and enabled then
print("Voice chat enabled!")
end