游戏引擎AndEngine总结(九):三种加载图片资源的方法
2012-03-30 08:34
411 查看
在AndEngine中,我们加载图片资源通常使用的是放在assets目录下的加载方式,其他的方式用到的很少,可能是因为例子里面只提供了这种方式的原因吧,其实AndEngine还为我们提供了其他两种方式,一种是app中常用到的从res目录下的图片资源的加载(通过R.java文件加载),另一种是从SD card或者沙盒中加载!后两种用到的可能比较小,但是有些需求就必须要用到其他方式,比如加载用户的照片资源等等。。。
简单介绍一下,想深入的同学继续看AndEngine源码吧!
附上我那弱弱的Demo源码,点击下载
1.从assets目录中加载资源,这是最基本也是最常用的方式,很多例子中都是这样用的,不解释了,上代码
// 传统的加载asset目录下资源的方式 assetsBitmapTextureAtlas = new BitmapTextureAtlas(getTextureManager(), 128, 128); assetsTextureRegion = (TextureRegion) BitmapTextureAtlasTextureRegionFactory.createFromAsset(assetsBitmapTextureAtlas, this, "assets_image.png", 0, 0); assetsBitmapTextureAtlas.load();
2.从res目录中加载资源,其实原理和asset是类似的,只是要通过R.java文件的方式来读取
// 传统的加载res目录下资源的方式,但是res目录下的资源会生成索引 resBitmapTextureAtlas = new BitmapTextureAtlas(getTextureManager(), 128, 128); resTextureRegion = (TextureRegion) BitmapTextureAtlasTextureRegionFactory.createFromResource(resBitmapTextureAtlas, this, R.drawable.res_image, 0, 0); resBitmapTextureAtlas.load();这个用法很少,通常都是放在assets的目录下
3.从SD card中加载资源,这算是一个重点吧,因为有些需求会用到,但是可能大家没有注意过
(PS: 从沙盒中加载也是一样的原理,只是目录不同而已)// 从SD card中加载资源,从沙盒中加载也是这个原理 File resFile = new File("/mnt/sdcard/storage_image.png"); sdBitmapTextureAlAtlas = new BitmapTextureAtlas(getTextureManager(), 128, 128); FileBitmapTextureAtlasSource fileBitmapTextureAtlasSource = FileBitmapTextureAtlasSource.create(resFile); sdTextureRegion = (TextureRegion) BitmapTextureAtlasTextureRegionFactory.createFromSource(sdBitmapTextureAlAtlas, fileBitmapTextureAtlasSource, 0, 0); sdBitmapTextureAlAtlas.load();其实原理很简单,AndEngine已经为我们提供了一个叫做FileBitmapTextureAtlasSource的类了,而继承关系是FileBitmapTextureAtlasSource继承于BaseTextureAtlasSource并且实现IBitmapTextureAtlasSource接口,有心的同学可能发现了,在BitmapTextureAtlasTextureRegionFactory的各种create**()方法中,传入的source参数都是实现于IBitmapTextureAtlasSource接口的。
简单介绍一下,想深入的同学继续看AndEngine源码吧!
附上我那弱弱的Demo源码,点击下载
相关文章推荐
- 游戏引擎AndEngine总结(十):单帧图片组合成为动画资源
- Android 异步加载图片分析总结,多种方法加载图片资源
- android andengine游戏引擎中图片资源的加密
- andengine游戏引擎总结基础篇
- javascript实现图片延迟加载方法汇总(三种方法)
- 加载图片资源的方法
- Android 游戏引擎libgdx 资源加载进度百分比显示案例分析
- cocos2dx-Lua引擎游戏脚本及图片资源解密与DUMP
- VC下加载多种格式图片的方法总结IPicture, CxImage, CImage(AtlImage), CPictureEx
- 19.VC(ui)-加载图片资源的方法(随手代码)
- andengine游戏引擎总结进阶篇2
- VC下加载多种格式图片的方法总结IPicture, CxImage, CImage(AtlImage), CPictureEx
- 网页和图片延迟加载方法汇总(三种方法)
- andengine游戏引擎总结进阶篇1
- 2D游戏引擎Allegro 系列教程(三) 加载并显示图片!
- 两种图片延迟加载的方法总结jquery.scrollLoading.js与jquery.lazyload.js
- VC下加载多种格式图片的方法总结
- OGEngine 手游引擎教程:图片资源加载及工具使用
- 游戏引擎Andengine总结(二):AndEngine引擎运行原理
- Unity 图片序列帧动画的三种方法(个人总结,若有其它方法欢迎交流)