首页 > 专家说

想设计一个游戏该怎么去找哪些人又要多少钱

来源:新能源网
时间:2024-08-17 11:22:30
热度:

想设计一个游戏该怎么去找哪些人又要多少钱【专家解说】:正在学习制作独立游戏,引擎采用的是孤岛危机3所使用的CryEngine3.4,刚刚起步一个多月,肯定错误百出,希望可以抛砖引玉

【专家解说】:

正在学习制作独立游戏,引擎采用的是孤岛危机3所使用的CryEngine3.4,刚刚起步一个多月,肯定错误百出,希望可以抛砖引玉,毕竟大型拟真游戏应该会是游戏当中最复杂的一种。
先来谈谈游戏基本要素(其实也是真实世界基本要素):
1.关卡场景 主要包括地形,植被,河流,道路,洞穴,海洋等等地貌,以及建筑物等,主要特点是大范围,不易改变。
2.生物,包括人和其他动物。
3.物品,多是游戏当中可与环境交互,可破坏的较小物件。
以上三者可以构成一个不真实的世界。
若是想要仿真,我们需要:
1.环境烘托 加入真实日夜循环系统,设定真实天光,使用全局光照模拟真实光照,利用高质量的阴影,HDR,自体投影以及SSAO产生逼真的层次感和光晕,利用体积光来模拟光柱,利用延迟光照实现多光源的照明,利用景深模拟远景虚化,运动还会产生模糊,利用粒子模拟火焰...总的来说,能令你从第一感觉上面认为这个场景是立体的。
另外还要合理设置材质贴图,以令世界拥有合适外观,主要在于定义物品如何同外界的光交互(反射,折射,吸收等等),本身拥有何种属性(构成物是金属,陶瓷,玻璃...也就是模拟相对应物体的真实属性),以及通过多层贴图展现细节部分(例如玻璃上的花纹,泥点),利用凹凸贴图令物品产生立体感等等,材质决定质感,贴图补充细节。
以上两点可以保证世界观感正常。
2.天候 没有世界会是一成不变,一直艳阳高照不是长久之道,因此必须模拟气候条件,例如刮风,打雷,下雨,起雾,飘云,地震。并且要与世界进行交互,例如体积雾与体积云可与光线进行交互,产生各种散射现象,风可吹皱一池春水,雨可浸湿布料...
3.满足以上条件,看起来是很美,但是若要符合客观规律,还要加入物理计算,最基本的要数碰撞检测,另外还要模拟重力,风力,软体(布料,头发),流体,关节(复杂机械)等等,为了逼真不可不提可破坏性,及其爆炸或者破坏后的粒子效果(烟雾,碎片)... 总的来说,物理计算决定了两种不同物理性质对象相互间的作用效果。
4.声效 没声音,再好的戏也出不来,声效让人感觉这是一个生机盎然的世界,声音在于烘托气氛方面非常有效,并且产生对白配音,为了仿真我们便会使用立体声,HDR声效,EAX....总之,声效决定是否会产生代入感。
5.满足以上条件只是建起一个自然环境,接下来还需要:游戏逻辑以及AI:真实世界故事发展流程必然会是事件驱动,因此游戏逻辑就是正常连接并且促动各个事件,因此涉及开关和促动器的运用(举例来说,当你来到升降梯前,激活开关,促动上升下降),亦即达到某个条件,激活某项事件,游戏技能大致可属此类,发动技能,影响其他对象...AI意为人工智能,会让游戏中的动物表现出与真实世界相同的行为,基础的如寻路,编制阵营...会表现出诸如狼会捕杀兔子,遇到强敌,还会结队对抗,敌人会躲在掩体后,会埋伏和包抄等等行为...,总之,游戏逻辑可以促进剧情发展,AI能让游戏中的生物认识这个世界,随着环境变迁,做出符合环境的行为来。
6.以上步骤完成之后如同上帝造人,伊甸园和规则已经建立,接下来便是动起来——动画运用,没有动画车便不会移动,鸟也不会飞翔,人也没有表情,整个世界失去灵魂,动画分为角色动画,过场动画等等,过场动画可能还要考虑镜头位置。
7.我的世界我作主,做游戏呢,主要乐趣在于创建自我世界,光看可不行啊,因此还要加入UI,用来管理世界物品,回馈世界信息,调整自身或是物体属性等等,若想和朋友来分享乐趣,那么还要通过网络单元,联网游戏,共同开拓这个世界。最后要好进行性能优化,以免跑不起来,成为镜花水月。
下面来看需求知识以及工具:
一个合适游戏引擎,目前SDK可免费使用的次世代游戏引擎推荐Unreal3以及CryEngine3,后者更为先进一些,毕竟Crysis系列历来都是显卡杀手,但是文档资源稀缺,没有中文版本,不算技术剖析,本地化后共计429篇文章,字数预计不下60W单词...自翻译中,另外需要注意,免费SDK所制作的游戏不可商业发布...
首先来看,引擎提供什么,参照CryEngine文档来看,引擎主要提供以下部分:
所见即所得的编辑视口,提供对象管理,可对物体执行移动,缩放,对齐等等基础操作,可以编组,可组Prefabs,提供大量基础物体类型或是对象原型(粒子对象,AI对象,声音对象等等),地形,植被,河流,道路等等地貌创建工具,天气系统,几乎可以点点按钮,生成一个自然环境,AI属性设置以及调试,材质编辑器,流程图编辑器,粒子及SFX,角色以及动画,分镜,声效,Lua执行环境,載具编辑...
详细细节可以参考百科:http://baike.baidu.com/view/2296216.htm
Ps:这是一个早期版本,如今已经完善DX11支持,功能变得更为强大。
概括来讲,游戏引擎集合了建模、动画光影、粒子特效,物理系统、碰撞检测以及文件管理、网络特性,设备支持还有专业的编辑工具(AI,材质等等)和插件(例如植被生成,大范围的地形生成),也就是说引擎提供架构,我们填充细节。
了解显卡渲染过程,这个好处多多,例如摄像机镜头背面或是被遮挡的的东西,因为有z/stencil test不会渲染,所以细节不用制作。
美术知识,游戏原画总要设定的吧,不过我是参考现实图片建模以及设置场景,绘画不给力啊,呜呜...,手绘推荐使用Photoshop。
建模,概括的说,就是游戏当中物体以及人体轮廓,引擎当中提供一些简单建模工具,但是高模需要自己制作,推荐工具3ds Max,Zbrush。
动画工具,概括来讲就是游戏中的动作,引擎已经预置部分动画,但是更精细的动画需要自己制作,推荐Maya。
贴图制作,绘制物体外表,贴图分很多种(高光,漫反射,凹凸,颜色等等),可以通过材质编辑器进行组合,实现更精细的效果,推荐工具Photoshop,Xnormal。
声音,分为声效以及音乐两种,声效是世界中的声音,音乐是烘托气氛用的伴音,这个需要自己录制或者利用没版权的音库...
脚本语言,一个可执行Lua的环境和随便一个IDE(甚至文本编辑器)就好。
游戏逻辑,这个自己发挥想象,推荐使用思维导图软件辅助策划。
剧本 就是写故事咯
界面 Flash即可其实制作游戏很像导演拍摄电影的说,吃完午饭坐在这里啰嗦半天,思路非常乱呀,毕竟独立制作游戏实在是个大工程呀。我自己的目标就是两年做个小的Demo...
随着我的游戏逐渐成型,接着补充修正好了,现在才有一个雏形,很多想法都很感性,谢谢阅读。(不晓得有人读不,笑)编辑于 2013-05-12 30 条评论      

赞同24反对,不会显示你的姓名权然,game creator at japan;唐大阿福、立人、程瑟 等人赞同需要的能力和知识:游戏的哲学。比较抽象,说简单一些就是游戏为什么有趣。有趣是游戏价值的核心,如果你想做出游戏给别人玩,这是最重要的一点。最好的了解方法是思考自己的游戏经历,从优秀的游戏设计中获得启发。也可以读一些这方面的书籍。多在纸上把自己的设计表达出来,自己评价一下,或者跟别人交流,它到底有不有趣?足够的面向对象编程基础。不管是从头写一个小游戏,还是利用比较完善的第三方引擎,都会遇到需要写代码的时候。语言可能是C++,C#这类静态语言,也可能是Lua,Ruby这类脚本语言。思想都是相连的,如果有C++或者Java面向对象编程的基础,掌握起来会快很多。艺术创作能力。这直接决定了游戏的表现力,涵盖的范围也非常广,比如美术设计,3D建模,纹理绘制,音效编辑,动画设计,剧本设计,分镜等等。独立游戏制作者常常要一个人包揽全部这些工作,而一个人很难在全部方面都做到专业,所以大多数独立游戏在艺术风格上都倾向于简单,风格化,凸显个性。数学。游戏是运动的,这种运动的控制往往需要精确的数学模型,比如一次平滑的镜头移动,一个富有弹性的界面动画,或者更复杂的骨架动画。这些都需要一定的数学能力,特别是数学分析、向量和矩阵算术。很多常见的效果都可以找到成熟的数学模型,但很多时候你还是需要用自己的数学知识去组合出理想的效果。对游戏程序的理解。这是我觉得每个游戏开发者都值得花时间去深入了解的。游戏的每一帧每一个像素是如何渲染到屏幕的?游戏程序的执行流程是怎样的?显卡的工作原理是什么?着色器是什么?什么是DirectX和OpenGL?脚本是什么,跟游戏的关系怎样?运行时游戏的艺术资源是如何加载和卸载的?用户的输入如何影响游戏的执行?AI与物理如何独立开发和整合到游戏中?这些很底层的东西是游戏程序真正区别于一般程序的神秘之处,一个成熟的游戏引擎往往已经将其中很多部分封装起来,使之更加易用,但这些仍然值得学习。如果说前几点是制作游戏的能力,这一点就是驾驭游戏的能力,不了解这些就去制作游戏,就好比不了解图像处理而去使用PS,尽管能做出些东西,但很难发挥引擎真正的威力,很多细节效果也无力企及。了解这些能让你明白游戏程序的精美之处,让你在平衡自己的设计时多一份从容。不必要但很有用的知识:工程和架构能力。游戏程序通常有很高的代码行数,而且会涉及到很多子系统,在后期制作中也经常需要代码重构。如果没有一定架构能力代码会很难维护,游戏也变得难以调整,性能低下。历史知识。这点可能不容易感觉出来,但是当你开始确定游戏背景和艺术设定的时候就会发现这特别有用。经济学常识。在确定游戏数值特性的时候特别有用。可以利用的工具:游戏引擎级别。UDK,CryEngine,Unity,这些都是足以开发行业水准游戏的开放引擎,其中UDK和Unity的教程和社区资料都相对更丰富。但我个人并不建议从这些大型引擎开始独立游戏开发,不仅学习成本高,而且无法了解到很多基础知识。我认为从一些简单的2D游戏引擎入手,或者根本不使用游戏引擎开发游戏是更好的选择。API级别。DirectX,OpenGL,XNA。这些都是用来支持游戏开发的API,包含了游戏开发所需的功能和服务。其中XNA使用C#开发,效率很高,初衷就是针对独立游戏开发者,社区资源也很丰富。DirectX相对更深层一些,需要比较强的C++功底,经过10.0和11.0两个版本后易用性和灵活性明显得到提升,相对好于OpenGL。OpenGL在精度和跨平台上强于DX,所以更多用在3D行业解决方案和苹果平台中。开发工具级别。Mac上可以使用Xcode,Windows上比较统一采用Visual Studio,如果使用游戏引擎的话一般都会自带各种环境和工具。视情况可能还需要一个顺手的脚本编辑器。书籍。书籍很重要,学习和实践是种平衡,系统的学习能避免走弯路,实际的开发能真正掌握技术。学习路线:起步阶段。我建议从XNA或者SDL一类的API开始学习,能够了解足够深层的原理,同时又不会涉及太复杂的图形学知识。可以自己尝试做一些简单的渲染程序了解显卡的工作方式,然后再做一个小巧的游戏引擎来辅助开发一些2D小游戏甚至更复杂一些的游戏。进阶阶段。足够了解游戏程序的工作方式以后可以尝试用比较成熟的游戏引擎开发游戏,比较推荐Unity,其次是UDK。这阶段可以多关注一下专业游戏的开发方法,比如资源创作,关卡设计,编写脚本,网络等等。高阶阶段。视兴趣可以多了解一些GPU编程、图形渲染的知识,还有行业中比较新的技术等等。对于爱好者这些可能都是过于高级,不太会用到的东西。但是如果今后想在行业中有所作为的话,这些都是有必要了解的。关于经验:经验在任何领域都比较重要。游戏开发中主要体现在对于游戏设计(游戏性),游戏感官(手感,视觉效果等)的控制上,特别是对细节的控制和取舍。独立游戏开发者的精力很有限,必须把有限的开发能力集中在让游戏更有趣上,过分的重视或忽视细节都是不好的。关于活动和社群:IGF,独立游戏节GDC,游戏开发者大会(行业级)http://GameDev.net
我知识有限,大家将就着看 : )