作者|UCloud         
出品|遇见人工智能        公众号|GOwithAI

对于中国游戏产业来说,2017年至今是一个不太平静的时间段。在平台化以及全球服的大趋势之下,游戏玩家们的付费意识有了明显提升。

受益于此,国内涌现出一批独立游戏开发者和工作室。在网易、腾讯等游戏巨头笼罩之下,这些游戏厂商们将目光纷纷转向海外市场。

同时,无论是传统的端游、页游平台,还是已成为主流的手游平台,在内容和玩法之外,都越来越重视游戏体验本身。

7月21日,由UCloud举办的“UCan下午茶”沙龙成都站,UCloud架构总监周浩城等五位嘉宾作为游戏全球化先行者的代表,从游戏的云端部署、技术架构、玩法设计、市场观察等角度,分享了他们在游戏全球化过程中的实践与思考。

全球化背景下,出海业务的云端实践

海外情况错综复杂,产品全球化对于底层IT架构提出了新的严峻挑战。UCloud于2012年成立至今已有6年,凭借其覆盖众多国家和地区的海外节点与骨干网络,以及稳定可靠的底层技术架构,帮助数百企业成功出海。

在这个过程里,UCloud的研发团队也遇到了很多挑战,来自UCloud互动娱乐事业部架构总监周浩城结合自身经验,现场分享了在为用户提供出海服务时,遇到的几个常见挑战和解决方案。

挑战一:海外运营商及运营情况复杂,会出现突然被上联运营商限带宽,却没有收到任何反馈等情况,当遇到流量洪峰时,网络将严重拥堵。

解决方案:

1、采用模拟实际攻击的方式,来测试从各个国家、地区、各个线路到数据中心整条链路是否OK。通过测试,可以知道海外的上联线路被限了、整个机房的安全检测、封堵、清洗的流程是否正常工作等,然后针对具体问题定制解决方案;

2、增加运营商合作渠道,当某一运营商出现问题时,切换数据中心的网络服务,在这个迁移的过程中,需要做到用户无感知。

挑战二:封堵攻击流量,凌晨联系不到运营商。对于一些海外的运营商尤其是基建比较弱的地方,其服务并非24小时在线,尤其是凌晨时分网络出现问题时,基本上无法及时联系工作人员对接处理。

解决方案:让运营商提供自动封堵的接口,一旦出现攻击,UCloud可以自动调度骨干网上封堵接口,在骨干网上拦截攻击流量。

挑战三:大网路由选路会出现次优路径,如特殊情况下台湾到香港公网延迟突然从20ms飙升到80ms。

解决方案:业务覆盖。根据用户的业务建立数据中心的覆盖范围,通过天眼监控系统监控该范围内的网络访问、丢包情况等等。如高雄某个时刻出现了丢包问题,系统会自动抓监控点到数据中心MTR的图,用户可以通过MTR,查看丢包节点。

挑战四:部分国际运营商区分国内路由和国际流量,如韩国、泰国、印尼的国际带宽和国内带宽是分开算的。

解决方案:针对这种情况,UCloud研发了一个具有深度包检测功能的工具ShockWave,它可以根据选取的IP地址,按照协议,分析出流量/包量的趋势,并按照运营商、地域对流量进行统计并支持排序。获取每个国家、每个运营商的数据后,可以为以后的流量采购建立数据基础。

挑战五:海外回国需要单独引入回国线路 。

解决方案:扩建数据中心,并将全球的数据中心全部联网。下图为UCloud全球骨干网示意图,绿色代表已接入的骨干网,红色代表计划建设的可用区,通过供应商提供的多条海缆,建立自主可控的网络,保证数据中心的连接不会出现丢包等情况。

除了上述策略,UCloud基于出海需求,研发出了高速通道UDPN、全球动态加速PathX、SSH加速服务GlobalSSH等多种解决方案。

聊聊小游戏这个“风口”

微信小游戏、QQ轻游戏和Facebook Instant Game 已经成为游戏行业新的“风口”。“海盗来了”在微信小游戏上已经实现了月流水超亿的表现。武汉镜像科技技术总监曾嵘现场详细分享镜像团队在立项、开发、上线过程中的实战经验。

目前,市面上常见的小游戏类型大概分为四种:微信小游戏、Facebook Instant Game、QQ玩一玩以及Google Play Instant。目前,国产主流HTML5引擎对微信小游戏、支持 QQ 玩一玩以及 Facebook Instant Game这三种类型都具有较好的支持,并且支持IDE 、Java/Type及跨平台开发。

与其他技术采用 HTML5 技术不同的是,Google 依然使用 APK 作为发行包,采用 JAVA/Kotlin 作为开发语言。它提供更高的APK大小限制(10MB),Google Play Instant 还支持可执行代码和游戏资产的渐进式下载,并允许开发人员使用NDK和游戏引擎与现有的工具链结合使用。

在性能上,微信小游戏使用的是修改过的渲染引擎和 JS 引擎,Java 引擎执行性能低于原生 HTML5 浏览器,性能较差;QQ玩一玩是经过渲染的引擎,QQ轻游戏的整个质量比微信好很多,但稳定性较差;Facebook Instant Game基于HTML5开发,它需要在网页上呈现,性能非常好,基本上没有卡顿;Google Play Instant使用的是APK机制,性能是非常好的。大家可以根据自身的游戏定位和性能需求来选择合适的游戏类型。

目前,小游戏市场已经经过了野蛮的增长阶段,市面上有大量低质量与同质化严重的小游戏,同时由于微信大力打压诱导分享机制,所以,诱导分享现今也无法对游戏运营起到太多作用。因此,在游戏立项上,曾嵘基于自身的开发经验给出了一些实用、有效的建议:

微信封锁了好友链,游戏需要建立自己的好友链。微信虽然能够看到好友榜的信息,但那只是一个黑盒子,只能放东西,不能存东西;

需要用户主动自发分享,不要使用诱导分享,可以通过分享获取小游戏资源的方式代替原来的分享复活等机制;

谨慎做对战类游戏。小游戏是一种轻量级游戏,而对战游戏通常会给玩家的带来非常强的挫败感,尤其在移动端,强烈的挫败感会导致大量用户流失;

放置类玩法比较受欢迎;

在设置小游戏玩法时,一定要基于微信的规则去做。

出海游戏全球服架构及解决方案解析

一款成功的全球游戏离不开后端技术和运维,但全球各地网络质量参差不齐,国与国之间的网络拥堵,导致国际网络访问经常出现延迟、丢包等问题,给后端支持和运维人员带来了庞大的工作量,亦严重影响终端用户的使用体验。

UCloud互动娱乐事业部架构师沈皓现场为大家阐释了游戏全球化的三种主流架构:纯网络转发的集中部署、分布式业务部署、分布式部署+网络优化转发综合部署,及其业务逻辑,并结合UCloud出海游戏成功案例,讲述不同架构的使用场景及优劣势分析。

目前,市场上比较热门的游戏依然是对战类游戏。区别于传统PVE的游戏,对战类游戏着重展现人与人之间的竞争。每一次战斗都是智力、运气、策略的挑战。通过天梯激发人们的好胜心,并通过组队、地图场景、游戏道具(卡牌)以及其他社交类元素来增加游戏自身的趣味性、黏着性。

基于对战类游戏的玩法和策略,这类游戏有四大特性:UDP和帧同步,数据包交互量巨大;玩家快照和帧数据保存需要高性能大容量的内存存储;网络稳定要求高;架构主要以模块化为主,有的甚至可以两地三中心容灾。而云平台的产品,可以为用户解决这些问题。

下图为UCloud数据中心网络设计图,图上有几个叫可用区的方框,这个其实就是传统意义上的机房,公有云在此基础上开发出了可用区架构,将机房池化,网络出口独立通过不同的物理路径走到不同的出口POP点,这个POP点是UCloud自建BGP和运营商建立连接的地方。

这种方式可以将所有的机房资源池化并通过专线打通内网,为用户免费提供相同地区的不同机房网络互通,可以方便用户实现跨机房高可用的容灾架构,同时多POP点也可以保证网络出口的持续高可用,不论是物理路径问题还是运营商本地城域网故障(比如北京本地),都可以进行规避。

对战类游戏的框架设计浅析及快速上线

游戏开发除了需要好的设计及创意外,如何快速上线也是大家关心的问题,特别是出海游戏,进度缓慢很可能会导致自己的目标市场已经被占领。LeanCloud的游戏事业部首席工程师于振宇以对战类游戏为切入点,详细讲解了开发中遇到的痛点及阻碍开发进度的常见问题,现场与大家探讨了如何加快游戏的开发部署上线。

对战游戏大概可以分为弱联网、回合制、MMORPG、MOBA四类:

弱联网的游戏。它的实现方式大部分和单机游戏没有太多的区别,首先发起战斗,服务端把战斗过程回馈给客户端,客户端进行战斗的重演;

回合制。对于实时性要求不高,只要在回合操作内,完成对服务端的共性就可以了;

MMORPG。对游戏实时性要求比较高,这种游戏一般是采用状态同步去做开发;

MOBA。与前三者相比,对于实时性要求最高,一般采用帧同步的方式。

那么,如何实现这些游戏的框架设计呢?下图是一个简化的对战类游戏设计框架示意图,客户端会先向路由服务器请求一个大厅的地址,请求到大厅地址之后,系统会根据用户选择的战斗连接到具体的游戏服务器,这背后就是数据服务器的支撑。

具体连接时序为,客户端首先向服务器请求大厅的地址,然后返回大厅地址,客户端向大厅服务器发出请求连接大厅,根据玩家的需要选择创建房间,再返回房间地址,断开大厅服务器连接,最后是客户端连接房间。

那么,开发者如何进行快速开发和上线?

首先是连接,需要一些接口传递gameVersion的版本号,可以根据游戏版本号路由到不同版本的服务器;第二步是匹配,包括创建房间和加入房间;第三步数据同步,主要是Object 类型和CAS 检测;最后一步,自定义事件,这个相对简单,就是一个消息的ID和消息的Date。

最后,于振宇介绍到,LeanCloud发布了一个新的服务——Play,提供可扩展的后端云服务,能够灵活匹配玩家接口、支持Unity引擎,并实现了多人实时通信功能。

如何从一无所有到最终完成互动电影制作

从2015年的火爆到2016年的平静至2017年的低谷,再到2018年唱衰,VR行业一直都存在着诸多问题。来自飓风地带的CTO夏思源带着这些问题,以从一无所有到最终完成互动电影的制作流程为例,进行了翔实而有趣的分享。

夏思源介绍到,互动电影制作的全部流程,主要包括剧本构建、世界观设定、概念设定、剧情内容丰满、玩法设计、实现与测试、场景搭建与角色制作、动画制作、以及最后的优化与完成八大步骤。下面对其中的几个关键点进行展开。

剧本构建:剧本的主要目的是确定要做一个什么样的游戏,它的价值观、主题、表现形式是什么,以及它的世界观和它应该带给我们的玩家一个什么样的体验和心情,所以剧本的大纲构建需要放在第一步,而且十分重要。

世界观设定:选定了剧本大纲之后,接下来要确定剧本大纲所展现的蓝图、设计并内容细化,从而去奠定世界观,让制作人、工作人员,观众、以及用户知道要做的是一个什么样的东西。

玩法设计、实现与测试:玩法制作上,可以做一个比较简单的编辑方式,让策划来进行整个关卡的设计和安放。在完成整个游戏之后,需要内部人员对游戏关卡进行体验。这里,也可以邀请海内外玩家或者非玩家体验,对目标人群进行画像。

场景搭建与角色制作:这块可以直接按照商业游戏的标准进行搭建,制作场景的时候,可以出一张很简单的图,把整个场景的分布和格局做出来。角色制作跟场景搭建基本是一样的,只是留存会略有区别。整个制作过程为概念设计到细化,到整体调优。

动画制作:第一步还是传统的绑定角色,接下来在整个动作阶段全部使用演员,用Vicon(运动捕捉系统)进行捕捉,利用Dynamixyz(面部捕捉系统)进行面部捕捉,然后用MotionBuilder对动作进行修正,在UE4中进行配制,最后调整优化,这整个也是一个拍戏的流程。

结 语


目前,全球人均游戏时间仍呈现上升趋势。而随着技术的革新和人文领域的不断挖掘,出海游戏的内涵和应用必将愈加丰富,游戏正在突破传统休闲娱乐领域,跨界到社会更多的应用场景,相信与游戏互融共生的电竞、直播、VR等产业生态也将更加完善。

----End----

加·真社群|国内顶级人工智能公司已集结,每天分享激动人心的AI大事、新应用。如想进入,加微信:623974966,备注:遇见人工智能+单位和职位,符合条件,择优邀请。
领·好福利|点标题下蓝字,或微信搜“遇见人工智能”,关注后回复"报告",1秒钟获取麦肯锡、德 勤等198份顶级最新AI报告。

独家精选栏目文章合集(点击图片即可进入▼)


兼具内容品质和设计颜值的AI全媒体

「AI名利场」  「这很AI」  「AI新声」

商务合作、转载、投稿请联系微信

Lxz216216216


一些可供参考的游戏出海技术架构与经验总结相关推荐

  1. 捕鱼游戏、slots游戏出海技术支持

    捕鱼和slots类游戏的核心为数值,在美术.程序.音效.玩法都OK的情况下,数值是核心(这类游戏的数值思维方式要区别于其它类型的游戏看待).对于转型进入这个领域的团队和老板在数值上面.算法上面没有积累 ...

  2. 基于物联网(IoT)安全和健康应用的可穿戴传感器网络系统的软、硬件设计和实现(文章末尾附上IoT相关标准资料供参考)

    基于物联网(IoT)安全和健康应用的可穿戴传感器网络系统的软.硬件设计和实现(文章末尾附上IoT相关标准资料供参考) 1.WBAN整体架构 WBNA是Wearable body area networ ...

  3. 软件技术架构演变历史

    1.传统架构 传统架构 – 软件架构 – 图一                           传统架构 – 硬件架构 – 图二(仅供参考) 传统架构 – 企业组织架构 – 图三(仅供参考) 为什 ...

  4. python爬取淘宝数据魔方_淘宝数据魔方技术架构解析

    淘宝网拥有国内最具商业价值的海量数据.截至当前,每天有超过30亿的店铺.商品浏览记录,10亿在线商品数,上千万的成交.收藏和评价数据.如何 从这些数据中挖掘出真正的商业价值,进而帮助淘宝.商家进行企业 ...

  5. [转]浅析淘宝数据魔方技术架构

    为什么80%的码农都做不了架构师?>>>    为此,我们进行了一系列数据产品的研发,比如为大家所熟知的量子统计.数据魔方和淘宝指数等.尽管从业务层面来讲,数据产品的研发难度并不高; ...

  6. 人类基因编辑技术及背后的伦理问题 【个人观点,仅供参考】

    人类基因编辑技术及背后的伦理问题 [个人观点,仅供参考] 摘要 本文根据遗传学专家詹妮弗·道娜(Jennifer Doudna)在TED国际会议上关于一个被称为CRISPR-Cas9的"基因 ...

  7. Microsoft Azure 容器技术助力游戏出海

    游戏出海的竞争日趋激烈,一款游戏能否成功立足海外市场并取得蓬勃发展,除了游戏本身的元素以外,良好的玩家体验也成为关键决定因素之一. 三大体验难题亟待解决 游戏体验,到底涉及哪些方面的问题? 海外玩家面 ...

  8. c 语言ktv项目,KTV夜总会包厢里常玩的几种游戏,当然还有更多更好的娱乐项目,仅供参考...

    很多人到KTV夜总会是为了一展歌喉,但也有一部分人其实对于唱歌并不感兴趣,他们喜欢的是KTV夜总会里面的氛围,喝喝酒,唱唱歌,玩玩游戏.不论是朋友相聚,还是客户应酬,互动性的游戏总能有助于活跃气氛,加 ...

  9. STM32变频器技术方案,源码+图纸,供参考设计与学习

    STM32变频器技术方案,源码+图纸,供参考设计与学习id=661483355502&

  10. 在下列计算机应用技术中,计算机应用与技术试卷A及答案供参考

    东北农业大学成人教育学院考试题签 文章地址:https://www.llysc.cn/content/24-175827.html 计算机应用与技术(A) 一.单项选择题(本大题共15小题,每小题2分 ...

最新文章

  1. volatile: 多线程程序员最好的朋友
  2. 区分Activity的四种加载模式
  3. 计算机网络运输层的概述,计算机网络_运输层
  4. TIME_WAIT和CLOSE_WAIT
  5. python(24)下载文件
  6. lucene中文分词搜索的核心代码
  7. 14-STM32F1 iic 24c02
  8. 算法设计与分析第三章习题解答与学习指导(第2版)屈婉婷 刘田 张立昂 王捍贫编著 清华大学出版社
  9. 工厂流水线数据采集方案
  10. WeCenter 文件目录结构
  11. 【游戏开发创新】自学Blender建模,自制孔明灯,在Unity中点亮整个星空,愿新年,胜旧年(Unity | 建模 | 粒子系统 | 预设)
  12. 2023北京国际老年产业博览会/养老产业展/养老服务业展
  13. TCP IP协议之初识
  14. 《网格交易法数学+传统智慧战胜华尔街》内容介绍及PDF下载
  15. IP-guard功能详解—即时通讯监控
  16. vue框架 做后台管理系统的总结(WZ)
  17. 软件工程是不是教会不怎么会写程序的人开发软件?你的观点?
  18. 详解train_test_split()函数(官方文档有点不说人话)
  19. python 自动化数据提取之正则表达式
  20. 真的爱你计算机谱子,真的爱你钢琴简谱-数字双手-Beyond

热门文章

  1. 《考研-数据结构-哈弗曼树-已知某段通信报文内容,对该报文进行哈弗曼编码,并计算平均码长》
  2. C2Prog串口烧写TMS320F28335 Flash实验
  3. 函数指针的定义及使用
  4. 生成带微信头像的用户二维码
  5. js undefined和null区别
  6. zabbix Lack of free swap space
  7. 小米9刷鸿蒙,小米手机怎么刷机 小米9刷第三方ROM方法【详解】
  8. 学霸的迷宫 - 广搜例题
  9. 微信又支持改微信号了
  10. Git 和Bitbucket