Himi 原创, 转载请注明! 谢谢。
原文地址:http://blog.csdn.net/xiaominghimi/article/details/6665952
今天在这里大概说下现在为什么游戏引擎都趋向与openGL进行的,这里大概说下;
当今基本所有的国外游戏都是质量很好,不管是从视觉上还是操作还是流畅度上,那么今天我们关注的是其流畅度;
首先有经验的游戏开发者,尤其是一直做2D游戏开发的童鞋门,从J2me到Android,很多做Android的都是从J2me过来的,那么对于J2me-3D开发的基本很少,原因不多说,对于Kjava的机器我也没什么再喷的,反正我是受够折磨了;
很多开发者对外国的游戏狠感慨,为什么他们做的游戏都是那么流畅,不丢帧,其实狠明确的跟大家说,他们大部分游戏都是基于openGL进行的开发,不管是3D还是2D;下面详细说下原因:
对于刚接触Android游戏开发的来说,首先印在心理的就是利用SurfaceView画布进行游戏开发(除3D游戏外),那么开发过程中,越来越多的开发者都开始对Android的运行内存产生怀疑(Android运行内存相对于Kjava的机器那可是大了很多),因为都开始又再次关注内存的使用;动不动就卡,就OOM,我去~狠经典的Error~
一般2D游戏开发使用SurfaceView足够,因为它也是google专们扩展用于2D游戏开发的画布;但是很早前我做过测试:
使用普通的游戏画布(Android中2D专用游戏画布)中进行绘制图片,然后在GLSurfaceView(Android中3D游戏专用画布)中渲染图片的对比中发现GLSurfaceView的效率高于SurfaceView的30倍~呵呵,高了30倍的效率~这是什么概念,可想而知;GLSurfaceView的效率主要是因为机器硬件的GPU加速,现在flash技术也有了GPU加速技术;
下面总结一下:
一般2D游戏使用SurfaceView足够,毕竟我之前公司做的网游就是用SurfaceView做的,狠流畅,所以不要认为什么都要使用GLSurfaceView(openGL),而且 GLSurfaceView的弊端在于适配能力差,因为很多机型中是没有GPU加速的;关于GPU童鞋门不知道的自己百度,这里不多说了;
不管是做什么游戏,对于开发者而言,流畅是最重要的;再好的游戏几帧左右,谁都哭;
不管使用SurfaceView还是GLSurfaceView,只要内存优化做的好,都基本无差(排除2D\3D游戏差异);希望不管当前你是否看了此文章想将当前的项目换个GLSurfaceView框架还是如何如何,我都希望你静下心来,好好的优化你的内存先,不要总把问题推到SDK和硬件上,毕竟google提供了那就肯定不会那么不效率的,否则人家也不会闲着没事给你整那么多事情来;
对于初学者千万不要顾虑这些,对你来说,游戏的思想是最重要的,多做项目才是王道,否则给再给你个地球,你都认为它2012年也会爆炸,你懂的~
分享到:
相关推荐
android之surfaceview游戏开发
2.Android游戏开发之旅二 View和SurfaceView 3.Android游戏开发之旅三 View类详解 4.Android游戏开发之旅四 Canvas和Paint实例 5.Android游戏开发之旅五 Path和Typeface 6.Android游戏开发之旅六 自定义View 7....
Android游戏开发二 View和SurfaceView Android游戏开发三 View类详解 Android游戏开发四 Canvas和Paint实例 Android游戏开发五Path和Typeface Android游戏开发六 自定义View Android游戏开发七 自定义SurfaceView ...
Android游戏框架SurfaceView介绍 PDF TAG:Android 游戏框架 SurfaceView
Android圆形相机预览窗口,圆形SurfaceView
SurfaceView游戏框架实例,讲解如何使用,如何掌握基础性东西
这是在上网收集的,能够截取当前Activity中surfaceView中图片。本人亲测可以通过。
Android 构建游戏框架View与SurFaceView的区别
Android的SurfaceView实现图片缩放、滑动,网上资源不多,目前还有些问题,仅供参考。
Android中使用surfaceview开发的Camera相机,内容含有注释,非常清楚
android使用双缓冲辨析及surfaceview使用例子
Android游戏开发, SurfaceView!
【Android游戏开发十八】解放手指,利用传感器开发游戏!(本文讲解在SurfaceView中用重力传感器控制圆球的.pdf
SurfaceView和TextureView均继承于android.view.View 与其它View不同的是,两者都能在独立的线程中绘制和渲染,在专用的GPU线程中大大提高渲染的性能。 一、SurfaceView专门提供了嵌入视图层级的绘制界面,开发者...
Android SurfaceView 实现实时显示摄像头视频,详见博客:https://blog.csdn.net/qq_30297763/article/details/90241102
android 小游戏 抢滩登陆 使用了SurfaceView, GLSurfaceView, Thread
android-SurfaceView 游戏测试Demo
android之surfaceview学习示例
android中的surfaceview示例源码下载,Android SurfaceView在游戏开发中使用想当广泛,SurfaceView对于画面的控制有着更大的自由度,它不像View那样要用handler来更新,但是网上关于 SurfaceView使用这方面的参考...
我们可以把每一个树桩, 小猪, 车厢都看成是一个 Drawable, 这个 Drawable 里面保存了 x, y 坐标, 我们的 SurfaceView 在 draw 的时候, 就把这些 Drawable draw 出来.