首页 > 游戏心得 >  > 

手游如何自己开发端游_手游如何自己开发端游游戏

手游开发者自创游戏开发的经验分享

在过去三个月中,在致力于开发一款名为《Lunar Lander 3D》的小游戏。着手这个项目的主要原因是希望掌握 创造游戏 所需了解的知识。除此之外,还希望借此转移自己在课业上的压力。虽然这款游戏很小很简单,其开发过程却让我收获了大量有用的知识。将在本文列出在开发游戏过程中学到的一些重要知识。

手游如何自己开发端游_手游如何自己开发端游游戏手游如何自己开发端游_手游如何自己开发端游游戏


手游如何自己开发端游_手游如何自己开发端游游戏


手游如何自己开发端游_手游如何自己开发端游游戏


手游如何自己开发端游_手游如何自己开发端游游戏


在进入正题之前,我想先说明一下,我并不是什么专业人士。我只是一个常坐在电脑前的呆子,本文内容面向想自己试着创造一款游戏的业余程序员和爱好者。所以本文的重点是让你如何完成一款游戏,而非制作一款技术华丽的半成品游戏。

你的游戏理念并不罕见

如果你想完成一款游戏,你就必须认识到这一点。无论你有多看重自己以及自己的想法,你都要勇于抛弃其中的多数想法。当我开始制作自己的游戏时,满脑子都是自己想用的理念。我想在游戏世界中加入移动的平台的障碍,复杂的摄像系统以及一系列其他元素。但我知道如果我想完成游戏,就得更改自己的多数理念。要记住当你是孤军奋战时,你就无法搞定一个专业团队需要用一年以上时间才能完成的项目。虽然一年以上的时间对专业团队来说并非很长的时间,但却业余爱好者来说却是个大难题。要根据自己的想法合理安排开发时间,例如将其控制在6个月以内。

游戏不要从头做起

如果你并没有什么编码基础,那就无法一开始就编写出一款游戏。这听起来难以让人接受,但如果你确实没有一系列持续使用的代码,你可能就无法持续长时间地编程。如果你没有那么长久的编程经验,那么就不能幻想开发一款游戏。我开始制作自己的游戏时,已经有了一个很大的代码库。我针对一般窗口创造、输入管理、粒子效果、运算以及各类用途的代码。有了这些现成的代码,我就能够快速展开工作,制作与游戏相关的内容。除此之外,我还不需要去测试这些代码,因为我之前编写的时候就已经测试过了。你在开始创造自己的游戏之前,不需要逐个编写每一节代码。只要花点时间先做一点基础工作即可。如果你觉得自己还是得创建一个代码库,那就先编写小型用来测试一下。我处理粒子效果、输入管理和控制执行代码时就是这么做的。这可能不像制作游戏一样令人兴奋,但对你却有长期的帮助。

游戏需要借鉴想法

我要再次强调这个环节的重要性。当你开始编写一款游戏时,不要害怕使用他人的理念,库或工具。可以尽量借鉴,因为这可以让你的工作更轻松。我在制作自己的游戏时,借鉴了Conor Stoke的轴线对齐边界框树,Paul Nettle的碰撞检测文件,id Software的Q3Radiant关卡编辑器。为什么我要用其他人的想法和工具来解决自己本可以完成的问题呢?原因就在于,这样更简单--我使用这些不同的资源是因为节省时间。使用现成的方法进行碰撞检测,这样我就不需要将时间浪费在测试自己的碰撞系统上了。我根据自己的需求调整了id Software的地图编辑器,就不需要再制作自己的编辑器了。除此之外,id地图编辑器非常适合我,这又为我节省了不少功夫。不要执拗于自己的游戏一定要有定制工具和解决方案。如果你够精明,就会知道何时要采用新理念,何时可以使用现成的东西。

避免使用3D地形引擎

如果是为了创造游戏而制作引擎,那就很可能被卡在半途。无论你多努力地尝试,总会发现自己无所进展。根据我制作游戏的经验,你自己编写游戏时并不需要用到引擎。要记住,你是一个人而不是一家公司在编写游戏。你不需要一个反复重用的引擎。编写引擎的一个理由就是代码重用,但没有引擎你也照样可以做到这一点。只要设计合理,你就能够将自己其他项目的元素重用到游戏上。例如,我编写的游戏所用的新代码都不是特定的游戏代码,我可以将其重用于其他项目。编写引擎以获得引擎本身的知识及其背后的设计过程当然可以,像如果你是要制作一款游戏那就要避免这种情况了。

不要在游戏美术上画蛇添足

你制作自己的游戏时,不要添加一些并不会让游戏更棒的图像特点。不要使用GeForce20那种很棒的扩展功能,以及其他的逐象素、凹凸贴图、纹理动画、逐象素深度阴影等元素,因为你根本就不需要。如果你将自己的游戏定义为靠图像来撑场面的那种,那你可能并不了解游戏。你制作的只是一个技术演示样本。我在自己的游戏中使用的复杂的图像功能就是多重纹理,但如果要游戏正常运行也并不需要这种功能。我知道自己并非id Software成员,也并不需要很高端的硬件来支持我这款简单的游戏。如果你保持简单性,不但可以扩大游戏受众,还能够将自己的精力集中于更重要的环节,例如游戏。

怎么自己写手游

自己编程做游戏方法如下:

1、基础语言阶段:常用的编程语言有,C,C++,JAVA,其中广泛被使用的就是C++,C++语言是一切游戏程序的基础,换而言之,一个的游戏程序员,必须非常熟练掌握并应用C++。

2、数据结构:在掌握C++之后,需要进行数据结构的学习,形象的讲,就是那么一大堆数据,如何去有序的排列其结构。通过对数据结构的学习,便能够开始阅读他人编写的代码,尝试开发简单的程序,可以实现一些编程者自己的构想,是每个程序员必须掌握的技巧。

3、“库”的学习及应用:常用的有MFC(微软公司类库),GUI(图形界面库),当然“库”的知识及功能非常庞大,通常来说,熟练掌握一部分经常涉及的知识即可。4、游戏程序对于硬件的纵。比如,内存,CPU,显卡,这将会涉及到一些数学知识,比如立体几何,线性代数等,但是也不用惊慌,并不是非常困难。通过对硬件的熟练纵,才能将游戏的画面,流畅度等等充分给予表达。

5、对于相关知识的学习。包括物理,脚本,美术等等。不需要深入了解,但相关知识的丰富对于将来做游戏程序会有直接帮助。

6、对于游戏引擎的熟悉及使用。游戏引擎一般包括渲染器,内存管理器,组织管理几部分。对游戏的画面做出渲染,高效使用内存以及如何控制动画播放等功能。熟悉引擎的使用,也将对于游戏程序员有直观的帮助。

做游戏开发需要学什么?

如果是打算学习2D手游开发,那么首先需要学习C++,然后,还要了解Cocos2dx的使用。3D游戏用的比较多的开发工具是unity3d引擎。unity3d开发用的是C#(jascript也用,但用的比较少),所以先要学会C#。

游戏开发主要分为2D游戏和3D游戏,2D游戏通常是为手机开发的,一般使用的开发工具是Cocos2dx,使用的开发语言是C++。

3D游戏一般使用的游戏开发工具是Unity3d,使用的开发语言是c#或者jascript。所以,想要开发哪种游戏,就必须知道需要用到哪些开发知识。

扩展资料:游戏制作一般主要分为两大块,即程序开发、美术设计。程序开发主要包括端开发、客户端开发。而美术设计包括场景、角色、次时代、、动画等部分,要完成一个的游戏作品,每一部分都需有专业人才负责。

对于大型的游戏,一般需要几十个人的团队制作几年,而小游戏则可能只需一个人制作几天。

一般的大型游戏制作都会由游戏开发公司来完成,小型的游戏则有可能由业余团队或者个人完成,如RPG制作此类软件就可以让不懂技术的人做出电脑游戏。

图形引擎;声音引擎;物理引擎;游戏引擎;人工智能或游戏逻辑;游戏GUI界面(菜单);游戏开发工具;支持局域网对战的网络引擎开发;支持互联网对战的网络引擎开发。

对于游戏开发人员来说,在开发游戏时候,选择一个好的游戏也是很重要的。游戏开发使用的技术取决于游戏的类型,不同的游戏类型,需要的游戏环境不一样,所使用的技术也不一样。但是在本质上都是一样的,都是面对数据,处理数据。

关于游戏语言

中小型游戏大致可分为网页游戏,flash游戏,小游戏等,基本上都是一些休闲类的傻呆萌的情节和作,这类游戏开发相对比较简单,会Jascript、HTML、flashcs、Ja就可以进行开发了,语言类主要有C/C++,汇编语言,着色器语言,脚本语言,高效的开发语言C#或Ja。

所以,任何一个大型游戏都不可能只用一种语言去开发。

做游戏开发需要学很多,如游戏材质基础、游戏道具制作等等,去翼狐学习,该网站站内课程数量多,60+款软件 10000+高质量原创课程+配套学习用工程文件。

看你要去哪个方向了,策划、程序、美术,每个方向又有细分。

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

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

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

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

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

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

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

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

做游戏开发要学什么?如果你想日后在这个行业里成为真正的高手,那就真的需要去下一番苦心,不管你大学里数学学得好不好,你挂了多少门,一定要学好3D数学,这是制作3D游戏的基础,当然Unity为你封装好了大量的三维变换,但知其然,更要知其所以然。

我知道如果你的数学不是很好,这会很痛苦。但请坚信,这真的很重要,一本入门的书《3D数学基础:图形与游戏开发》,很惭愧我至今也没都看完。

再就是图形渲染方面,你要去了解计算机整个将3D物体渲染到2D屏幕的流程,我很后悔大学时候图形学的课基本就没听什么东西,这方面是非常重要的,这是以后写出高水平shader和处理其他图形渲染需求的基本要求。

对于一些竞速来游戏或者是模拟类的游戏,你必须去模拟一些现实生活中的真实效果,而除了游戏场景中的光效渲染影响,再有就是物理系统的真实性,比如如果你做一款飞行模拟你就要去了解飞机真实在天空中所受到的各种力,以及飞机内部的基本驱动原理等等。这样我们才能做出越真实的效果。

1、不受专业限制:Unity-3D游戏引擎简单清晰、兼容性强,跨平台使用、简单易学、用简单、直观的开发语言,创造不可思议的高薪价值,这是其他开发语言不具备的,同时也是对跨专业人士吸引力之一,本岗位适合常玩游戏且对游戏有较强的兴趣,既想玩游戏又想凭借玩游戏开发游戏获得稳定高收入的人员。

2、人才需要量大:实训周期短,简单易学,用人缺口大,特别是和VR目前处于蓬勃发展阶段,本岗位人员供不应求。

3、就业待遇高:入职起薪年薪6万以上,1年后12万年薪起且非常稳定。

4、行业前景好:Unity游戏引擎的功能无比强大,70%的都用此引擎开发,随着VR的兴起从事此专业工作,1-2年后一定可以成为产品或产品线总监!

游戏开发三大类:程序、美术、策划。每一类都有自己的专业知识。

如果要学游戏开发,我倒是建议可以先学一下游戏引擎。不管你以后是想做哪一类开发人才,都是离不开引擎的。熟悉引擎会让你对游戏项目开发有全局的认识。在这个基础之上,你可以根据自身的兴趣和能力决定做哪一类人才。

目前国内使用比较广泛的就是unity了,所以你可以考虑先了解一下unity。网上资料很多,你可以随便找找,比如paws3d平台的就不错

直接回答题主问题:

做游戏开发所需要学的内容主要还是集中在编程这一块的。

ja c++ php Python等任意之一

以及对于网络安全的学习。

只有先把基础的编程语言搞懂了,后续的框架和引擎以及渲染等才能得心应手地用起来。

游戏开发需要学什么

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

1、基础公共课:游戏概述 Photoshop平面软件及像素美术 3dax软件基础及效果图制作 游戏程序设计基础及游戏制作原理 游戏策划、制作、测试及运营实践 游戏行业规划及职业素质。

2、专业技能课:手机2D游戏开发 2D游戏开发技术实战 C++语言及算法基础 WIN32程序开发及MFC基础 2D游戏开发实践 行业规划及职业素质。2D网络游戏开发主要学习内容有网络游戏程序设计、网络游戏算法设计、2D网络游戏平台设计以及商业实战项目训练,包含C++、数据结构、算法基础、Windows API使用、MFC原理及其应用、2D图形渲染技术、界面设计与应用C++程序设计、数据结构与算法、计算机图形学、DirectX程序设计、OpenGL程序设计、JAVA游戏程序设计、游戏体系结构、游戏建模技术、游戏引擎技术、角色设计、游戏企划、网络游戏开发等。

3、游戏开发就业前景如何:游戏制作就业前景非常好,这个行业发展前景都是很乐观的,对于人才的需求量都是很高的,很多游戏制作公司都需要绘画和设计人员,来设计游戏中的动漫人物等,同时对于道具和场景的需求都是很高的,所以说游戏制作就业前景还是很不错的,在这个行业中都可以帮助大家有更好的发展空间。

4、游戏开发就业方向: Direct 3D程序开发基础 3D游戏开发技术实战 游戏引擎的修改与使用网络通讯、数据库及游戏、行业规划及职业素质、游戏综合项目实战训练、基地顶岗项目实训。

极简回答...

基础:

C++、C、C#

3D游戏:

openGL、Unity、虚幻引擎(不初学者)

2D游戏:

这个...你学玩C、C++其实就可以写了...

但...

更用游戏引擎

版权声明:本文内容由互联网用户自发贡献。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 836084111@qq.com,本站将立刻删除。