请问一下做安卓腾讯手游模拟器安卓版需要会哪些知识呢?

想自学安卓手机游戏的制作 我应该学习什么知识 - 报名在线
问题:想自学安卓手机游戏的制作 我应该学习什么知识
手机游戏制作学习 发布时间: 15:58:12 八四问吧会员提供专业回答
问题:想自学安卓手机游戏的制作 我应该学习什么知识
分类:八四问吧
问题具体描述:
本人没有任何游戏开发的经验和知识,想学这个只是个人兴趣,所以请诸位帮忙介绍下,尽量详细点,还有哪些是重点,提示下。假如一个人制作的话还要学习哪些编程以外的东西呢?
时间: 15:58:12来自热心网友陈老师的专业回答:
貌似很难的 我们学校的很多计算机专业的 都没法做成 完整的手机软件的~~要学好多东西的
问答说明:本问题《想自学安卓手机游戏的制作 我应该学习什么知识》的答案是报名在线网热心网友免费提供,请谨慎采纳,本答案不代表本网观点,如果本答案侵犯了您的权益,请联系本网删除该问答帖《想自学安卓手机游戏的制作 我应该学习什么知识》。
问题已解决手机游戏制作学习 八四问吧
问题已解决手机游戏制作学习 八四问吧
问题已解决手机游戏制作学习 八四问吧
问题已解决手机游戏制作学习 八四问吧
问题已解决手机游戏制作学习 八四问吧
全国各城市手机游戏制作学习信息导航:编程开发子分类经验20781 米
威望639 米
在线时间824 小时
版本V7.1.5.0.KXGCNCK
机型MOTO XT910
签到次数21
MIUI版本V7.1.5.0.KXGCNCK
来自网页版
如果你对开发Android平台游戏感兴趣,那么你需要了解很多东西。我开发过《Light Racer》、《Light Racer 3D》、《Antigen》、《Deadly Chambers》和《Wixel》,这些游戏在Android Market上都可以找到。在开发过程中,我学到了许多有关编写Android游戏的知识,我愿意同每个人分享。如果你有游戏开发经验,那么转向手机平台不会很困难。你只需要学习框架和API即可。如果你是游戏开发新手,我在这篇文章中列举了许多起步必须了解的知识。它们可以运用到许多不同类型的游戏中,包括动作、战略、模拟和解谜。Android是个基于Java的环境。这对新开发者来说是个好消息,相对比C++来说,Java语言因其较为简单而广泛被人采用,成为目前手机开发的常 用语言,也是目前我自己使用的语言。Google在编写API和提供范例方面的工作做得很好。该公司提供了一个展示API几乎所有功能的范例,称为 “API Demos”。如果你熟悉Java而且已经使用过Eclipse,那么让你的首款应用成功运转应该是相当简单的事情。如果你此前从未接触过代码编写,那么 你需要先掌握很多知识才能继续前进,但是也不要因此灰心。如果你有些许开发经验,想要以C++开发跨平台游戏或表现出色的Android游戏,可以查看 BatteryTech,这是个我编写的目前用于游戏开发的平台。
161831dtgg5q2gta905zz2.jpg.png (126.22 KB, 下载次数: 0)
获得SDK开发Android平台的首个步骤是获得Android SDK(游戏邦注:即软件开发工具包)。SDK包含核心库、模拟器、工具和代码范例。我强烈推荐使用Eclipse和Android Eclipse插件。如果你只面向Android平台,那么专门供Java Developers使用的Eclipse IDE是个很好的工具。如果这是你的首个Java开发项目,你可以下载整个Java SE Development Kit(游戏邦注:简称“JDK”),因为它包含你需要用于应用认证和部署的工具。学习应用程序架构理解Android应用程序架构也是件非常重要的事情。如果你不学习这个方面的内容,可能会使游戏完成后问题的修改变得很困难。你需要理解应用程序、活动、意图以及它们之间的相互联系。Google在架构方面已经提供了许多有价值的信息。真正重要的是,要理解游戏为什么需要包含不止一个活动以及这对设计良好用户体验的意义。我们接下来要探讨的就是活动生命周期。学习活动生命周期活动生命周期由Android操作系统管理。你的活动将根据操作系统的指令创建、回访、暂停和摧毁。正确处理这些事件对构建有着良好行为的应用程序非常重要,这样应用才能正确地满足用户的意图。在你开始设计游戏之前,有必要先知道所有这些内容的运转方式,这会减少你将来调试和重新设计的时间。对于多数应用程序来说,使用默认设置就可以了。但是对游戏来说,你可能需要考虑打开SingleInstance功能。当处在默认设置下时,Android会在合适的时候自动创建新活动实例。对于游戏来说,你可能只想要单个游戏活动实例。这也等于提示你需要如何来管理内容状态,但是对我来说,它解决了某些资源管理问题,所以应当考虑入列。主循环是否拥有主循环取决于你编写的游戏类型。如果你的游戏与时间无关,或者如果游戏只会对用户的行为做出反应,没有用户输入视觉场景就不会发生改变,那么你或许不需要主循环。如果你编写的是动作游戏或带有动画、计时器或其他自动运转内容的游戏,那么你应当认真考虑使用主循环。游戏的主循环指以特定顺序运转子系统,通常会尽可能提升每秒主循环的次数。你的主循环需要在它自己的线程上运行。原因在于,Android有个主UI线程,如果主循环不在自己的线程上运行,那么UI线程就会受游戏影响,导致Android OS无法完成普通的更新任务。执行顺序通常是:状态、输入、AI、物理、动画、音效和视频。更新状态意味着管理状态改变,比如游戏结束、角色选择或下个关卡。通常情况下,你需要在一个状态上等待数秒钟时间,状态管理的任务应当是处理这个延迟并设置时间过后的下个状态。输入是指来自用户的任意按键、滚动或触碰。在处理物理前完成这个方面的内容是很重要的,因为输入往往会影响到物理效果,所以先处理输入会让游戏显得更为灵敏。在Android中,输入事件来自于主UI线程,所以你必须通过代码来缓冲输入,这样你的主循环才能适时将其捕获。这并不是个很困难的任务。所有需要做的就是为下次用户输入确定区域,用onKeyPressed或onTouchEvent将下次用户动作设置到该区域中。在特定游戏状态下,所有的有效输入都需要进行输入更新,让物理端处理针对该输入的响应问题。AI更新类似于用户决定接下来要“按”的按键。学习如何编写AI不是这篇文章的主题,但基本想法是,AI将像用户那样按动按键。这也将被物理更新捕捉并做出响应。物理更新可能是真正的物理,也可能不是。对于动作游戏而言,要点在于同时考虑上次更新时间、此次更新时间、用户输入和AI输入,决定游戏中所有内容的位置以及是否有碰撞发生。对于你可以看到对象抓取和滑动的游戏,物理更新还需要处理对象的互动或者让它下落到指定的位置。对于问答游戏,它还需要决定答案是否正确。或许你使用的是其他的名称,但是每款游戏的游戏引擎中都需要有处理上述内容的部分,在这篇文章中我将其称为“物理”。动画并不只是在游戏中加入gif这么简单。你需要让游戏在恰当的时候播放每帧动画。但是,它也不像听起来那么难。要保持isDancing、danceFrame和lastDanceFrameTime等状态区域允许动画更新以决定是否转向下一帧。这就是动画更新所做的所有工作。真正负责呈现动画改变的是视频更新。音效更新负责触发音效、暂停音效、改变音量和音调。通常在编写游戏时,音效更新会生成一连串字节传输给音效缓冲器,但是Android自行管理音效,所以针对游戏开发,你可以使用SoundPool或MediaPlayer。它们都有一点敏感,但是要知道,由于存在某些低层次的执行细节,小而低位速率的OGG也能产生最棒的运行表现和稳定性。视频更新要考虑游戏状态、玩家位置、分数和状况等内容,在屏幕绘制所有内容。如果使用主循环,那么你可以考虑使用SurfaceView,进行“推送”绘制。如果使用其他视图,视图本身能够调用绘制运转,这样主循环就无需负责这项工作。SurfaceView能够提供最高的每秒帧数,最适合带有动画或在屏幕上有移动物体的游戏。视频更新应该做的工作是,获取游戏状态,并及时绘制在屏幕上。除此之外,其他的自动化内容最好由其他更新任务来完成。以下是个代码范例:public void run() {
while (isRunning) {
while (isPaused && isRunning) {
sleep(100);
}
update();
}
}
private void update() {
updateState();
updateInput();
updateAI();
updatePhysics();
updateAnimations();
updateSound();
updateVideo();
}复制代码3D还是2D?在你开始开发游戏前,你需要决定是制作3D还是2D游戏。2D游戏要学习的内容较少,通常更容易获得良好的表现。3D游戏需要更多的深层次数学技能,如果不注意的话,可能会产生表现问题。如果你想要添加比方形和圆圈更加复杂的形状,那么无论选择3D或2D,都需要使用3D Studio和Maya等模型工具。Android支持使用OpenGL进行3D编程,网络上有许多很不错的OpenGL教程可供阅读。构建简单且高质量方法开发开始时,确保不要编写又大又长的方法。如果你采用我在上文中描述的主循环样式,这样得出的方法应当较为简单。你编写的每个方法都应当能够完成某项特定任务,而且不可发生错误。比如,如果你需要在游戏中洗牌,那么就应当编写名为“shuffleCards”的方法,而且这个方法就是用来完成洗牌这个动作。这是个可用于所有软件开发的编程方法,但是在游戏开发中显得特别重要。在状态化的即时系统中,调试会变得非常困难。要保持方法简单轻巧,最好是保证每个方法只有1个目标。如果你需要为场景绘制背景,那么你可能需要名为“drawBackground”的方法。这样会让你的游戏开发变得像搭建方块一般,你可以随时根据自己的需要添加新方块,同时不会让代码变得难以理解。效能是关键运行效果是所有游戏遇到的主要问题。我们的目标是让游戏的反应速度尽可能快,游戏的运行看起来尽可能流畅。Canvas.drawLine等某些方法可能执行较慢。而且,在每帧的主画布上绘制全屏位图也会耗费大量时间。要让应用实现最好的表现,平衡这些动作就成了必要之举。确保对资源进行良好的管理,使用各种技巧,实现用最少的CPU完成任务。如果表现不好,即便是最棒的游戏也显得乏味无趣。通常情况下,人们不会对反应缓慢的应用抱有好感。技巧看看SDK中的《LunarLander》范例。它使用的是SurfaceView,这对需要每秒帧数达到最高值的游戏来说是个合适的视图。如果你想要制作3D游戏,可以看下GLSurfaceView。它利用了OpenGL设备初始化,提供渲染机制。对于《LightRacer》,我需要优化游戏中所有内容绘制的方法,否则帧率会相当低。我只在视图初始化时用位图绘制单次背景。轻轨的位图会随赛车手的移动而获得更新。这两个位图每帧都会绘制在画布上。这种技术能让游戏以可玩的流畅度运行。如果可以的话,将位图大小设置为与在屏幕上绘制的意向大小相同。这样,就无需对位图进行缩放,从而节省了CPU的使用。在整个游戏中使用一致性的位图配置(游戏邦注:如RGBA8888)。这可以节省用于转换不同格式的图像库CPU。如果你决定开发3D游戏,但没有3D的相关知识,你可以先阅读一两本有关3D游戏编程的书籍,学习线性代数。最少,你必须理解点积、叉积、矢量、单位矢量、常数、矩阵和转换。我见过的阐述游戏相关数学内容的最棒书籍是《Mathematics for 3D Game Programming and Computer Graphics》。保持音效容量较小且码率较低。加载的内容越少,加载的速度就越快,游戏使用的内存也就越少。要用OGG作为音效格式,用PNG作为图像格式。当活动结束后,确保关闭所有媒体播放器并移除所有资源。这将确保垃圾收集器能够获得所有东西,在游戏的两次开启间不会出现内存泄露问题。加入Android Google小组,寻求社区的支持。社区中有许多人会帮助你解决许多问题。此外,花时间对游戏进行重复测试,确保游戏中所有内容的运转都与你的预期相同。润色游戏是开发过程中最漫长和最艰难的阶段。如果你匆匆将游戏推向市场,它的表现可能会让你失望,你或许也会觉得自己的艰辛都付之东流。你不可能让100%的用户都喜欢你的游戏,但是你至少应当努力呈现最高质量的作品。
分享到微信朋友圈
打开微信,点击底部的“发现”,使用 “扫一扫” 即可将网页分享到我的朋友圈。
已有&1&人评分
MIUI 因你更精彩!
经验32335 米
威望183 米
在线时间5990 小时
版本6.8.24
独自向天笑
机型小米手机3/4 WCDMA版
签到次数230
MIUI版本6.8.24
来自网页版
我和谁都不争,和谁争我都不屑。
经验56641 米
威望469 米
在线时间1655 小时
版本6.11.17
MiPad用户组—前排掌门
机型小米平板1
签到次数131
MIUI版本6.11.17
来自网页版
经验31525 米
威望375 米
在线时间1751 小时
版本3.9.13
超级MiPad用户组
机型小米手机2/2S
签到次数37
MIUI版本3.9.13
来自网页版
再来支持了
经验4009 米
在线时间117 小时
版本V8.0.2.0.MXGCNDG
积分 4596, 距离下一级还需 404 积分
积分 4596, 距离下一级还需 404 积分
机型小米手机4 电信4G版
签到次数100
MIUI版本V8.0.2.0.MXGCNDG
来自网页版
支持一下。。。。赞一个。、。。。
在线时间9 小时
积分 65, 距离下一级还需 135 积分
积分 65, 距离下一级还需 135 积分
机型红米手机 TD版
MIUI版本4.5.9
来自网页版
谢谢了.支持学习下
经验187 米
在线时间1 小时
积分 218, 距离下一级还需 282 积分
积分 218, 距离下一级还需 282 积分
来自网页版
不懂,帮顶
经验4250 米
在线时间131 小时
版本ICS24.0
积分 5124, 距离下一级还需 14876 积分
积分 5124, 距离下一级还需 14876 积分
机型小米手机1/1S
签到次数18
MIUI版本ICS24.0
通过手机发布
在线时间2 小时
积分 6, 距离下一级还需 44 积分
积分 6, 距离下一级还需 44 积分
机型Galaxy Note II
来自网页版
谢谢分享,回复加分
MIUI 3000万
MIUI 3000万发烧友纪念勋章
MIUI 2000万
MIUI 2000万发烧友纪念勋章
1000万用户纪念勋章
MIUI1000万用户纪念勋章
MIUI 7纪念勋章
MIUI五周年
MIUI五周年纪念勋章
MIUI三周年
MIUI三周年纪念勋章
百万壁纸评审纪念勋章
已关注微信
已关注极客秀微信
疾风测评勋章
资源疾行活动限定勋章
关注腾讯微博
已关注腾讯微博
关注新浪微博
已关注新浪微博
MIUI 100周
100周发布纪念勋章
发烧友俱乐部
发烧友俱乐部
MIUI六周年
MIUI六周年纪念勋章
小米手机2终身荣誉勋章
小米手机2终身荣誉勋章
小米手机1终身荣誉勋章
小米手机1终身荣誉勋章
社区VIP贵宾专属
小米手机元器件合体活动勋章
小米求合体勋章
小米平板首发纪念勋章
小米平板首发纪念勋章
小米桌面内测勋章
小米5发布会
参加小米5发布会直播页大转盘抽奖获得
Copyright (C) 2016 MIUI
京ICP备号 | 京公网安备34号 | 京ICP证110507号安卓初学,想开发一个简单的安卓手游练手,选什么游戏引擎呢? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
已注册用户请 &
Sponsored by
寻找中国最优秀的程序员加入我们,一起来改变这个可爱的星球
Promoted by
安卓初学,想开发一个简单的安卓手游练手,选什么游戏引擎呢?
23:49:39 +08:00 · 3021 次点击
ogengine 怎么样?看上去文档很全的样子,但是 github 上面的项目很少啊。。开源引擎太多不知道选哪个了
14 回复 &| &直到
12:02:58 +08:00
& & 23:56:53 +08:00
其实用 js 的引擎也行啦, webgl 跑 2d 很快的……呵呵
& & 01:10:52 +08:00 via iPhone
游戏不全是 cocos2d 的天下吗
& & 01:46:51 +08:00
& & 07:41:24 +08:00
不知道你是哪个等级的初学。
如果你在游戏编程方面也是初学者 建议你还是别搞这么复杂,做个微博客户端简化版足以学会很多东西。
游戏涉及到的知识还是很多的。
& & 07:45:17 +08:00 via Android
u3d 吧,相比 cocos2d 坑少一些,也容易上手
& & 08:02:22 +08:00 via Android
首先安卓是安卓,游戏是游戏,先确定好自己想做什么先~
& & 08:56:37 +08:00
这是个认知误区,安卓开发和游戏开发是两码事。
& & 09:11:26 +08:00
确实如楼上所说,游戏开发跟 android 开发完全不是一码事。
建议楼主好好了解一下情况。
& & 09:25:53 +08:00
现在的新人真厉害.......直接就上游戏了...
说到开发游戏..你搞定了,美术,音乐,还有策划了吗...
就如同上面说的...游戏跟安卓是两码事...
还有一来就上引擎是个什么鬼..
& & 09:35:55 +08:00
安卓开发和游戏开发是两码事+1
如果是原码农基础可以的,走 cocos2d 开发 2d 游戏
不然走 Unity3D
两者的逻辑差别挺大
2D 游戏相对 3D 要求的开发资源相对较松
如果纯新手被从这里入手
& & 10:02:54 +08:00
unity3d 吧,直接跨平台,支持安卓, ios , xbox 等多个平台
& & 10:05:16 +08:00
顺带推荐个开源服务端给你看,包含数据管理框架、整套服务器架构、部分逻辑功能,
& & 10:07:26 +08:00
安卓跟游戏是两个分支
如果 Java 熟的话 libgdx 是最好的选择了
& & 12:02:58 +08:00
如果真要做游戏,前期建议选择 cocos .后面要做 3d 可以选择 untiy 。
& · & 337 人在线 & 最高记录 2399 & · &
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.7.5 · 59ms · UTC 22:06 · PVG 06:06 · LAX 14:06 · JFK 17:06? Do have faith in what you're doing.}

我要回帖

更多关于 腾讯手游模拟器安卓版 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信