
在游戏产业刚刚开始发展的那段时间,制作一款游戏往往是一个人的事情,而那个人必须在精通编程的同时,还极富技术创造力。
时至今日,虽然许多程序已经发展到模块化,但对游戏程序员来说,岗位仍然要求他们具备较高的技术水平和创造力,因为不论游戏性和情节对一款游戏有多重要,如果没有最基本的技术支持,所有的游戏性和情节都只可能建立在空中楼阁上。
程序员必须具备技术水平和创造力的另一个原因,是为了符合玩家的需求。
无论如何,玩家都希望展现给他们的游戏,能够将现有的硬件和技术发挥到极致,他们想要更快的运行速度、更好的人工智能、更高的画面解析度、更华丽的特效和更真实和深刻的游戏置入感。所以基本上每一款新游戏都要结合新的程序技术,因为只有程序员在不断地进行着技术的革新,游戏才可能真正做到让玩家满意。
由于国内主要的开发重点都放在网络游戏上,因此从国内现有的开发环境来看,程序人员大致可以分为以下一些类型:
1、引擎开发人员(enginedevelopers)
他们是负责构建游戏基础平台的专业程序员,与其它程序人员相比,他们更专注于开发一个可供别人利用的引擎,他们会将更多的时间和目光放在对游戏逻辑和游戏内核的研制和封装上。
2、客户端程序员
客户端程序员通常负责网络游戏客户端的研发,他们更强调游戏的画面表现和一些人机界面的效果,所有玩家在玩一款网络游戏之前要下载的客户端,就是这些程序人员的工作成果。
近年来随着游戏3D化的持续进行,客户端程序员也开始逐渐从之前的2D美术表现向3D美术表现转移,通常来说客户端程序员都是强调画面和图形的,因此站在纯程序员的角度分类,客户端程序员也可以称为图形程序员(graphicsprogrammers)。
3、服务器端程序员
与客户端程序员相对应的是服务器端程序员,他们负责网络游戏服务器端的研发工作。由于网络游戏的特点,服务器端程序员往往更强调的是对游戏数据的处理和计算,而对游戏的画面表现并不在意,服务器端程序员必须让自己的程序能够接收和发送来自客户端的数据包,同时还要对这些数据进行相关的计算。相比较而言,服务器端程序员更强调对游戏引擎的掌握,因为游戏的服务器端是否稳定,是真正决定一款游戏能否被广泛接受的主要原因之一,同时服务器端程序的好坏,直接关系到对游戏系统的维护和优化,甚至关系到外挂等网络游戏常见的相关问题。
4、开发工具程序员(ToolsProgrammers)
开发工具程序员负责创建支持游戏开发的各种工具。
由于游戏的研发工作是合作的产物,因此在游戏研发的过程中,程序人员往往需要开发出一些专用的工作,用来给相关人使用,最常见的就是游戏的地图编辑器等,还有一些诸如特效编辑器、后台管理工具等。
在国内,工具程序员往往是由其它岗位的程序员来兼任,这种不明确的分工也正代表了国内游戏产业的不成熟。
5、其它程序人员
除了上述几种程序人员之外,程序人员还可以根据工作的内容,分为负责编写人机界面的界面程序员(interfaceprogrammers)、负责网络数据交换及优化的网络程序员(networkandmultiplayerprogrammers)、负责实现游戏人工智能的人工智能程序员(AIprogrammers)、负责将音乐音效添加到游戏中的音乐音效程序员(audioprogrammers)以及负责测试和保障游戏软件质量的测试程序员(QAprogrammers)等。
当然,并不是所有的游戏公司都会如此细致地对程序人员进行职能划分,正如前文所说的那样,行业的不成熟性让游戏公司在对岗位职能的描述过程中,充满了灵活性和模糊性,因为对国内现阶段的游戏研发来说,重要的是能否做出产品,而不是如何去进行细致的分工。
不过随着行业的不断成熟以及行业规范的持续建议,相信一个更完善的程序人员工作职能划分体系,会很快出现在所有从业者的面前,因为行业规范的过程,就是岗位职能明确的过程。
楼主你好,如果你想从事游戏编程方面的工作,通常需要经过以下几个学习阶段:
1、基础语言阶段:常用的编程语言有,C,C++,JAVA,其中最广泛被使用的就是C++,C++语言是一切游戏程序的基础,换而言之,一个优秀的游戏程序员,必须非常熟练掌握并应用C++
2、数据结构:在掌握C++之后,需要进行数据结构的学习,形象的讲,就是那么一大堆数据,如何去有序的排列其结构。通过对数据结构的学习,便能够开始阅读他人编写的代码,尝试 开发简单的程序,可以实现一些编程者自己的构想,是每个程序员必须掌握的技巧。
3、“库”的学习及应用:最常用的有MFC(微软公司类库),GUI(图形界面库),当然“库”的知识及功能非常庞大,通常来说,熟练掌握一部分经常涉及的知识即可。
通过以上三点的学习,c++基础语言,数据结构,库的使用。你基本已经可以自己独立制作一个小游戏了,比如贪吃蛇,俄罗斯方块等等。
然后,将进入的高阶阶段,也将是直接涉及到游戏程序相关知识。
4、游戏程序对于硬件的 *** 纵。比如,内存,CPU,显卡,这将会涉及到一些数学知识,比如立体几何,线性代数等,但是也不用惊慌,并不是非常困难。通过对硬件的熟练 *** 纵,才能将游戏的画面,流畅度等等充分给予表达。
5、对于相关知识的学习。包括物理,脚本,美术等等。不需要深入了解,但相关知识的丰富对于你将来做游戏程序会有直接帮助。
6、对于游戏引擎的熟悉及使用。游戏引擎一般包括渲染器,内存管理器,组织管理几部分。对游戏的画面做出渲染,高效使用内存以及如何控制动画播放等功能。熟悉引擎的使用,也将对于游戏程序员有直观的帮助。
如果你打算自学的话,可以根据自身的情况,有针对性的选择书籍,希望我的回答对你有帮助
全部程序员都没有太多可比性,天下乌鸦一般黑。但和Unity3D程序员比起来,就没那么黑了,下面那Java程序员来对比一下:
就业面不如Java广大。
待遇不如Java程序员,那个工资就没别人高。
加班比Java程序员要多。
另外,与Java还有一点不同,这个Unity3D方面的知识对于其它领域再就业几乎没任何用。
最后,前景方面更是不如Java程序员,记得在Unity3D前有个比Unity3D还火的引擎(是谁这里就不卖广告了),那时那个引擎的招聘就和现在的Unity3D如出一辙,后来这个引擎死了。那么问题来了,假设Unity3D死了,搞Unity3D程序的还谈什么工作强度、工作量。
我是一名游戏服务器程序员,已经在游戏行业工作了6年的时间,在你进入游戏行业之前请先要知道国内的游戏行业和你想象的是不一样的,所以你要做亲做好心理准备,还有就是游戏程序员的加班强度很大,你也要做好准备。
好了现在回到正题,游戏分为端游(例如
魔兽世界,天龙八部等),页游(乱世诛魔,烈火屠龙等等),手游(例如
我是MT,dota传奇等等),游戏开发还分为前端开发和后端开发,表现形式还分2D,3D,如果你喜欢游戏以及游戏的表现性那么你可以选着前端工程师(就是我们说的客户端开发),如果你喜欢偏数据一点,那么你可以做后端工程师(主要负责游戏的后台逻辑以及数据库方面的开发)。
一般游戏开发的语言也很多,后端服务器常用语言有C++,java甚至很多小项目会用到C#等等,前端开发的话一般页游基本都是用AS3(flash开发或者flex),端游一般都用收费的或者牛人写的游戏引擎开发一般都是C++。手游的前端开发现在比较火的就是
cocos-2d和Unit-3d
这两个引擎来开发(你看名字也应该知道一个是2D的,一个是3D的),这两个引擎一般是选用C++来完成开发的。好了现在语言的介绍大概就是这样。
如果你要做主程,当然我现在就是一个主程,他也分为前端后端,前端偏网络框架,压力(压力就是几百人同时连接服务器如何保证服务器流畅以及不出错),前端就不用多少核心就是图形处理引擎。游戏开发的知识太多太多,一一列出来估计在来两万字也不一定够。如果你确定了想做游戏,建议你先学好C++吧,这样随着你的不断了解,你到时候选择不管是前端或者后端,甚至学习新语言选择的空间都很大,而且现在游戏行业最紧缺的就是c++程序员(但学好C++没那么容易你的路还很长,学校教你们的那只是基础,要学好C++需要很多的经验积累)。想成为主程序那么送你一句话:当你能独立开发完成一个合格的3D或者2D的图形引擎或者独立完成一个合格的后台服务器框架程序的时候你就可以当主程了。
有些啰嗦,不过是我6年的经验之谈,这个分还是给我把!
java是目前主流的开发语言,程序员不论是大数据、云计算、web前端、后端开发等都需要从java学起,如果你想计入IT高薪行列,建议学java!
java学习内容主要有:
①JAVA编程基础(基础语法、面向对象、和谐特性等)
②WEB应用开发(静态网页制作、Oracle数据库、Java Web开发技术、Linux技术、网站性能与安全、软件工程开发流程、Java Web和谐等)
③企业级框架开发(数据结构与算法、SSH框架、JavaEE和谐等)
④项目实训
互联网行业目前还是最热门的行业之一,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。
想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间取得大专或本科学历,中博软件学院、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。
祝你学有所成,望采纳。
1游戏程序员很显然药会编程,面向商业大型游戏都是建立在DX基础上的,需熟练掌握C++,及数据结构知识。关于画面你可以面向两种api接口一个就是前边的DX,再者是openGL,不过目前的市场已被微软淹没,省时的话建议看看DX
2游戏引擎不用你去开发,现在的国产mud都是引进的引擎,建议看看这方面的书。有一本虚幻引擎的翻译书籍不错。
3游戏机的游戏开发先不要想,除非你有钱到自己去买开发机。
4编程是一项技能,可以是你在计算机上实现任何想干的事。例如:写个木马盗你女朋友的(黑客)。实现图书管理系统(工程)。
5程序员都想着不可能一辈子都干这,要不然发型就成了葛优了。有了资历可以搞架构,销售,游戏开发的话可以做策划。等等……总之人必须得以一技之长闯荡,才能有人要,不可能没经验让你就让你做管理。
6如果是那样的话,那你将会对web game的开发具有先天优势。看看相关的书籍
C#编程很高效,对web game的开发得天独厚,多看相关的书一定很快入门。
以上就是关于做游戏属于什么程序员全部的内容,包括:做游戏属于什么程序员、想成为游戏程序员、游戏unity3d程序员和其它各种类的程序员比起来,这几种程序员工作强度怎样,比如时间,工作量等等等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)