2024年4月6日发(作者:)
怎么样自己制造游戏
SANY GROUP system office room 【SANYUA16H-SANYHUASANYUA8Q8-
一、游戏程序开发的工作主要包括哪些方面
游戏开发中的程序开发主要由如下几个方面组成:
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 语言,数据结构,编译原理,算法等,另外线性代数、
微积分、牛顿力学在图形和物理引擎开发方面用途也很广泛,如果要提高的话还有
必要了解硬件相关的知识如计算机体系结构、汇编语言,这些对我们学习一个新的
硬件平台、编写最优化代码、提高自己游戏的竞争力都是非常有益的。另外,保持
有恒心、不怕苦(比如说通宵加班)的心态,对游戏的热情也是非常重要的。对于
那些想进入游戏行业,但缺乏软件开发知识的人,可以通过参加游戏开发培训来
五、学习游戏编程有哪些好方法
现在有很多人,计算机本科毕业,学了很多软件开发的知识,但是一旦要用到实际
的项目开发时,感觉无从下手,这主要是在学校里运用知识的机会太少了。所以学
习游戏编程最好的方法是能实际参与到一个好的游戏项目中和有丰富开发经验的人
一起开发游戏,可能学到很多你从书本上学不到知识和技能。但有时候你一时还没
有机会参与到一个好项目中,没有机会进入一家好的游戏公司,但是你对游戏开发
有一腔热情,很希望学习游戏开发的技能,那你就应该去参加专门的游戏开发培
训,因为游戏开发培训班中的老师都是一些有丰富开发经验的老师,一般都有五年
丰富的项目开发经验,听他们的课,实际上就是在和他一起分享这么多年的开发经
验,另外游戏开发培训课程中会专门设计一些项目和课题,它们本身就是可以直接
运用游戏开发中,这样你可以不进入著名的游戏公司,但可以学到这些公司中一些
常用的开发技能。另外还有一种方法经济实惠的方法,参加一些网上志愿者的开源
项目,这些项目从品质来说有好有坏,选择一个好的项目非常重要,另外他们中间
本身有许多是业内人士,本来你要进入他们公司,才能学习到他们的经验,但是通
过开源项目,你就有向他们学习的机会了,说不定哪一天,你就进入一家知名的游
戏公司了,不过目前开源的完整游戏项目好的不多,到是在图形引擎和物理引擎方
面有一些很不错的开源项目,但要加入进去的话,你的基础一定要好啊,有些开源
的团队也不是随便什么人就能加入的。
其实游戏开发涉及面很多的,有程序、策划、美术、测试等职位,所以一个人的力
量一般都是不能开发出较大型的网络游戏的!
对于程序方面,重要的是英语和程序的一些思想。策划呢知识面要广,思想跳跃但
是也很严谨,需要知道很多常识和专业知识,美术当然就是电脑绘画、3D建模等
等方面要好了!
所以学习游戏开发其实看你是学哪方面的,如果是学习策划方面的,因为策划也分
很多种,所以策划方面呢,有可能要学习数学、文史、以及常用的工具软件和脚本
等,程序呢主要是计算机语言的学习,一般网游都是用c 编写的,如果要做引擎
等,还需要学习物理方面的知识。至于美术,因为分原画、建模、动作、特效,所
以偏重也不一样,原画偏电脑绘画、建模主要要熟练使用3DMAX或者MAYA,以及
还要会贴图。动作要有一定的物理常识,特效不仅仅要知道物理常识还要懂程序思
想。
所以游戏开发并不是想象的很好学的!
我就是正规大学游戏程序设计毕业的,现在在盛大18公司工作。
真想做游戏的话 现实点 先学FLASH 再学AS3 前者是软件 后者是编程的 这是做
游戏最简单的方法了
发布者:admin,转转请注明出处:http://www.yc00.com/web/1712407419a2054183.html
评论列表(0条)