前提你对java语言还比较熟悉
首先需要熟悉android各种组件的使用,书籍可以参考《精通android 3》是基于23讲解 部分涉及到android30 算目前主流的
IM的功能比较庞大 主要看你需要做到什么程度 先把联系人相关的解决 这个网上例子就很多了 随便搜一个即可 主要给你说一下的就是android21以下和22以上的联系人有变化 这点你需要注意
最重要的IM功能 这个就看你需要的功能要多完善了 很简单的话可以直接用socket 你要参加比赛的话大概不会是那么简单的 你可以使用xmpp协议 用开源的框架的话 就用a ack( ack的android版) 搭配的服务器你直接网上搜索 xmpp ack关键字 应该就能找到
反正要做好一个IM软件 是需要花一定精力和时间的 也不可能几句话就给你说清楚 提到一些相关知识点 让你做一个参考 祝你参加比赛顺利!
有没有邮箱
安卓手机软件开发初学者你可以参加一些地区性的程序员培训,或者是直接拜师!网上有很多免费学习的网站,你可以去找适合你的网站听课。
安卓手机软件开发怎么样?安卓开发用的语言一般是用java编写 计算机培训机构没有安卓培训 但是有java语言学习
手机软件开发/andriod安卓手机软件定制 安卓56网-安卓Android游戏门户,致力于为安卓Android手机用户提供免费最新最全的安卓Android手机游戏、安卓软件、安卓手机主题、安卓刷机Rom等资源的免费下载,卓游戏专区为安卓Android游戏下载第一门户,为广大的安卓手机用户提供最新最全的安卓游戏下载和游戏资讯、攻略评测等,安卓游戏类型涵盖:休闲益智、角色动作、竞速体育、策略经营、手机网游类等。还有大量软件,天天更新,只要你的手机配置不是太差。
安卓手机功能非常的强大、已经趋于办公和娱乐为一体了,而且现在人们生活节奏很快,坐车的时间也是可以玩会游戏的,好玩的游戏有很多。
安卓56网手机平台大型游戏很多,目前玩过的而且感觉不错的我就一一列举出来吧。
①射击q战游戏:
1近地联盟先遣队3,就是NOVA3,比起前作有很大的进步,场景渲染得更加真实,阴影效果更好,算是手机平台目前不可超越的巨作。
2暗影之q,这个是唯一一款可以媲美PC画面的手机平台射击游戏,由狂指游戏开发,Unity引擎制作。目前支持大部分安卓机型,可惜没有专业汉化。
3现代战争3:坠落国度,随之第四作将推出,这款游戏也做了一个好的开头。
4死亡扳机,容量较小,没有明显剧情。但是做出大作的质量和气派。
5EA推出的死亡空间。质量效应:渗透者
②赛车竞速游戏:
1极品飞车:最高通缉,就是极品飞车17。这个是最近才登录安卓平台的,也还没体验过,但是绝对不会令人失望。
2真实赛车2,在年底也将推出第三作了,顾名思义游戏是强调逼真和实际体验型赛车游戏。
3狂野飙车7,你自己也说过了,就不多解释了。
能称得上大作的赛车游戏还有极品飞车的前作14等,都市赛车6这些,因为太过经典就省略了。
③角色扮演:
1狂野之血,Gameloft开发的首款采用虚幻引擎开发的游戏。
2生死9毫米,个人认为做得平庸的作品,但是有明显的剧情和任务,有比较强的游戏的体验性,但是画面有点粗糙性。
3背刺,定在欧洲中世纪的情节,明显也没有太多个人看法。不怎么好通关,蛮具有考验性的。
4六发左轮,算是很不错的探险类型的游戏,可以很快投入游戏当中。不足是地图很少,而且任务有限且重复性较多。
5圣徒之城:里约热内卢,这里涉及侠盗猎车手3周年。无论如何里约热内卢会比侠盗猎车手做得出色得多,而且涉及较广,主要是色调方面侠盗猎车手更接近真实性。
6死之绝境,GLU不错的游戏,画面方面都做得不错。
7蝙蝠侠:黑骑士。
8地牢3
9马克思:佩恩 等等。
④体育类型游戏除了你说的那些还有真实足球2013等等,这里不解释了。
安卓手机软件开发好入门吗?
但是很多人都觉得自己是非计算机专业的,学能学好吗?软件培训网告诉大家,安卓手机软件开发很好入门。下面,中科英才就为大家普及一下安卓软件开发入门知识。
一、初级阶段要学习的内容
1配置环境:全部采用做新版本SDK、ADT、ECLIPSE、JDK。
二、编写或者运行教学示例
这时间主要运行的示例如HELLO WORLD,还有SDK带的例子。如果有书的话可以运行一下书上带的例子,比如《SDK开发大全》,还有SDK带的APIDemo。运行这些例子的目的在于开发者可以看到很多Android能实现的很多效果。
三、实战修改阶段
1开源代码修改程序以得到自己需要的效果。在运行了很多例子之后,开始考虑自己改写程序了,改写的过程中就会学习和研究很多控件的用法。
2 编码调试过程中需要学习Android Virtual Devices(AVD)、模拟器(Emulator)的使用、Android Debug Bridge(ADB)的使用、Dalvik Debug Monitor Service(DDMS)的使用等。
3开始学习更多的东西,如Service、Broadcast Receiver、Content Provider等。
四、还要做一些安卓平台相关的学习
如电话、短信、电池电量、屏幕、声音、震动、重力感应、WIFI等,大家可以按需学习。
五、其他的一些应用需要用到的东西的学习
如网络相关、数据库方面、位置服务、openGL等。
看了以上的步骤,相信大家都会认为“安卓软件开发好入门吗?”这个问题都不是一个问题了。
熟悉Java的程序员可以花费很少的成本就可以转到 Android 平台;大家都说Android 营收能力差,这也不尽然,主要看你是做游戏还是做应用,看你做收费应用还是放广告,这都有不同的模式和策略;以后Android手机应该就是主流,至少可以占到市场份额的5成以上,你说前景好不好。
iOs应用基于ObjectC,开发门槛也不高,加上Xcode的图形界面,使得学习曲线看上去也不是很艰难,不过你至少得要有一台Mac设备和iOs 设备,还有每年的开发者费用;App Store看起来很美好,但现在单q匹马赚翻的事情越来越少,并且仅仅是少数,推广费用也节节攀升;靠苹果出色的工业设计能力,iOs 设备最近5年还会是很坚挺,前景依然看好。
对于个人开发者,熟哪个就上哪个。如果都不熟,就上iOs。对于团队来说,Android/iOs 不是一个单选题。
如果你是新手就从最基础的学,至于说是哪些书,市面上有很多,找一本适合初级入门的书就行,看书是理论,看视频可以学到很好的编程习惯,视频网上就太多了,自己找适合入门级的人学就行,建议你安装那些软件的时候去百度文库搜索,有些可以教你怎么安装。还有就是等你过了入门这一级就多看看源码,推荐你去CSDN看看,下载一些经典的源码,至于安卓怎么赚钱这个问题,首先国内大多数安卓软件是免费的,所以赚钱途径是搭载广告赚钱,靠用户的点击量赚钱,不过这个途径真心不怎么赚钱,除非你写出像愤怒的小鸟那样优秀的软件。其次,就是你技术非常牛的时候你就可以接活自己,比如淘宝的电商要制作个安卓平台的软件来展示他的物品供人看或者购买,这样你就可以接,而且价钱也很高,这就要看你的技术怎么样了,像你推荐个网站——猪八戒网。以上所说都是针对个人开发赚钱的,若是想在公司去,那就
安卓上的应用是用什么软件开发的啊?软件很多。语言应该是c++,因为安卓源代码是基于linux的
安卓手机应用问题!型号 天语U2! 可以用安卓优化大师,查看进程,然后把某个进程拉进黑名单
设置为黑名单里的程序,锁屏自动关闭,或者多长时间自动关闭一次。
学习的先后顺序
1、首先是C++语言。
2、只是做windows方面的游戏学习,可以学习下DirectX,这个很方便在windows下做游戏开发。
3、如果想制作跨平台游戏,建议学习下opengl/opengles,这是个很强大很专业的图形接口,因为很多平台支持所以适合跨平台游戏制作使用。
4、想学习3d游戏并迅速工作,建议学习u3d引擎、ue引擎这些游戏引擎,有了以上的基础学习这些引擎也可以理解的更深入,u3d还会用到c#与js语言。
5、做2d游戏,可以使用cocos2dx等一些引擎,当然你也可以使用上面的3d引擎制作2d游戏。
6、然后就是可以深入的研究一些开源的游戏引擎,终极目标是可以自己做出一款比较棒的游戏引擎。
一、游戏程序:
类似软件工程师,需要精通至少一门以上程序语言,比如c,c++,页游方面有flashas3,php等。他们的主要工作是写程序代码,需要一定的逻辑思维能力,数学能力。
如果你想成为程序员,可以从学习一门程序语言入手。
二、游戏美术:
游戏中的画面都是由游戏美术师来制作的,具体细分为:游戏原画,3d游戏模型贴图(分3d场景与3d角色),游戏动画,游戏特效,关卡美术等。想学习游戏美术的话,一定要有审美能力,如果有深厚的绘画功底更佳。另外,还需要学习3dmax,ps,zbrush等软件,这三个软件是做游戏美术常用的。
三、游戏策划:
游戏策划主要制定游戏的规则和玩法,比如世界观,剧情,对话,任务,数值,职业设定,副本设计,帮会系统等等。想学习策划的话,需要你有较高的综合素质,沟通能力,理解能力,逻辑思维能力等。
另外需要多玩游戏,并从设计的角度去分析游戏。策划需要掌握的技能范围很广,根据具体项目和具体职责而不同。
游戏开发这个方向看起来目标很明确,但其实是个领域很广的方向,入门的时候如果得不到指点一二,很容易误入歧途,相反,如果走这条路之前能得到前人的一些指引,是可以事半功倍的。这里为大家推荐一下,以做参考。
游戏客户端学习路线
1首先,一开始可能对游戏引擎没什么概念,建议先入门一两个游戏引擎(我推荐可以先去学习Cocos2d-x和Unity3D两个引擎,市面上大多数游戏是利用这两个引擎开发的)。入门阶段要做的就是看该引擎的教程(书籍、视频、网上博客、网上教程、官方帮助文档等),并且熟练该引擎所使用的编程语言。
推荐课程:C#教程。
因为不同平台下的性能不同,支持的编程语言也不尽相同,所以针对不同平台下的流行的游戏引擎也是不同的。下面列举一些现在流行的游戏引擎。
windows或游戏主机:Unreal、寒霜、CE3
苹果IOS:unity3D、cocos2d-x、Unreal、sparrow、spritekit。
安卓:unity3D、cocos2d-x、Unreal、AndEngine、libgdx。
网页:Egret、cocos2d-js、Fancy3D、unity3D。
当然并不是不同平台的游戏开发,就毫无共通之处,学了这个到了另一个平台就无用了。不是这样的,编程的世界里你走得越远你会发现很多东西的本质都是相似的,例如你如果扎实地理解了C++的基本语法,日后再转Java语言也不是很难的事情,因为它们本质的面向对象特性还有各种编程语言特性都是相通的。
2因为游戏开发就是一门实时渲染的艺术,所以离不开图形库的学习。现在主流的图形库是Windows平台专用的DirectX11和通用平台的Opengl。这两个图形库,至少需要入门其中一个。
3然后,你就可以开始看计算机图形学的书籍了。如果你发现你的理论底子不足,这个时候就需要补一下线性代数、基本的微积分、还有3D数学的知识。
4游戏引擎中包含了各个部分,上面的渲染只是游戏引擎的一部分。还有其它诸如着色器编写、地形编写、物理引擎编写、模型和动画、人工智能体设计、网络编程等等,完成渲染部分的基本学习后,你可以选择自己感兴趣的部分进行专攻,毕竟我们实际工作大多数时候是团队开发,而不是单打独斗,每个人都应该精通自己所擅长的那部分。
5至此,独自开发一款小型游戏已经完全不在话下了。也具备了加入公司合力开发一款大型游戏的能力。
游戏服务端学习路线
1首先需要熟悉一门服务端语言,比如C/C++、PHP等,会使用一个开发框架。
2会在服务器上搭建环境,拿lamp来说linux和apache、mysql、php四者担任的角色要清楚。大多服务器会选择搭建在Linux环境下,所以也需要熟悉Linux *** 作命令。
3至少熟悉一种数据库。比如关系型数据库mysql,能熟练写出增删改的语句和不算很复杂的查询语句,再比如了解各种方式的多表查询有哪些不同等数据库技能也是需要的。
4了解网络编程及多线程等。比如>
5会使用至少一种数据格式。服务端和客户端建立了联系,数据的传输也需要一种协议格式去统一。json是目前使用率最高的格式了。json的数据格式还是简单明了易学的,主要是要了解如何使用它较好的去定义接口。
关于学习路线,我觉得对于学习者,尤其是初学者来说,非常有用,它的作用就是一幅地图,让你在浩瀚的知识丛林不至于迷失方向,甚至放弃在99%的地方。
其实和软件开发一样,游戏开发也是需要从编程语言学起,但不同的是游戏开发需要熟悉各种游戏开发工具,相对软件开发难度稍大一些,所以,如果你是零基础想学游戏开发,你需要有一个系统的学习方向和规划。
根据游戏类型的不同,所学的软件也不一样。
中小型游戏大致可分为网页游戏,flash游戏,小游戏等,基本上都是一些休闲类的傻呆萌的情节和 *** 作。
这类游戏开发相对比较简单,会Javascript、HTML、flashcs、Java就可以进行开发了,语言类主要有C/C++,汇编语言,着色器语言,脚本语言,高效的开发语言C#或Java。
现在的游戏主要分为三种:
1、PC类端游(就是电脑上面运行的游戏)
这类游戏在线人数多,游戏中要处理的数据庞大。所以对服务器性能要求非常高,一般都是采用C++做为开发语言,C++可以直接 *** 作内存数据,与 *** 作系统直接交互,减少数据之间的复制,它运行效率高,处理速度快,是很适合这里游戏开发语言。
学习这种游戏的开发,学习的有C++编程,Linux网络编程、TCP/IP通讯协议、多线程编程再加数据库。
PC类端游戏开发周期较长。大概需要三年左右的时间。
2、网页游戏(比如现在经常说的1刀999级)
因为是网页游戏,游戏的界面展示依赖于网络传输,所在在画面和特效上会次于客户端游戏很多。和端游类是差不多是一样的,有些公司之前是做端游的,他们就直接把端游的服务器架构拿来就可以使用,以完成快速开发。
需要学习内容和端游差不多。
3、手机游戏(主要区分为安卓和IOS)
手机类游戏目前是最热门的游戏,很多热播的电视剧或者之后,都会有相同情节的手游上线。
服务器主流的开发语言是C++和Java,但是C++学习难度大,开发速度慢。一般来说我们都是使用Java语言来开发服务器。
希望这些见解,能给头条的友友们带来帮助。
客户端如果是小项目,还是推荐用>不是。查询创娱开源手游联运系统公司简介得知,该公司是一家资质齐全受法律保护的合法正规公司,可放心咨询。创娱开源手游联运系统公司平台,主要负责游戏领域联合运营的开源系统,拥有自主软著,商标权,厂商游戏一手授权运营等。
游戏开发指利用计算机编程语言,如C编程语言、C++、java等,编写计算机、手机或游戏机上的游戏。目前流行的游戏开发语言为C++编程语言,目前流行的游戏开发接口为DirectX90,还有OpenGL、SDL(SimpleDirectMediaLayer)等。现在手机上玩的游戏分为Android与IOS两种不同平台,分别是用eclipse/MyEclipse和xcode。现在也流行一些跨平台的编程引擎,例如cocos2d-x、unity3D等。
接下来,再看看游戏开发的课程,游戏开发的课程除了理论知识还包括软件的 *** 作。
C++程序基础:通过学习C++语言,奠定编程基础。使用VSnet2005编译工具,高效构建代码。
算法与数据结构:通过学习算法与数据结构的基本概念,了解常用的数据结构及相关的抽象数据定义,认识计算机求解的基本思路与方法。
Win32程序入门:通过API和MFC的学习,熟悉Windows环境下程序设计基本方法。通过使用DirectX绘制2D图形。
游戏数学和智能应用:游戏中的坐标系,矢量、矩阵,几何碰撞,物理模拟,人工智能与寻路算法。
2D游戏技术与应用:2D游戏技术概论,游戏地图系统,GUI系统,战斗系统设计,任务系统优秀的声音引擎BASS,Cocos2D-X引擎,Box2D物理引擎。
游戏开发的常用软件有C++、DirectX、Box2D、Cocos2d-x、Unity,不能说哪款最好用,因为这是游戏开发过程中都要用到的软件,必须都精通。
C++是在C语言的基础上开发的一种通用编程语言,应用广泛。
DirectX,(DirecteXtension,简称DX)是由微软公司创建的多媒体编程接口。
Box2D是一个用于模拟2D刚体物体的C++引擎。zlib许可是一个自由软件授权协议,但并非copyleft。
Cocos2d-x是一个开源的移动2D游戏框架,MIT许可证下发布的。这是一个C++Cocos2d-iPhone项目的版本。
Unity是由UnityTechnologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎
首先你有编程基础是再好不过的了。
手机游戏开发的平台是JME,一般不会用到C++。当然学过C++的更好。
你学的可能是JEE,所以你一定要把JME好好学一下,重点是MIDlet,CANVAS,RecordStore。此外MIDP10和20的特性要搞清楚,如果做和网络有关的还要学习MIDP网络编程。掌握这些就基本上门什么问题了,学的不多,对于一个会C++/JEE的人来说,应该可以在1个月左右学完。
和其他语言一样,JME关键是要多练,自己试着开发几个小游戏出来是不错的练习办法,可以找出你学习上的不足点。有条件的话,做出来的游戏应该拿到真机上运行,因为在模拟器上运行和真机有区别。
如果是独立开发手游,那么还要掌握一些基本的软件,如PhotoShop,Mappy,和简单的声效处理。
另外有需求的话可以学学JTWI,特别是Mobile3DGraphics(M3G)技术,这是以后发展的趋势(由于本人对这块很薄弱,所以不能误导你,就不多说了)。
总之,你就再需要学JME和多练习,就够了。PS一般来说JME工程师比JSE和JEE的待遇要好一些。而且从事游戏行业的上班玩游戏不会被骂。如果哪天你闲着无聊和同事聊天聊的太嚣张被BOSS看见了,他第一句应该是说“有闲功夫多玩玩游戏,闲聊什么天!。”
手机游戏制作
全球手机顶尖游戏3dmotoracer制作全揭密
图文_吴刚北京数位红软件应用技术有限公司执行董事
林志强数位红nightmareii首席三维美术设计师
王科数位红motoracer3d首席三维美术设计师
3dmotoracer是数位红公司开发的一款针对nokias60设备及sonyericssonp800(uiq)的3d游戏,该游戏上市几个月来,已经成为全球最畅销的nokias60、p800游戏应用前三名之一。本文就是对3dmotoracer的开发过程进行大致的介绍。
i游戏引擎的准备
在制作游戏之前,必须有一套经过长期测试并且适用的游戏引擎。
数位红用了两年的时间总结开发出一套基于移动设备的游戏引擎:dragonbonegameengineformobilephone(龙骨),他可以支持目前大部分的高端移动设备,它不仅可以使程序开发人员及游戏项目节省了大量的时间,另外还可以让美术人员最直观的看到其设计效果。它最大的价值就是可以使开发人员的一套代码在不需要改动程序的情况下编译运行在不同设备平台上(改动不超过20%)。目前数位红及其他公司已经使用它开发游戏超过了30款。
引擎提供了非常完善的9个模块与3个增强模块,可以完全满足各类游戏开发的需要。游戏引擎可以直接嵌入到开发者的程序中,不需要额外的支持程序即可使所开发的游戏独立运行。游戏引擎简单、易用,编译后体积很小,占用内存也很小,可以节省玩家的内存空间及无线下载费用。基本引擎包含9个模块,引擎函数界面提供了类似windows的使用模式:
1、文件 *** 作模块:提供类似标准c的fopen,fclose等函数。
2、内存管理模块
3、2d图形图象模块
4、对话框模块
5、sms *** 作模块:可以在程序内部对sms的收发进行截获处理。
6、加密模块:提供识别使用设备的imei功能,用于软件的加密目的。
7、声音模块
8、资源打包及压缩模块:可是使最后发售的软件包体积变小,尽量少的占用用户的内存空间。
9、常用函数:如字符串 *** 作等函数。
10、例子:提供一套完整游戏magicline的源程序。
引擎增强模块构成
其增强部分,包含三个模块:
1、实时3d增强模块
2、声音增强模块
3、图形文件增强模块
ii正式开发的前期工作
a开发工具的准备
在很多人看来,手机游戏还是一种很新鲜时尚的玩意儿,所以,谈起手机游戏的时候难免有种莫测高深的感觉。其实,手机游戏的整个制作过程十分简单。从某种角度而言,它是一种传统的回归,同时也是新旧技术的相互融合。最常用的开发工具有vc++,jbuilder及codewarrior,在设计工具上则更是和普通的pc游戏制作软件没有大的区别。有的设计人员更愿意使用“骨灰级”的二维设计工具dp,也有人愿意用3dmax、maya建模之后再进行二维修改,当然所有这些方法都要根据游戏的最终设定来决定。我们在做java游戏的时,一般都是采用像素级的二维绘制完成,即逐个像素点的完成。但在制作pda等类似设备的游戏时,就会采用3dmax或者maya建立模型,渲染后再修整。在设计过程中,我们也与大多数游戏公司一样使用了maya、3dmax、photoshop、painter等工具。
b确定游戏的各项参数及目标设备
这要求程序人员能给出准确的限制大小,即所有允许美工占用多少空间。由于手机游戏的制作受数据量的限制很大,所以我们在设计游戏时,经常为减少1k空间大小而大伤脑筋。另外,就是需要准确了解该手机允许的色彩数、分辨率、整屏刷新率,其实这也是对游戏引擎的一种测试。
以motoracer3d为例,我们设想使其运行在nokia9210、nokia7650/3650、sonyericssonp800、pocketpc平台上。在数位红,由于我们拥有了自主开发引擎dragonbonegameengineformobilephone,游戏引擎是跨平台的,所以这一步骤我们就省去了不少时间。我们以nokia7650/3650为最初调试蓝本,原因是在这些设备中,nokia7650/3650的速度相对较慢,屏幕尺寸也相对其他设备小,因此以它为基础设备最为合适。
如下表,我们设计了motoracer3d的基本技术参数。
技术参数达成目标及要求
图像刷新速度>18/fps
文件安装完成大小<1000k
文件未安装大小<400k
占用内存峰值<700k
使用过程中游戏占用内存<700k
游戏与 *** 作系统兼容性nokia9210、nokia7650/3650、sonyericssonp800、pocketpc
游戏图形特效清单无alpha
图形文件
声音文件wav
数据自定义
目录结构/变动文件清单
使用的动态链接库未知
下面是经过初步估计的基本清单:
跑道外面的沙地草地元素
跑道的边上的指示方向的牌。(左右)
跑道地面元素
背景的天空图。
起跑线。
选择的时候得车图(4张)
比赛开始前站立的背面图(4张)。
比赛时候得车加人背面图(4套,每套9张,分别9个角度,从直立开始,每15度一张。)
撞车后的图(3桢)
比赛完毕名次画面。
速度仪表图。
数字(0至9等宽横排,分别有4套,速度数字,档位数字,排位数字)
菜单背景
topten
按钮
巡回赛排名的背景
c准备游戏策划
很多开发者认为,手机游戏的策划不重要,这个观点是严重错误的,手机游戏的美术与程序开发工作量都非常有限,其表现力也受非常大的制约,因此一款手机游戏的可完性如何在某种意义上完全取决于游戏策划本身。
在此过程中,手机游戏策划基本同传统游戏策划无异。但游戏策划必须要对游戏的 *** 作做出准确的设计,每个手机的键盘都不太相同,毕竟pc上的键盘基本都是101键。
再就是根据上面第一步给定的美工空间限制,美工要同策划共同商议,严格计算每张占用的空间,甚至是一个小图标都是不可以漏掉的。
以motoracer3d为例,我们的游戏策划做了大量有关物理力学方面的公式,使其美工在设计时更符合真实的效果。
如下表:我们将每种赛车的速度特性均体现出来。
gear1gear2gear3gear4gear5grip颜色
车1最大速度(mph)971071351561760.45绿黄
加速度(mph/秒)211816128
车2最大速度(mph)901021271481680.25紫黄
加速度(mph/秒)2320181410
车3最大速度(mph)1021121401601800.65蓝黄
加速度(mph/秒)201613107
车4最大速度(mph)941051331521720.35黄蓝
加速度(mph/秒)221917139
车5最大速度(mph)1041151451661820.75黑红
加速度(mph/秒)191714107
车6最大速度(mph)921051331521780.5红黄
加速度(mph/秒)211815118
d美术及程序开发工作
motoracer的贴图设计
建立摩托车的模型与赛手
调整运行时的动作
另外最重要的就是如果想做一款motoracer这样的游戏,首先自己就应该是摩托车的行家,我们motoracer3d的首席美术设计师王科,就是一个疯狂的摩托车发烧友,他可以为了攒钱买机车,啃一年的馒头。呵
edemo测试
测试工作以motoracer3d为例,我们开发周期6个月,因为有了引擎的缘故,使主代码开发周期缩短至3个月,为了保证这款产品具备国际水准,剩余的3个月我们基本都在找问题、鸡蛋里挑骨头。于是一款位列全球手机游戏销售前三名的motoracer3d终于出炉了。
当然,在数位红像motoracer3d的幸运产品并不多,数位红有30%的产品在demo期间就因为可完性、 *** 作感等问题最终没有面世。毕竟想要打造一个优秀的品牌是要做出很大牺牲的。
iii手机游戏制作宝典
由于手机硬件设备方面的诸多限制和性能差异,我们在游戏的开发和制作过程中无法天马行空般的进行创作,而不得不综合考虑到多方因素的平衡。下面列出的是一些关键的性能参数,这些参数都直接影响游戏的效果。
分辨率
手机的屏幕大小各有不同,从8030到320240,就好比在pc发展过程中的cga、ega乃至vga,分辨率的高低直接导致了造型的大小及表现力,这点相信每个设计人员都有所体会。另外,由于手机型号及 *** 作系统的多样性,导致了一款游戏并不能不加改动的在不同的手机上运行。对于美术设计人员而言,就要在设计之初考虑屏幕的自适应问题。比如在128×128分辨率下与200×200的分辨率下,如何可以不重新更换,但又达到同样的效果?
色彩数量
目前手机能达到的色彩数量也是限制美术人员发挥的一个重要瓶颈。从过去几年的黑白屏幕手机到现今256色、4096色及真彩色。digital-red在开发游戏时接触过非常多的手机,其中有的手机号称能显示4096色,但我们将一张4096色的色阶图进行显示,便发现有的颜色根本无法区分,更让人吃惊的是,个别手机还色偏严重。所以,设计人员是一定要根据实际手机进行绘制,在此,digital-red有过非常多的教训。
明亮度
液晶屏幕由于其独特的发光原理,并不能达到传统显示器的亮度,同时也就导致了很多色彩丰富的图案在强光下,不能显示出原有的效果,这点在手机户外显示时尤其明显。因此设计人员在设计手机游戏时一定要考虑这点,不能将色彩对比度设置的过于接近、设计一定要简洁明快,避免过小的。
显示速度
在我们接触的手机里,很多由于运算速度的问题,导致动画帧数并不能流畅,甚至达到不了10帧/秒,这对于游戏动画而言是致命的,我们一般采取局部刷帧或者尽量避免全屏幕动画来尽量达到预期效果。而且液晶屏幕本身也有显示速度问题,我们就发现过很多手机都有影像“拖尾”情况。这种情况,在实际游戏中很容易造成玩家的视觉疲劳,尤其在颠簸的车上或者是行动中,游戏时间过长,就有头晕目眩的感觉。如此,即使是一款优秀的游戏也无法留住玩家了。
电力
由于手机是液晶屏幕,大多数设备在高亮度的像素显示与一般像素显示上,两者耗电量是有所区别的,例如白色背景就要比黑色背景消耗更多的电池能量。因此,对于手机游戏而言,要尽可能节省玩家的电池,也算是对玩家的一种体贴吧。
手机游戏开发过程中的一些错误观念
很多想开发手机游戏的朋友们对于手机游戏都充满了幻想,digital-red也曾与这些朋友们一样,在脑海中有非常多的想法等待实现,但一旦真正开发游戏的时候我们就发现很不现实,这里将几个常见的错误认识与诸位分享:
移植pc游戏到手机上
pc上的游戏已经以百兆来计算其占用空间了,而很多手机游戏是以k来计算,大多数的手机游戏能安装60k的游戏就算不错了。
j2me游戏不用改动可以运行在各种手机上
j2me在移动设备上有一个midp10标准,但各个手机厂商在推出支持j2me的手机上都对其进行了扩充甚至改动,一个程序想要达到最理想的效果就一定要针对不同型号的手机。
用java开发手机游戏要比用c++好
使用java开发手机游戏的确非常方便,但在效果与性能上很难与c++代码实现效果比拟。如在symbianos/wince设备上我们还是推荐尽量使用c++来开发为好。
java开发出的应用程序占用的空间小
在开发小型应用时,java程序的确空间占用较小,但如果游戏项目过大,java游戏的小巧优势就很难体现了。
手机游戏策划与传统游戏策划无异
手机游戏的策划禁忌非常多,要求策划人员必须全面了解手机的技术性能才能做出针对性的优秀游戏。
美术可以画大图,然后再缩小
一张大图如果缩成1212大小,效果就可想而知了。
1Construct3
适合小白的一款游戏开发软件,不需要自己编程,游戏开发工具完全由GUI驱动,游戏逻辑和变量使用应用程序本身提供的设计功能实现。
2GameMakerStudio2
与Construct3一样,GameMakerStudio2允许您使用其变量和游戏逻辑的拖放界面创建整个游戏。但与Construct3不同,GameMakerStudio2通过其GameMaker语言赋予更多功能,目前它是最流行和最活跃的免费游戏开发引擎之一。
3Unity
Unity最初是一个3D引擎,但最终在2013年增加了官方的2D支持。尽管它完全能够创建2D游戏,但是你可能遇到偶然的错误或故障,因为Unity的2D系统实际上已经加入其核心3D系统。这也意味着Unity给2D游戏增加了许多不必要的麻烦,这可能会影响性能。
4戈多引擎
Godot支持创建2D和3D游戏。然而,与Unity不同,戈多的支持要好得多。引擎的2D方面从一开始就经过精心设计,这意味着更好的性能,更少的错误以及更整洁的整体工作流程。
5虚幻引擎4
在此列表中的所有工具中,UE4是最专业的。它是由Unreal特许经营背后的天才创建的,他们知道顶级引擎需要什么,以及提供下一代功能需要什么。他们确切地知道他们在做什么。
Java游戏开发要学什么?所谓的游戏开发编程语言其实有很多,基本上任何一种语言都可以作为游戏服务器的编程语言。这需要根据自己游戏的类型和要求加以选择。比如C++,Java,Erlang,go等等。目前我用过的只有C++和Java但是以Java为主。所以接下来就以自己的经验,谈谈以Java为核心的游戏服务器开发技术体系。
Java目前作为游戏服务器开发语言已经很是普遍。但是大多数是作为页游或手游的服务器,而端游戏一般选择C++,因为端游对服务器的性能要求相对比较高一些。两种语言各有利弊。C++效率高,但是掌握度难些。没有Java易于掌握。而目前对于追求快速上线率的页游和手游来说,Java成了一个不错的选择。
一、Java的技术系统
需要学习的技术:
(1)Java基础知识
(2)JavaNIO编程
(3)Netty,Mina网络框架精通一种,其它作为了解。
(4)一种缓存框架:Redis;memcache熟悉使用一个。
(5)SQL语言,用于数据库:mysql数据库
(6)springmvc主要用于>
(7)多线程编程,明白线程安全的重要性。
(8)Java并发集合的掌握。
(9)Linux常用的基本命令及shell脚本。
(10)数据库 *** 作,比如mybatis。
以Java为服务器编程语言来说,掌握Java的基本知识就不必说了,是必不可少的。可以参考《Java编程思想》,《Java核心技术》等书。根据游戏通信协议的不同,大致有两种实现方式:Socket和>
二、学习流程
当然了,学习这些东西并不是一蹴而就的。需要根据实践循环渐进,这里推荐一个学习流程:
(1)对于初学Java的人来说,如果自学能力好些,可以买些书自己练习,而现在又更的多选择参加Java培训机构,以快速的掌握Java的知识。
(2)掌握了Java知识之后,要多写代码实践。这个时候可以结合mysql学习SQL语言,掌握数据库的 *** 作。比如用springmvc写一个小网站,用mybatis实现网站数据的增,删,改,查等功能。
(3)完成上步之后,可以在服务器程序和数据库之间加一个缓存,学习redis或memcache。
(4)把程序部署到linux服务器上,练习linux的基本命令及shell脚
免责声明:内容来源于公开网络,若涉及侵权联系尽快删除!
我接触的许多程序员中,绝大多数都是知其然不知其所以然,做了AS好几年的,甚至连AVM是什么都不知道的太多了。许多程序员把快速开发出成品作为是工作的唯一目标,认为研究底层知识和周边技术是浪费时间。很多东西他们不是不能知道,而是不想知道。更有甚者,学会了 gotoAndPlay 就敢说熟悉 Flash,会敲 ls 就敢说精通Linux。前几天有朋友发给我他膜拜了一日的逆天简历,上面洋洋洒洒写着汇编、C/C++、Linux网络编程、JAVA EE、Perl、Bash、Python、Windows驱动开发、单片机开发、HTML、CSS3、JavaScript、PHP、cocos2d-x、iOS开发、安卓开发……而且所有的项目的级别都是 精通!
我看完简历和朋友说:这位前后端桌面嵌入式系统驱动网页手机开发通吃的全栈神人10年里跳槽8次,从没在一个公司干满过2年,你敢用么?
======上面废话,不看也罢。
刚巧我也是从AS3转到了cocos2d-x,说说我的经验吧。
一、cocos2d-x 部分
11 技术选型
从第三个手游开始,我实在被Adobe的ANE和国内的小平台折腾得没了脾气,决定转到cocos2d-x。在选择哪种语言绑定的时候纠结了很久,最后力排众议选了 lua:Cocos2dx+lua合适还是Cocos2dx+js合适 cocos2d-x 2x 的lua绑定做得并不好,于是我选择了 quick-cocos2d-x (后来,quick被触控收购)。
12 学习 C++
C++ Primer 中文版(第 5 版) (豆瓣) 是不错的入门书籍,建议看第五版,我写过一篇 C++Primer 第4版和第5版比较 。学习期间建议画一些思维导图帮助理解和整理思路。例如这个(不完整):
13 学习DEMO和熟悉开发平台
编译 cocos2d-x 自带的 TestCPP 项目,全部跑一遍。熟悉 cocos2d-x API 的用法。记得用doxygen 生成文档,建议每个API的功能都浏览一遍。
有的同学可能更喜欢直接看源码,那当然更好。不过文档有一个好处就是能更直观地显示继承关系。
在学习DEMO的过程中,你必须熟悉自己开发平台的IDE,例如Windows上必须熟悉 Visual Studio,而OS X上必须熟悉xcode,Linux平台上就熟悉Eclipse+CDT吧。
注意,quick-cocos2d-x 是不支持Linux开发平台的。
2014-05-17更新:quick已经使用QT重写了player部分,但依然不支持Liunx平台。
14 了解引擎的文件夹结构
基于 cocos2d-x 源码生成的文档并不怎么详细,许多功能必须看源码。但这个阶段,我不建议纠结源码太深,倒是可以纠结一下 cocos2d-x 的文件夹结构,看看各个类放在什么地方,找一找常见的哪些宏和常量以及枚举定义在什么地方,这花不了多少时间,但能让你对cocos2d-x有更深刻的了解,同时给你很强的成就感。这种成就感冲淡了你面对大量源码时候的无力感,让你能够继续前行。
下面是我的分析:
15 重复上面的第3步:再次学习DEMO
这时候看DEMO可能会轻松不少,但是你会有更多的问题去纠结。例如多分辨率支持?例如坐标系统?例如绘图功能?例如层级管理系统?例如事件传递系统?等等等等……这时候可以去Google(注意不要用百毒和其他搜索引擎)找文档看了。我推荐一些我看过的不错的文档和博客:
Cocos2d-x官方中文文档 v2x
Cocos2D | iOS Development Tips & Tricks by BiOM
子龙山人 - 博客园
红孩儿的游戏编程之路
Ray Wenderlich
Cocos2d-x | Cross Platform Open Source 2D Game Engine
许多博客都是极好的。红孩儿(后来加入了触控)写了许多源码分析,每一句源码都加了注释。虽然我不太认同他这种吃力不讨好的方法,但对于新手来说确实是有很大的帮助。
另外在 Stack Overflow 你能找到绝大部分问题的答案。当然,许多问题是针对 cocos2d 而非 cocos2d-x 的,不过用法相同,照看不误。许多优秀的文章都是基于 cocos2d 的,所以,不要介意,可以先花半天时间熟悉 OC 的语法,能看懂即可。
暂时不要买中文书。我曾经花3天时间看完了 《Cocos2D-X游戏开发技术精解》 和 《cocos2d-x手机游戏开发–跨iOS、Android和沃Phone平台》,发现作者其实就是来赚稿费的。
忘了广告了,我的博客(cocos2d-x | zrong's Blog)也有一些cocos2d-x内容,欢迎来喷。
16 熟悉工具集
现在你应该对周边工具感兴趣了。例如帧动画使用什么制作?BMFont使用什么制作?骨骼动画呢?plist文件怎么编辑?碎图用什么工具拼合?有些项目上,你有许多选择,也可能没得选。去Google吧,如果遇到选择上的问题,欢迎找我讨论。
二、 quick-cocos2d-x 部分
21 现在就到lua时间了
请认真读完 《Lua程序设计(第2版) 》 第一、二、三部分。第四部分可暂时不读。
12 熟悉 quick-cocos2d-x 的文件夹结构
相信有了上面 cocos2d-x 的基础,这个应该不难理解。
13 跑完 quick-cocos2d-x 自带的所有sample
在这期间,熟悉 framework 中的所有封装。可以参考 quick网站 和 quick wiki 。
14 学习导出API给Lua使用
导出 C/C++ API 给 Lua 使用
三、学习 OpenGL ES
熟悉Lua部分之后,作为一个有志于成为程序员的码农,依然要回到C/C++来,这里才是 cocos2d-x 的本质。
cocos2d-x 使用 OpenGL ES 进行渲染的,如果要对 cocos2d-x 的渲染层进行任何形式的扩展,你完全避不开 OpenGL ES。
既然逃不开,那就对TA说,请张开双腿,我要上。
31 阅读 OpenGL ES 20 Programming Guide
下面是这本书的官网,目前已经出了 OpenGL ES 30 版本,cocos2d-x 使用的是20。
这本书写得浅显易懂,非常适合新手。有位网友花3个月时间翻译了中文版,但还是建议你不要看了。
这里是 OpenGL ES 的 官方文档 和 API中文翻译 。
当然,你也可以买那本著名的 OpenGL 红宝书 《OpenGL编程指南(原书第7版)》 来看,不过 OpenGL ES 相对与 OpenGL 来说还是有一些不同的,你要知道如何区分这些不同。
32 尝试理解 cocos2d-x 的渲染部分架构
相关的类我就不列出了,我正在酝酿一个这方面的系列文章准备发到博客上。如果写完了,我会在这里更新。
33 自己写一些滤镜、绘图功能的扩展
例如这个: cocos2d-x-filters
四、回归项目
到了这里,你可以开始你的项目了。虽然源码还没有读完,但相信整个架构都能理解了。在做项目的过程中,再去一点点读源码是比较快捷和我能够接受的方法,否则就太枯燥了。
你可以还需要选择一下cocos2d-x相关的工具。你可能听说过 CCB(cocosBuilder)和CCS(cocoStudio),尝试了解她们,再决定是否使用她们。
你已经有了AS3的基础,这样许多前端的概念和经验已经很丰富了。这些经验在cocos2d-x中同样适用。但是要注意的是,cocos2d-x不是AS3,不要试图用AS3的方法去使用cocos2d-x。
有位码农在从C#转到AS3的时候向我抱怨:为什么Flash Builder没有Visual Studio的这个功能那个功能?
然后这位码农在从AS3转到Sublime Text(用于Lua编辑)的时候向我抱怨,为什么Sublime Text没有Flash Builder的这个功能那个功能?
上面是个笑话。
同时,为了解决一些cocos2d-x没有提供的功能,你必须去学习相关的知识。例如这个:在 cocos2d-x 中使用 libcurl 实现上传文件功能(附quick-cocos2d-x封装)。不过你现在已经有了基础,学习这些不是难事。
在有时间的时候,可认真读一下上面提到的《Lua程序设计(第2版) 》第四部分,了解Lua和C语言通信的方式,顺便看看cocos2d-x里面是怎么实现的。
另外,一些你需要的引擎中没有的功能,也可以顺手实现了开源出来(例如这个:一个LuaSocket封装),说不定你需要的东西正好是别人也需要的。
五、熟悉发布平台
既然是做手游,Android和iOS平台是逃不掉了。
你要熟悉Android和iOS平台的特点,熟悉JAVA在Android上的应用,熟悉Objective-C在iOS上的应用,熟悉Eclipse ADT和XCode(上面应该已经熟悉过了)。
你还要熟悉Google Play和AppStore的发布流程以及方针、政策,内购的接入、SDK的嵌入。
你要学习和各个接入平台的程序员、商务、前台小妹打交道(因为经常会找不到你要找的真正的负责该SDK的技术人员),你要能忍受国内小平台糟糕的文档、代码规范和逆天的编程方法。
终、没有终点
上面说的并不完整,应该遗漏了不少东西,但我只能说这么多了。因为我的经验也止于此。
祝你成功!
转载仅供参考,版权属于原作者
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)