游戏编程入门教学(游戏编程入门教学)

http://www.itjxue.com  2023-03-18 05:35  来源:未知  点击次数: 

游戏编程要学什么?

问题一:学游戏开发要学那么多东西。。。怎么学啊。。。 我觉得你这些学会了还是太少了。

开玩笑了,我作为一个游戏程序员在这个行业干了6年,其实你真正要会的东西是C++, 另外你还要对计算机的内存结构,数据编排管理方式,也就是我们说的数据结构掌握透彻。

Android只是一个程序的载体平台,你将来还有可能为iphone开发,所以这种东西你用到的时候通过sdk文档去了解一下它的规则就可以了。

cocos2dx你可以通过一个实例项目去掌握它,用它来做一块你进入这个行业的敲门砖还是可以的。毕竟现在用这个的公司是非常多,都想招个熟练工嘛。

粒子系统和OpenGL. 等你学了cocos2dx之后,如果对他背后的东西感兴趣可以研究一下,有百益而无一害。

数据库无非就是一些接口和查询语句,对于一个程序员来说,应该要学。

游戏脚本你可以学一个,比如lua, 不要纠结它的语法和形式,要思考为什么用脚本,用脚本有什么好处。大部分游戏引擎都有自己的脚本语言,你能理解他存在的意义遇到任何脚本语言就都没有问题了。

物理引擎我建议你也学一下,虽然我见过的很多游戏程序员根本不懂物理引擎,也能做出很优秀的游戏。但是当你深入研究了物理引擎,你就会觉得你游戏程序员的路还很长,就不会因此而满足现状。

最后给你一点忠告,学好数据结构很重要,做游戏的都说游戏的灵魂是程序,而程序的灵魂是数据!能创造出完美灵魂的人才是一个完美的游戏程序员。

问题二:游戏软件编程要先学什么 首先,别的都不管,一定要先学精以下数学科目:线性代数、空间解析几何、微积分。都要学到比较深的程度,千万不能囫囵吞枣,否则往后的压力会越来越大。现在本科的内容其实不够的,例如quaternion你在课本里就没学,但游戏里绝对用得多。还有,课本里大概也不会教你怎样判断任意两个多面体是否相交。这些都要靠自己多钻研、多琢磨,不能满足课本内容的。

然后,看你是侧重图形、物理、还是AI方向。

图形方面,其实基本上就是几何和光学问题,关键是熟悉API(DirectX或OpenGL)。如果想获得尖端效果,则要先学一些光学基础,然后才能进入可编程Shader的美妙境界。

物理方面,本人经验太少,只能说:这真的是太太复杂了。AI方面:本人也没经验。就不多说了。

最后才说C++编程:其实C++编程这东西真的很奇怪。我们先是在课堂上学了一套东西,然后实际开发的时候人们又会告诉我们那套东西是不能用的(理由一般就是性能低啦、不安全啦,等等),反正又得学另一套东西。搞C++特别是游戏的人,都有一种近乎病态的完美主义倾向,企图用目前并不完美的语言工具实现完美的目标(最典型的病态就是那个const,什么都加const,其实你就算加了const,人家用强制类型转换,一样可以转成非const)。还有那个指针,如果你真的用CObject *pObj这样的形式,肯定要被人骂。他们要用所谓的“ *** art pointer”。诸如此类,都相当变态。

其实真的要做AAA级的游戏,简直就和强迫自己开发一套操作系统、加上一套程序框架、加上实现绝大多数的数据结构和算法一样痛苦。

为什么那么痛苦那么麻烦?想想:做一个游戏,本质上就是想用有限的资源模拟出无限的显示世界,而创造这个复杂的世界是上帝才能胜任的事情,那你想模拟它出来,不就是要和上帝竞争吗?(本人不信教,呵呵。)

当然,如果你只是满足比较不那么出众的游戏,或许并不用那么痛苦,随便拿个所谓的“引擎”过来用就行。或者用C#,也可以吧。

问题三:游戏开发需要学哪些课程呢? 游戏程序开发专业主要培养具有必要的计算机理论知识,熟练掌握至少一种游戏开发平台,熟悉游戏架构、游戏 规划及设计、游戏动画、音效制作、游戏编程和测试的游戏开发人才,并且能适应游戏开发公司、网络游戏运营和服务企业、动漫制作等公司的需要,从事各种游戏的策 划、设计、编码和测试工作。

主要专业课程有:C++程序设计、数据结构与算法、计算机图形学、DirectX程序设计、OpenGL程序设计、JAVA游戏程序设计、游戏体系结构、游戏建模技术、游戏引擎技术、角色设计、游戏企划、网络游戏开发等。

问题四:学游戏开发要学些什么? 跟楼主说一下常用的游戏编辑软件吧:

3dsMAX:大多数游戏开发公司美工使用,效率较高,可以独立制作游戏中所有美术相关资源。

MAYA:跟3dsMAX差不多的软件,因个人喜好而定, MAYA在制作动作的方面较MAX稍差,不过在很多方面这两款软件都是可以兼容的。

Maya和3dmax的区别:

MAX 优势在于模型和插件 ,有丰富的模型库,快速的建模方式和优良的渲染插件及较快的渲染速度,能够在游戏模型、建筑巡游、广告效果图等领域广泛使用。 MAYA 优势在于动画及其特效,在模型方面与MAX 无太大差异,但建模速度较慢。MAYA的动画块较MAX有显著优势,现阶段的动画电影及长片动画都是用 MAYA来制作完成,并且《变形金刚》《蜘蛛侠》 这类科幻电影的 动画及特效也是有MAYA来制作完成,所以MAYA的侧重点在于动画电影的制作。

Photoshop与Panter:配合MAX或MAYA来绘制各种模型需要用的贴图。

ZBrush:美工制作超高模用的,然后可以生成法线贴图,在MAYA或MAX中使用。

Deeppaint3D:可以直接打开3维模型文件,在上面绘制贴图。

C++:程序使用,用来实现游戏中的各种功能,调试BUG等。

Alienbrain:文件管理软件。游戏团队不是一个两个人在工作,一大群人的工作成果怎样才能有效的管理并使用?这时就需要一款文件管理软件

问题五:学习游戏编程需要学什么? 首先,不管什么游戏,最基本的要求有两个。一是至少精通一门编程语言,二是掌握游戏设计结构。

语言包括C/C++、C#、ObjC、Java等。游戏设计结构包括图形渲染、声音、物理、网络等等。

再者,看你具体要想学习哪方面的游戏编程了。

如果做Windows PC游戏需要你学习DirectX或OpenGL等图形库,如有必要还需要网络和多线程的知识。

如果做手机游戏多为2D游戏,建议你了解一下cocos2d游戏引擎(Android或i盯S,如果是WinPhone手机,顺便建议你了解一下XNA)。

如果做网页游戏,若是服务端建议你了解至少一门编写CGI的语言如PHP,还需要你知道数据库相关知识;若是前端建议你了解一下HTML5、JavaScript、Flash等等。

PS,请楼主不要看到这些内容就觉得晕,你提出的是一个很大很笼统的命题,希望你可以找准方向,专攻一路。草民提到的也不一定全面,当然更不深入,如果不对你就当没看到吧。

问题六:要学计算机游戏开发要学些什么? 20分 首先你需要掌握一门编程语言。还需要3dsMAX或maya,Deeppaint3D,Photoshop与Panter等软件的使用

问题七:学习游戏软件开发要具备什么? 游戏分为游戏策划,游戏美工,游戏程序三个部分,游戏策划就是编辑游戏剧本,需要有好文彩,游盯美工要有绘画基础,美感好,学3dmax软件,游戏程序要学习编程语言,逻辑思维能力。

问题八:想学游戏编程应该从什么入门啊。 20分 不管什么方向,编程都是基础.哪个人不是从零基础开始学的,你又不是第一个?你要先学C语言,编程入门的.我是学这个的,可以共同学习,茉987末期300址192开,注意数字,能找q.

问题九:游戏开发需要学什么 你好做手机游戏我分开说好了 首先做手机应用(手机游戏其实也是应用 的一种)首选肯定是安卓或者ios 二选 一 安卓肯定就是java了 (我比较了解干这 个的)后一种我就不熟了 那么这个方向的技能需要javaLogic 也 就是java的基本逻辑 然后是web应用 也 就是服务器技术jsp 、servlet 前端的话 页面要学习js jquery html也就是div+css 再从游戏来说游戏那么多精美的图片想 要绚丽的效果肯定少不了的那么就是fla sh 图片处理之类的技术了 如果你只是想练手做个小游戏例如贪食 蛇俄罗斯方块扫雷坦克大战之类的那么 入手的方向是 先搞懂游戏的算法简单来说如何判断蛇 吃到了食物如何让蛇前进后退俄罗斯方 块:如何这一层满了就消除如何变幻方 块模型扫雷:如何查找周围有几颗雷这 些都是游戏的算法搞懂了这些逻辑算法 就好做了 希望能帮到你谢谢 你好做手机游戏我分开说好了 首先做手机应用(手机游戏其实也是应用 的一种)首选肯定是安卓或者ios 二选 一 安卓肯定就是java了 (我比较了解干这 个的)后一种我就不熟了 那么这个方向的技能需要javaLogic 也 就是java的基本逻辑 然后是web应用 也 就是服务器技术jsp 、servlet 前端的话 页面要学习js jquery html也就是div+css 再从游戏来说游戏那么多精美的图片想 要绚丽的效果肯定少不了的那么就是fla sh 图片处理之类的技术了 如果你只是想练手做个小游戏例如贪食 蛇俄罗斯方块扫雷坦克大战之类的那么 入手的方向是 先搞懂游戏的算法简单来说如何判断蛇 吃到了食物如何让蛇前进后退俄罗斯方 块:如何这一层满了就消除如何变幻方 块模型扫雷:如何查找周围有几颗雷这 些都是游戏的算法搞懂了这些逻辑算法 就好做了 希望能帮到你谢谢 我 你好做手机游戏我分开说好了 首先做手机应用(手机游戏其实也是应用 的一种)首选肯定是安卓或者ios 二选 一 安卓肯定就是java了 (我比较了解干这 个的)后一种我就不熟了 那么这个方向的技能需要javaLogic 也 就是java的基本逻辑 然后是web应用 也 就是服务器技术jsp 、servlet 前端的话 页面要学习js jquery html也就是div+css 再从游戏来说游戏那么多精美的图片想 要绚丽的效果肯定少不了的那么就是fla sh 图片处理之类的技术了 如果你只是想练手做个小游戏例如贪食 蛇俄罗斯方块扫雷坦克大战之类的那么 入手的方向是 先搞懂游戏的算法简单来说如何判断蛇 吃到了食物如何让蛇前进后退俄罗斯方 块:如何这一层满了就消除如何变幻方 块模型扫雷:如何查找周围有几颗雷这 些都是游戏的算法搞懂了这些逻辑算法 就好做了 希望能帮到你谢谢 我 你好做手机游戏我分开说好了 首先做手机应用(手机游戏其实也是应用 的一种)首选肯定是安卓或者ios 二选 一 安卓肯定就是java了 (我比较了解干这 个的)后一种我就不熟了 那么这个方向的技能需要javaLogic 也 就是java的基本逻辑 然后是web应用 也 就是服务器技术jsp 、servlet 前端的话 页面要学习js jquery html也就是div+css 再从游戏来说游戏那么多精美的图片想 要绚丽的效果肯定少不了的那么就是fla sh 图片处理之类的技术了 如果你只是想练手做个小游戏例如贪食 蛇俄罗斯方块扫雷坦克大战之类的那么 入手的方向是 先搞懂游戏的算法简单来说如何判断蛇 吃到了食物如何让蛇前进后......

游戏编程如何入门

1、需要有一定的数学基础,代码中最重要的往往是对各种数据的处理、存储和应用,普遍都会用到数学思维;

2、选择自己的方向,游戏编程方向有很多种,如c语言编程、安卓编程、ios编程,游戏开发等;

3、选择适合的入门书,从入门到精通的教科书,选择其中一本,认真研读;

4、基本变量的使用,代码中的基础是各种各样的变量,要牢记变量的定义和用法,了解最常用的一些变量;

5、掌握基本语法,代码由一些语法组成,平铺直叙的叙述性语句、判断语句、循环语句等,这些语法和变量才构成的整体的代码;

6、熟练基础功能范例,掌握基础代码的用法,能在任何一个程序中快速加入这些代码;

7、多窗口的应用,现程序都不止一个窗口,都是包括很多功能页面、设置页面、显示页面等,熟练的掌握多窗口编程的方法,能够快速调用所需要的界面窗口。

游戏编程入门要学些什么?

学习游戏编程,主要学的内容如下:

1.游戏程序设计:C++程序设计入门;基本数据类型和输入输出;流程控制语句;数组、指针和引用、函数;程序结构和书写规;范结构体和联合体、类;继承与多态;异常处理与程序调试。

2.算法与数据结构:算法分析;数据结构;基本算法;STL的概念与使用;静态库与动态库;XML库的使用。

3.Win32程序设计:Windows程序入门;Windows消息;GDI绘图游戏工具与MFC;网络编程基础。

4.游戏数学和智能应用:游戏中的坐标系;矢量、矩阵;几何碰撞;物理模拟;人工智能与寻路算法。

5.2D游戏技术与应用:2D游戏技术概论;游戏地图系统;GUI系统;战斗系统设计;任务系统;优秀的声音引擎BASS;Cocos2D-X引擎;Box2D物理引擎。

互联网行业目前还是最热门的行业,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。

学习可以选择找资料自学或者报班学习两种方式,想要系统学习,你可以考察对比一下开设有IT专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,建议实地考察对比一下。

祝你学有所成,望采纳。

如何学习入门的游戏编程

以下一篇是以服务器为例的,希望对你有帮助。

-------------

学习游戏服务器编程基础篇

姜雪伟

前段时间,一直给开发者灌输学习3D游戏引擎技术,包括游戏底层数据结构封装,算法与游戏实战技术分享视频课程,以及编写了一些使用算法解决游戏实际问题等等方面的文章。再给读者介绍3D游戏引擎的同时,也有人问我关于如何学习游戏服务器编程技术,其实我也喜欢游戏服务器编程。在游戏开发过程中,游戏服务器开发的工作量相对客户端来说少的多,比如游戏开发后期客户端要调各种效果,更换UI等。当然网上关于开源的服务器代码也很多,在Github上能搜到很多代码,比如java的,C#的,C++的,C的,erlang,python等等,很多人为此比较迷惑不知道到底该学习那种编程语言。服务器编程开发也是随着地区不同而不同,IT行业发展的中心是北京,上海,广州,它们对于游戏服务器编程语言的需求也是不同的,北京偏向于java语言编程,上海偏向于C++语言编程,广州偏向于erlang编程,这个也是告诉开发者,如果想去不同的地方可以根据需求有针对性的学习。本篇文章就是告诉读者如何学习游戏服务器编程开发?

我本人还是喜欢C++编程,其实语言只是一方面,原理还是要清楚的,下面我谈谈学习服务器编程的一点体会。

学习游戏服务器编程也要分阶段的,先把基础学习好,编程语言是必须具备的,可以学习java,C++,C#,erlang任意一种要熟练掌握,还是以C++为例,游戏编程中经常会使用一些宏定义或者模版定义,开发者要知道宏定义的含义以及模版定义的含义。服务器开发中经常会使用STL模版中的对象,比如Map,Dictionary,List,Vector等等。网上有很多学习资料,另外在这里还是要谈到数据结构,不论在客户端开发还是在服务器端开发,数据结构都会用到,比如哈希表,二叉树,队列,堆栈等等,以上提到的是关于语言方面必须具备的。

语言基础掌握牢固的,可以直接略过这一阶段的学习,直接学习第二阶段,关于网络通信协议,比如我们TCP/IP协议一共分七层,各个层的作用是什么?服务器传输有几种常用的协议分别是TCP协议,UDP协议,还有Web使用的Http。TCP协议是可靠的协议,数据传输后必须要经过确认,UPD协议是不可靠的,无需确认,Http协议是主动的去获取,主要用于资源和Web注册的。这三种都会在服务器开发中使用到,必须要要掌握。在这里给读者展示一下各个层包含的协议:

应用层:TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 等等

传输层:TCP,UDP

网络层:IP,ICMP,OSPF,EIGRP,IGMP

数据链路层:SLIP,CSLIP,PPP,MTU

通过上面列举的点,我们知道了各个层都有哪些通信协议,当然各个层不是孤立存在的,它们之间是有关系的,在计算件原理中也有这方面的介绍,这里借用网上的图给读者展示如下:

应用层主要是我们自己程序处理的,它可以通过传输层和网络层进行消息的传输,将上图再进一步细分如下所示:

通过上图可以很清晰的看到TCP/IP协议组的组成,具体大家可以查看大学课程《计算机原理》。这些基础的通信协议掌握了后,接下来就要掌握Socket套接字了。socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用已实现进程在网络中通信。

Socket套接字是通信的最基本方式,在游戏中的服务器和客户端之间通信,以游戏登录为例,客户端先创建Socket,然后把玩家的用户和密码以及登录服务器的IP地址,端口号这些数据写入到Socket中传送到服务器端,服务器会做监听,接收到消息后,打开读取Socket信息进行处理比如验证信息的正确性,然后服务器创建Socket,把传送给客户端的消息写入到Socket,发送给客户端,客户端也会做监听操作,客户端接收到消息后,客户端打开Socket,读取消息。客户端和服务器之间的通信方式如下所示:

在TCP/IP协议中有三次握手,通过三次握手可以建立一个可靠连接,效果如下图所示:

三次握手在服务器端程序员面试中,经常被提到,掌握了TCP/IP协议后,接下来进入实兵演练阶段,也看看自己对网络这块掌握程度。以Unity为例,可以学习TNet超轻量级的网络传输,因为它没有数据库,但是可以很好的验证学习的TCP协议以及Socket套接字,自己可以在此基础上再尝试做一些消息传递,最后要学习一下服务器存储所需要的数据库MySql。

学习数据库的安装,数据库操作比如新建表,插入数据,删除数据,读去数据等,掌握数据库后,接下来就需要通过游戏服务器编程对它进行操作了,建议先学习网上的PhontonServer,它是使用C#编写的,方便开发者学习,另外它提供了Unity实现的Demo,开发者可以调试连接,从而熟悉Mysql。

以上这些知识也是作为服务器开发者必须掌握的,掌握了这些技术后,继续提升的最好方法是去公司跟着项目走,在后面章节还会给读者介绍关于如何架设真正的游戏服务器以及知名IT游戏公司的服务器架构设计以及服务器负载均衡的设计,最终会介绍如何搭建全球同服服务器。

游戏编程入门看什么书比较好?

先学下C/C++语言,《C语言程序设计》,《C++语言程序设计》,《C++Primer》,就掌握基本的C++了。还有《Visual C++游戏编程基础》《Visual C++经典游戏程序设计》《nehe教程》《OPENGL游戏编程》《3D游戏编程大师技巧》《Windows游戏编程大师技巧》。

游戏编程指利用计算机编程语言,如C编程语言、C++、java等,编写计算机、手机或游戏机上的游戏。 目前流行的游戏编程语言为C++编程语言,游戏编程接口为DirectX9.0、OpenGL和SDL(Simple DirectMedia Layer)等。现在手机上玩的游戏分为Android与IOS两种平台,分别是用eclipse/MyEclipse和xcode。当然时下也流行一些跨平台的编程引擎,例如cocos2d-x、unity 3D等。

(责任编辑:IT教学网)

更多

推荐服务器空间文章