当前位置:网站首页>每个大火的“线上狼人杀”平台,都离不开这个新功能
每个大火的“线上狼人杀”平台,都离不开这个新功能
2020-11-06 21:09:00 【即构科技ZEGO】
以线上狼人杀、线上剧本杀为代表的发言类游戏,已经逐渐成为社交新宠。用户在游戏过程中,代入第一视角,通过有限的线索,进行多轮语音推理互动。在时而分享信息、时而隐瞒欺骗的游戏过程中,拉近用户间的距离。
因而,一个优质的线上狼人杀平台,除了优化游戏设置、打磨剧本内容外,还需要不断提升语音互动质量,让线上用户获得如线下玩家一般的流畅体验。
一、一转换场景就卡顿,线上狼人杀频“出戏”
影响线上狼人杀体验互动体验的因素很多,比如杂音、回声、噪声等音质问题;网络不稳定;高并发;硬件不兼容等等。
而为了尽可能的还原线下游戏场景,在解决了上述痛点外,平台还需参考线下场景进行业务形态设计。比如,游戏过程中要分为“白天”和“黑夜”不同的场景,在白天环节,所有玩家在同一个房间发言互动,而在黑夜环节,所有狼人玩家切换到其他房间进行私聊分享。
在线狼人杀游戏中,白天/黑夜场景切换
在游戏场景切换过程中,不少狼人玩家就发现,从“白天”切换到“黑夜”,进入“狼人们”沟通交流的房间时,很容易出现切换延时大、卡顿等问题。这导致了游戏氛围被破坏,体验感大打折扣。
二、即构支持切换房间功能,让场景切换丝般顺滑
从技术角度来看,上述场景切换主要涉及到的是“房间”服务。而出现卡顿的原因,则与技术实现方式有关。
线上狼人杀要实现场景转换,业内通常做法是:
首先登出现有房间,停止推拉流;接着登录到另一个房间,再进行推拉流。在整个过程中,伴随登出房间会停止对麦克风、扬声器和摄像头等音视频设备的占用;接着重新登录新的房间,又需要重新启动对应的音视频设备。
正是硬件设备的停启,导致了切换房间推拉流耗时过久,让用户感受到卡顿、不流畅等问题。
针对狼人杀场景切换可能导致的问题,即构深度优化了SDK逻辑,上线了切换房间(switch room)的功能。
只需调用一个新增的switch room接口,调用后停止上一个房间的推拉流并进入新房间,切换房间成功会收到新房间登录成功的回调。与之前通过调用“登出原房间和加入新房间”两个接口的实现方法相比,更加易用和高效。
除此之外,考虑到用户切换房间前后都有发言的行为,即构提供了多种音频设备模式,可在用户上麦后一直占用麦克风和扬声器,避免了常规模式下,伴随登出登录房间音视频设备的不断停止和重启,进一步降低了切换房间后推拉流的耗时。
三、游戏之外,切换房间还有助于提升在线教学体验
在线上狼人杀游戏场景外,即构切换房间功能还可应用于在线教育行业。帮助教育平台提高提升教学质量,降低师资成本。
线上监课:为了提升平台教学质量,不少线上教育平台会进行在线“监课”。监课老师进入正在授课的线上课堂,查看学生上课情况,评估老师授课质量。基于切换房间功能,监课老师可以流畅的切换巡查多个教室(房间),更便捷高效的进行课堂管理。
助教辅导:热门教育班型超级小班中,在切换房间功能的支持下,一位助教老师可以同时辅导多个小班。通过切换房间快速进入各个小班,针对性指导小班内的学生,可以提升助教老师的效率,降低平台的师资成本。
基于即构切换房间功能和丰富的音频设备模式,能够帮助狼人杀/剧本杀等发言游戏的玩家,在游戏各个阶段都拥有优质的音视频体验。同时针对教育、泛娱乐等更多对房间切换有需求的场景,即构提供贴合业务形态的技术方案,满足客户的多样化需求。
扫码添加即构企业微信,与售前工程师直接沟通
版权声明
本文为[即构科技ZEGO]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/3747019/blog/4492816
边栏推荐
- Filecoin主网上线以来Filecoin矿机扇区密封到底是什么意思
- ES6 essence:
- NLP model Bert: from introduction to mastery (2)
- Analysis of partial source codes of qthread
- Just now, I popularized two unique skills of login to Xuemei
- 6.4 viewresolver view parser (in-depth analysis of SSM and project practice)
- vue-codemirror基本用法:实现搜索功能、代码折叠功能、获取编辑器值及时验证
- Custom function form of pychar shortcut key
- How to use parameters in ES6
- Our best practices for writing react components
猜你喜欢
一篇文章教会你使用Python网络爬虫下载酷狗音乐
How to use Python 2.7 after installing anaconda3?
大道至简 html + js 实现最朴实的小游戏俄罗斯方块
零基础打造一款属于自己的网页搜索引擎
一篇文章带你了解CSS对齐方式
Summary of common algorithms of linked list
[JMeter] two ways to realize interface Association: regular representation extractor and JSON extractor
Python filtering sensitive word records
A course on word embedding
给字节的学姐讲如何准备“系统设计面试”
随机推荐
[Xinge education] poor learning host computer series -- building step 7 Simulation Environment
有了这个神器,快速告别垃圾短信邮件
Mac installation hanlp, and win installation and use
Analysis of etcd core mechanism
零基础打造一款属于自己的网页搜索引擎
The data of pandas was scrambled and the training machine and testing machine set were selected
Python download module to accelerate the implementation of recording
How to demote domain controllers and later in Windows Server 2012
01. SSH Remote terminal and websocket of go language
文件过多时ls命令为什么会卡住?
Solve the problem of database insert data garbled in PL / SQL developer
Relationship between business policies, business rules, business processes and business master data - modern analysis
How to use parameters in ES6
ES6学习笔记(二):教你玩转类的继承和类的对象
The road of C + + Learning: from introduction to mastery
It is really necessary to build a distributed ID generation service
一篇文章带你了解CSS3 背景知识
6.1.1 handlermapping mapping processor (1) (in-depth analysis of SSM and project practice)
Vite + TS quickly build vue3 project and introduce related features
Classical dynamic programming: complete knapsack problem