Android 从AndEngine GLES2中的SD卡加载图像作为精灵
我已经搜索了所有的论坛,但我无法得到任何工作代码。我想从AndEngine GLES2的SD卡上加载一个sprite图像。有人能给我一个代码吗? 任何帮助都将不胜感激。这是我试过的Android 从AndEngine GLES2中的SD卡加载图像作为精灵,android,andengine,sprite,Android,Andengine,Sprite,我已经搜索了所有的论坛,但我无法得到任何工作代码。我想从AndEngine GLES2的SD卡上加载一个sprite图像。有人能给我一个代码吗? 任何帮助都将不胜感激。这是我试过的 File imageFile = new File(pFilePath); BitmapTextureAtlas texture = new BitmapTextureAtlas(myCxt.getTextureManager(),540 , 960 , TextureOptions.DEFAULT); FileBi
File imageFile = new File(pFilePath);
BitmapTextureAtlas texture = new BitmapTextureAtlas(myCxt.getTextureManager(),540 , 960 , TextureOptions.DEFAULT);
FileBitmapTextureAtlasSource fileTextureSource = new FileBitmapTextureAtlasSource(imageFile);
TextureRegion textureRegion = TextureRegionFactory.createFromSource(texture,fileTextureSource ,0,0, true);
这段代码适用于andEngine1,但在GLES2中,下面给出的行生成编译时错误
构造函数文件BitmapTextureAtlassSourceFile未定义
FileBitmapTextureAtlasSource fileTextureSource=新的FileBitmapTextureAtlasSourceimageFile
如何从SD卡加载图像作为精灵。试试这个
File imageFile = new File("sdcard/image");
BitmapTextureAtlas texture = new BitmapTextureAtlas(width , height , TextureOptions.DEFAULT);
FileBitmapTextureAtlasSource fileTextureSource = new FileBitmapTextureAtlasSource(imageFile);
TextureRegion textureRegion = TextureRegionFactory.createFromSource(texture,fileTextureSource ,0,0, true);
试试这个
File imageFile = new File("sdcard/image");
BitmapTextureAtlas texture = new BitmapTextureAtlas(width , height , TextureOptions.DEFAULT);
FileBitmapTextureAtlasSource fileTextureSource = new FileBitmapTextureAtlasSource(imageFile);
TextureRegion textureRegion = TextureRegionFactory.createFromSource(texture,fileTextureSource ,0,0, true);
只需直接复制我的旧项目,它位于活动类内部,它从内部存储加载图像,您可以将其更改为createFromExternalStorage。IIRC、createFromExternalStorage和createFromInternalStorage具有相同的参数,但位置不同。图像文件位于“/data/data/your_package/files/(如果是内部的)或“/sdcard/Android/your_package/files/(如果是外部的)
BitmapTextureAtlas texture = new BitmapTextureAtlas(this.getTextureManager(), 1024, 1024);
mBeanRegion = BitmapTextureAtlasTextureRegionFactory.createFromSource(texture, FileBitmapTextureAtlasSource.createFromInternalStorage(this, "bean.png", 0, 0), 0, 0);
texture.load();
只需直接复制我的旧项目,它位于活动类内部,它从内部存储加载图像,您可以将其更改为createFromExternalStorage。IIRC、createFromExternalStorage和createFromInternalStorage具有相同的参数,但位置不同。图像文件位于“/data/data/your_package/files/(如果是内部的)或“/sdcard/Android/your_package/files/(如果是外部的)
BitmapTextureAtlas texture = new BitmapTextureAtlas(this.getTextureManager(), 1024, 1024);
mBeanRegion = BitmapTextureAtlasTextureRegionFactory.createFromSource(texture, FileBitmapTextureAtlasSource.createFromInternalStorage(this, "bean.png", 0, 0), 0, 0);
texture.load();
我已经找到了问题的解决办法。 FileBitmapTextureAtlasSource在AndEngine2中已更改。 这是为我工作的代码
File imageFile = new File(pFilePath);
BitmapTextureAtlas texture = new BitmapTextureAtlas(getTextureManager(),displayMetrics.widthPixels , displayMetrics.heightPixels , TextureOptions.BILINEAR_PREMULTIPLYALPHA);
FileBitmapTextureAtlasSource fileTextureSource = FileBitmapTextureAtlasSource.create(imageFile);
Engine.getTextureManager().loadTexture(texture);
TextureRegion textureRegion = TextureRegionFactory.createFromSource(texture,fileTextureSource ,0,0, false);
screenShot = new Sprite(130, 230, textureRegion, myCxt.getVertexBufferObjectManager());
我已经找到了问题的解决办法。 FileBitmapTextureAtlasSource在AndEngine2中已更改。 这是为我工作的代码
File imageFile = new File(pFilePath);
BitmapTextureAtlas texture = new BitmapTextureAtlas(getTextureManager(),displayMetrics.widthPixels , displayMetrics.heightPixels , TextureOptions.BILINEAR_PREMULTIPLYALPHA);
FileBitmapTextureAtlasSource fileTextureSource = FileBitmapTextureAtlasSource.create(imageFile);
Engine.getTextureManager().loadTexture(texture);
TextureRegion textureRegion = TextureRegionFactory.createFromSource(texture,fileTextureSource ,0,0, false);
screenShot = new Sprite(130, 230, textureRegion, myCxt.getVertexBufferObjectManager());
Gaurav,你从另一篇文章中复制了上面给出的相同代码。此代码适用于AndEngine1,但不适用于GLES 2。但是谢谢你的帮助。是的,我只是想帮助你。我想你可能还没有看到这篇文章……Gaurav,你从另一篇文章复制了上面给出的相同代码。此代码适用于AndEngine1,但不适用于GLES 2。但是谢谢你的帮助。是的,我只是想帮助你。我想你可能还没有看到这篇文章。。。