当前位置:网站首页>每个大火的“线上狼人杀”平台,都离不开这个新功能
每个大火的“线上狼人杀”平台,都离不开这个新功能
2020-11-06 21:09:00 【即构科技ZEGO】
以线上狼人杀、线上剧本杀为代表的发言类游戏,已经逐渐成为社交新宠。用户在游戏过程中,代入第一视角,通过有限的线索,进行多轮语音推理互动。在时而分享信息、时而隐瞒欺骗的游戏过程中,拉近用户间的距离。
因而,一个优质的线上狼人杀平台,除了优化游戏设置、打磨剧本内容外,还需要不断提升语音互动质量,让线上用户获得如线下玩家一般的流畅体验。
一、一转换场景就卡顿,线上狼人杀频“出戏”
影响线上狼人杀体验互动体验的因素很多,比如杂音、回声、噪声等音质问题;网络不稳定;高并发;硬件不兼容等等。
而为了尽可能的还原线下游戏场景,在解决了上述痛点外,平台还需参考线下场景进行业务形态设计。比如,游戏过程中要分为“白天”和“黑夜”不同的场景,在白天环节,所有玩家在同一个房间发言互动,而在黑夜环节,所有狼人玩家切换到其他房间进行私聊分享。

在线狼人杀游戏中,白天/黑夜场景切换
在游戏场景切换过程中,不少狼人玩家就发现,从“白天”切换到“黑夜”,进入“狼人们”沟通交流的房间时,很容易出现切换延时大、卡顿等问题。这导致了游戏氛围被破坏,体验感大打折扣。
二、即构支持切换房间功能,让场景切换丝般顺滑
从技术角度来看,上述场景切换主要涉及到的是“房间”服务。而出现卡顿的原因,则与技术实现方式有关。
线上狼人杀要实现场景转换,业内通常做法是:
首先登出现有房间,停止推拉流;接着登录到另一个房间,再进行推拉流。在整个过程中,伴随登出房间会停止对麦克风、扬声器和摄像头等音视频设备的占用;接着重新登录新的房间,又需要重新启动对应的音视频设备。
正是硬件设备的停启,导致了切换房间推拉流耗时过久,让用户感受到卡顿、不流畅等问题。
针对狼人杀场景切换可能导致的问题,即构深度优化了SDK逻辑,上线了切换房间(switch room)的功能。
只需调用一个新增的switch room接口,调用后停止上一个房间的推拉流并进入新房间,切换房间成功会收到新房间登录成功的回调。与之前通过调用“登出原房间和加入新房间”两个接口的实现方法相比,更加易用和高效。
除此之外,考虑到用户切换房间前后都有发言的行为,即构提供了多种音频设备模式,可在用户上麦后一直占用麦克风和扬声器,避免了常规模式下,伴随登出登录房间音视频设备的不断停止和重启,进一步降低了切换房间后推拉流的耗时。
三、游戏之外,切换房间还有助于提升在线教学体验
在线上狼人杀游戏场景外,即构切换房间功能还可应用于在线教育行业。帮助教育平台提高提升教学质量,降低师资成本。
线上监课:为了提升平台教学质量,不少线上教育平台会进行在线“监课”。监课老师进入正在授课的线上课堂,查看学生上课情况,评估老师授课质量。基于切换房间功能,监课老师可以流畅的切换巡查多个教室(房间),更便捷高效的进行课堂管理。
助教辅导:热门教育班型超级小班中,在切换房间功能的支持下,一位助教老师可以同时辅导多个小班。通过切换房间快速进入各个小班,针对性指导小班内的学生,可以提升助教老师的效率,降低平台的师资成本。
基于即构切换房间功能和丰富的音频设备模式,能够帮助狼人杀/剧本杀等发言游戏的玩家,在游戏各个阶段都拥有优质的音视频体验。同时针对教育、泛娱乐等更多对房间切换有需求的场景,即构提供贴合业务形态的技术方案,满足客户的多样化需求。

扫码添加即构企业微信,与售前工程师直接沟通
版权声明
本文为[即构科技ZEGO]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/3747019/blog/4492816
边栏推荐
- 教你轻松搞懂vue-codemirror的基本用法:主要实现代码编辑、验证提示、代码格式化
- Unity性能优化整理
- Interpretation of Cocos creator source code: engine start and main loop
- Let the front-end siege division develop independently from the back-end: Mock.js
- 有了这个神器,快速告别垃圾短信邮件
- It's so embarrassing, fans broke ten thousand, used for a year!
- Mac installation hanlp, and win installation and use
- 新建一个空文件占用多少磁盘空间?
- Flink的DataSource三部曲之一:直接API
- Filecoin主网上线以来Filecoin矿机扇区密封到底是什么意思
猜你喜欢

Mac installation hanlp, and win installation and use

NLP model Bert: from introduction to mastery (1)

ES6学习笔记(五):轻松了解ES6的内置扩展对象

带你学习ES5中新增的方法
![[JMeter] two ways to realize interface Association: regular representation extractor and JSON extractor](/img/cc/17b647d403c7a1c8deb581dcbbfc2f.jpg)
[JMeter] two ways to realize interface Association: regular representation extractor and JSON extractor

一篇文章带你了解CSS3 背景知识

How to encapsulate distributed locks more elegantly

零基础打造一款属于自己的网页搜索引擎

一篇文章教会你使用Python网络爬虫下载酷狗音乐

Construction of encoder decoder model with keras LSTM
随机推荐
Cglib 如何实现多重代理?
Python + appium automatic operation wechat is enough
What is the side effect free method? How to name it? - Mario
Do not understand UML class diagram? Take a look at this edition of rural love class diagram, a learn!
Brief introduction of TF flags
Python download module to accelerate the implementation of recording
ES6 essence:
这个项目可以让你在几分钟快速了解某个编程语言
axios学习笔记(二):轻松弄懂XHR的使用及如何封装简易axios
How to use Python 2.7 after installing anaconda3?
Natural language processing - wrong word recognition (based on Python) kenlm, pycorrector
Named entity recognition in natural language processing: tanford core LP ner (1)
教你轻松搞懂vue-codemirror的基本用法:主要实现代码编辑、验证提示、代码格式化
一篇文章教会你使用Python网络爬虫下载酷狗音乐
一篇文章带你了解CSS3图片边框
[actual combat of flutter] pubspec.yaml Configuration file details
Character string and memory operation function in C language
一篇文章教会你使用HTML5 SVG 标签
Summary of common algorithms of binary tree
ES6学习笔记(四):教你轻松搞懂ES6的新增语法