【Photon Voice】PUN2中使用

概念

PUN2层的语音逻辑继承自原始的Photon Voice 1或PUNVoice:语音客户端状态可以自动与PUN的客户端状态同步。
考虑的主要用例是每个玩家都有网络实例化的PUN预设(角色或化身),其中音频是三维定位的。单个音频流有一对组件,每个端点上都有一个:Recorder和Speaker。使用PUN时,链接对通过Photon View ID链接。

[组件] PhotonVoiceNetwork 语音网络

PhotonVoiceNetwork是一个单例:实例应该只存在一个。如果存在多个实例,
则只保留一个实例,其他实例将被销毁。我们无法预测将保留哪个实例,
因此您最好确保只有一个实例存在。
在运行时创建的任何新的额外实例都将被销毁。
如果你从一个预设添加PhotonVoiceNetwork,确保它被实例化一次。

PhotonVoiceNetwork扩展了VoiceConnection并添加了与PUN相关的特性:默认的SpeakerFactory被覆盖,您可以调整PUN和Voice客户端状态同步的程度。另外,PUN和Voice可以共享来自PhotonServerSettings设置的相同AppSettings。

Default SpeakerFactory 默认扬声器工厂

新工厂将尝试为  使用交换Photon View ID作为用户自定义数据对象的  音频流信息  找到合适的Speaker。

Auto Connect And Join 自动连接和连接

如果PUN 进入房间,Voice 客户端也可以连接并加入相应的语音室。

Auto Leave And Disconnect 自动离开并断开

如果PUN 离开房间,Voice 客户端可以自动断开连接。

[组件] PhotonVoiceView 语音视图

PhotonVoiceView是负责为网络实例化的PUN预设设置录音机和扬声器的组件。

Suggested Workflow 建议的工作流程

Scene Setup (PhotonVoiceNetwork) 场景设置

  1. 在PUN的PhotonServerSettings面板中AppSettings的设置Voice AppId。
  2. 在场景中添加一个PhotonVoiceNetwork并启用“Don't Destroy On Load”。
  3. 将Recorder添加到场景,更新其属性并将其指定给PhotonVoiceNetwork.PrimaryRecorder。

Prefab Setup (PhotonVoiceView)预设设置

  1. 将PhotonVoiceView添加到PUN预设游戏对象并附加一个PhotonView。
  2. 设置PhotonVoiceView.UsePrimaryRecorder为true。
  3. 将Speaker添加到预设并将其指定给PhotonVoiceView.SpeakerInUse.

【完】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值