移动开发之我见-移动平台游戏开发技术的前世今生

标签: 移动 开发 我见 | 发表时间:2012-06-09 14:54 | 作者:bill_man
出处:http://blog.csdn.net

随着智能手机平台的兴起,移动平台应用开发变成现在热门的话题,而在应用开发中,游戏的开发占有举足轻重的位置,而移动平台的开发技术,尤其是游戏的开发技术在近几年的变化非常大,从最早门槛低的J2me技术开始,到针对各个平台的开发技术,直到现在依赖各种框架和引擎的跨平台技术.......大家对于技术的革新和追求从来就没有停止,本文就从一名普通开发者的角度来总结一下移动平台游戏开发技术的前世今生。

在最早的J2me时代,J2me这项技术的学习相对简单,开发速度也比较快,而且当时几乎所有手机平台都支持java,所以“一次编码,到处运行”也就不是梦想了,但是由于机型的硬件性能所限,不同的平台在移植上也需要下一番功夫,针对不同屏幕,不同内存,往往要开发不同的版本,当时的开发者根据经验,往往把很多种机型分组处理,为每组开发一个模板,然后再针对在不同机型上的运行情况做不同的调整,形成了一种相对高效的开发模式,但是,在这个阶段由于手机设备的硬件水平普遍偏低,因此开发中的限制也比较大,这一点在之后的智能机时代得到了很大的改善........

随着苹果ios系统和iphone,ipad一系列产品的发布,随着android系统和相应的设备的诞生,移动平台的种类丰富了,从单一的手机发展到平板等多种手持设备上,而移动游戏的开发方式同样也有了改变,开发者们开始尝试针对不同的平台的开发框架来进行开发,这里用android的开发来说,笔者认为android的java开发框架是最接近之前j2me的开发框架的,因此这时,有些开发者只是在开发j2me游戏的基础上,将其移植到android平台上,这样做很简单,甚至只需要改变几个函数api的名称即可,但是,智能平台的硬件及性能的提高并没有带来游戏品质的提高,于是开发者们也探索着进行只针对单一平台的开发,利用平台特性(多点触屏,重力感应等)开发出了很多不错的游戏,虽然android平台的屏幕及分辨率也是千奇百怪,但是开发和移植由于更出色的框架变得简单起来,相对的也不需要太多的考虑内存的限制(这方面的限制相对于java时代宽裕了很多)。但是问题依然存在,对于不同的智能平台(android,ios)依然需要写不同的代码来进行开发,如何跨平台这个问题摆在了开发者面前.........

对于跨平台的探索,我想借用6月份程序员杂志上的一段文章说明,苦逼程序员自己学习oc,java,C#使自己变成“活”的跨平台工具,夜以继日的加班来在不同平台上实现跨平台,可以说是“人肉”跨平台。普通程序员使用“中立”语言(比如C++支持android和ios)或者使用一些引擎,来使自己的代码更多的复用。而文艺程序员则是编译脚本代码来发布不同版本,通过底层引擎化来实现跨平台,这种跨平台通过引擎和框架来实现,比如最新发出alpha版本的cocos2d-html5引擎,使用该引擎,游戏的代码通过javascript这种脚本语言来编写,这样可以借助html5的跨平台特性发布网页版本的跨平台游戏,也可以通过cocos2d的javascript版本发布本地版应用,实现“一次编码,到处发布”,这样“一次编码,到处发布”的跨平台引擎还有unity3d等。

这些跨平台引擎使用的原理包括opengl和html5等,首先说opengl(对于移动平台大多是opengl es),由于显示硬件都支持opengl这种图形渲染的api,所以大多数移动平台都支持opengl,因此基于opengl开发的引擎及框架可以实现跨平台也就不奇怪了,包括webgl同样是把javascript和opengl结合到一起,从而使网页上也可以实现opengl渲染。Html5同样可以实现跨平台,其中他的canvas部分同样是负责渲染部分,虽然现在不是所有浏览器都支持webgl,但是现今大部分浏览器都支持html5的canvas,笔者感觉canvas很像j2me中的画布画笔等,因此学习也没有什么难度,同时html5在未来的跨平台技术中,也会有更好的应用。

对于技术的追求和学习不会止步,从我的这篇文章可以看出,移动平台的技术在近几年中的发展的确很快,一方面,作为移动平台游戏开发者来说,我们可以实现品质更好的游戏,另一方面,作为对我们的激励,只有不断学习才能赶上技术变化的脚步。

作者:bill_man 发表于2012-6-9 14:54:19 原文链接
阅读:3 评论:0 查看评论

相关 [移动 开发 我见] 推荐:

移动开发之我见-移动平台游戏开发技术的前世今生

- - CSDN博客推荐文章
随着智能手机平台的兴起,移动平台应用开发变成现在热门的话题,而在应用开发中,游戏的开发占有举足轻重的位置,而移动平台的开发技术,尤其是游戏的开发技术在近几年的变化非常大,从最早门槛低的J2me技术开始,到针对各个平台的开发技术,直到现在依赖各种框架和引擎的跨平台技术.......大家对于技术的革新和追求从来就没有停止,本文就从一名普通开发者的角度来总结一下移动平台游戏开发技术的前世今生.

移动开发那些事

- - 微博UDC
说实话,我们这次开发移动端的项目,整个项目组的人都是第一次,最初立项的时候为是选择native app和web app还争论了一番,最后综合考虑,我们选择了web(我们选择了h5)开发. 但从这两种开发模式的特点来说,从它们诞生之日起就开始了不断的争论,孰好孰坏,本文不作探讨,只是简单罗列下本人开发遇到的问题和最终的解决方案.

移动开发之总结

- - SegmentFault 最新的文章
1、-webkit-tap-highlight-color:rgba(255,255,255,0)可以同时屏蔽ios和android下点击元素时出现的阴影. 备注:transparent的属性值在android下无效. 2、-webkit-appearance:none可以同时屏蔽输入框怪异的内阴影.

Ubuntu移动版操作系统之我见

- - 奶牛博客
Ubuntu今天发布了移动版本系统,虽然ubuntu for android在很久之前就提出来了,但是真东西还一直没见过,现在ubuntu for phone也出来了,看样子就不仅仅是个以android为基础的设计了,而是自己开始开发移动版操作系统. 对于已经较为成熟的linux内核的Android操作系统,ubuntu移动系统的出现可能并不会造成太大的影响,而且,现阶段完全看不到什么优势.

2011 移动平台开发现状

- 山河之外 - 互联网的那点事...
Visionmobile 根据“2011 开发者经济调查报告”(点击这里下载该报告)中的数据制作了一幅信息图,使我们可以一览手机各平台的开发现状. 这幅信息图关注的的手机平台有 Android,黑莓,iOS(iPhone),Java ME,Mobile web,Symbian,Windows Phone.

jQuery Mobile开发HTML5移动应用

- - HTML5研究小组
随着移动互联世界的到来,目前已发展到多种移动 操作系统割据的局面,而开发者则急需要能运用原有的开发知识和技能,快速方便地构建移动应用程序,并期望能运行在不同的 手机操作平台上,比如Android,iOS,黑莓等. 而目前,出现了一批十分优秀的支持HTML5/CSS3的移动应用开发框架,其中最为大家熟悉的是jQuery Mobile框架(http:// jquerymobile.com),它可以让熟悉jQuery框架的开发者快速开发出基于HTML5的移动应用,而且直接通过 手机的浏览器即可浏览.

移动应用开发小贴士

- - ITeye资讯频道
严格说来本文是针对iOS应用进行介绍的——在未来一段时间内iOS应用开发无疑仍会是热门,因此,不管是对开发者还是企业管理人员来说,或多或少了解一些应用开发流程十分必要——不过本文涉及的大部分内容其实并不局限于iOS应用,同时也适用Android、Windows Mobile和Blackberry等其他移动平台.

移动开发框架:Ionic Framework

- - 标点符
Ionic是 Drifty继 Codiqa(基于 Web 的 jQuery Mobile构建工具)和 Jetstrap(基于 Web 的 Twitter Bootstrap 构建工具)之后的第三个项目. 是一个用HTML, CSS 跟JS 开发的一个用于移动设备Web App 开发框架,采用Sass与AngularJS 开发.

移动终端开发必备知识

- - 博客 - 伯乐在线
移动设备的用户越来越多,每天android手机的激活量都已经超过130万台,所以我们面向移动终端的WebAPP也开始跟进了. 本文主要介绍webapp的开发与调试的相关知识和经验,以及给出几种可选的解决方案. (1) CSS pixels与device pixels. CSS pixels: 浏览器使用的抽象单位, 主要用来在网页上绘制内容.