我想做游戏程序设计需要什么基础?

作者&投稿:余品 (若有异议请与网页底部的电邮联系)
我想成为游戏开发程序员,要学些什么?~

1.图形引擎2.声音引擎3.物理引擎4.游戏引擎5.人工智能或游戏逻辑6.游戏GUI界面(菜单)7.游戏开发工具8.支持局域网对战的网络引擎开发9.支持互联网对战的网络引擎开发下面逐一介绍每个部分:1.图形引擎主要包含游戏中的场景(室内或室外)管理与渲染,角色的动作管理绘制,特效管理与渲染(粒子系统,自然模拟(如水纹,植物等模拟)),光照和材质处理,LOD(Level Object Detail)管理等,另外还有图形数据转换工具开发,这些工具主要用于把美工用DCC软件(如3DS Max,Maya,Soft XSI,Soft Image3D等)软件制作的模型和动作数据以及用Photo shop或painter等工具制作的贴图,转化成游戏程序中用的资源文件。2.声音引擎主要包含音效(Sound Effect简称SE),语音(VOICE),背景音乐(Background music简称BGM)的播放。SE是指那些在游戏中频繁播放,而且播放时间比较短,但要求能及时无延迟的播放,VOICE是指游戏中的语音或人声,这部分对声音品质要求比较高,基本上用比较高的采样率录制和回放声音,但和SE一样要求能及时无延迟的播放,SE在有的时候因为内存容量的问题,在不影响效果的前提下,可能会降低采样率,但VOICE由于降低采样率对效果影响比较大,所以一般VOICE不采用降低采样率的做法。BGM是指游戏中一长段循环播放(也有不循环,只播放一次)的背景音乐,正是由于BGM的这种特性,一般游戏的背景音乐是读盘(光盘或硬盘)来播放。另外一些高级声音特效,如EAX,数字影院系统(DTS5.1),数字杜比环绕等。3.物理引擎主要包含游戏世界中的物体之间、物体和场景之间发生碰撞后的力学模拟, 以及发生碰撞后的物体骨骼运动的力学模拟(比较著名的物理引擎有havok公司的game dynamics sdk,还有open source 的ODE—Open Dynamics Engine)。4.游戏引擎主要是把图形引擎、声音引擎、物理引擎整合起来,主要针对某个游戏制作一个游戏系统,其包含游戏关卡编辑器,主要用途是可以可视化的对场景进行调整,光照效果和雾化等效果调整,事件设置,道具摆放,NPC设置,另外还有角色编辑器,主要用于编辑角色的属性和检查动作数据的正确性。一般日本游戏公司的做法,他们会把关卡编辑器和角色编辑器直接做到游戏中,所有的参数调整都在游戏中通过调试菜单来进行编辑,所以一般他们把这部分调试菜单的功能做的很强大,同时在屏幕上实时的显示一些重要的信息,这样做的好处是关卡编辑器调整的效果直接就是游戏的效果,但是对于程序的重用性来说可能不是很好,比如说要用到另外一个游戏项目中就比较难,除非两个游戏类型相同,只要把场景和角色数据换一下,还有做下一代产品也没有问题,只要根据式样增加调试菜单的功能就可以了。5.人工智能和游戏逻辑开发,这部分日本和欧美的游戏开发模式也有很大不同,在欧美游戏公司中运用脚本语言开发很普遍,所以这部分程序开发主要是用脚本语言编写,而且脚本程序和游戏程序的耦合性很低,有单独的编辑、编译和调试环境,这样比较利于游戏程序和关卡设计开发分开,同时并行开发,所以一般他们都会有专门做关卡设计的程序员岗位。而日本游戏公司脚本语言一般和游戏的耦合性比较高,一般通过一些语言的宏功能和一些编译器的特定功能来完成一个简单的脚本系统,所以一般这些脚本程序只能在游戏程序中进行调试,而不能在一个单独的脚本编辑,编译环境中进行开发。6.游戏GUI界面(菜单),主要是指那些游戏中用户界面设计,有做的复杂,有简单的,做的简单就是2D GUI界面,做的复杂有3D GUI界面。7.游戏开发工具主要包含关卡编辑器,角色编辑器,资源打包管理,DCC软件的插件工具等开发。8.支持局域网对战的网络引擎开发,主要解决局域网网络发包和延迟处理,通讯同步的问题,有同步通讯和异步通讯两种做法,异步通讯用于那些对运行帧速要求比较高的游戏,同步通讯相对异步通讯来说效率相对低,但是同步通讯的编程模型相对异步通讯来得简单一些。9.支持互联网对战的网络引擎开发,目前大部分网游都是C/S结构的,服务器端软件配置管理,服务器程序的最优化,还有游戏大厅、组队、游戏逻辑处理、道具管理、收费系统等。另外还有一些网络系统是C/S和P2P两种结构混合的,如XBOX Live等。程序员在游戏公司中的岗位在日本游戏公司和欧美的游戏公司有些不同,日本游戏公司中程序员的岗位主要有技术监督(Director),主程序员(Main Programmer),程序员(Programmer),在日本游戏公司里负责游戏项目开发的程序员,一般不会专门根据工作内容划分程序员,除了独立的系统研究室和声音系统制作部门(这两个部门是比较独立的,往往同时给好几个项目服务),负责每个游戏项目开发的程序员,随时都可能一人多职,比如说主程序员除了负责整个游戏系统以外,可能还要负责图形或声音引擎开发等,程序员除了人工智能以外还有菜单制作等。这种情况在欧美的游戏公司比较少见,他们分工的比较细,一般有图形程序员,声音程序员,人工智能或游戏关卡程序员,物理程序员,每个组中可能还会有一个Leader。这一点,日本公司和欧美公司也有些不同。日本公司一般喜欢从一些高校中招聘一些应届优秀毕业生,一方面比招聘有经验的人要来的成本低,另方面新人是一张白纸,容易培养,像SEGA、KONAMI等都是按这种原则招聘员工的,所以想进入日本游戏公司,你要学好你的软件课程。而欧美公司希望招聘进来,能马上进入项目的开发中去,所以他们一般希望招聘有工作经验的人,即使不是行业中,在相关行业中工作2、3年的也可以,所以想进入欧美游戏公司你的工作经历很重要。我觉的一个游戏软件程序员,最起码的要求是熟练掌握计算机本科专业所学的知识,主要包括C语言或C++语言,数据结构,编译原理,算法等,另外线性代数、微积分、牛顿力学在图形和物理引擎开发方面用途也很广泛,如果要提高的话还有必要了解硬件相关的知识如计算机体系结构、汇编语言,这些对我们学习一个新的硬件平台、编写最优化代码、提高自己游戏的竞争力都是非常有益的。另外,保持有恒心、不怕苦(比如说通宵加班)的心态,对游戏的热情也是非常重要的。对于那些想进入游戏行业,但缺乏软件开发知识的人,可以通过参加游戏开发培训来现在有很多人,计算机本科毕业,学了很多软件开发的知识,但是一旦要用到实际的项目开发时,感觉无从下手,这主要是在学校里运用知识的机会太少了。所以学习游戏编程最好的方法是能实际参与到一个好的游戏项目中和有丰富开发经验的人一起开发游戏,可能学到很多你从书本上学不到知识和技能。但有时候你一时还没有机会参与到一个好项目中,没有机会进入一家好的游戏公司,但是你对游戏开发有一腔热情,很希望学习游戏开发的技能,那你就应该去参加专门的游戏开发培训,因为游戏开发培训班中的老师都是一些有丰富开发经验的老师,一般都有五年丰富的项目开发经验,听他们的课,实际上就是在和他一起分享这么多年的开发经验,另外游戏开发培训课程中会专门设计一些项目和课题,它们本身就是可以直接运用游戏开发中,这样你可以不进入著名的游戏公司,但可以学到这些公司中一些常用的开发技能。另外还有一种方法经济实惠的方法,参加一些网上志愿者的开源项目,这些项目从品质来说有好有坏,选择一个好的项目非常重要,另外他们中间本身有许多是业内人士,本来你要进入他们公司,才能学习到他们的经验,但是通过开源项目,你就有向他们学习的机会了,说不定哪一天,你就进入一家知名的游戏公司了,不过目前开源的完整游戏项目好的不多,到是在图形引擎和物理引擎方面有一些很不错的开源项目,但要加入进去的话,你的基础一定要好啊,有些开源的团队也不是随便什么人就能加入的。

编程工作属于计算机相关专业,如果对自己有信心有基础是可行的。
当下互联网行业发展迅速,与之相关的产业大多发展都很好,游戏设计的前景自然也是相当不错的。一个游戏问世要经历很多环节,剧本设计,原画创作,场景建模,但核心部分还是编程语言开发。
主要学的内容如下:
1.游戏程序设计:C++程序设计入门;基本数据类型和输入输出;流程控制语句;数组、指针和引用、函数;程序结构和书写规;范结构体和联合体、类;继承与多态;异常处理与程序调试。
2.算法与数据结构:算法分析;数据结构;基本算法;STL的概念与使用;静态库与动态库;XML库的使用。
3.Win32程序设计:Windows程序入门;Windows消息;GDI绘图游戏工具与MFC;网络编程基础。
4.游戏数学和智能应用:游戏中的坐标系;矢量、矩阵;几何碰撞;物理模拟;人工智能与寻路算法。
5.2D游戏技术与应用:2D游戏技术概论;游戏地图系统;GUI系统;战斗系统设计;任务系统;优秀的声音引擎BASS;Cocos2D-X引擎;Box2D物理引擎。
互联网行业目前还是最热门的行业之一,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。
想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间取得大专或本科学历,中博软件学院、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。
祝你学有所成,望采纳。

制作游戏算是编程行业里面技术难度很高、计算机素养也很高的了,真正想要靠制作游戏吃饭的话,作为一位程序员,首先必须要有扎实的C++基础,要对算法、图形图像有着深刻的理解,制作游戏对于数学的要求十分高、特别是线性代数、离散数学、概率论等等。
如果只是个人兴趣,基础并不好的话不推荐直接以开发游戏为目标,可以选择相对基础要求不高的制作网站、开发应用程序等等,提升个人编程素质十分重要,因为作为一个中专生没有很优秀的能力,用人单位根本不会考虑让你先进公司学着做

建议从C或C++开始,学习C++、数据结构、计算机网络,有条件还可以学习下汇编语言、操作系统、编译原理、数据库等。个人觉得C++和数据结构最重要,当然如果你是决定要从事用C++来开发游戏的工作。

如果阁下从事研究型程序开发,比如游戏图形或引擎开发等,建议学习计算机图形学,线性代数,离散数学等等

1需要一颗热爱游戏的心
2需要一颗能接受理想做游戏与现实做游戏偏差的心
3需要一颗持之以恒的耐心
-------以上是精神基础---------

1需要你有非常好的逻辑分析与设计能力(你的工作质量会更高)
2需要你起码熟练运用某一门主流编程语言(你的工作稳定性会更高)
3需要你有良好的沟通与理解能力(你的工作能力与效率会更高)
---------以上是基础的基础----------

C语言,但是如果你想学习手机的游戏的话就得学习java
电脑游戏的话就是C语言里面更高深的知识了,你可以学习大的程序的制作。慢慢去看c程序设计的平台里面新建的栏目吧。里面的东西你去百度下,就可以看到很多的。比如说有框架的MFC,win32什么的,查了你会发现很多东西的。
再者可以去找找相关图书了

从C学起,再学其他


如何制作游戏
1.需求调研:了解玩家需求,确定游戏类型、题材和平台等方面的要求。 2.游戏设计:包括人物形象、场景布局、游戏规则等多个方面的设计,需要进行多次修改和调整。 3.策划:制定游戏方案,确定游戏流程和玩法等要素。 4.程序编写:使用相关编程语言进行程序编写,如C++、C#、Java等。 5.美术制作:进行游戏画面、角色造型、场...

游戏开发主要学什么?
6、然后就是可以深入的研究一些开源的游戏引擎,终极目标是可以自己做出一款比较棒的游戏引擎。一、游戏程序:类似软件工程师,需要精通至少一门以上程序语言,比如c,c++,页游方面有flashas3,php等。他们的主要工作是写程序代码,需要一定的逻辑思维能力,数学能力。如果你想成为程序员,可以从学习一门...

做游戏开发要学什么?
2、MAYA:跟3dsMAX差不多的软件,因个人喜好而定,MAYA在制作动作的方面较MAX稍差,不过在很多方面这两款软件都是可以兼容的。3、Deeppaint3D:可以直接打开3维模型文件,在上面绘制贴图。4、C++:程序使用,用来实现游戏中的各种功能,调试BUG等。5、Photoshop与Panter:配合MAX或MAYA来绘制各种模型需要...

想成为游戏程序员
楼主你好,如果你想从事游戏编程方面的工作,通常需要经过以下几个学习阶段:1、基础语言阶段:常用的编程语言有,C,C++,JAVA,其中最广泛被使用的就是C++,C++语言是一切游戏程序的基础,换而言之,一个优秀的游戏程序员,必须非常熟练掌握并应用C++.2、数据结构:在掌握C++之后,需要进行数据结构的学习,...

游戏设计需要什么基础?
游戏设计需要的基础:1、知识基础:游戏设计原理、用户体验设计程序与方法、二维游戏美术设计、三维游戏美术设计、游戏概念设计、游戏交互动画与特效、游戏交互技术基础、游戏交互原型制作等。2、策划基础:游戏本质分析,游戏产业概论、游戏开发流程及职业划分、玩家需求分析、构思创意及文档编写要求、游戏故事设计...

想学游戏设计专业需要具备什么样的条件?
想学习游戏美术的话,一定要有审美能力,如果有深厚的绘画功底更佳。另外,还需要学习3dmax,ps,zbrush等软件,这三个软件是做游戏美术最常用的。 三、游戏策划: 游戏策划主要制定游戏的规则和玩法,比如世界观,剧情,对话,任务,数值,职业设定,副本设计,帮会系统等等。想学习策划的话,需要你有较...

做游戏开发需要学什么?
2、MAYA:跟3dsMAX差不多的软件,因个人喜好而定,MAYA在制作动作的方面较MAX稍差,不过在很多方面这两款软件都是可以兼容的。3、Deeppaint3D:可以直接打开3维模型文件,在上面绘制贴图。4、C++:程序使用,用来实现游戏中的各种功能,调试BUG等。5、Photoshop与Panter:配合MAX或MAYA来绘制各种模型需要...

请问用电脑怎样制作游戏软件?
一款游戏的问世,需要经过游戏策划、游戏原画设计、游戏UI设计、游戏场景设计、游戏角色设计、游戏动画设计、游戏特效设计、游戏程序开发之后才会展现在我们眼前,最后将这些素材作品整合进游戏引擎,最终还需要经过除错的过程。以下是详细介绍:1、现在已经有比较简单的游戏引擎开源,可以直接使用内置的模板和内置...

游戏设计师需要学什么
游戏设计师要学好程序语言,简单的模型制作,有一定的想象力,能创作,要掌握基础的文字功底,游戏的设计涉及方方面面,基础的内容都要涉猎,最后根据自己的能力以及兴趣,再朝着自己最想要的方向拓展。学游戏设计推荐完美世界教育的游戏设计培训课程,完美世界教育拥有自己的人才培训基地,毕业可以进完美世界...

手游开发需要学哪些技术?
3、游戏制作一般主要分为两大块,即程序开发、美术设计。程序开发主要包括服务器端开发、客户端开发。而美术设计包括场景、角色、次时代、特效、动画等部分,要完成一个优秀的游戏作品,每一部分都需有专业人才负责。4、问题二:学手机游戏开发需要学什么开发手机软件的相关程序。如果你想做一名安卓应用开发...

迎江区15739842880: 我想做游戏程序设计需要什么基础? -
蒲姜可立: 制作游戏算是编程行业里面技术难度很高、计算机素养也很高的了,真正想要靠制作游戏吃饭的话,作为一位程序员,首先必须要有扎实的C++基础,要对算法、图形图像有着深刻的理解,制作游戏对于数学的要求十分高、特别是线性代数、离散数学、概率论等等.如果只是个人兴趣,基础并不好的话不推荐直接以开发游戏为目标,可以选择相对基础要求不高的制作网站、开发应用程序等等,提升个人编程素质十分重要,因为作为一个中专生没有很优秀的能力,用人单位根本不会考虑让你先进公司学着做

迎江区15739842880: 游戏编程需要具备什么基础啊? -
蒲姜可立: 如果初涉游戏制作的话,可以先用Rpg Maker Xp练习一下【能做2D游戏,脚本可以自己编写】 如果游戏已经小有成就的话,建议先学习一下3D的模型,以后在做游戏的过程中肯定能用到的. 字数不够了就写这些了,

迎江区15739842880: 自学游戏开发需要哪些基础?
蒲姜可立: 学Java的开发手机游戏. 先学Java SE(Java的基础) 在学Java ME (Java的微设备嵌入式)学开发网页的话 就学Java EE 或者 .net的PHP ASP 等等 学网游开发 要先学 C 在学C++! 还要艺术的天分 要有数学的逻辑 毕竟做程序每次都在为了一些效率烦恼 和占用内存 要会背诵单词. 要有耐心 一旦一个程序错误出来了之后. 你必须面对着枯燥

迎江区15739842880: 想问一下游戏设计师都需要什么基础 -
蒲姜可立: 一切都要从基础开始. 如果有志走游戏开发道路. 先学好数据结构和C++编程语言起. 这是你走向游戏开发的第一步. 一开始肯定会肯枯燥. 全是控制台开发,黑白的界面. 越学得深就越会有味道.学完了数据结构和C++编程语言以后. 要学习Windows...

迎江区15739842880: 学习游戏设计需要什么基础?我是高中生! -
蒲姜可立: 那要看你所说的游戏设计指的究竟是“游戏策划”还是所谓的GAME DESIGN. 前者需要很丰富的游戏经验和分析能力,要对系统和剧情都有透彻的见解,并且具有非常棒的文字表达能力.这是一个没有特定专业限制的行业,薪水也非常低的....

迎江区15739842880: 想学习游戏设计编程之类的.请告诉我需要一些什么样的基础知识(比如英语数学之类的)需要到什么样的程度 -
蒲姜可立: 楼主你好:你所说的应该是游戏程序设计师这个工作岗位.从事这方面的工作,需要你有强大的逻辑思维能力,以及一些特定的英文单词阅读能力.如果是没有基础去学习话,有些基础课程是必须了解的比如“计算机基础原理”课程,在此基础...

迎江区15739842880: 想学习游戏开发,不知道需要什么基础? -
蒲姜可立: 游戏开发 包含 编程 和美工两大块 两大块里面又包含很多小块内容 你可以根据你的特长和爱好先选择大块类别然后再进一步了解

迎江区15739842880: 想学习游戏编程需要具备哪些基础知识
蒲姜可立: 还有游戏脚本设计和人物设计 人工智能AI设计 需要学习素描 其实 游戏 里面蕴涵的知识非常多 开发XBOX游戏的话 可以用MS XNA(C#语言)

迎江区15739842880: 我想学习编游戏,应该打好哪些基础哦?
蒲姜可立: 个人知识量并不重要,你需要的是团队.有负责编程的,有负责美工动画的,有负责剧情的.还有很多细节,不是一个人能完成的. 这里每个分工部分,都需要各自的专业知识,比如你要做人物模型和头像,这里就需要一些绘图软件.比如3dmax,photoshop.编程人员需要会C++,JAVE等等,所涉及到的电脑知识太广了,而且互相没有关联.一个人基本上不可能完成,如果要完成了也不是1,2年能做完的.

迎江区15739842880: 我想成为游戏开发程序员,要学些什么? -
蒲姜可立: 1.图形引擎 2.声音引擎 3.物理引擎 4.游戏引擎 5.人工智能或游戏逻辑 6.游戏GUI界面(菜单) 7.游戏开发工具 8.支持局域网对战的网络引擎开发 9.支持互联网对战的网络引擎开发 下面逐一介绍每个部分: 1.图形引擎主要包含游戏中的场景(室内...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网