自学游戏编程,没学习过编程怎么制作游戏?
自学游戏编程,没学习过编程怎么制作游戏?详细介绍
本文目录一览: 如何学习游戏开发
摘要:随着电脑和智能手机的筑建普及,玩游戏几乎成为了人们的常态,这就必然需要较多的游戏开发人,因此不少人都想要自学游戏开发的相关知识。那么,我们应该怎样学习游戏开发呢?首先要选定游戏平台的类型,然后就是有针对性的进行学习。你可以选择只是用游戏引擎的学习也可以选择使用游戏引擎并深入了解游戏引擎原理的学习两条路线。当然,如果想要有所作为,那么推荐你选第二条。下面就一起来看下游戏开发学习的相关知识吧。如何学习游戏开发一、平台与编程语言选择首先,游戏开发的平台就有很多类型:*个人主机平台:Windows、Linux、MacOC;*移动平台:iOS、Android、WindowsPhone、BlackBerryOS、Symbian;*专业主机平台:Xbox、PlayStation、Will等。如果你想从事移动平台的游戏开发,Android主流JAVA语言,iOS主流Object-C语言,那么你就要去学习这个平台主流的语言,而在个人主机上主流的游戏开发语言现在包括以后很长时间也还是C 。但是并不是所不同平台的游戏开发,就毫无共通之处,学了这个到了另一个平台就无用了。不是这样的,编程的世界里你走得越远你会发现很多东西的本质都是相似的,例如你如果扎实地理解了C 的基本语法(而不是死记硬背),日后再转Java语言也不是很难的事情,因为它们本质的面向对象特性还有各种编程语言特性都是相通的。所以,如果你想走得远,在学习的时候不能简单流于表面,对于一样知识越深入到底层,你就越能看到其它知识与其的异曲同工之处,因此你将比别人更轻松。但是,当然一开始最好尽可能是贴合自己的专属领域和编程语言,这样能尽快地在这个领域持有一席之地。无论你选择哪个平台,游戏开发这个浩大的工程都离不开游戏引擎,所以这里都有二条路线让你选择:*只使用游戏引擎;*使用游戏引擎并深入学习游戏引擎原理。二、游戏开发不同学习线路线路一:只使用游戏引擎对于第一条路线,游戏引擎的使用并不困难,因此适合想快速上手游戏开发工作的人。我们工作大多数时候也不会自己开发游戏引擎,所以这样对于一般的日常工作也没什么大碍。对于只使用游戏引擎的人来说,入门阶段要做的就是看该引擎的教程(书籍、视频、网上博客、网上教程、官方帮助文档等),并且熟练该教程所使用的编程语言。所以你要做的第一件事,就是去了解现在流行的游戏引擎。因为不同平台下的性能不同,支持的编程语言也不尽相同,所以针对不同平台下的流行的游戏引擎也是不同的(方括号里面是特别推荐的,基于开源性、易用性、性能与效果等方面的综合水平推荐):*windows或游戏主机:【Unreal】、寒霜、CE3*苹果ios:【unity3D】、【cocos2d-ObjC】、【Unreal】、sparrow、spritekit。*安卓:【unity3d】、【cocos2d-x】、【Unreal】、AndEngine、libgdx。*网页:【Egret】、【cocos2d-html5】、Fancy3D、unity3d。在选择游戏引擎的时候,尽可能选用流行的游戏引擎,因为这个游戏引擎流行意味着官方的功能比较完善和易用,问答社区也比较多人解疑。各个游戏引擎也各有千秋,Unity3d胜在简单易用,对性能要求不高,但是效果不够华丽,因而一般用在移动平台而不会用在电脑或游戏主机。Unreal胜在开源免费,而且效果也很出色,但是对设备要求比较高,因而常常用来开发效果绚丽的大型游戏。cocos2d-x也是开源免费的,在2D领域深有造诣,但是缺点是不可视化开发。另外,如果你想了解游戏引擎原理,那么首要考虑的就是开源的游戏引擎。不同游戏引擎使用的编程语言或者脚本语言可能是不一样的,所以当你想要学习某个游戏引擎的时候,也应该留意该游戏引擎所使用的语言。大部分情况是,Windows用的的是C ,同时结合lua或python脚本语言。而ios平台下使用Objective-C或swift,安卓平台下使用Java。但这不是必然的,例如Unity在各个平台下都可以用C#或者javascript脚本语言。下面是商业上流行的游戏引擎详细比较:1)Unreal4(虚幻4)*适用平台:MicrosoftWindows、MacOSX、iOS、Android、虚拟现实设备(包括但不限于SteamVR/HTCVive、Morpheus、OculusRift及GearVR)、Linux、SteamOS及HTML5平台。*编程语言:C 或无需编写代码。*优点:开源免费,画面效果出色,已有多款商业大作经验。同时,它还能跨平台,商店资源丰富,提供了无需编写代码即可制作游戏的强大功能(可视化开发)。*缺点:开发机器配置要求较高。2)Unity3D*适用平台:iOS、Android、Windowsphone8、Tizen、MicrosoftWindows、WindowsStore应用程序、Mac、Linux/SteamOS、网络播放器、WebGL、PlayStation3、PlayStation4、PlayStationVita版、XboxOne、Xbox360、WiiU、AndroidTV、SamsungSMARTTV、OculusRift、GearVR、MicrosoftHololens、PlaystationVR。*编程语言:C#、javascript、Boo。*优点:方便易用,中文资料丰富,跨平台,商店资源丰富,可视化开发。*缺点:画面效果一般,不是免费开源,引擎效率比较低。3)Cocos2d系列(包Cocos2d-x、Cocos2d-ObjC、Cocos2d-html5、Cocos2d-xna等)*适用平台:MicrosoftWindows、OSX、Linux、iOS、Android、Tizen、Linux、MacOSX、HTML5浏览器、WindowsPhone7&8、Xbox360。*编程语言:Python、Objective-C、C 、Lua、JavaScript、Swift、JavaScript、C#。*优点:开源免费,跨平台,中文资料丰富,2D技术丰富且成熟。*缺点:不可视化开发,3D方面技术不成熟。4)CryEngine3*适用平台:MicrosoftWindows、OSX、Linux、PlayStation3、PlayStation4、WiiU、Xbox360、XboxOne、iOS、Android。*编程语言:C 、Lua。*优点:画面效果世界一流,可视化开发,跨平台。*缺点:开发机器配置要求较高,不是免费开源。5)Frostbite3(寒霜3)*适用平台:MicrosoftWindows、PlayStation3、PlayStation4、Xbox360、XboxOne。*编程语言:C 。*优点:画面效果出色,可视化开发,跨平台。*缺点:开发机器配置要求较高,不是免费开源。6)Egret(白鹭)*适用平台:HTML5、iOS、Android、WindowsPhone。*编程语言:TypeScript、JavaScript。*优点:免费开源,配套工具多,全中文文档,可视化开发,跨平台。*缺点:支持平台较少,大多数时候用于开发对性能和效率要求不高的小游戏。但是使用游戏引擎毕竟是停留在表面看不到本质,当游戏开发的时候出现了某些问题或者特殊需求,你往往很难处理。而且游戏引擎技术日新月异,你所学的几乎都是别人留下来的方法,而不是其本质思想。如果将来别的游戏引擎兴起,你又要重新学习另外的游戏引擎怎么使用。在很多大公司里面,甚至都有自己公司内部专用的引擎(如网易公司的风魂引擎、金山公司的剑网3引擎、蜗牛公司的Flexi引擎等等)。所以单纯地走这条路线,可能不会让你走得很远并且可能会日渐乏味。线路二:使用游戏引擎并深入了解游戏引擎原理对于第二条路线,深入学习游戏引擎原理短时间不会让你的工作有什么卓越的成效,但是可以弥补只使用游戏引擎导致的问题,而且学习游戏引擎原理,更多时候不是一定就为了自己日后要造个游戏引擎,而是更深入理解自己的游戏引擎,更好地使用它。当然,千里之行始于足下,经常学习游戏引擎底层原理的人到了一定的积累的时候,自己造个游戏引擎也是可以的。对于像学习游戏引擎原理的人来说,需要制定自己明确的长期目标:1)首先,一开始可能对游戏引擎没什么概念,建议先使用一两个游戏引擎(我推荐C 程序员学习虚幻4游戏引擎,现在是免费开源的,非常值得学习。那些不开源的游戏引擎尽量不要去学习,因为其对于学习原理来说没有多大贡献)。2)因为游戏开发就是一门实时渲染的艺术,所以离不开图形库的学习。现在主流的图形库是Windows平台专用的DirectX11和通用平台的Opengl。这两个图形库,至少需要入门其中一个。3)然后,你就可以开始看计算机图形学的书籍了。如果你发现你的理论底子不足,这个时候就需要补一下线性代数、基本的微积分、还有3D数学的知识。4)游戏引擎中包含了各个部分,上面的渲染只是游戏引擎的一部分。还有其它诸如着色器编写、地形编写、物理引擎编写、模型和动画、人工智能体设计、网络编程等等,完成渲染部分的基本学习后,你可以选择自己感兴趣的部分进行专攻,毕竟我们实际工作大多数时候是团队开发,而不是单打独斗,每个人都应该精通自己所擅长的那部分。
游戏开发可以自学吗
游戏开发可以通过自学来实现。以下是一些自学游戏开发的方法和建议:
1. 学习编程基础:
游戏开发需要编程技能,所以首先要学习编程基础。选择一门编程语言,如C#、Python、JavaScript等,学习语法、逻辑和基本算法。
2. 学习游戏引擎和工具:
选择一个流行的游戏引擎,如Unity、Unreal Engine等,学习其使用方法和功能。这些引擎提供了图形界面和工具,使游戏开发变得更加直观和便捷。
3. 在线教程和课程:
网上有许多免费和付费的游戏开发教程和课程,涵盖从入门到高级的各个方面。课程可以帮助你系统地学习游戏开发知识。
4. 学习资源和文档:
游戏引擎和编程语言的官方文档是学习的宝贵资源。它们详细介绍了各种功能和用法,帮助你解决问题和学习新知识。
5. 制作小项目:
从简单的小项目开始,逐步增加难度。通过实践项目,你可以锻炼技能,理解游戏开发的流程和挑战。
6. 参与社区和论坛:
加入游戏开发社区和在线论坛,与其他开发者交流经验,提问问题,获得帮助和建议。
7. 实践和持续学习:
游戏开发是一个持续学习的过程。不断尝试新的技术、工具和方法,保持对新趋势的关注,以保持竞争力。
游戏开发学习的准备工作:
1. 确定学习目标:
明确你想要学习的游戏开发领域,例如游戏编程、游戏设计、游戏美术等。根据目标制定学习计划。
2. 学习编程基础:
游戏开发中需要编程技能,所以学习编程基础非常重要。选择一门编程语言,如C#、Python、JavaScript等,学习基本语法和逻辑。
3. 了解游戏引擎:
选择一个适合你的游戏引擎,如Unity、Unreal Engine等。了解引擎的基本功能、界面和工具,以及其支持的编程语言。
4. 学习数学和物理:
游戏开发涉及到许多数学和物理知识,如几何、代数、向量、碰撞检测等。建立数学基础能够帮助你理解游戏中的运算和模拟过程。
如何学习游戏编程
学习游戏编程主要是自学和报班学习,但对于普通人来说不建议自学。
当下互联网行业发展迅速,与之相关的产业大多发展都很好,游戏设计的前景自然也是相当不错的。一个游戏问世要经历很多环节,剧本设计,原画创作,场景建模,但核心部分还是编程语言开发。
主要学的内容如下:
1.游戏程序设计:C程序设计入门;基本数据类型和输入输出;流程控制语句;数组、指针和引用、函数;程序结构和书写规;范结构体和联合体、类;继承与多态;异常处理与程序调试。
2.算法与数据结构:算法分析;数据结构;基本算法;STL的概念与使用;静态库与动态库;XML库的使用。
3.Win32程序设计:Windows程序入门;Windows消息;GDI绘图游戏工具与MFC;网络编程基础。
4.游戏数学和智能应用:游戏中的坐标系;矢量、矩阵;几何碰撞;物理模拟;人工智能与寻路算法。
5.2D游戏技术与应用:2D游戏技术概论;游戏地图系统;GUI系统;战斗系统设计;任务系统;优秀的声音引擎BASS;Cocos2D-X引擎;Box2D物理引擎。
互联网行业目前还是最热门的行业之一,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。
想学习游戏编程,需要具备IT相关的哪些编程技能?
想学习游戏编程,需要具备IT相关的编程技能。可以选择去机制或者找资料自学。
主要内容如下:
1.游戏编程:C 编程入门;基本数据类型和输入输出;过程控制声明;数组、指针和引用、函数;程序和写作规则;结构、联想、阶级;遗传和多态性;异常处理和程序调试。
2.算法与数据结构:算法分析;数据结构;基础算法;STL的概念和使用;静态库和动态库;XML库的使用。
3.Win32编程:Windows程序介绍;Windows消息;GDI绘图游戏工具和MFC:网络编程基础。
4.游戏数学与智能应用:游戏中的坐标系;向量和矩阵;几何碰撞;物理模拟;人工智能与寻路算法。
5.2D游戏技术与应用:2D游戏技术介绍;游戏地图系统;GUI系统;战斗系统设计;任务系统;出色的声音引擎低音;;Cocos2D-X发动机;Box2D物理引擎。
互联网仍然是目前最火的行业。学习IT技能后如果足够优秀,将有机会进入腾讯、阿里、网易等互联网大公司高薪就业。发展前景很好,普通人都可以学。
如果想系统学习,可以调查比较一下开设IT专业的热门学校。好的学校有能力根据企业目前的需求自主开发课程。建议实地考察比较一下。
想学习游戏编程,需要具备IT相关的编程技能。可以选择去机制或者找资料自学。主要内容如下:1.游戏编程:C 编程入门;基本数据类型和输入输出;过程控制声明;数组、指针和引用、函数;程序和写作规则;结构、联想、阶级;遗传和多态性;异常处理和程序调试。2.算法与数据结构:算法分析;数据结构;基础算法;STL的概念和使用;静态库和动态库;XML库的使用。3.Win32编程:Windows程序介绍;Windows消息;GDI绘图游戏工具和MFC:网络编程基础。4.游戏数学与智能应用:游戏中的坐标系;向量和矩阵;几何碰撞;物理模拟;人工智能与寻路算法。5.2D游戏技术与应用:2D游戏技术介绍;游戏地图系统;GUI系统;战斗系统设计;任务系统;出色的声音引擎低音;;Cocos2D-X发动机;Box2D物理引擎。互联网仍然是目前最火的行业。学习IT技能后如果足够优秀,将有机会进入腾讯、阿里、网易等互联网大公司高薪就业。发展前景很好,普通人都可以学。如果想系统学习,可以调查比较一下开设IT专业的热门学校。好的学校有能力根据企业目前的需求自主开发课程。建议实地考察比较一下。祝你学业有成,望采纳。
如何自学编程?
熟悉以下关键东西,可以边学边做,定期训练,经常思考,长期积累:1、语法。2、基础理论(数学、数据结构、算法等)。3、设计方法(编程原则、设计模式、框架设计等)。4、库(核心、基础、UI、扩展、游戏引擎等)。5、计算机相关(操作系统、网络、图形学等)。6、领域知识(游戏设计、网站设计等)。7、开发工具(编辑器、IDE、自动部署等)。8、项目管理(进度管理、分工协作、Bug管理、版本控制等)。最普遍也是最重要的能力:创造力。努力分析并理解好做什么以及怎么做。要知道上面那些东西一开始都是不存在的。具体方法包括:1、快速阅读入门教程和书籍,适合学习语言和基础库。比如我学Java读的《Java编程思想》,练习题做过一点,然后学ActionScript就没读过书,只读过Adobe官方文档《ActionScript 3.0编程》。2、阅读库的文档、实例、源码。比如Flash、Flex开发,熟悉官方API很重要,很多细节要具体使用时才注意到,这时候最好做个笔记,虽然我从没看过我的笔记。3、做一个自己感兴趣或熟悉的小项目,比如我就以黑白棋游戏作为多个语言的试水项目,一样的逻辑,便于把关注点放在语言特点上。4、自己动手丰衣足食。厨师有菜谱,程序员可没菜谱。比如我做游戏,最关键的游戏编程知识全部是动手学出来的,很少有专门针对某个业务领域(如游戏)的编程书籍,要么是入门书,要么是模式书(如算法)、理论书(图形学),很少有书籍教你如何开发一个45度角地图系统加编辑器的,全靠自己思考,以及看前人的代码,需要时找些网络资料。关键是,可以培养最重要的创造力。对于算法和设计模式,可以研读下,但是关键还是靠平时如何使用了。新手勉强不来的。项目管理方面的,就得靠工作经验了,多思考多提意见不要只走流程。
要熟悉编程范式,尤其是面向过程及面向对象这两种;要广泛阅读,多用编译器及IDE(网上有许多免费的)练习编程。
选择一种编程语言。初学者一定要从主流语言开始学习,比如中级语言C和C 。这两种语言是任何一名合格、专业的程序员都必须掌握的,因为它们称得上是软件开发界的主流。
但是最好不要从高级语言开始学,如Java,因为这些语言对于初学者来说难度未免太高(高级语言可以以后再学,但是C语言和C 应该作为你的基础)。
然而对于完完全全的门外汉的来说,可能C和C 都有点困难,那么你也可以从Python开始学,这种语言被大家广泛认为是适合初学者的。
自学编程要做到将编程作为自己的爱好、对自己的电脑了解、确定自己的编程语言、多看书,具体介绍如下:
1、要想真正学习一门知识,就要先尽量保持将其保持为一种爱好,才能一步一步的学习,还要保持耐心,不能为了成果跳跃学习。这两句话很重要,请在任何时候都要记住,无论那一门课。
2、要对自己家的电脑有一个充分的了解,包括他的位数(64位,32位),内存,型号,和版本,如果要编程的话,一定要对电脑的各个功能有详细的了解
3、先确定自己要学的编程语言,将其语言环境和编程工具准备好。入门最好使用c-free,或Java(要准备语言环境)入门或是深入都可以使用eclipse,python(要准备语言环境)可以使用editplus。
4、多在当地书城或是网上购买一些所学习的语言的书,可以轻松自学,当然如果你认为仅仅是文字并不够生动,可以看看一些优秀的教学视频,但千万不要放弃书本。
注意事项:
1、 明确学习目的 学习编程对大多数IT业人员来说都是非常有用的。
2、逻辑思维能力的培养,学程序设计要有一定的逻辑思维能力,“逻思力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。
大学玩转这4款游戏自学编程
玩转这4款游戏你就是下一个编程大神边学边玩!
1、Code Combat
极客战记是款网页编程游戏,这款游戏不会让你觉得是学
习代码的网站,而是真的需要去打怪升级,还会有揭迷寻
宝的环节,只是这些环节中会搭配程序语言的学习,在极
客战记里, 你可以选择学习Python, JavaScript、
clo jure、coffee script, lua等不同程序语言。
2、S creeps
JavaScript是目前比较通过的程序语言, S creeps可以边
玩边学JavaScript, 是款多人在线游戏, 大家需要完成任
务,获得资源,扩大自己的领地,挺有意思的。
3、Check io
如果你想练习或学习Python和JavaScript, 可以玩
一玩Check io这个游戏。在游戏中你需要使用
Python和JavaScript来解决问题才能将游戏继续下去
4、Hacker.org
这是款挑战类游戏,有拼图、测试、智力题等,在游戏中,
你需要学会解密、编码、渗透等技术,来锻炼你的黑客能力。
初学自学。C游戏编程,应看那些书?
《Windows游戏编程大师技巧》这书的代码就不要看了。。。
都不是面向对象的。。但思想还是好的。
游戏编程不一定就是DX独大,一般都要兼容OPENGL的。
你也可以从OPENGL上学。
书实在是太多了。不过最好是看国外的写的书。。
国内的书都是骗钱的。。
特别是“房晓溪”这个人的书。。
我推荐几本初学的2D《VisualC 游戏编程基础》
《VisualC 经典游戏程序设计》一般现在都可以直接学3D,学好3D,2D就不在话下了《nehe教程》这个是只有电子书,很好的OPENGL教程,让你对3D图形更感兴趣呵呵《OPENGL游戏编程》,作者徐明亮,感觉算国内比较好的书了《3D游戏编程大师技巧》,这书跟《Windows游戏编程大师技巧》有点联系,不过不多,反正也是看思想,代码也不要看了。
还有好多书可以去电驴上载。。。
太多了,游戏中的每一个部分都可以单独写成一本书。。
以后还要更细化的。。
祝你成功,为中国游戏做贡献。
手机游戏编程制作怎么学
想要学习手机游戏编程最好就是去培训学校,我就是在上海博思游戏学校学的,教的挺好而且推荐就业,你要是想自学的话是很难的,因此游戏编程主要是运用各类计算机语言,没有基础的话入门是很困难的
目前流行的游戏编程语言为C编程语言,目前流行的游戏编程接口为DirectX9
0,还有OpenGL、SDL(SimpleDirectMediaLayer)等
现在手机上玩的游戏分为Android与IOS两种不同平台,分别是用eclipse/MyEclipse和xcode
现在也流行一些跨平台的编程引擎,例如cocos2d-x、unity3D等,这些都是比较复杂的
没学习过编程怎么制作游戏?
举个例子的话,单线剧情或者有简单分支的文字冒险游戏甚至可以用PPT实现。
也存在不需要编程知识的游戏框架,如rpgmaker
那肯定是先学习java基础,如果是想向手机游戏方向发展,那就是要重点学好java基础语法,还有线程要重点好好学,异常,IO,什么的都要学习到,其实只要你把java的基本思想搞明白,能够独立写一些类似计算器这样的小程序(一定是独立完成,思维逻辑清晰的写完)的话就可以来研究手机游戏了
手机游戏开发其实是j2me,是java语言的一个发展方向,用j2me就可以制作手机游戏以及软件,对于自学的话我个人推荐《javame使用详解——用eclipse进行移动开发》这本书,讲解很详细,适合入门学习,从高级用户界面开始学习,然后低级用户界面,用户存储,游戏开发,这样的一个学习过程,但是说实话,你如果是自学的话入门可以,但是如果想编一个像样的游戏的话那估计难度有点大,因为在手机游戏开发过程中很多东西都是经验,很多人说j2me简单,其实说实话,是简单,不就是那11个包里的那几个类的调用吗?但是用这些类里的方法什么的结合起来编写一个游戏,那就不简单了,这时候就需要一个老师或者有经验的人给你指点一下了,就是这样。
手机游戏开发(也就是j2me)其实不难,技术性的东西不难,难就难在逻辑思考,重在算法的编写,游戏中间需要许多的NPC,这些NPC的活动都是需要你编写很多的代码来实现人工智能的。
如果没有学过编程想制作一个游戏还是很难得,可以根据兴趣来报一个培训班,学会了技术再来进行开发理想游戏
还是可以的,就是进度慢无从下手,不知道从哪里开始,可以试试从简单的开始,选一个引擎慢慢学习,总有一款适合的,都要从哈喽沃德开始的
那肯定是先学习java基础,如果是想向手机游戏方向发展,那就是要重点学好java基础语法,还有线程要重点好好学,异常,IO,什么的都要学习到,其实只要你把java的基本思想搞明白,能够独立写一些类似计算器这样的小程序(一定是独立完成,思维逻辑清晰的写完)的话就可以来研究手机游戏了
手机游戏开发其实是j2me,是java语言的一个发展方向,用j2me就可以制作手机游戏以及软件,对于自学的话我个人推荐《javame使用详解——用eclipse进行移动开发》这本书,讲解很详细,适合入门学习,从高级用户界面开始学习,然后低级用户界面,用户存储,游戏开发,这样的一个学习过程,但是说实话,你如果是自学的话入门可以,但是如果想编一个像样的游戏的话那估计难度有点大,因为在手机游戏开发过程中很多东西都是经验,很多人说j2me简单,其实说实话,是简单,不就是那11个包里的那几个类的调用吗?但是用这些类里的方法什么的结合起来编写一个游戏,那就不简单了,这时候就需要一个老师或者有经验的人给你指点一下了,就是这样。
手机游戏开发(也就是j2me)其实不难,技术性的东西不难,难就难在逻辑思考,重在算法的编写,游戏中间需要许多的NPC,这些NPC的活动都是需要你编写很多的代码来实现人工智能的,所以,加油!祝你成功!