想买个编程笔记本电脑排名 用于游戏编程 游戏引擎 大型游戏软件 初步预算在6000左右 大神帮忙推荐几款比较合适的

《游戏引擎架构》([美]Jason Gregory)【摘要 书评 试读】- 京东图书
客户服务
游戏引擎架构
京 东 价 &
[定价 &¥]
PLUS会员专享价
您购买此商品可享受专属价
增值业务 &
重  量 &
选择系列 &
搭配赠品 &
加载中,请稍候...
加载中,请稍候...
加载中,请稍候...
加载中,请稍候...
加载中,请稍候...
商品介绍加载中...
下载客户端,开始阅读之旅
权利声明:京东上的所有商品信息、客户评价、商品咨询、网友讨论等内容,是京东重要的经营资源,未经许可,禁止非法转载使用。
注:本站商品信息均来自于合作方,其真实性、准确性和合法性由信息拥有者(合作方)负责。本站不提供任何保证,并不承担任何法律责任。
印刷版次不同,印刷时间和版次以实物为准。
价格说明:
京东价:京东价为商品的销售价,是您最终决定是否购买商品的依据。
划线价:商品展示的划横线价格为参考价,该价格可能是品牌专柜标价、商品吊牌价或由品牌供应商提供的正品零售价(如厂商指导价、建议零售价等)或该商品在京东平台上曾经展示过的销售价;由于地区、时间的差异性和市场行情波动,品牌专柜标价、商品吊牌价等可能会与您购物时展示的不一致,该价格仅供您参考。
折扣:如无特殊说明,折扣指销售商在原价、或划线价(如品牌专柜标价、商品吊牌价、厂商指导价、厂商建议零售价)等某一价格基础上计算出的优惠比例或优惠金额;如有疑问,您可在购买前联系销售商进行咨询。
异常问题:商品促销信息以商品详情页“促销”栏中的信息为准;商品的具体售价以订单结算页价格为准;如您发现活动商品售价或促销信息有异常,建议购买前先联系销售商咨询。
  ★本书针对每一个现代游戏开发相关的重要系统和话题,给出一个完美、综合的概览,无论是计算机科学、软件工程,或是游戏主程,以及业余爱好者、游戏玩家,本书均不可或缺。  ——获评CHOICE杰出学术作品  ★这里有最专业的领域知识与概念讲解……有了它,你将具备对如何构建游戏引擎的深入理解……本书让人印象尤其深刻,因为该领域再也找不到另一本如此详尽的图书。  ——EricHaines  ★作者将数年经验及专业积累集中在这本完整、全面的著作中,内容跨越游戏引擎开发理论与实践。书中提供的游戏开发过程各方面的精彩实例,保罗万象且对读者大有补益。不仅游戏引擎开发人员看后会大受鼓舞,甚至也可作为有经验的该领域技术专家的实用参考。本书可谓无价,除内容“用户友好”外,其附录也值得强烈推荐,无论是个人开发者、专家还是计算机科学学术人员,都可将其作为资源集合与参考资料,当然游戏设计架构人员更是不可不读。  ——TheMidwestBookReview  ★本书涵盖有关如何开发游戏引擎要旨的巨量数据。  ——Gamasutra.com,November2009  ★本书曾位列“theGameDeveloper”杂志前沿大奖候选图书。  ——PRNewswire
iframe(src='//www.googletagmanager.com/ns.html?id=GTM-T947SH', height='0', width='0', style='display: visibility:')游戏开发编程的难度,超乎你的想象! - 乔布简历
游戏开发编程的难度,超乎你的想象!
浏览( 9379 )
一、关于游戏开发编程难度的定义
我认为,游戏开发编程就是围绕着游戏开发的一切写代码行为。有人回答说现在很简单啊、有引擎啊、写个逻辑没难度之类的,这都是没有帮助的答案。那引擎算不算游戏开发?如果不算,我能不能认为研发汽车很简单,只需要把汽车生产的流水线买回来,然后自己采购材料装配就算研发汽车?荒谬!没有引擎,算个J【哔】。没引擎研发你好意思说自己在做游戏么?那是策划和美术干的事情,没技术人员个J【哔】事情。
游戏研发的技术含量,绝大部分就在于引擎研发里面,没有引擎研发,等于技术人员没什么鸟事情。所以我认为游戏研发编程,应该用引擎研发的来定义,而不是简单用游戏逻辑敷衍过去。当然,游戏逻辑要开发好也绝对不是一件简单的事情,之前有人讨论过的,如何搭建一套任务系统,非常讲究。这里先不展开。
二、游戏引擎是什么
绝大部分人,特别是小白,只是认为游戏引擎只是画出游戏画面的那么一坨东西,只是一个执行游戏逻辑脚本的程序。嗯,这都是业余看法。
游戏引擎虽说是引擎,实际上是一套生产工具,代表着游戏开发者的生产力。要开发游戏,就需要通过这套工具,去进行游戏的内容创建(Content Creation),并且进行游戏的维护、迭代、再开发(DLC、资料片)。而且游戏引擎还包含对自身开发的工具,比如专门debug引擎的工具,专门profile工具等等。再深入一点,针对网络游戏,服务端有专门的部署工具、管理工具、测试工具、维护工具、GM工具等等。所有这些东西,加起来,一整套工作流水线的总和,才是游戏引擎。Runtime部分,只是一小坨东西。
游戏引擎Runtime部分的东西,都是实时或者准实时演算的、也有实时重演的,这部分对技术的要求是效率高,无论是图形、还是物理、AI等都必须在毫秒级别完成复杂运算,还需要跟游戏本身的表现进行配合,抠得很死。
游戏引擎编辑器部分的东西,大而全,一般稍微完整的编辑器都几乎要克隆大部分Autodesk 3DS Max的基本功能,而且还需要针对引擎本身特性作出一些定制,还需要根据不同游戏类型、游戏资源创建的pipeline进行调整。而这个调整、这个pipeline本身的合理性和流畅度,直接影响美术资源的制作、游戏内容的制作迭代,很多游戏胎死腹中,死就死在这个上面。什么东西是游戏制作预算最大头部分?你们猜?
游戏公司的生产效率,就直接体现在编辑器的制作效率上,以及内容生产者对pipeline的磨合程度。磨合得好,效率高、成品率高、往返扯皮少、预算低、项目可控、产出可控。磨合得不好,就跳票、跳票、跳票、挂。
服务端部分比较敏感,不多说,就一笔带过,用集群的,有可能你全服挂了还不知道哪个结点出问题了怎么死;逻辑不严密的,交易复制金钱一个星期了还没log没警报没言论监控察觉,游戏直接金钱通胀GG。
三、游戏引擎开发的难度
没做过引擎的、做过引擎的、和设计过引擎的人,想法完全不一样,不能同日而语。屁股决定脑袋,你不在那个位置上,不能把问题思考透彻。很少人可以从无到有搭建一个完整的引擎并且让它变成一个游戏可以卖钱,于是很少人能想明白,有些东西为什么这么做。
有些人列举了一堆所谓的问题和采用的算法,指出他们在很多年前就已经进入瓶颈了。真的吗?那么为什么这些年引擎还在进步?游戏画面在提高?游戏体验在加强?游戏引擎的算法在更新?举个栗子,LPV/SVO算不算图形算法的突破?二十年前卡马克时代有LPV么?有全局光么?他动态光都不敢多用两个,何况现在用的brickmap style的light point cloud做无穷多光源的模拟。这些例子太多,实际上还真不算什么难度,有算法出来了,我们集成就是了。
然而游戏引擎真正难的部分在于,架构。
重要的事情要说三遍:架构、架构、架构。
很多算法看上去很美,单独实现很简单,但要真的用起来,一点都不容易。因为你的引擎不一定容得下它。架构并不是很玄乎的东西,他实际上看起来就像一个架子,用来放一些业务和算法。牛逼的架构就是可以放好多好多东西,可以兼容不同类型的业务和算法,并且相安无事。挫的架构就是需要不断的进行整体的更替以适应业务的变化和新算法的需求。
简单的来说,架构源自于对重复性业务的抽象和对未来业务扩展的前瞻。即你的经验和预见。比如你的Entity底层架构是否带树状更新结构,要知道树状更新结构会在大量采用嵌套性挂接结构的时候引发性能问题,即如果你在做MMO,那么要小心咯,策划可能会做一些复杂的圆环套圆环装备、宠物、翅膀、坐骑、双人坐骑、移动平台,这些都是嵌套性的挂接结构,在树状更新的时候需要遍历树的每个节点,可能有性能问题(在移动时代这还可能产生耗电问题)。但如果你在做FPS,那么这个不是什么大问题。(请参考采用Unreal2的天堂,对照Unreal3的ActorComponent改动)。
所以,你的架构,决定了你做什么游戏有利,什么游戏不一定有利。
那问题来了,没引擎之前,怎么来架构?踩坑啊!踩足够多的坑。没做过实际游戏,一定、绝对、100%是没法做引擎设计的。因为引擎架构来自于业务,没有业务的洗礼,不知道什么才是引擎真正需要的。于是在做引擎之前,必须先熟悉游戏开发本身。引擎架构还必须足够宽容和庞大,以容得下各种不同领域的算法;同时架构还必须足够高效,本来已经繁重的游戏计算需要更轻更快的信息交互。
试想一下,你的逻辑结构每帧需要从设备抓取玩家输入,监听网络事件,然后转换成逻辑响应、驱动游戏逻辑运算、驱动AI运算、驱动物理运算、再变成Entity的属性、由Entity发送到渲染层、渲染层把属性翻译成渲染属性、组织成最合适渲染设备调用的数据、发送到渲染设备、设备在进行最复杂和繁重的渲染计算、这个时候引擎很可能在并行的做一些收尾工作、准备下一帧更新、同时调度后台的文件系统读取即将需要的游戏资源、并且游戏逻辑可能利用等待渲染的时候做垃圾回收、或者进行脚本的热更新操作。
上述工作,横跨数个大型模块:
引擎层对象模型
AI层的数据更新
物理引擎的模拟运算(更新、交互、反馈)
渲染层的更新运算(Vertex/Index/Texture/Shader/Framebuffer/Parameter)
网络层(RPC/Data Replication)
鼠标键盘输入输出
GUI的组织和更新
嗯,基本上,计算机几乎所有领域的算法,都基本涵盖了。(还有反外挂技术,开发到最后基本和杀病毒杀木马无异……)
游戏引擎的架构,相当于把上述这些大型的模块,当做老婆一样娶在一起,然后让他们相安无事,和平共处。可是他们天生都是相互嫉妒的啊!物理的数据渲染不能复用啊!渲染的数据无法反馈啊(反馈的代价很大啊)!逻辑的数据要稳、引擎的数据要高效、不同算法需要不同的对齐/排列,要快还要考虑SIMD啊!尼玛的,这些东西要传递要交互几乎都是要设计n套交互协议啊!
于是我们利用了一个伟大的发明,那就是OO。所以C++是必须的,游戏引擎必备的语言。OO拯救了游戏开发者的世界……
然而你在用OO抽象这些东西的接口之前,你需要先熟悉上述所有这些领域的算法,才能设计出一个中心框架架构……要知道这些东西,每一个模块的具体算法,随便拿一个出来,都足够你做一辈子的。
更难的是,上面这个每帧更新过程,是实时在跑的。更更难的是,这些东西,有可能是在玩家的小霸王学习机上跑的。更更更难的是,玩家可能在网吧、而网吧安装的是非标准的操作系统、并且用的是垃圾cpu加非常不错的显卡跑的。
这些问题,作为游戏引擎开发者,特别是苦逼的国内开发者,都要考虑到,都要想办法兼容、压榨,否则玩家分分钟问候你家人一个晚上。
所以,基础架构,对游戏引擎尤其关键,而恰恰它的开发却是困难无比。
(我很想展开服务端啊,可是我不算特别懂,而且游戏服务端比上面这个客户端的高大上很多啊,牛逼的服务端引擎很屌很腻害啊,想象一下像黑客帝国里面的情节一般,我和你面对面释放魔法造成伤害,但我们在不同的服务器上,不过下一个瞬间,我们又在同一个结点上了——所谓的动态迁移)
四、游戏引擎最复杂的部分
无疑,在引擎runtime(我这里仅仅说runtime,其实tool chain部分有更复杂的,但绝大部分人接触不到,不提作罢)部分,最复杂的,要数图形引擎。
首先图形引擎是一个门槛很高的开发项目。虽然学的人多,但靠谱的人少;靠谱又懂美术的,少之又少;靠谱、懂美术、做过游戏、又可以设计引擎整体框架的,凤毛麟角。图形引擎需要的并不是一个实证式的算法,它需要更多的是trick,是cheat,要骗过玩家的眼睛和感受,需要的不只是一个书呆子式的研究员,而是一个深入了解游戏美术制作的、懂那么一点美学和电影的算法设计师。每个引擎都会根据自己需求定制一些图形算法,去adapt自己的优势。
其次图形引擎是一个弱理论强工程的产物。即使你理论水平已经达到发西瓜paper的地步,也不代表你可以设计出优秀的图形引擎。因为图形引擎需要应用——要接地气。你面对的可能是一个很广泛的GPU type,可能有不同的渲染管线架构,可能有不同的API,甚至可能你的图形引擎需要兼顾PC、移动、console平台,每个平台你需要有针对性的调用策略,而必须保证他们看起来差不多。
更加操蛋的是,你可能需要关注很多技术细节,比如PC机器用的是dxtc、大部分android机器用的是etc1、而ios用的是pvrtc、xbox one用的是bc6、metal gpu family 2用的是astc。这些贴图压缩格式各不相同、却各有优劣、在不同的场合有不同的优势也有不同的弱点。比如pvrtc在低频图像上可能会有一些斑点、etc1没有alpha通道需要用一些额外的手段进行模拟。
这些技术细节却决定了你画面的成败。可能你读了一篇很棒的西瓜论文,发现了一个碉堡了的新算法,然后开始要在你的引擎上大展拳脚,结果放到目标设备上却发现效率奇低。
在最新的军备竞赛中,unity和unreal4都在图形引擎架构上花了很大力气,比如用了诸如glslopt、hlslang之类的中间shader编译器来保证跨平台的shader正确性,把编译器这个程序员三大浪漫之一引入到了复杂的游戏引擎开发里面,瞬间提高了游戏引擎开发的难度和逼格。
最后图形引擎现在还面对对gpu驱动撒手不管的操作系统,最新一批API,DX12、Metal、Vulkan都采用了薄驱动,即“老子不管你们怎么用gpu了,引擎自己管吧”。
这样相当于把图形绘制的状态切换、资源管理、数据更新、命令调度全部抛给了游戏引擎自己做。这样可以大大提高拥有优秀架构设计的引擎效率,却也大大提高了引擎的设计难度。
五、功夫在诗外
游戏引擎更多的需要项目的洗礼和验证,多一个项目采用可以踩更多的坑,让架构更加成熟和稳定。但游戏无法像网站一样持续的推出、热更新、选择性更新,一挂即挂,所以游戏公司需要开发一款引擎,其难度更可怕的在于,你需要用游戏产品,作为引擎的炮灰,去历练出一个优秀的引擎架构和tool chain。
所以别问太多为什么国内的游戏山寨居多啊,也别问太多为什么国内没有像样的引擎。
其实,引擎、游戏、效果,都是用钱堆出来的。前面的是炮灰,是试验品,不过很多公司不懂,很多管理者不明白,当然也烧不起这个钱。有时候一个游戏失败了,一家公司就倒了,一个有希望的团队就散了,一个有志气的人就磨灭了。
国外环境宽松,机会也多,生活简单,上世纪有很多炮灰,也磨练出了一堆伟大的引擎架构师,他们艰难的存活下来了,把这些经验变成引擎设计的智慧,重新运用到了新的引擎上,升华,变成更厉害的游戏引擎。这个过程其实很艰辛,很痛苦,很难,这个过程倒了无数个tim sweeny和john carmack,大家只是看到了成功的那两个而已。
国内有时候也会有成功的游戏,但积累的意识太少,持续发展的想法很难被支持,和环境有密切关系。当然,更重要的是,游戏引擎开发真的太难、太难、太难、了。
感谢知乎网友@ 的分享。
转载请注明出处,欢迎参与讨论,纠错和补充内容
使用量22107
使用量16165
使用量12947
使用量11169
back to top
看过软件类文章的用户使用的简历模板就像在汽车中,引擎完成主要的工作,使汽车看起来不可思议。游戏引擎同理,游戏开发者完成细节的工作,使游戏看起来真实、吸引人眼球。游戏引擎负责其余的事情。早期,游戏开发者通常从草图做起,花费高昂,且不容易获利。为了让游戏开发更加简单容易,主要的开发者开始授权他们的基本游戏引擎,如 Unreal。而且,随着手机和平板游戏的出现,所需预算比以前更少,对 JAVASCRIPT 和HTML5 游戏引擎的需求大增。
如果你是一个游戏开发者,并且正在寻找一个可以与 JavaScript 和 HTML5 无缝工作的游戏引擎。尽管市面上有很多免费和付费的游戏引擎,让专业的游戏开发者满意的游戏引擎肯定需要包含独特的东西。游戏开发者对完美游戏引擎的追求永远不会停止。
下面将介绍最好的html5和javascript游戏引擎列表,每个游戏引擎有每个人想要的特性。每个游戏引擎有他自己的优缺点,这样你可以根据你自己的需求做选择,我确定这个列表中有你在寻找的游戏引擎。
Canvas Engine 提供创建html5视频游戏的平台,创建html5游戏,它会运行在所有的现代浏览器,平板电脑和智能手机上。
Quintus 是另一个容易使用,适用于移动设备和桌面的javascript html5游戏引擎。 Quintus有一个模块引擎,通过它你可以仅仅引用你需要的模块,并在,在一个页面上,可以运行多个实例。
Trubulenz 是一个开源的用来创建使用高级技术和web服务的HTML5游戏引擎。引擎库使用支持游戏代码数据快速迭代的优化后的javascritp实现。
这是一个非常容易使用的游戏引擎,它适合新手去创建他们第一个web 游戏,也适合有经验的程序猿创建示例和原型。
Akihabara 是一个html5游戏引擎,同样也是一组用javascript创建运行在浏览器中的不依赖falsh技术的马赛克风格的8/16位游戏的库和工具。
GMP 是免费的、快速的Javascript游戏引擎,它轻巧而简便易懂。 如果你想要做一些基于精灵的2-D游戏,GMP是很棒的选择。它可以很容易的进行大多数复古风格的游戏设计。它也可以像sudoku一样制作拼图游戏。
Traffic Cone支持多人游戏,目前只提供客户端支持,所以你需要提供自己的服务器。为了在不久之后提供更多支持,我们正积极致力于Traffic Cone服务端的开发工作。
Collie是一个Javascript库,它有助于让HTML5创建高度优化的动画和游戏。 Collie可以在PC 和移动平台上运行HTML 5 canvas 和 DOM。
Collie可以稳定地使用渲染管线处理多个对象,并且支持一些有益的特性包括动画精灵和用户事件。它稳定支持iOS和Android,并且为每一个平台优化渲染。 视网膜屏幕也可以轻易地响应。
GameJs是一个基于HTML&canvas元素的轻量级库。特别值得一提的是,它的绘画函数为游戏开发者提供各种各样的有用模块,并且还在不断扩充之中。
Jest 是另一个强大的javascript游戏框架,它使用画布元素来创建基于javascript HTML5的游戏。&
使用画布元素来创建基于javascript HTML5的游戏
Jawsjs是一个由HGTML5驱动的2D游戏库,最初只支持画布,而目前它已经可以通过相同的API支持基于精灵的普通DOM
objects.js是一个用来创建高性能(和大型)游戏和应用的框架,使用javascript。
Playcraft具备了一个完整的HTML5游戏引擎工作集,提供了你在建立游戏并直接发布到市场上的每一件工具。这是一个独一无二的引擎,当编写游戏时你可以轻松地将其转换到许多不同平台上,包括Facebook,简朴的老式网站,以及一些本机化的Android和iOS应用。
Gladius是一个3D游戏引擎,全部用JavaScript编写,设计于在浏览器上跑的。该引擎包括了一个功能核心集,这对于所有游戏是通用的,并且还模拟了游戏回环、消息、任务、定时器等。像空间变换这样的通用组件也在内核中提供了。而绘图和物理学这样的特殊功能也作为游戏扩展封装起来并设计于运行在内核之上。一个通用的扩展集将作为工程的一部分被维护着,并且该引擎的一个强大设计目标就是支持第三方扩展。
Impact 提供炫酷的方式来创建javascript 和HTML5&游戏,且支持桌面和移动端浏览器。&Impact 运行于所有支持HTML5的浏览器: Firefox, Chrome, Safari, Opera 并且(瞧!) 甚至是IE9(译者注:我也是醉了)。当然也包括爱疯、爱破的塔尺和艾派德。
Crafty是另一个javascript上的有用的库。
另一个用的很多的用于建立HTML5游戏和APP的javascript框架。其用于在HTML5和JS上开发简单游戏和应用。
一个用于HTML5 Canvas上的JavaScript动漫库
Froze是一个开源 HTML5&游戏引擎,其通过工具化模块化实现易用、快速开发。
Withplus用于建立 2D javascript 游戏和绘图引擎。&定期使用最新的HTML5 技术扩展建立。
melonJS 诞生于我们对Javascript的一腔热血以及过去诸多实验之中, 并且当时苦于没有一个简单、免费、独立的库来支持游戏开发。虽然这个引擎还在开发中,但是已经允许大家轻松地创建一些好玩的哟西了。
gameQuery 是一个易于使用的jQuery&插件版引擎,通过增加一些简单的游戏相关类来帮助js游戏开发。如果你懂得使用jQuery那么你几乎不用问怎么使用gameQuery!
一个使用Javascript和开放网页技术来制作游戏的免费软件框架。
通过clay.io创建HTML5游戏将非常简单。
英文出处:http://devzum.com//25-best-html5-javascript-game-engine-libraries-for-developers/
译文出处:http://www.oschina.net/translate/25-best-html5-javascript-game-engine-libraries-for-developers
感谢您的支持,我会继续努力的!
扫码打赏,你说多少就多少
记住登录状态
重复输入密码想要买笔记本电脑6000元以下的,主要需求 :玩一些主流大型游戏,做编程,做图片视频处理如PS、买什么的好_百度知道
想要买笔记本电脑6000元以下的,主要需求 :玩一些主流大型游戏,做编程,做图片视频处理如PS、买什么的好
我有更好的答案
我们买笔记本的话,不仅要好考虑配置,还要考虑质量,售后服务,品牌,散热。综合质量,售后服务,品牌,散热和配置等各方面的话,我推荐你的是戴尔灵越15R系列这系列的机子总体评价不错,外观时尚,配置也不错,很符合你的要求,值得考虑。这样吧,你给我你的邮箱,或者加我Hi,我帮你针对性的挑选一款适合你的型号
邮箱也是这个
采纳率:33%
来自团队:
处理器/操作系统
价格A40Jy笔记本电脑
14寸AMD HD6470M
(这个很给力。)K42DR笔记本
AMD三核N830
14寸强效游戏战机
Y460吧,i5处理器的,我的就是,玩极品飞车14,鬼泣4,神魔大陆,都很好,一点都不卡,超劲爆,我买的5800,年前买的…
其他2条回答
为您推荐:
其他类似问题
您可能关注的内容
买笔记本电脑的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。看看那些号称不会编程也能做出手机游戏的工具
不写代码,也能做游戏? - 触乐
任何一个热爱游戏的玩家都会有自己也做游戏的想法;我们也会对一个烂游戏发出这样的感叹:这算什么,我都能做的更好。有些人会仅仅感叹完就算,而另外一些人会去尝试:既然我玩过那么多游戏,我也想自己做一个游戏试试看。在如今这个手游风行的时代,做一个具有基本的技术水平的游戏的门槛已经降到了最低:一个独立开发者不用担心发行渠道,不用担心工具,只需要有过得去的美术和程序能力,和一颗热爱游戏的心就可以做出一款大热的游戏出来,App Store上也到处是个人开发者做出的游戏大红大紫的例子,比如《像素鸟》(至于《像素鸟》为什么火,那是另外一个故事)。
为大型游戏和专业开发者准备的工具已经相当多,这些工具之间的优劣也属于常年在专业开发者内部争论的话题,在此我们并不过多的深入。前段时间一个在线应用开发网站Appy Pie推出了新的GameBuilder,提供游戏模板,宣布用户不需要任何编程能力便足以做出一个新游戏出来,并且由网站提交给苹果进行审核。加之最近在WWDC中苹果也推出了新的开发工具Xcode Playgrounds,开发者可以更加直观便利的开发游戏,这再次引发了我们的思考:市面上这么多工具所号称的“不需要写一行代码就能够开发游戏”的口号真的是否现实?我们可以来考察一下这些工具。
■ 个人游戏制作工具的历史
RPG Maker VX,可以看出软件中已经提供了大量的素材可以使用,不过游戏机制还是勇者斗恶龙式的
个人独立开发游戏的工具大概可以追溯到很早以前的RPG Maker,其最早版本是在92年由日本公司Enterbrain发行。而第一个在Windows PC上运行的版本则是RPG Maker 95。从名字可以看出这是一个专门用来制作RPG游戏的软件,游戏里自带大量素材,使用者不需要编程只需要利用内置的事件编辑器和战斗编辑器就能够写出游戏的基本逻辑。
从名称上也可以看出这个软件能够开发出的软件基本上仅限于日式脚本RPG类型的游戏,但是仍然有玩家自己做出ARPG或者SLG类型的游戏。这需要重写游戏机制,玩家得非常熟练的使用编辑器才能做到。从这个角度而言,RPG Maker的地位相当于后来很多RTS自带的地图编辑器,只是可以导入游戏以外的美术素材。而著名的魔兽3的地图编辑器则相当于一个非常简化版的游戏制作工具,连目前大热的MOBA类型的游戏都是从魔兽3的个人自制地图开始的。
GameMaker: Studio,这已经算是一个比较现代和系统的开发工具了,提供大量的控件使用
GameMaker: Studio则是另外一个较早的个人游戏制作工具。GameMaker: Studio最早的版本发行于1999年,那时的名字还是Animo,原本是一款制作2D动画的软件。之后这个软件改名为Game Maker,变为一个主要是制作2D游戏的软件,只有有限的3D画面的支持。跟RPG Maker一样,用户不需要编程,可以只使用拖曳操作便可完成制作。软件还提供了一门脚本语言Game Maker Language可以应用于简单的编辑器无法满足要求的场合。
与同类工具一样,如果用户想要在不写代码的情况下完成一个游戏,那么就只能利用软件内部已经打包好的游戏机制来制作出游戏;但是如果用户所构思的游戏机制的复杂度达到一定的门槛,那么编写脚本和事件逻辑是不可避免的。随着现代游戏变得愈加精巧,这个工具本身也在随之进化;到现在为止GameMaker: Studio仍然在开发中,而且官网上也展示了不少使用他们的工具开发出的游戏。可以看出有不少独立开发团队也使用这个工具在开发游戏,但是恐怕优秀的游戏就不是宣传的“不需要编程”就能开发出来的了,而是需要大量的脚本编辑器使用。
■ 移动游戏时代的DIY套件
在如今的移动时代,软件和游戏开发门槛降低,工具也变得十分多样。商业开发者可以使用成熟的引擎开发,比如Unity3D或者更加复杂的PC界的虚幻引擎;具备比较强悍的编程能力也有野心的个人开发者可以使用诸如Torque3D这样的开源3D引擎;想要做普通2D游戏的个人开发可以使用Cocos2d-x这样的开源2D游戏开发环境,或者使用诸如PhoneGap这样的网页包装工具将已经做好的网页游戏包装为移动平台应用。
以上所述都是相对而言专业正统的游戏开发工具,使用这些工具的仍然是专业的开发者:程序员、设计师和美工。个人游戏开发工具的目标用户则非常明确:业余开发者。所有的个人开发工具都强调不需要编程即可使用,是否真的如此?
GameSalad是比较著名的个人游戏开发工具。使用他们的软件仍然需要安装软件到本地电脑,想要开发iOS游戏,也需要安装标准的苹果开发环境Xcode以及购买99美元的苹果开发者资格 。软件里提供的是一个比较标准的软件开发环境,只是软件开发环境里所必须的很多需要编程的基础逻辑和机制结构都被作为控件向用户提供,用户只需要输入参数就可以使用。从这种意义上来说,使用GameSalad的确不需要编程,但是用户不可避免的需要了解一些软件工程的基础流程才能比较顺畅的实现目标中所需要的游戏机制。
据使用过GameSalad开发过游戏的用户介绍,使用GameSalad生成的项目无法转为Xcode下的源代码进行二次开发,也有很多在Xcode环境下可以实现的功能无法在GameSalad下实现。这也说明了其并不是一个商业开发工具,不过个人用户想要做一些游戏机制比较简单固定的游戏是足够了。在官网上开发者不无得意的展示了不少已经发布的使用GameSalad开发环境所编写的游戏,其中还包括若干进入了排行榜前100位的游戏。
GameBuilder Studio
在GameBuilder Studio 的官方网站上这个工具被宣传为全平台的游戏制作工具。 在宣传中,软件的集成开发环境中功能和插件非常齐全,用户可以在同一个环境中开发iOS、安卓、Kindle、Ouya、Windows Phone、Facebook和网页以及Flash游戏,还提供了多人游戏和应用内购买的功能插件,功能玲琅满目。开发商还特别强调了,他们是唯一一个能够在Windows环境下开发iOS游戏的工具。
不过在对这个工具的官方网站进一步的观察之后,不难发现一个事实:GameBuilder Studio的用户群非常有限。工具Github页面已经数年没有进行大的更新,官方论坛上讨论寥寥。如果是一个流行的游戏制作软件,那么官方论坛上肯定满是讨论群组,会有大量的新用户会问一些最基础的问题,这是正常规律。但是官方论坛从这个软件2010年发布到目前为止只有96个帖子 。所有这样的个人开发工具的网站上都会提供一个展示页面,显示用户使用他们的工具开发出的游戏,但是这个工具的官方网站上虽然提到了这一点,却没有展示任何一款游戏。 到底有多少人在使用这个GameBuilder Studio,也就可想而知了。
Appy Pie’s GameBuilder
从网站的宣传来看,应用开发就是简单的选择模板并且适当的自定义就可以了
是一个在线应用开发网站,用户并不需要下载一套软件来进行应用开发工作,只需要点选网站提供的相应的模板然后适当的上传素材,或者干脆在网站提供的素材库里挑选,就可以完成一个应用,网站可以帮助你提交苹果进行审核。 这样开发出来的应用从本质上仍然是HTML5网页应用的打包,针对的是那些没有任何开发基础但是需要或者想要制作移动应用的用户的 。值得注意的是国内也出现了这样的自助应用创建网站:、、,等等。
不难想象一个典型的快速移动应用开发的典型场景:一个需要一个移动应用招揽客户的小餐馆老板,他没有时间和精力去学习程序开发,也没有足够的预算去请一个专业开发者,这样的快速开发工具正好给他提供了条件来做一个功能简单而明确的应用。然而任何事情到了中国都会带上某种中国特色。在金和IU APP工厂的宣传里,强调了“月饷计划”,鼓励开发者将生成的移动应用进行推广,并按照用户数与开发者结算收益。本来设想中的这种快速开发应用应该只是实现某些特定功能的辅助应用,但是以国内这样强调用户的推广方式,显然就不再是以实现简单功能的应用作为主要目标了。
这个网页游戏制作工具的具体流程就是这样几个极其有限的步骤
那么能不能将这种快速应用制作的方式扩展到游戏领域?Appy Pie最近做了一次尝试:。工具提供六个模板,用户只需要很少的几步就可以做出一个完整的应用并且提交审核。不过只需要稍微试验一下就能发现,用户所能控制的内容极少,基本上仅限于一些美术素材,而游戏最重要的游戏机制等等全都是模板已经限定清楚了的。在这六个模板里开发商还不无恶意的提供了“像素鸟”模板,用户能做的差不多只是将《像素鸟》里的鸟换成一些别的什么奇奇怪怪的物体,比App Store上铺天盖地的像素鸟寨版更加山寨,基本不可能通过苹果的审查。 从这个角度来看,Appy Pie提供的这个Game Builder与其说是一个工具,还不如说是一个玩具。
■ Swift:新希望?
Playgrounds的可视化开发环境的确直观,但仍然是一个编程开发工具
在最近的WWDC大会上,苹果宣布了新的开发语言Swift,号称降低了大量Objective-C的编程复杂度,以及与之相伴的新工具:Xcode的可视化游戏开发插件Playgrounds。这两个新工具的发布无疑为开发者带来了新希望,让人想起了微软在很多年前已经做过的工作,XNA,同样是面向开发者的轻量游戏开发平台。然而面向开发者的轻量游戏开发工具并不代表着对开发者毫无要求。在Playgrounds这种可视化工具下使用Swift语言编程与在XNA环境下使用C#语言编程一样,只是将游戏编程变得更加直观和方便,并没有降低编程本身的复杂度。这对于游戏开发者是一个利好消息,对于想要真正学习游戏开发的玩家同样是一个利好消息,但是这并不是那些号称“不需要编程就能开发游戏”的工具。
总有人会想要自己做游戏,就跟总有人需要一个简单的应用开发工具一样。但游戏毕竟是艺术与技术的结合:它的核心不是某些明确的功能,而是“玩”这个行为本身。所以想要让游戏变得“好玩”,任何设计师都仍然需要亲力亲为,自己去打造出一个游戏的核心机制出来,没有捷径可走。所谓个人游戏开发工具,只是将这个过程变得门槛更低,更加容易学习,而不是把“游戏”本身也一股脑的打包给用户。如果真的是想要自己设计游戏的未来设计师,无论使用什么样的工具,他们都会去实现自己的想法,去把游戏变得更好。

我要回帖

更多关于 编程推荐的笔记本电脑 的文章

 

随机推荐