开发一款世界级的游戏是一个非常困难,耗时和昂贵的过程。现在的游戏玩家要求越来越苛刻,他们希望既可以通过各种不同的终端设备来进行游戏 ,又要求游戏具有社交的功能。由于此类游戏的开发期和推广期都很长,因此在游戏发布当天会有成千上万的用户同时挤进服务器进行游戏体验,往往在这一时刻就决定了该游戏的成败 。
为了应对这一挑战,游戏厂商需要从开发过程就开始考虑这些将来可能出现的问题。在很多时候,游戏创作者需要是一个全能的团队,包括故事设计,游戏设计, 物理系统设计,逻辑设计,声音创作,图形,视觉特效和动画开发等部分。如果游戏是基于网络的在线游戏,该团队还必须具备包括可扩展性,存储,网络通信管理,以及安全等方面的能力。
同时,在 18 至 36 个月的开发过程中,游戏工作室又承担着相当大的财务和声誉的综合风险 。每一款新游戏是更像是一个一锤子买卖的事情。
新 AWS 游戏服务
今天,我将要向您介绍两个专为游戏开发人员提供的 AWS 新服务产品,可以帮助开发人员方便的开发出能够连接云服务的,同时又能够跨平台的游戏 。这两个服务是基于一些在游戏行业领先的成熟的引擎和开发工具,并增加了大量的我们自己的代码,同时还整合了我们的 Twitch 视频平台和互动社区,而在 AWS 服务方面整合了包括消息通讯,身份认证及存储服务等功能。下面就是我们今天发布内容的具体介绍:
Lumberyard – 是一款游戏引擎并附带向开发人员提供专业的整套开发环境 。Lumberyard 融合
了最新的CryEngine,Double Helix以及 AWS 云服务这些成熟的技术和服务, 可以大幅简化游戏开发工作。作为一个游戏引擎,它既可以支持基于云服务的在线游戏也可以支持单机版的 3D 游戏,同时支持资产管理,角色创建,人工智能(AI),物理系统和音效等多种技术 。在开发中,Lumberyard IDE 支持设计者从空白的画布开始创建室内或室外环境场景;支持开发者可以充分利用内置的内容工作流和资产管道,方便的导入在 Photoshop,玛雅,或 3ds Max 等构建的内容;支持开发者以传统的方式使用 C ++和 Visual Studio(包括访问编程游戏AWS SDK的C ++),也支持使用我们的 FlowGraph 和很酷的可视化脚本功能 Cloud Canvas 打造连接云服务的游戏。
Amazon GameLift – 许多有着后端服务器或组件支撑的在线游戏都需要能
够根据当前活跃的会话数来动态的扩展后端组件的数量 。只要您是用 Lumberyard 开发完成的游戏,Amazon GameLift 就可以帮助您部署和扩展基于会话的多人游戏服务器。您只需向 AWS 上传游戏服务器的镜像文件就可以将该镜像部署到一组可以根据活跃玩家数而自动弹性伸缩的 EC2 实例了。同时你不需要再花时间编译打包,缩放,运行或监控您自己的服务器集群。而在费用方面,你只需要按照日活跃用户(DAU)支付很小的一笔费用和标准的 EC2,EBS 和带宽的资源使用费用 。
集成 Twitch- 现代游戏玩家是一群喜欢与其他玩家和游戏爱好者进行互动的群体。无论是专业还是业余玩家都希望能够
再 Twitch 上展示自己,从而赢得更大大的,忠实的粉丝。为了进一步满足这种趋势并促进建立更深入的联系和更活跃的社区,通过 Lumberyard 构建的游戏能够方便的整合 Twitch 的功能:
· Twitch ChatPlay 功能可以允许在游戏中根据 Twitch 聊天流的关键字进行回应。例如,观众可以投票让玩家在游戏中采取何种操作。
· Twitch JoinIn:可以允许主播可以从聊天频道内邀请观众中的一员进入游戏。
这些服务功能,与 AWS 的其他功能类似,都是为了让您更专注于游戏的独特性和创造性方面,这样就可以不断快速的优化游戏体验,直到达到所期望的参与感和乐趣 。
支持服务 -随着对这个锦上添花,我们还推出了一系列支持选项,其中包括一个专门的 Lumberyard 论坛和一系列教程(文本和视频)。同时也提供多种等级的 AWS 付费支持服务。
Lumberyard 开发
Lumberyard 是在今天的发布的核心。正如我前面提到的,它是专为专业游戏开发人员定制的,并支持高品质的,跨平台的游戏开发。目前可以支持以下环境:
· Windows – Vista,Windows 7,8,和 10。
· Console – PlayStation 4 和 Xbox One
移动设备和 VR 设备的支持会在后续的几月内上市。
Lumberyard 的开发环境可以运行在 Windows 的个人电脑或笔记本上。您需要一个快速的四核处理器,至少 8 GB 内存,200 GB 的可用磁盘空间,以及 2 GB 以上显存的高端显卡 和 Direct X 11 的兼容性。您还需要的 Visual Studio 2013 Update 4(或之上版本)以及 Visual C ++ Redistributables 组件包。
Lumberyard 下载包包含二进制文件,模板,资产和 Lumberyard Editor 的配置文件。它还包括 Lumberyard 游戏引擎的二进制文件和源代码 ,您可以直接使用现有引擎并以源代码作为参考,也可以进一步根据游戏的需求定制修改引擎。下载包中还包含 Lumberyard 启动程序,它可以确保您已正确安装和配置 Lumberyard 和第三方的运行时环境,软件开发工具包(SDK),工具和插件。
Lumberyard Editor 既可以进行游戏的开发,同时又可以用它来编辑和管理游戏中的资源 。
Lumberyard Editor 包含一整套编辑工具(每一个工具都可以单独写一篇博客来介绍),包括资源浏览器,图层编辑器中,LOD 生成器,纹理浏览器,材质编辑器,Geppetto(角色和动画工具),人体模型编辑器,流式图 Flow Graph(可视化编程), AI 调试器,轨迹视图编辑器,音频控件编辑器,地形编辑器,地形纹理图层编辑器,粒子编辑器,日夜时间编辑器,太阳轨迹工具,合成编辑器中, 数据库视图和 UI 编辑器。所有的编辑器(以及更多)是都可以从顶部的工具栏访问。
为了让您能够在有选择性的,模块化的将功能添加到您的游戏中,Lumberyard 提供我们称之为 Gems 的代码打包系统。您只需启用 Gems 就可以自动编译和打包相应的二进制文件。Lumberyard 提供默认的 Gems 包括 AWS 访问,Bolds(用于蜂拥行为),云服务,游戏特效, GameLift 访问,雷电,物理系统,雨,雪,龙卷风,用户界面,多人游戏功能以及逼真的森林等。
利用 Flow Graph 和 Cloud Canvas 编码
通常来说,游戏逻辑是由专门的开发人员来进行构建的,往往需要对 C++的代码进行反复的编辑/编译/运行。如果您使用 Lumberyard 您仍然可以使用这种方式来实现游戏逻辑,但同时 Lumberyard 还提供了另外两种方式来处理逻辑:Lua和 Flow Graph 。
Flow Graph 是一个直观和易操作的可视化脚本系统,可以让您轻松的实现复杂的游戏逻辑,而无需编写或修改任何代码。您可以使用具有扩展能力的组件库来预定义游戏的玩法,声音的控制和特效的管理。
Flow Graph 是由节点和链路组成的; 在一层中可以包含多个 Flow Graph,它们可以同时保持活跃的状态。节点代表游戏实体或动作,链路是用来连接一个节点的输出和另一个节点的输入。输入的数据类型可以是布尔,浮点,整数,字符串,向量等等类型,同时输出则可以连接任何类型的输入; 如果需要的话,数据类型的转换会自动被执行。
Cloud Canvas 是一组用来访问各种云服务的节点,它有超过 30 种不同类型的节点,其中包括两种访问Amazon简单队列服务(SQS)的 节点, 四种可以访问Amazon简单通知服务(SNS) 的节点,七种读/写Amazon DynamoDB的节点,一种可调用AWS LAMBDA的节点,一种可与Amazon Cognito联合认证玩家的节点。所有 AWS 服务请求都是通过配置在 Cloud Canvas 内的用户发起的,并且该用户的访问权限则是由AWS身份和访问管理(IAM)所进行设置和管理。
如下图,是调用名为 DailyGiftLambda 的 Lambda 函数的节点:
而下图则是一个使用 Lambda 和 DynamoDB 实现“日常礼物”功能的 Flow Graph:
像往常一样,在这里我仅仅是简单的介绍了一些皮毛而已!要了解更多信息,请阅读Lumberyard用户指南中的 Cloud Canvas 文档。
利用 Amazon GameLift 进行部署
如果您的游戏需要一个可扩展的,基于云的运行环境,您一定要了解一下Amazon GameLift。
您可以用它来部署许多不同类型的具有共享,连接,定期同步游戏数据等需求的游戏,包括第一人称射击游戏,生存和沙盒游戏,赛车游戏,体育游戏,和 MOBA(多人在线竞技场战场)游戏。
在建立服务器端逻辑之后,您可以将它上传到 Amazon GameLift。它会在几分钟之内就可以转换为基于 Windows 的 AMI(Amazon Machine Image)。一旦 AMI 准备好了,就可以创建一个 Amazon GameLift 组(或更新现有版本),并将它指向之前的 AMI,那么您的后台就已经准备就绪了。
而部署之后的服务器组,游戏会话的个数,每组服务器运行状态等信息都可以在 Amazon GameLift 控制台中看到:
另外,在 Flow Graph 中可以使用 GameLift Gem 创建一个 Amazon GameLift 的会话并启动该会话服务。
要了解更多信息,请参阅Amazon GameLift文档。
Twitch 集成
最后但绝非最不重要的,您的游戏可以通过 Twitch ChatPlay 和 Twitch JoinIn 与 Twitch 集成。
正如我前面提到的,您甚至可以创建能够由 Twich 通道的关键字而驱动的游戏逻辑 。例如,这里有一个 Flow Graph 监听关键字红色,黄色,蓝色,绿色,橙色和紫色的示例。
使用及价格
Lumberyard 和 Amazon GameLift 现已上市,您可以从今天开始建立您的游戏!
您可以完全免费的使用 Lumberyard 来开发在线或单机游戏,但需支付在通过 Cloud Canvas 或 AWS C++ SDK 调用的 AWS 云服务的费用, 以及使用 GameLift 的费用。
Amazon GameLift 目前已在美国东部(弗吉尼亚州北部)和美国西部(俄勒冈)两个区域上线,并会陆续在其他区域上线。作为 AWS 免费套餐的一部分,您可以免费运行 c3.large 实例每月多达 125 小时,为期一年。除此之外,你需要支付按需使用的 EC2 实例费用,加上每台实例 50 GB / month 的 EBS 存储费用,以及 $ 1.50 每 1000 个日活用户的包月费用。
本文转载自 AWS 技术博客。
原文链接:
https://amazonaws-china.com/cn/blogs/china/lumberyard-amazon-gamelift-twitch/
评论