如何编程制作一款游戏

如何编程制作一款游戏,第1张

一、游戏开发制作的概念

游戏开发是一个过程,为了激发玩家玩游戏热情,通过遵循设计制作规则,来设计人物、场景等游戏要素。主要流程包括原画创作、建模、材质、灯光及渲染、骨骼设定、动画、特效等部分。涉及范畴包括:游戏规则及玩法、视觉艺术、编程、产品化、声效、编剧、游戏角色、道具、场景、界面等等元素。游戏程序开发归根到底就是软件工程,是游戏制造环节中不行短少的重要部分。游戏程序开发是技术含量最高的,游戏程序员的薪资也相对其他职业高许多,目前游戏职业中游戏程度人才的缺口非常大,供不应求。

二、游戏开发需要具备的知识

游戏本质分析,游戏产业概论、游戏开发流程及职业划分、玩家需求分析、构思创意及文档编写要求、游戏故事设计、游戏元素、规则、任务、系统、关卡设计、游戏平衡设定、界面与 *** 作功能。透视基础、构图基础、结构素描、明暗素描、艺用人体解剖基础、人物速写、Adobe软件应用、造型基础、游戏美术风格技法、色彩基础、游戏色彩练习、肖像绘制、质感表现。3DMAX软件基础、游戏材质基础、游戏道具制作、作品渲染游戏场景制作技巧、场景材质制作、卡通角色制作、写实角色制作、怪物制作。简单分类的话就是:

1、扎实的算法知识。主要有:树或图的搜索算法、A算法、碰撞检测算法、BSP树、人工智能

2、相关图形处理知识。比如:DirectX编程、OpenGL编程、图形学的相关知识(三维图形的形体、纹理、贴图、照明,还有三维对象的消隐算法比如油画算法,Z缓存)和动画处理知识。如果想深入还要学会几种三维引擎比如OGRE。

3、扎实的程序语言功底,主要代表为VC、DELPHI和JAVA。其中VC使用最广,现在比较大的游戏也由此开发;DELPHI功能也很强,很多网游:比如网金、传奇都用到了DELPHI;JAVA用于开发手机游戏。

三、游戏开发需要学哪些

游戏开发需要学哪些,课程是什么样的呢看学游戏程序开发主要有最通用的C及Windows程序设计课程,算法设计、数据结构、软件工程、游戏技术,游戏设计方法及流程等课程。所有课程以行业最实用技术为参考,综合初学者的接受能力精心设计。

1、基础公共课:游戏概述Photoshop平面软件及像素美术3dsmax软件基础及效果图制作游戏程序设计基础及游戏制作原理游戏策划、制作、测试及运营实践游戏行业规划及职业素质。

2、专业技能课:手机2D游戏开发2D游戏开发技术实战C语言及算法基础WIN32程序开发及MFC基础2D游戏开发实践行业规划及职业素质。2D网络游戏开发主要学习内容有网络游戏程序设计、网络游戏算法设计、2D网络游戏平台设计以及商业实战项目训练,包含C、数据结构、算法基础、WindowsAPI使用、MFC原理及其应用、2D图形渲染技术、界面设计与应用。

3、游戏程序方向:Direct3D程序开发基础3D游戏开发技术实战游戏引擎的修改与使用网络通讯、数据库及游戏服务器、行业规划及职业素质、游戏综合项目实战训练、基地顶岗项目实训。

四、游戏开发常用软件

1、3dsMAX:大多数游戏开发公司美工使用,效率较高,可以独立制作游戏中所有美术相关资源。

2、Delphi:直接编译生成可执行代码,编译速度快。由于Delphi编译器采用了条件编译和选择链接技术,使用它生成的执行文件更加精炼,运行速度更快。在处理速度和存取服务器方面,Delphi的性能远远高于其他同类产品。

3、Photoshop:PHOTOSHOP是一个很好的图像编辑软件,PHOTOSHOP的应用领域很广泛,在图像、图形、文字、视频、出版各方面都有涉及。

4、MAYA:跟3dsMAX差不多的软件,因个人喜好而定,MAYA在制作动作的方面较MAX稍差,不过在很多方面这两款软件都是可以兼容的。

5、其他:在个人计算机上,可以用目前流性的软件开发工具,比如:C,C,VC,Delphi,CBuilder等。由于Windows *** 作系统的普及和其强大的多媒体功能,越来越多的游戏支持Windows *** 作系统。

五、学习游戏开发需要了解的常识

1、图形引擎主要包含游戏中的场景(室内或室外)管理与渲染,角色的动作管理绘制,特效管理与渲染(粒子系统,自然模拟(如水纹,植物等模拟)),光照和材质处理,LOD(LevelObjectDetail)管理等,另外还有图形数据转换工具开发,这些工具主要用于把美工用DCC软件(如3DSMax,Maya,SoftXSI,SoftImage3D等)软件制作的模型和动作数据以及用Photoshop或painter等工具制作的贴图,转化成flash游戏开发程序中用的资源文件。

2、物理引擎主要包含游戏世界中的物体之间、物体和场景之间发生碰撞后的力学模拟,以及发生碰撞后的物体骨骼运动的力学模拟(比较著名的物理引擎有havok公司的gamedynamicssdk,还有opensource的ODE—OpenDynamicsEngine)。

3、游戏开发工具主要包含关卡编辑器,角色编辑器,资源打包管理,DCC软件的插件工具等开发。

4、支持局域网对战的网络引擎开发,主要解决局域网网络发包和延迟处理,通讯同步的问题,有同步通讯和异步通讯两种做法,异步通讯用于那些对运行帧速要求比较高的游戏,同步通讯相对异步通讯来说效率相对低,但是同步通讯的编程模型相对异步通讯来得简单一些。

5、游戏引擎主要是把图形引擎、声音引擎、物理引擎整合起来,主要针对某个游戏制作一个游戏系统,其包含游戏关卡编辑器,主要用途是可以可视化的对场景进行调整,光照效果和雾化等效果调整,事件设置,道具摆放,NPC设置,另外还有角色编辑器,主要用于编辑角色的属性和检查动作数据的正确性。一般日本游戏公司的做法,他们会把关卡编辑器和角色编辑器直接做到游戏中,所有的参数调整都在游戏中通过调试菜单来进行编辑,所以一般他们把这部分调试菜单的功能做的很强大,同时在屏幕上实时的显示一些重要的信息,这样做的好处是关卡编辑器调整的效果直接就是游戏的效果,但是对于程序的重用性来说可能不是很好,比如说要用到另外一个游戏项目中就比较难,除非两个游戏类型相同,只要把场景和角色数据换一下,还有做下一代产品也没有问题,只要根据式样增加调试菜单的功能就可以了。

想成为一个游戏开发人员,就得先成为一个很好的程序开发人员。当你成为一个很好的程序开发人员时,就可以考虑学习游戏开发了。成为游戏的测试人员,游戏的艺术人员,或者是游戏设计人员,或者游戏的管理人员都是成为游戏开发人员的前期步骤之一。

可以。
1、网吧的电脑一般配置都很高,符合跑代码的要求。
2、网吧的服务器很流畅,跑代码不会出现卡顿的情况。
3、网吧的服务器是关机自动消除数据,可以避免代码泄露。

现在基本是3D游戏编程,而游戏编程又分为服务器和客户端编程。服务器方面需要掌握SOCKET,多线程,数据库和LINUX技术。而客户端需要掌握的东西就多了,基础不错,如果你将DX玩会了就OK了,介绍一些书吧,希望有用!
戏脚本高级编程(附光盘)
>先回答你的三个问号:
1、编程是用这些编的,但不限于这些,还有更多更加神奇的语言。
2、C是各种语言的基础,介绍了最基本的概念,但由于设计思想较为落后,用处已经较小了
其他的几门略有不同吧,各有各的好处坏处,分别适合做不同的事。
3、这么说不很恰当,我觉得他们都算是英语,大部分文字(编程中成为“关键字”)是一样的,所有的语句都是由“关键字”+“符号(加减乘除、等号,冒号,引号等)”+“字符(编程里称变量)”这“三要素”组成的,每门语言的这“三要素”基本都是一样的,不同的是组成方法而已,可以说80%是差不多的,另外20%是各有各的好,所以对于不同的目的,就有不同的语言选择了。

然后要告诉你这样一件事:
C,C#,C++,JAVA这个几个都是编程语言没有错,不过这些大多是用来写系统或者应用程序的。
至于游戏这种庞大的项目,则是由多种语言配合实现的,比如账号登陆可以用JAVA写,游戏的 *** 作模式(如行走、攻击)用C++写。这两个都算是基本 *** 作内容吧,用C++和JAVA配合来写比较传统和稳定。
而NPC也是游戏很重要的角色,提供接发任务、买卖物品等各种“重复自动化”功能,为什么说是重复自动化呢,拿魔兽世界举例吧,负责日常任务的NPC一直就在那,点他就接任务或者交任务,或者买卖道具,像这样的反复执行且一直不变的程序,则使用脚本语言更加合理(脚本语言的自动化实现非常理想)
你说想编游戏外挂?
外挂大多也是脚本,也用脚本语言编写比较常见。
目前主流的脚本语言有 Ruby 和 Python(这两个也叫动态语言,JAVA那些叫静态语言),至于Javascript,也算是一种吧,但是个人感觉没有前两个好用。
Ruby和Python这两个对于初学者来说,不容易接受,倒不是说难学,主要是因为它们和Java这些不一样,具体的不多说了。
总之,外挂这东西,Java 和 C 比较难以实现。
想做外挂,就学脚本语言,归根结底,外挂就是一个脚本而已。

最后给你点学编程的建议吧:
1、C语言是编程基础,很多语言都是建立在它的基础上的,你可以找本书看看,了解下“数值,字符串,变量,常量,数组,判断语句,循环语句”等最基本的概念,这几个都是所有语言通用的,就像小时候学汉语拼音一样,学会了拼音,才能识字。至于“指针”,属于C语言中较复杂的内容,可以直接忽略,因为很多后来的语言都没有指针了。
2、C++、Java这两个是目前比较流行的“面向对象”型语言,对于这两个语言,我的建议是在C语言基础上,把“面向对象”的思想去熟悉一下,就是了解下他们的编程思路(随便找本Java入门书,都会有专门介绍面向对象思想的),至于语法方面,主要熟悉里面的“类和方法”,把“封装、继承、多态”搞懂了(其实很好懂,看两页书就明白了,一般书里都拿大雁和人举例,回头你自己看吧),掌握了“类和方法”,就可以算是入门“面向对象”了。
3、前面两条都做到了,可以说算是基本入门了,但是写出有用的程序,还需要学习更多,比如写聊天工具,就需要网络编程,服务器客户端的连接等,这些都是各门语言中的高级编程部分了,其实高级编程不难,毕竟每门语言的关键字就那么几十个,再难的语句也就是“关键字+符号+变量”构成的,基础学好了,高级的看看练练,自然就会了,基础就像英语单词,单词只要都认识了,就算不懂英语语法,也大概可以看懂一段文章吧?编程就是这样。
4、至于我说的Ruby 和 Python这两个语言,其实也不难学,就是整个类型和Java、C++不一样,所以会让人很不习惯,但是当你学会Java了,这两个就会很容易上手了,这两个语言真的很神奇(代码非常的简洁易懂),同一个程序,用Java写,可能需要500行代码,而用Ruby写,很可能只需要200行,另外告诉你,很多黑客们的病毒木马等攻击代码,就是用Ruby写的,很多发出攻击的程序也是Ruby和Python写的,当你学会了Ruby,你会发现爱不释手的。

祝你成功!

看你要去哪个方向了,策划、程序、美术,每个方向又有细分。

策划有剧情策划,关卡策划,数值策划等等。

程序有客户端编程,服务器编程,引擎编程,脚本编程,手机游戏开发,网页游戏。

美术有3d建模,2d美术。

方向不一样需求不一样。

较了解程序,就程序俩说吧。

如果要说只为干活,客户端你得学windows编程,socket等

服务器当然就是各种数据库 *** 作,各种通讯 *** 作。

引擎编程需要了解底层,directx,opengl,3d数学,物理基础等。

脚本的话就学脚本就够了。

手机游戏开发分ios、android,对应使用不同引擎需要不同的学习。

网页游戏前端目前flex流行,js,html也在发展。

以上只是速成。但是真正建议的是,

学好c++,数据结构,socket编程,了解windows编程,学习数据库编程。

先学3d数学,再学directx,然后试着做个小游戏。

学习设计模式。研究开源引擎。

会是个比较漫长的过程,但是基础扎实,各种开发都不怕。

可以专挑一条喜欢的道路深入研究,也可以专注游戏逻辑实现。

这个话题其实有点儿大。这里面有一个重要的区别是:你是想当独立游戏开发者,还是想当游戏行业的从业人员。

如果是想当游戏行业的从业人员,我觉得就简单了,盯准你想当的职业,培训相应技能就好。事实上,在游戏行业里的开发,无论是精通特定引擎或者架构(如cocos2D,unity3D,OpenGL,DirectX),还是只是对基础(如算法、设计模式、图形学、人工智能等)有一定深度,都能入行。(不是都学,是对其中一个有超过平均水平的掌握或者理解即可,然后就投简历吧。现在游戏也这么火,不难找工作)。

但是对于独立游戏开发者,事情就不一样了。显然需要掌握更多的东西。但是掌握更多的东西不一定是专精。这就要求独立开发者有取舍。首先要思考,自己想在什么平台做游戏?ios?好好看iossdk;android?好好看androidsdk?win8?好好看wpf。网络?flash或者html5等等等等。

我在上面只列出了一个基础,不包括图形引擎或者游戏引擎。事实上,一些游戏不需要引擎的协助。独立开发者的游戏更是注重创意,因此,很多并不依靠引擎的游戏也能有不错的收益。但是,要想更进一步,需要在平台的基础上选择合适的引擎加以研究。

最后,我认为独立开发者需要了解一些美工知识,并且对数值策划有一些感觉。但从美工的角度,很多美术非常简单的游戏也很不错;所以我一向不认为美术是游戏开发的关键。当然,它是一个能增添很多亮点的环节。

而对于游戏策划,我想每一个想开发游戏的人都有当游戏策划的料子。但这个职能类似产品经理,猛地一想很简单,可把一份策划捋顺了,有逻辑,经得起市场验证,难。不过这是一个试错的过程,只能在探索中学习,实践中学习,书本学来的极其有限。

附上出处连接:

肯定合适啊,网络上你所看到的的所有的东西都需要服务器去承载。我想你的问题应该是怎么选择。

1、视频服务器需要高带宽

现在的网络视频的质量越来越高480P、720P、1024P、1080P的视频,现在最基本的480P普清视频大小也要500M以上,更何况高清,超清,蓝光视频的大小。这也意味对视频服务器的带宽也越高了,文件传输速率受影响因素之一就是视频服务器所用带宽。一个好的视频网站刚开始时,知名度还没那么高,来此网站获得视频资源的访问者还没那么多,此时还未出现信息传输堵塞现象。当访问者越来越多时,视频服务器的带宽通道就有点像地铁里面的上班客流高峰时期,信息传输时的时间就会增长,传输受到影响,从而客户访问体验下降。因此,最好拥有10M、100M、1G国际带宽使用。

2、视频服务器需要中上配置支持

由于视频占用的容量较大,为了更好的调度文件传输,中上配置的视频服务器才能减少冗余,紧密结合各部件,进行控制协调。如果租用配置没那么高的视频服务器,当访问多时,整体任务加大时,超过各线程所能承载的范围,必会造成视频服务器的崩溃。

3、视频服务器需要较好的机房

为什么视频服务器需要好机房,如世界排名第一的中国诺网达拉斯机房,一个好的视频服务器机房是保证存放在服务器里面的视频网站正常运行,如视频服务器机房数据中心的安全指数、网络资源的布置、外接电源断时,是否有自己的备用电源保证网站正常运行等这些都是保证网站不受木马,蠕虫,网页病毒等的感染而使网站的稳定受到影响,数据传输受损,而导致视频质量出现问题。

从最基本的视频服务器要求来看,美国服务器各方面的条件较符合,因此,视频服务器也可以从海外美国服务器入手。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13052573.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-30
下一篇 2023-05-30

发表评论

登录后才能评论

评论列表(0条)

保存