游戏开发需要知道什么?
首先,游戏开发平台有很多种类型:
个人主机平台:Windows、Linux、MacOC;
移动平台:iOS、Android、WindowsPhone、BlackBerryOS、Symbian;
专业主机平台:Xbox、PlayStation、Will等。
如果你想从事移动平台的游戏开发,Android的主流JAVA语言,iOS的主流Object-C语言,那么你就要学习这个平台的主流语言,而现在个人电脑上的主流游戏开发语言包括C++。但并不是说不同平台的游戏开发没有共同点,在另一个平台学这个也没用。不是,你在编程的世界里走得越远,你会发现很多东西本质上都是相似的。比如,如果你对C++的基本语法有了扎实的理解(而不是死记硬背),那么以后转用Java语言并不难,因为它们本质的面向对象特性和各种编程语言特性都是一样的。
所以,要想走的远,学习的时候不能单纯的肤浅。同样的知识你越深入底层,就越能看到其他知识和它的异同,所以你会比别人更放松。不过,当然,最好在一开始就尽可能的契合自己的领域和编程语言,这样才能尽快在这个领域有一席之地。无论你选择哪个平台,游戏开发的庞大工程都离不开游戏引擎,所以这里有两条路线供你选择:
只用游戏引擎;
使用游戏引擎,深入学习游戏引擎的原理。
游戏开发需要学习什么?和软件开发一样,游戏开发也需要从编程语言学开始。下面是一些学习软件开发的方法。游戏开发相对来说比软件开发更难,因为游戏开发需要我们熟悉各种游戏开发工具。来看看具体内容吧!
第一阶段:学习计算机通信的语言——c++语言或者其他语言。
写程序就是和计算机交流,常见的交流方式是语言,就像我们平时和别人交流一样,但是现在你是在和计算机交流。其实和电脑交流比和别人交流更容易。
计算机语言有很多,比如C/C++、Objc-C、Java、AS3、汇编语言、php、asp等。,就像我们平时有很多语言一样。当你掌握了这样一门语言,你就可以和不同领域的计算机交流了。
而且C++语言是目前比较强大的语言之一,重要的是很多游戏的底层都是用C++语言写的。同时你要熟悉一个编程开发工具,它是你和计算机交流的工具,就像我们平时说话用的嘴一样。开发工具使我们与计算机交流更加方便。
第二阶段:掌握数据结构和各种常用算法_灵活运用语言
仅仅会语言是不够的,就像我们不用说话也能和别人很好的交流一样。你应该知道沟通的方式和技巧。数据就是记录在计算机内存中的内容,你可以把它想象成我们平时说的那个词,数据结构就是数据和数据之间的关系。
至于程序,如果你熟悉数据理解、定义和运算,多样高效的算法,那么程序就会简洁高效,这也是你要熟练掌握数据结构和常用算法的原因。其实算法就是解决问题的方法。解决一个问题的方法有很多种,有些常用的方法来源于前人的经验,一定要学习。
第三阶段:找一个平台来发展你的语言技能——Win,Android,IOS。
目前该程序的应用范围较广,平台较多,如Win、Android、IOS等。,对于游戏程序来说很常见。平台相当于使用该语言的地区。在中国可以说很好的普通话,交流没有问题。但是到了美国,就难了,就是作为一个普通话专家很郁闷。不同的平台对语言和程序架构有不同的要求,所以你在选择平台时应该更好地使用你的语言。
阶段4:开发游戏圆顶_练习你的技术
如果你已经过了前三个阶段,剩下的就是开发游戏巨蛋了,从游戏logo、菜单、场景、做主角、NPC、主角和NPC的互动、主角和场景的互动等等开始。,一步一步写,在不断的开发中积累经验和程序框架。你用得越多,你就变得越熟练。
1,学习C/C++
2、然后联系学习WINDOWSAPI和VC++
3.你需要掌握一个3D游戏SDK:DirectxSDK或者OPENGLSDK。
4.艺术设计和建模知识。可能需要好几本书才能找到相关的资料或者围绕以上的书籍。
首先非常感谢你在这里回答这个问题。让我带你一起进入这个问题。现在我们一起来讨论一下。
1.如果你想成为一名游戏开发者,你首先要成为一名优秀的程序开发者。当你成为一名优秀的程序开发人员后,可以考虑学习游戏开发。要成为一个非常优秀的游戏开发者,最重要的是数学非常好。当然,这里的数学好不是指加减法好或者心算好,而是线性代数、几何与几何代数、物理数学等等。如果你对数学不感兴趣,或者很无聊,那你就要重新考虑是否可以改变自己的理想了。如果你数学不好,想成为游戏中的玩家,有一个办法,就是做测试员,美工,设计师,或者游戏的管理者。
众所周知,数学是开发游戏的第一基础条件,但是还有很多其他的知识需要学习。下面详细解释一下:
2.编程语言:在编程语言方面,你不仅要精通一两门语言,还要懂其他语言。一般游戏都是用c++或者C开发的,所以掌握这门语言是必然的选择。因为开发游戏需要不同的语言,比如脚本语言,所以需要了解动态语言,比如Python。
3.数据结构:无论计算机多么发达,只要你写程序,数据结构都是必不可少的。目前基本上不会再有自己造“轮子”的时代了,STL或者其他更好的数据结构库应该会被理解和使用。熟练使用STL基本解决了数据结构的问题。
浮点数:开发游戏最常用的数据类型是什么?显然是浮点数。比如3D游戏中的点坐标,用三个浮点数来表示。浮点数的计算往往会出现不准确的现象,比如判断一个数是否等于0,所以我们不能想当然地认为它等于0。
4.编程工具:编程工具就像自己的柴刀一样。没有柴刀,就不能砍柴。当然,磨刀不误砍柴工。所以你必须非常熟悉自己的编程工具,比如调试、项目配置、编辑、编译等。,以及频繁的编译错误。如果你还在用VC6开发现在的游戏,建议你赶紧放弃。那是八年前的开发工具,现在需要使用VS2005的开发工具。强大的c++语言功能,强大的编辑工具,让你写代码如行云流水。还可以支持x64位代码的编译,64位PC越来越普及。
5.计算机架构:不了解计算机架构,就无从知道程序的运行环境。很多年前还是8086系统的架构,然后是80386的保护模式。到目前的多核架构,要编写需要多核CPU性能的程序,就必须知道如何合理分配CPU资源。或许,你还可以控制CPU进行渲染操作,控制CPU进行网络通信。如果去四核CPU,查询数据库需要多少个CPU?
6.Windows编程:目前游戏运行环境90%是Windows。不了解Windows,就无从下手。比如Windows的消息处理过程、事件响应、网络通信过程都需要了解。还有Windows提供的API,要更熟练的使用。
7.DirectX:对于每一个游戏开发者来说,都是必要的常识。
软件工程:现在游戏开发不是一个人能完成的。必须是团队,他们之间的配合就成了需要解决的问题。比如如何把大家写的一些库连接起来,这是软件工程的问题。进度如何安排需要用甘特图来说明,如何测试也是在测试人员的配合下进行的。现在游戏已经进入3D时代,那么从哪里开始呢?最快的方法是下载DXSDK,然后打开一个空项目,看看DX给你创建了什么文件,这些源程序是做什么用的。然后试着创建一个三角形来显示,试着改变它的颜色,试着让它旋转,最后创建两个三角形,计算这两个三角形会不会相交?会不会碰撞?
以上分享的这个问题的答案都是个人的看法和建议。希望我分享的这个问题的答案能帮助到大家。
同时,我希望你能喜欢我的分享。如果你对这个问题有更好的答案,请分享你的评论,和我一起讨论这个话题。
终于,我来了。祝大家生活幸福,身体健康,家和万事兴,年年发大财,生意兴隆。谢谢大家!
看你想往哪个方向走,策划,程序,美术,每个方向都细分。
策划包括剧情策划、层次策划、数值策划等等。
课程包括客户端编程、服务器编程、引擎编程、脚本编程、手机游戏开发和网页游戏。
艺术包括3d建模和2d艺术..
方向不同,需求不同。
比较了解程序,我们来说说两个程序。
要说只是为了工作,那就得学windows编程,socket之类的。
当然,服务器是各种数据库操作和各种通信操作。
引擎编程需要了解底层,directx,opengl,3d数学,物理基础等等。
剧本就够学了。
手机游戏开发分为ios和android,使用不同的引擎需要不同的学习。
目前流行Flex,js和html也在发展。
以上只是崩溃。但是真正的建议是,
学习c++,数据结构,socket编程,了解windows编程,学习数据库编程。
先学3d数学,再学directx,然后试着玩个小游戏。
学习设计模式。研究开源引擎。
会是一个漫长的过程,但是基础扎实,各种发展都不怕。
可以选择喜欢的道路进行深入研究,也可以重点研究游戏逻辑的实现。
我也在学习游戏。我个人认为这是一个更好的方案。
1,3D数学,包括矩阵,四元数,空间变换,碰撞检测等;
2、C、C++要精通,熟悉内存和指针;
3、计算机底层知识,组成原理很重要,最好能组装一些;
4.数据结构和算法很重要,基础很重要;
5、对游戏的整体了解,包括游戏需要哪些模块,比如渲染、物理、AI、游戏性等。,最好能写一些基本的引擎,渲染模块等。没有发动机;
6.你需要对游戏有自己的理解和看法。你也要学会分析游戏,懂得分析游戏的利弊,知道什么样的游戏好玩,为什么好玩。建议多看文章和视频。
7.了解行业动态,多关注游戏相关知识。业内的新闻、媒体、人脉也很重要。学会自己分析行业的趋势和观点;
8.使用和熟悉unity这个相对成熟的引擎也是有帮助的,可以帮助你了解游戏引擎的架构和趋势,但是做这个之前一定要夯实电脑基础;
9.创新思维和开放思维非常重要;
10,实习经验好,项目经验很重要,先进入游戏行业很重要,大家都得敲门。