3行代码,为QQ轻游戏加上语音互动能力
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~
游戏和社交往往有着密不可分的关系,QQ轻游戏就是一款集成在手Q里面的游戏平台,直接通过手Q入口就能随开随玩,好友之间一言不合就可以游戏PK起来。
互动、好玩、快速开发都成为小游戏开发者的重要的核心竞争力,越来越多的小游戏也开始使用语音互动,但无论是对于QQ轻游戏团队还是游戏开发团队而言,自主开发游戏语音,既不经济也不具备技术优势。腾讯云游戏多媒体引擎 GME ( Gaming Multimedia Engine,以下简称 GME) 为QQ轻游戏团队提供的游戏语音能力,让游戏开发商免于重复造轮子的同时,把更多时间花在提升核心竞争力上。
GME以SDK方式为QQ轻游戏开发团队提供音频支持,QQ轻游戏团队仅需要在现成的音频能力基础上直接调用即可。GME在原有的SDK上进行了改造,大大简化了接入流程,提供了简单好用的音频技术服务,甚至只需要3行代码,你就可以给自己开发的QQ轻游戏加上语音互动场景。
如何改造让接入流程更加简便?
GME之前采用的是立体式接口,有一个总接口以及两个子接口分别管理房间、音频部分,每一个接口都有分别对应的接口事件。这样有一个好处,用相关功能,只需要初始化对应的相关接口,监听相关回调,游戏开发者使用起来更有层次感。
但这种接入模式比较复杂,不适用于QQ轻游戏这样的小游戏平台,真实的游戏开发商并不会直接对接SDK提供商,每次出问题都要涉及三方联调,所以这一套接口服务会引发后面不断的人力投入。并且小游戏平台要把能力封装到js脚本层,需要由音频服务商提供一套接口透传到QQ轻游戏的引擎层,再由QQ轻游戏负责实现js层对应的音频接口。 这个过程要求接口不能太多,否则不利于维护;但又不能太少,否则无法满足复杂的外部产品游戏需求。这就需要对现行的接入流程进行改造。
GME技术团队重新梳理了需求,从QQ轻游戏特殊需求出发,重新设计了接入流程。
QQ轻游戏接入者通常都是小游戏,开发周期没那么长,架构也不需要这么丰富,GME技术团队提炼出了高频使用的功能:开关扬声器和麦克风等。
所以GME技术团队扁平化了GME的接口, 如下:
在代码中,只有以下8个接口
这样对比以前会有一个好处,接入的时候用户可以不需要关心黑匣子中的内容,只需要关心对应的功能API就行。
新的接入流程如下
这样就比较好的接入实现了QQ轻游戏使用场景,对于游戏开发者而言,只要三步:
1, Import GME文件
2, 直接调用初始化接口, 设置自身的APPID信息
3, 之后再调用EnterRoom函数即可进房成功
因为内部默认开启麦克风, 扬声器, 所以只要 3行代码即可听到彼此声音。
QQ轻游戏接入的游戏通常体量较小,一般不会有过深的架构,并且需要最快速看见结果、得到响应,当用户场景不一样时,SDK也需要进行相应的转换。扁平化接口思想,让接入的游戏开发商能第一时间看到结果,为他们提供了更好的接入体验。
通过QQ轻游戏案例,GME对SDK接口的改造,大大提升了游戏开发者的接入效率。对于QQ轻游戏或者类似的游戏平台来说,使用腾讯云GME SDK,游戏开发者只需要三步就可以完成音视频功能的接入。
赶快体验GME,实现3行代码就能让小游戏快速接入语音互动的能力。
速戳:https://cloud.tencent.com/product/gme
问答
相关阅读
此文已由作者授权腾讯云+社区发布,原文链接:https://cloud.tencent.com/developer/article/1188198?fromSource=waitui
搜索关注公众号「云加社区」,第一时间获取技术干货,关注后回复1024 送你一份技术课程大礼包!
海量技术实践经验,尽在云加社区!
3行代码,为QQ轻游戏加上语音互动能力的更多相关文章
- 【编程教室】PONG - 100行代码写一个弹球游戏
大家好,欢迎来到 Crossin的编程教室 ! 今天跟大家讲一讲:如何做游戏 游戏的主题是弹球游戏<PONG>,它是史上第一款街机游戏.因此选它作为我这个游戏开发系列的第一期主题. 游戏引 ...
- 自定义控件?试试300行代码实现QQ侧滑菜单
Android自定义控件并没有什么捷径可走,需要不断得模仿练习才能出师.这其中进行模仿练习的demo的选择是至关重要的,最优选择莫过于官方的控件了,但是官方控件动辄就是几千行代码往往可能容易让人望而却 ...
- HTML5游戏实战(1):50行代码实现正面跑酷游戏
前段时间看到一个"熊来了"的HTML5跑酷游戏,它是一个典型的正面2D跑酷游戏,这里借用它来介绍一下用Gamebuilder+CanTK开发正面跑酷游戏的基本方法. CanTK(C ...
- HTML5游戏实战之20行代码实现打地鼠
之前写过一篇打地鼠的博客70行的代码实现打地鼠游戏,细致思考过后,发现70行代码都有点多余了,应用tangide的控件特性,能够将代码量缩减到20行左右. 先show一下终于成果,点击试玩:打地鼠.或 ...
- HTML5游戏实战(4): 20行代码实现FlappyBird
这个系列很久没有更新了.几个月前有位读者调侃说,能不能一行代码做一个游戏呢.呵呵,接下来一段时间,我天天都在想这个问题,怎么能让GameBuilder+CanTK进一步简化游戏的开发呢.经过几个月的努 ...
- C# 13行代码带你模拟登录QQ空间
最近想做一个QQ空间点赞的小工具,于是晚上下班回来就开始分析PC版的QQ空间,打开Chrome,切换到Network,然后输入账号密码,然后点击登录... 然后,我曹....一堆请求就开始了....搞 ...
- Python:游戏:300行代码实现俄罗斯方块
本文代码基于 python3.6 和 pygame1.9.4. 俄罗斯方块是儿时最经典的游戏之一,刚开始接触 pygame 的时候就想写一个俄罗斯方块.但是想到旋转,停靠,消除等操作,感觉好像很难啊, ...
- 37行代码实现一个简单的打游戏AI
不废话,直接上码,跟神经网络一点关系都没有,这37行代码只能保证电脑的对敌牺牲率是1:10左右,如果想手动操控,注释掉autopilot后边的代码即可. 哪个大神有兴趣可以用tensorflow或者s ...
- 9 行 javascript 代码获取 QQ 群成员
昨天看到一条微博:「22 行 JavaScript 代码实现 QQ 群成员提取器」. 本着好奇心点击进去,发现没有达到效果,一是 QQ 版本升级了,二是博客里面的代码也有些繁琐. 于是自己试着写了一个 ...
随机推荐
- App与微信WebAPP
我的App与微信搞上了 小麦积分墙摘自网络 最近有很多开发者关心的一个问题是如何提升app的下载量,透过现象开本质,app下载量的终极目标还是为多少客户提供了服务,抛开下载量KPI,app真心关心的问 ...
- 搬家至独立博客 https://www.imzjy.com/blog/
欢迎访问 https://www.imzjy.com/blog/
- Python 实现图片对比检测
在写测试框架的时候,需要用到图片对比的方法来判断用例执行的情况,问了一下度娘,原来可以用PIL模块处理: from PIL import Image # 先安装Pillow, \>pip in ...
- [ruby]rubyGem出现ERROR: Could not find a valid gem时的处理方法
场景: 想安装SASS的时候,打开cmd,输入gem install sass的时候却出现了: ERROR: Could not find a valid gem 'sass' (>= 0), ...
- 开源应用框架BitAdminCore:更新日志20180903
索引 NET Core应用框架之BitAdminCore框架应用篇系列 框架演示:https://www.bitadmincore.com 框架源码:https://github.com/chenyi ...
- cesium编程中级(二)源码编译
cesium编程中级(二)源码编译 有些情况下,比如我们自己从Github下载了最新的代码,或者自己临时修改了一点代码,想要编译后的Build文件夹的内容,需要自行编译源码,这里介绍一下编译的方法 下 ...
- Oracle数据库01
常用函数 COUNT(*):统计所有的数据量,没有过滤功能 COUNT(字段):统计出指定字段不为null的数据量,有过滤功能 COUNT(DISTINCT 字段):统计指定字段不为空并且去掉重复数据 ...
- css3 animation动画使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 2018 OCP 052最新题库及答案-4
4.For which requirement should you configure shared servers? A) accommodating an increasing number o ...
- 字符串模式匹配算法1 - BF和KMP算法
在字符串S中定位/查找某个子字符串P的操作,通常称为字符串的模式匹配,其中P称为模式串.模式匹配有多种算法,这里先总结一下BF算法和KMP算法. 注意:本文在讨论字符位置/指针/下标时,全部使用C语法 ...