很显然你首先需要会一门编程语言。数据结构可以在不同的语言下实现,你可以看常用的数据结构教材,有的基于C,有的基于JAVA,所以在学习数据结构与算法之前,先学会一门语言是很有必要的事情。
因为数据结构书中很多内容用到的都是C语言伪代码,如果不懂C语言的话应该是看不懂的。多了解一下点C语言、数据类型、循环分支、结构体、指针等基本知识。一般来说,学习完c语言之后,效率会比较高点,另外数学好的话对理解算法是有好处的,动态规划啊,决策树啊之类的,具体的知识可以去小码哥李明杰了解。
因为数据结构是需要编程实现的。在内容上,数据结构很大一部分是独立的,但也有一部分与其它课程有关,比如离散数学,线性代数等,不过也没多大影响,书上都带有详细介绍。数据结构理论性很强,需要多动手写代码,理解好原理,而且会编程实现,这两方面都很重要。
1、游戏开发是一个过程,为了激发玩家玩游戏热情,通过遵循设计制作规则,来设计人物、场景等游戏要素。
2、主要流程包括原画创作、建模、材质、灯光及渲染、骨骼设定、动画、特效等部分。涉及范畴包括:游戏规则及玩法、视觉艺术、编程、产品化、声效、编剧、游戏角色、道具、场景、界面等等元素。
3、游戏程序开发归根到底就是软件工程,是游戏制造环节中不行短少的重要部分。游戏程序开发是技术含量最高的,游戏程序员的薪资也相对其他职业高许多,目前游戏职业中游戏程度人才的缺口非常大,供不应求。
二、游戏开发需要具备的知识
1、游戏本质分析,游戏产业概论、游戏开发流程及职业划分、玩家需求分析、构思创意及文档编写要求、游戏故事设计、游戏元素、规则、任务、系统、关卡设计、游戏平衡设定、界面与操作功能。
2、透视基础、构图基础、结构素描、明暗素描、艺用人体解剖基础、人物速写、Adobe软件应用、造型基础、游戏美术风格技法、色彩基础、游戏色彩练习、肖像绘制、质感表现。
3、3DMAX软件基础、游戏材质基础、游戏道具制作、作品渲染。
三、游戏场景制作技巧、场景材质制作、卡通角色制作、写实角色制作、怪物制作。简单分类的话就是:
1、扎实的算法知识。主要有:树或图的搜索算法、A*算法、碰撞检测算法、BSP树、人工智能。
2、相关图形处理知识。比如:DirectX编程、OpenGL编程、图形学的相关知识(三维图形的形体、纹理、贴图、照明,还有三维对象的消隐算法比如油画算法,Z缓存)和动画处理知识。如果想深入还要学会几种三维引擎比如OGRE。
3、扎实的程序语言功底,主要代表为VC、DELPHI和JAVA。其中VC使用最广,现在比较大的游戏也由此开发;DELPHI功能也很强,很多网游:比如网金、传奇都用到了DELPHI;JAVA用于开发手机游戏。
补充:
一、游戏开发需要学哪些
1、基础公共课:游戏概述Photoshop平面软件及像素美术3dsmax软件基础及效果图制作游戏程序设计基础及游戏制作原理游戏策划、制作、测试及运营实践游戏行业规划及职业素质。
2、专业技能课:手机2D游戏开发2D游戏开发技术实战C语言及算法基础WIN32程序开发及MFC基础2D游戏开发实践行业规划及职业素质。2D网络游戏开发主要学习内容有网络游戏程序设计、网络游戏算法设计、2D网络游戏平台设计以及商业实战项目训练,包含C、数据结构、算法基础、WindowsAPI使用、MFC原理及其应用、2D图形渲染技术、界面设计与应用。
3、游戏程序方向:Direct3D程序开发基础3D游戏开发技术实战游戏引擎的修改与使用网络通讯、数据库及游戏服务器、行业规划及职业素质、游戏综合项目实战训练、基地顶岗项目实训。
二、游戏开发常用软件
1、3dsMAX:大多数游戏开发公司美工使用,效率较高,可以独立制作游戏中所有美术相关资源。
2、Delphi:直接编译生成可执行代码,编译速度快。由于Delphi编译器采用了条件编译和选择链接技术,使用它生成的执行文件更加精炼,运行速度更快。在处理速度和存取服务器方面,Delphi的性能远远高于其他同类产品。
3、Photoshop:PHOTOSHOP是一个很好的图像编辑软件,PHOTOSHOP的应用领域很广泛,在图像、图形、文字、视频、出版各方面都有涉及。
4、MAYA:跟3dsMAX差不多的软件,因个人喜好而定,MAYA在制作动作的方面较MAX稍差,不过在很多方面这两款软件都是可以兼容的。
5、其他:在个人计算机上,可以用目前流性的软件开发工具,比如:C,C,VC,Delphi,CBuilder等。由于Windows操作系统的普及和其强大的多媒体功能,越来越多的游戏支持Windows操作系统。
我们学校是这样,高数和离散数学一起学,学完离散数学和一门编程语言后再学数据结构。
如果你真想从事这个游戏编程,我的建议是
有C基础的话可以直接看数据结构,它是最重要的一门基础课。有些东西你可能上课时不太理解,编程时你可能会觉得有些问题,这时候翻出书来看看最有效(个人体会)。
高数在实际编程中不咋用到(虽然这是计算机系的必修课)
离散数学是数据结构的先修课程,不过帮助不大。
计算机图形学、计算机网络、DirectX/OpenGL不可不学
上一篇:数火柴棒游戏知识点
下一篇:数据结构知识游戏举例讲解