怎么自己开发网络游戏

如题所述

一、游戏程序开发的工作主要包括哪些方面

游戏开发中的程序开发主要由如下几个方面组成:
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个回答  2013-08-15
其实游戏开发涉及面很多的,有程序、策划、美术、测试等职位,所以一个人的力量一般都是不能开发出较大型的网络游戏的!对于程序方面,重要的是英语和程序的一些思想。策划呢知识面要广,思想跳跃但是也很严谨,需要知道很多常识和专业知识,美术当然就是电脑绘画、3D建模等等方面要好了!所以学习游戏开发其实看你是学哪方面的,如果是学习策划方面的,因为策划也分很多种,所以策划方面呢,有可能要学习数学、文史、以及常用的工具软件和脚本等,程序呢主要是计算机语言的学习,一般网游都是用c++编写的,如果要做引擎等,还需要学习物理方面的知识。至于美术,因为分原画、建模、动作、特效,所以偏重也不一样,原画偏电脑绘画、建模主要要熟练使用3DMAX或者MAYA,以及还要会贴图。动作要有一定的物理常识,特效不仅仅要知道物理常识还要懂程序思想。所以游戏开发并不是想象的很好学的!希望我说的对你有用,另外PS下:培训学校出来的普遍找不到工作!我就是正规大学游戏程序设计毕业的,现在在盛大18公司工作。
第2个回答  2021-12-14
你可以去【绘学霸】网站搜“游戏制作”的【免费】视频教程:完整3d入门到精通视频教程列表---【点击进入】

短时间内想通过自学能达到行业一般员工水平还是有难度的,除非你不计时间成本。3dmax是近几年十大热门软件之一,虽然这个专业工资很高,但入门/入行却不容易,要想在这个行业生存并获得高薪,靠自学或者短期上个网络班还是很难精通的。建议报个专业且高质量的培训机构,可以省很多时间,少走很多弯路。

王氏教育是一所有着19年历史的行业知名3d建模/游戏制作教育品牌,至今在全国13个一二线城市都拥有直营校区。想知道王氏教育实体培训有多强,去校区现场考察下就知道了,如果暂时抽不出时间,也可以先进官网跟在线老师详细了解:

点击:【王氏教育全国实体校区课程-在线免费试听】

王氏教育较同类培训机构的优势:无论是创始人还是管理层都是3d建模/游戏制作专业的专家,了解整个产业,需求,就业,无缝深入到市场,做到投资型教育机构所不能企及的细致入微。王氏教育的课程研发也一直是行业争相模仿的对象,每个专业都由一线公司的项目总监参与研发和用人对接,学员无缝输送对应企业。学员遍布全国各大3d建模/游戏制作公司。

即便你现在没法去线下,也能在手机应用市场下载到王氏教育实实在在的教学研发产品:“绘学霸APP”——苹果商店和应用市场均可下载,里面对应专业的视频教程多达8000多套,涵盖了所有的数字艺术类型,上面有十多年来的新老学员在里面交流和学习,还有成千上万的公司在上面招聘,光这些真不是随便成立三五年的培训机构可以复制出来的。想要系统的学习可以考虑报一个网络直播课,推荐cgwang.com的网络课。老师讲得细,上完还可以回看,还有同类型录播课可以免费学(赠送终身VIP)。本回答被网友采纳
第3个回答  2013-08-15
真想做游戏的话 现实点 先学FLASH 再学AS3 前者是软件 后者是编程的 这是做游戏最简单的方法了要想自己做网游 保证你十年也做不好 真的
第4个回答  2022-07-26
游戏开发首先的选一种编程语言,一般采用实时性较强的C,C++,譬如基于WINDOWS经常用VC++;其次,2d,3D游戏编程,一般选一种开发工具包,或SDK,国内外应用较多的是DIRECTX SDK,或OPENGLSDK;最好多了解一点三维建模、材质、贴图和动画方面制作流程和概念。
游戏软件通常是指用各种程序和动画效果相结合起来的软件产品,我们称之为"游戏软件";
目前,在网络上我们经常看到的大型3D网络游戏和WEBGAME网页游戏等都是通过用"3DMAX、MAYA、FLASH、等动画软件和JaVa、C++、VB、等程序语言相结合而开发出来的,所以叫游戏软件。

福利手游APP(下载搜0.1)

手游充值0.1折

¥免费分享

手游代理加盟限时特惠!

推广手游拿分成

¥79元

手游加盟代理自助注册页面

入行手游项目必看教程

¥198

新自由之刃(百人同屏)

满攻速魂环版传奇

¥1.76复古

绝世仙王之八荒寻仙录

超高人气仙侠手游

¥无折扣返利

自由之刃2(新)

冰龙魂环复古经典

¥新版复古传奇

    官方电话在线客服官方服务
      官方网站福利app代理申请
相似回答