能否开发出一个好的软件,关键是看软件开发前期所做的工作,重点是这个软件有没有一个好的软件开发流程,因为一个好的软件开发流程关系到到这个软件的成败和最后能达到一个什么的效果;下面我们就来说一下一个好的软件需要有哪些软件开发流程,也可以说软件开发流程分为哪几个阶段:
第一个阶段是市场调研:技术和市场要结合才能体现最大价值。
第二个阶段是需求分析:这个阶段需要出三样东西,用户视图,数据词典和用户 *** 作手册。用户视图是该软件用户(包括终端用户和管理用户)所能看到的页面样式,这里面包含了很多 *** 作方面的流程和条件。数据词典是指明数据逻辑关系并加以整理的东东,完成了数据词典,数据库的设计就完成了一半多。用户 *** 作手册是指明了 *** 作流程的说明书。请注意,用户 *** 作流程和用户视图是由需求决定的,因此应该在软件设计之前完成,完成这些,就为程序研发提供了约束和准绳,很遗憾太多公司都不是这样做的,因果颠倒,顺序不分,开发工作和实际需求往往因此产生隔阂脱节的现象。需求分析,除了以上工作,笔者以为作为项目设计者应当完整的做出项目的性能需求说明书,因为往往性能需求只有懂技术的人才可能理解,这就需要技术专家和需求方(客户或公司市场部门)能够有真正的沟通和了解。
第三个阶段是概要设计:将系统功能模块初步划分,并给出合理的研发流程和资源要求。作为快速原型设计方法,完成概要设计就可以进入编码阶段了,通常采用这种方法是因为涉及的研发任务属于新领域,技术主管人员一上来无法给出明确的详细设计说明书,但是并不是说详细设计说明书不重要,事实上快速原型法在完成原型代码后,根据评测结果和经验教训的总结,还要重新进行详细设计的步骤。
第四个阶段是详细设计:这是考验技术专家设计思维的重要关卡,详细设计说明书应当把具体的模块以最‘干净’的方式(黑箱结构)提供给编码者,使得系统整体模块化达到最大;一份好的详细设计说明书,可以使编码的复杂性减低到最低,实际上,严格的讲详细设计说明书应当把每个函数的每个参数的定义都精精细细的提供出来,从需求分析到概要设计到完成详细设计说明书,一个软件项目就应当说完成了一半了。换言之,一个大型软件系统在完成了一半的时候,其实还没有开始一行代码工作。那些把作软件的程序员简单理解为写代码的,就从根子上犯了错误了。
第五个阶段是编码:在规范化的研发流程中,编码工作在整个项目流程里最多不会超过1/2,通常在1/3的时间,所谓磨刀不误砍柴功,设计过程完成的好,编码效率就会极大提高,编码时不同模块之间的进度协调和协作是最需要小心的,也许一个小模块的问题就可能影响了整体进度,让很多程序员因此被迫停下工作等待,这种问题在很多研发过程中都出现过。我们在编码的时候一定要软件开发的代码规范编码时的相互沟通和应急的解决手段都是相当重要的,对于程序员而言,bug永远存在,你必须永远面对这个问题,大名鼎鼎的微软,可曾有连续三个月不发补丁的时候吗?从来没有!
第六个阶段是软件测试有很多种:按照测试执行方,可以分为内部测试和外部测试;按照测试范围,可以分为模块测试和整体联调;按照测试条件,可以分为正常 *** 作情况测试和异常情况测试;按照测试的输入范围,可以分为全覆盖测试和抽样测试。以上都很好理解,不再解释。总之,测试同样是项目研发中一个相当重要的步骤,对于一个大型软件,3个月到1年的外部测试都是正常的,因为永远都会又不可预料的问题存在。完成测试后,完成验收并完成最后的一些帮助文档,整体项目才算告一段落,当然日后少不了升级,修补等等工作,只要不是想通过一锤子买卖骗钱,就要不停的跟踪软件的运营状况并持续修补升级,直到这个软件被彻底淘汰为止。
总结,前四个阶段在软件开发过程中占的比重比较大,真正编码的时间是非常短的,只有市场调研做好,能有一个明确的方案,设计出详细合理的开发步骤;我们在进行编码的时候才能很顺利,开发出来的软件才有价值。有的软件在没有开发出来,还没有上线就注定不行了,所以说软件开发流程对于能否开发出一个好的软件是非常重要的。
希望对您有所帮助!~
问题一:在计算机编程中 模块是什么意思? 现在大型软件项目的实施一般是分工协作开发,为了支持这一点,编程软件提供了模块化开发支持。通过使用易模块,用户可以将常用的代码封装起来重复使用到其它程序,或提供给第三方使用,或用作开发大型软件项目中的某个部分,然后在软件项目的封装阶段将所有这些模块组织编译成为一个完整程序。模块就像一个已经编译好的程序,如果你需要直接可以带到你的程序里来使用。 希望楼主采纳!!!
问题二:模块的概念是什么? 硬件、软件对模块的解释各不相同:
硬件:模块(module)系指由复数个具基础功能之组件,组件组成之具特定功能之组件,该组件用以组成具完整功能之系统、设备或程序;泛用于各软,硬件领域。通常以其功能,用途命名,如散热模块、存储器模块、游戏模块等。
软件:模块,又称构件,是能够单独命名并独立地完成一定功能的程序语句的 (即程序代码和数据结构的 体)。它具有两个基本的特征:外部特征和内部特征。外部特征是指模块跟外部环境联系的接口(即其他模块或程序调用该模块的方式,包括有输入输出参数、引用的全局变量)和模块的功能;内部特征是指模块的内部环境具有的特点(即该模块的局部数据和程序代码)。
问题三:c语言的模块编程是什么意思 函数就是一个模块。
模块编程指的就是用函数实现各个功能,然后在主函数中调用各个功能模块(函数),这样在维护或升级程序时就可以只关注某个模块。
回答完毕,希望采纳。
问题四:在c/c++中什么是程序的模块、接口和子程序,分别都是什么意思,如果有实例就更好了,谢谢 程序的模块是指:例如整个项目程序实现一个打飞机的功能,这个功能分很多小功能(你的飞机开炮,移动; 敌人的飞机开炮,移动),就可以说敌人飞机实现代码所以部分叫成程序的一个模块
子程序:就是指代码函数实现具体功能的函数,其中一个小函数实现飞机开炮功能就可以叫子程序,而主程序就是调用所有子程序的
接口就是指:比如你这个程序中,有写一个子程序,而其他人也想做类似打飞机的游戏,想要你这个子程序代码,他要写吗?不用,你就写一个接口函数,开放给他用,然后他就通过调用你这个开放的接口,他也能实现你这个打飞机其中一个小功能
问题五:模块是什么意思? 20分 在程序设计中,为完成某一功能所需的一段程序或子程序;或指能由编译程序、装配程序等处理的独立程序单位;或指大型软件系统的一部分。
问题六:模块是什么意思 软件产品可以被看作是由一系列具有特定功能的组件组成,作为一个完整的系统也可以被分解成一系列功能模块,这些模块之间的相互作用就形成了系统的所有功能。
所谓模块是指可组成系统的、具有某种确定独立功能的半自律性的子系统,可以通过标准的界面和其他同样的子系统按照一定的规则相互联系而构成的更加复杂的系统。每个模块的研发和改进都独立于其他模块的研发和改进,每个模块所特有的信息处理过程都被包含在模块的内部,如同一个“黑箱”,但是有一个或数个通用的标准界面与系统或其他模块相互连接。
在软件的模块化开发过程中,把一个源代码的结构分割成一个元系统和一系列的模块。
元系统指的是一个能够保持系统运转的最小的系统。
模块是一个较大系统的独特的部件,它能够由设计者独立设计出来,同时又可以作为一个整体在系统中运转。
把一个大系统切割成互相独立的不同的小系统,可以使一些并不是经常见面的开发者减少必要的交流次数。
另外,一个旧版本的模块可以被新版的模块所替换,同时却又不影响整个系统的运转。
这样,在新模块中所增加的功能就可以及时在现存的系统中体现出来,同时也不需要更改系统中的其他模块。龚
高度模块化的源代码结构给软件开发者和使用者均带来了极大的好处。
开发者可以对具有某种特定功能的模块进行独立开发而不需要花时间去协调与其他模块之间的关系。
并且模块化开发不仅允许模块之间的水平开发,而且可以通过对类似模块之间的创新和竞争(开发新的模块或者对原有的模块进行改进)充分改善系统的功能。
另外,作为最终的用户来说,在安装系统的时候可以就个人的需求与偏好选择适合自己的模块。
模块化是复杂系统的一个共同特征,模块化的代码结构是由松散的组件构成的,是对一个系统完全意义上的分割,而不像完全集成的代码,各个组件之间存在很强的依赖关系,并不是完全通过界面来交换信息。
总结:
第一, 把一个系统分解成各个不同的子模块,不同的开发者专注于对其中某一模块的开发,一方面实现了劳动的分工,另一方面也提高了自由软件开发的效率。基于模块化的性质,每个模块在开发出来以后都可以通过一个被称作是内核的原系统进行信息交流,发挥整个模块的功能,同时也并不会影响其他模块功能的发挥。而且在各个不同的模块整合在一起后,由于外部性的存在,会使整个系统增加的功能要超过该模块本身的功能。在此过程中实现了价值的分割与整合。
第二, 对于开发者而言,基于模块化的自由软件开发具有更大的吸引力,其在参与开发过程中可以得到更高的期望收益。
第三, 在非模块化的软件开发过程中,存在着严重的“搭便车”现象,当一个开发者选择参与开发,其余的开发者就会选择“搭便车”,最终会导致软件的供给不足;在基于模块化的开发过程中,所有的开发者都更倾向于参与开发不同的模块,从而实现整个系统的开发。
MIS软件开发中的组件模式开发比较复杂,主要的阻力不在代码的实现过程中,因为这个工作通常只应该占据软件开发工作量的30%,而对业务需求的深度剖析、业务子系统的划分和业务组件的规划会占据约40-50%的工作量。
这些工作体现在设计阶段主要是对业务的广度、深度分析,把业务领域的对象元素进行细化,将业务 *** 作划分为原子性功能,以此为基础构成业务组件,进而形成模块和子系统,同时业务 *** 作之间的约束则需要逻辑化(代码系统可识别的逻辑);在此过程中,原系统也就形成了,它便是在业务领域中必须的组件、模块和子系统的 ;外延的组件在原系统上通过组合或热差拔即能够满足不同>>
问题七:什么是程序模块?它分为的逻辑结构模块和文件结构模块又是什么意思? C 用模块化的思想
在程序设计中,为完成某一功能所需的一段程序或子程序;或指能由编译程序、装配程序等处理的独立程序单位;或指大型软件系统的一部分。
模块有各种类型,如单元 *** 作模块(换热器、精馏塔、压缩机等)、计算方法模块(加速收敛算法、最优化算法等)、物理化学性质模块(汽液相平衡计算、热焓计算等)等。 程序结构分为顺序结构、分支结构 、循环结构,其它说法都是错误的。判断程序属于哪种结构只要看几个英文命令,如有IF,SELECT就是分支结构(又称选择结构),如有FOR,WHILE则称为循环结构。
问题八:模块的开发类型是什么意思 模块是指数据说明、可执行语句等程序元素的 ,它是指单独命名的可通过名字来访问的过程、函数、子程序或宏调用。功能模块化是将程序划分成若干个功能模块,每个功能模块完成了一个子功能,再把这些功能模块总起来组成一个整体。以满足所要求的整个系统的功能。
问题九:联锁程序有哪些子模块组成?各模块的功能是什么意思 PLC即可编程逻辑控制器实质是一种专用于工业控制的计算机,其基本构成为:电源模块、CPU模块、存储器、I/O输入输出模块、底板及机架模块、通讯模块、功能模块等。
1、电源模块,它为PLC运行提供内部工作电源,而且,有的还可为输入信号提供电源。;2、CPU模块,它是PLC中央处理单元,是PLC硬件核心,PLC的主要性能,如速度、规模都由它的性能来体现;
3、存储器:它主要存储用户程序,有的还为系统提供辅加的工作内存,在结构上存储器都是附加于CPU模块之中;
4、I/O模块,它集成了I/O电路,并依点数及电路类型划分为不同规格的模块,有DI、DO、AI、AO等;
5、底板及机架模块:它为PLC各模块的安装提供基板,并为模块间的联系提供总线。若干底板间的联系有的用接口模块,有的用总线接口。不同厂家或同一厂家但不同类型的PLC都不大相同;
6、通讯模块:它接人PLC后,可使PLC与计算机,或PLC与PLC进行通讯,有的还可实现与其它控制部件,如变频器、温控器通讯,或组成局部网络。通讯模块代表PLC的组网能力,代表着当今PLC性能的重要方面;
7、功能模块:一般有高速计数模块、位控模块、温度模块、PID模块等。这些模块有自己的 CPU,可对信号作预处理或后处理,以简化PLC的CPU对复杂的程控制量的控制。智能模块的种类、特性也大不相同,性能好的PLC,这些模块种类多,性能也好。
问题十:软件设计是什么意思 软件设计是从软件需求规格说明书出发,根据需求分析阶段确定的功能设计软件系统的整体结构、划分功能模块、确定每个模块的实现算法以及编写具体的代码,形成软件的具体设计方案。
软件设计是把许多事物和问题抽象起来,并且抽象它们不同的层次和角度。将问题或事物分解并模块化使得解决问题变得容易,分解的越细模块数量也就越多,它的副作用就是使得设计者考虑更多的模块之间耦合度的情况。
软件设计还有一层意思是指界面设计UI设计,那个是平面美工的范畴
问题一:怎么开发一个游戏软件 一 学游戏制作的人很多,可很多人水平太垃圾
现在游戏制作这个行业是一个非常有前景的朝阳行业,做这个行业的人,目前在我们国家的薪水都是顶级的,而这方面的人才却很稀少。大学里也很少开设这种游戏制作的课程,即便是有,很多老师的水平基本上也就是一些理论派,没什么干货。其实很多人想做这个行业,于是从网上扒拉各种游戏制作教程学习,学了半天也是一头雾水,稀里糊涂,说不会吧,还真会,说会吧,水平还真不咋地。学的东西太杂乱无章,没有什么系统,缺乏真功夫,很难在游戏制作这个行业里立足,这是我们很多游戏学习行业人员的悲哀。
二 有一直游戏制作学习,叫无论你在哪,都可以看现场直播
现在网上很多游戏制作的学习教程和有很多,但是大多数都已经过时了,一些老掉牙的知识罢了,学了也是白学,浪费时间罢了,俗话说的好,选择不对,努力白费。我个人人为,要么不学,要么就学出一个样子来,怎么才能做到呢?当然是要有高手带,只有站在高手的肩膀上才能成为高手中的高手。还有学习模式的改革,很多学生以前希望在网上可以看现场直播老师,同时还可以和老师互动,不明白的问题老师还可以当场解答,想学习的话,在网上就能系统的学习,这种地方有吗?以前没有,现在有了,如果你想学习的话,可以来这个群:排在前面的一组是:二九六,处于中间位置的一组是:六七六,最后的一组是:二八九,按照顺序组合起来即可。这里有每天的全国各路高手现场直播分享的游戏制作精品课程,你什么都不需要付出,只需要来听就行,我们只欢迎努力有上进心的人,不努力瞎混日子的,就不要加了。
三 与其玩游戏,不如做游戏
要知道玩游戏和做游戏不是一个概念。玩游戏是一种业余爱好生活方式,做游戏是一个工作,是一个产业,是一份职业,是一个事业。打个比方吧,看**的人很多,但是拍**的人少;踢球的人多,但是做教练的人少;用的人多,但是做的少;喝酒的人多,但是做酒的人少。这么一解释大概明白这中间的区别了吧?游戏作为一个产业在中国十年,发展的势头很强劲。
四 游戏是是怎么被打造出来的
游戏制作过程并不神秘。按不同,可分为网络游戏(online game)和家用机游戏(consol game)。其开发过程大致可以分为原始创意阶段――项目研发阶段――项目开发阶段――游戏测试阶段――游戏运营阶段。作为个人,在游戏制作过程中的分工有美术(AD美术总监、角色、场景、动作、特效、UI界面)、程序(主程、网络端程序、客户端程序)、策划(主策划、执行策划)、音乐(为主)。而网络游戏和家用机游戏在美术方面的要求不大相同。网络游戏更注重UI的交互、风格的多样、内容的充实。而家用机游戏更注重画面的表现力、技术的先进和UI细节的细腻。近几年,网络游戏的美术在画面表现力上有向家用游戏靠近的趋势。就国内该行业的发展现状来说,美术、程序这两块的合格人才是最紧缺的。
2游戏制作全过程:
(1)游戏策划
工作范畴:故事设计,AI设计,玩法设计,数字设定,关卡设计
人员配置:编剧人员,游戏策划人员
(2)游戏美术
工作范畴:原画,建模,贴图,动画特效,用户界面
人员配置:原画师,模型师,材质师,动画师,特效师,UI设计师
(3)游戏程序
工作范畴:游戏引擎程序,脚本编辑,材质开发
人员配置:程序员,工程师,Shader程序员
(4)游戏整合
工作范畴:关卡整合,数值调整,程序与美术结合,音效置入
人员配置:程序员,工程师
(5)游戏测试
工作范畴:数值微调,极限测试,除错
人员配置:程序员,工程师
3学习游戏制作必须掌握三大方向的知识和!
>>
问题二:用电脑怎样制作游戏软件 一 学游戏制作的人很多,可很多人水平太垃圾
现在游戏制作这个行业是一个非常有前景的朝阳行业,做这个行业的人,目前在我们国家的薪水都是顶级的,而这方面的人才却很稀少。大学里也很少开设这种游戏制作的课程,即便是有,很多老师的水平基本上也就是一些理论派,没什么干货。其实很多人想做这个行业,于是从网上扒拉各种游戏制作软件教程学习,学了半天也是一头雾水,稀里糊涂,说不会吧,还真会,说会吧,水平还真不咋地。学的东西太杂乱无章,没有什么系统,缺乏真功夫,很难在游戏制作这个行业里立足,这是我们很多游戏学习行业人员的悲哀。
二 有一直游戏制作软件学习,叫无论你在哪,都可以看现场直播
现在网上很多游戏制作的学习教程和软件有很多,但是大多数都已经过时了,一些老掉牙的知识罢了,学了也是白学,浪费时间罢了,俗话说的好,选择不对,努力白费。我个人人为,要么不学,要么就学出一个样子来,怎么才能做到呢?当然是要有高手带,只有站在高手的肩膀上才能成为高手中的高手。还有学习模式的改革,很多学生以前希望在网上可以看现场直播老师授课,同时还可以和老师互动,不明白的问题老师还可以当场解答,想学习的话,在网上就能系统的学习,这种地方有吗?以前没有,现在有了,如果你想学习的话,可以来这个群:排在前面的一组是:二九六,处于中间位置的一组是:六七六,最后的一组是:二八九,按照顺序组合起来即可。这里有每天的全国各路高手现场直播分享的游戏制作精品课程,你什么都不需要付出,只需要来听就行,我们只欢迎努力有上进心的人,不努力瞎混日子的,就不要加了。
三 与其玩游戏,不如做游戏
要知道玩游戏和做游戏不是一个概念。玩游戏是一种业余爱好生活方式,做游戏是一个工作,是一个产业,是一份职业,是一个事业。打个比方吧,看**的人很多,但是拍**的人少;踢球的人多,但是做教练的人少;用化妆品的人多,但是做化妆品的少;喝酒的人多,但是做酒的人少。这么一解释大概明白这中间的区别了吧?游戏作为一个产业在中国十年,发展的势头很强劲。
四 游戏是是怎么被打造出来的
1游戏制作过程并不神秘。按平台不同,可分为网络游戏(online game)和家用机游戏(consol game)。其开发过程大致可以分为原始创意阶段――项目研发阶段――项目开发阶段――游戏测试阶段――游戏运营阶段。作为个人,在游戏制作过程中的分工有美术(AD美术总监、角色、场景、动作、特效、UI界面)、程序(主程、网络端程序、客户端程序)、策划(主策划、执行策划)、音乐(外包为主)。而网络游戏和家用机游戏在美术方面的要求不大相同。网络游戏更注重UI的交互、风格的多样、内容的充实。而家用机游戏更注重画面的表现力、技术的先进和UI细节的细腻。近几年,网络游戏的美术在画面表现力上有向家用游戏靠近的趋势。就国内该行业的发展现状来说,美术、程序这两块的合格人才是最紧缺的。
2游戏制作全过程:
(1)游戏策划
工作范畴:故事设计,AI设计,玩法设计,数字设定,关卡设计
人员配置:编剧人员,游戏策划人员
(2)游戏美术
工作范畴:原画,建模,贴图,动画特效,用户界面
人员配置:原画师,模型师,材质师,动画师,特效师,UI设计师
(3)游戏程序
工作范畴:游戏引擎程序,脚本编辑,材质开发
人员配置:程序员,软件工程师,Shader程序员
(4)游戏整合
工作范畴:关卡整合,数值调整,程序与美术结合,音效置入
人员配置:程序员,软件工程师
(5)游戏测试
工作范畴:数值微调,极限>>
问题三:个人的游戏是怎么开发的 这是我给另一个人的回答 也作为答案给你看看吧
你想从事游戏开发,我就跟你大概说说游戏开发的事情好了。游戏开发人员主要分美工、程序员。
游戏开发流程大概是这样一个流程:剧本人设--人物原画场景原画--3D建模--贴图--程序员AI设计--客户端服务器开发--黑箱测试--白箱测试--内测--封测--公测--上市…………这中间还有很多细节不再一一罗列……
程序语言虽然语法不通但是总有相同之处。所以你最好先找个简单的程序语言了解一下,如果你还有兴趣就去努力吧。 这里推荐C++ 和c# 。后者因为有类库支持,可以降低开发难度。前者应用共广阔。 c#编程工具标准的是VisualStudio 它是收费的哦……(当然盗版也很多 这不是废话吗 哈哈) C++开发平台则有很多,不赘述了。
Flash游戏好像用的是Javascript吧……(擦汗,没学过……抱歉)
大型游戏开发最重要是美工。人设原画职责就是把剧本啊什么的东西具象化,绘成。3D建模负责把人设原画的东西做成最终效果……(不用想你也知道艰巨吧) 另外美工还要负责Ui制作啦什么的事情。没有美术基础也是可以学的。 这全凭热情兴趣咯~
如果游戏初品完成了,就要进入测试阶段(罗嗦一句,称职的程序员虽然都会严格遵守单元测试,但是程序公司都配有单独负责测试的人员)测试也会招收一些玩家,让他们反复的玩…( 事实就是这样)…测试各个环节可能存在的漏洞……等一系列的测试通过了 程序就会上市
当然事情还没完…意外总是不可避免的…所以还得及时消费者反映的漏洞……等程序发布一段时间后 漏洞补得差不多了俯这游戏才算好了
当然如果你要给游戏升级,就再反复前面的过程。
说了这么多……我其实很想对你说……游戏也许好玩……开发游戏确实枯燥乏味的……如果没有热情 是坚持不下来的 、
再罗嗦一句 我是学程序设计的 ……深知程序设计的乏味……当然了 我是不后悔选这个专业 。另外我还想学插画呢 目前正在攒钱买数位板
问题四:如何独立开发一款游戏 对于一个大一的学生来说,目测你的基础已经不错了,坚持努力下去应该会有不错的成就。独立游戏是个很大的话题,首先先明确想要自己一个人做还是找小团队一起合作。自己一个人做的话,设计、程序、美术、音乐等等就都得会。如果组团队做,可以重点攻坚其中1到2个方向。我主要说说技术方面。你在编程方面已经有所积累,至少算法方面应该是吧,这对于编程来说是个不错的开始。开发游戏的话,对基本的数据结构和算法要求还是很高的,再有就是软件结构的设计,这个需要较长时间的积累,最好多看看其他的游戏类工程是怎么做的,游戏和那种业务流软件的一个不同在于,游戏程序对实时性要求很高,会有一些为了性能而出现的不同的代码模式。最基本的一个东西,编程语言,看你希望的开发平台,不同平台会使用不同的开发语言,这个要熟练掌握(不是能写算法、玩具例子那么简单就行,需要知道如何用这种语言开发大型工程)。关于开发平台,多说两句。如果想要自己的程序便于大家在任何平台使用,推荐Web相关的技术,如HTML5/JavaScript(用canvas元素,如果需要GPU加速的底层3D API,canvas有WebGL绘制环境(OpenGL ES 20的浏览器版))。如果希望更方便开发,Unity3D是个很好的选择,是个集游戏引擎与运行平台于一体的东西,而且这个东西牛逼的地方在于所有平台都支持(PC、Mobile、Web)。如果开发手机上的原生app,推荐学习cpp以及那个平台上官方语言,这样可以用cpp开发,然后用官方语言做一个壳。如果是PC上的游戏,还是推荐cpp。另一个就是数学/物理,当然这个要看你要做什么游戏。基本的东西是几何相关的东西,基本上是个游戏都用得到。如果有不确定性(绝大部分游戏应该都需要)在里面,基本的概率分布要深刻的理解。如果要自己做物理效果(碰撞,d性,形变等),除了需要搞定相关的物理(刚体物理,柔体物理(这个通常很麻烦),流体物理(这个也很麻烦)等),还需要搞定数值计算方法,自己做物理这个水很深,不建议自己做,用现有的物理引擎最好。如果想要做到很好的3D画面,还需要学习计算机图形学,这里会有很多的光学,很多的立体几何,一坨线性代数的东西还有各种形式的积分。而且实时图形系统的开发对编程能力要求也非常高,除了普通程序的要求以外,还要能掌握高性能的数值密集型的代码开发(这个对于物理相关的开发也一样)。另外还需要掌握至少一个GPU加速的图形接口的使用(OpenGL,Direct3D等)以及对应的shader代码的编写。同样,如果想做到很好的画面效果,建议用现有的渲染引擎,自己做水也太深。总体上来说,2D游戏和3D游戏所需的技能还有很大差别,2D游戏在技术上的要求相对简单很多。还有就是,独立游戏可能有服务器端得比较少。如果真的需要,这方面的开发相对来说和通常的业务流软件的服务端比较相似,所以不是太复杂。不过会有很多游戏逻辑需要在服务端处理,多客户端的信息实时同步可能会成为一个比较有难度的问题。还有就是各种客户端请求的验证,反作弊用,这个一开始应该不会涉及到,不扯了。总的来说,游戏开发作为程序开发最难的一种形式之一,技术方面需要非常多的积累,这个需要时间去积累。可以先从那种非常小的小游戏(先是扫雷、贪食蛇这类休闲游戏,然后做塔防类游戏不错……)做起,练手用。基本功扎实了以后可以考虑进入3D。游戏美术方面呢,2D和3D也是很不一样的。3D游戏的美术很复杂,各种模型网格的创建,各种贴图纹理的绘制。如果有人物,还需要人物动画,这又是一大块。美术我不专业,不多说了,希望哪位专业的来补充一下。2>>
问题五:怎么自己开发网络游戏 一、游戏程序开发的工作主要包括哪些方面
游戏开发中的程序开发主要由如下几个方面组成:
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,数字影院系统(DTS51),数字杜比环绕等。
3.物理引擎主要包含游戏世界中的物体之间、物体和场景之间发生碰撞后的力学模拟,以及发生碰撞后的物体骨骼运动的力学模拟(比较著名的物理引擎有havok公司的game dynamics sdk,还有open source 的ODE―Open Dynamics Engine)。
4.游戏引擎主要是把图形引擎、声音引擎、物理引擎整合起来,主要针对某个游戏制作一个游戏系统,其包含游戏关卡编辑器,主要用途是可以可视化的对场景进行调整,光照效果和雾化等效果调整,事件设置,道具摆放,NPC设置,另外还有角色编辑器,主要用于编辑角色的属性和检查动作数据的正确性。一般日本游戏公司的做法,他们会把关卡编辑器和角色编辑器直接做到游戏中,所有的参数调整都在游戏中通过调试菜单来进行编辑,所以一般他们把这部分调试菜单的功能做的很强大,同时在屏幕上实时的显示一些重要的信息,这样做的好处是关卡编辑器调整的效果直接就是游戏的效果,但是对于程序的重用性来说可能不是很好,比如说要用到另外一个游戏项目中就比较难,除非两个游戏类型相同,只要把场景和角色数据换一下,还有做下一代产品也没有问题,只要根据式样增加调试菜单的功能就可以了。
5.人工智能和游戏逻辑开发,这部分日本和欧美的游戏开发模式也有很大不同,在欧美游戏公司中运用脚本语言开发很普遍,所以这部分程序开发主要是用脚本语言编写,而且脚本程序和游戏程序的耦合性很低,有单独的编辑、编译和调试环境,这样比较利于游戏程序和关卡设计开发分开,同时并行开发,所以一般他们都会有专门做关卡设计的程序员岗位。而日本游戏公司脚本语言一般和游戏的耦合性比较高,一般通过一些语言的宏功能和一些编译器的特定功能来完成一个简单的脚本系统,所以一般这些脚本程序只能在游戏程序中进行>>
问题六:游戏软件怎么开发 20分 游戏的开发不是一个人就能完成的,珐要一个团队分工合作,具体开发的话涉及到美术与程序。
目前主要的开发移动端的程序语言是java和flash as3。java主要是后台的,而且也不是那么容易学的没个一两年很难学好,flash as3是前端语言,这个相对于其他的编程语言来说还是比较容易入门的,一般学习只要3个月左右就能够自己动手做东西了。想学的话推荐你去看看 黑羽的殿堂之路。有什么不懂的欢迎追问!
问题七:我想学习游戏开发或者软件开发,该怎么做 如果你懂英文,可以看一篇关于独立开发者的介绍:
content点gpw iki点org/indexphp/Lone_developer
游戏开发是很花时间的一件事,编程只是其中一小部分。自己做很辛苦。
建议你先学学game maker,制作一些简单的游戏,这里用到编程不多。
然后学一点python,用pygame等模块写一些简单的小游戏。这个阶段只作为了解。
然后进入大学,掌握C和C++,如果对iphone/ipad市场感兴趣,还要掌握Objective-C,之后再开始真正的开发。如果要自己做,还要学会制作音乐素材和素材,否则要购买。同时,如果要自己写引擎,还要学一些算法。如果要做3D游戏,还要学OpenGL,DirectX等。最后,自己还要懂一点游戏策划,否则做出来的东西,没有人买。
问题八:我想开发一款游戏。需要一些什么人员。我本身不懂程序。 你想开发的是pc端游还是手游
问题九:想自己开发小游戏 你需要学的东西还很多、flash已经被淘汰掉了。推荐cocos或者unity两款游戏引擎。前者需要学C++,后者需要学C#。然后还需要学一些简单的图形学。当然前提是有资源的情况下。没有资源的话你还得学美术、如果需要联网,你需要学网络通信、TCP/IP等。 当然不止这些,这些只是最基本的。
以上就是关于关于TROJAN全部的内容,包括:关于TROJAN、python编程是啥、怎么样开发一个软件(怎么开发软件)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)