首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Libgdx在纹理中保存SpriteBatch

Libgdx在纹理中保存SpriteBatch
EN

Stack Overflow用户
提问于 2013-12-22 16:24:13
回答 2查看 1.1K关注 0票数 1

我想知道是否可以在纹理中保存spriteBatch。

代码语言:javascript
复制
 SpriteBatch batch = new SpriteBatch();

在批处理中绘制了一些东西之后,我希望将包含SpriteBatch的所有东西保存在一个纹理中(类似于屏幕截图)。

我不知道该怎么做,我在网上和libgdx上搜索,但没有找到。

谢谢你

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-12-22 20:57:18

您可以向FrameBufferObject (FBO)呈现。请参阅https://github.com/mattdesl/lwjgl-basics/wiki/FrameBufferObjects

一个FBO将工作,如果你可以作出决定渲染为纹理在事先。一个副作用是图像不是呈现到屏幕上,而是呈现到纹理上。(当然,很容易将纹理呈现到屏幕上。)

正如另一个答案所建议的那样,您可以从屏幕缓冲区中抓取字节,并从产生的Pixmap中生成一个Pixmap(您不需要一直到文件系统)。请参见https://code.google.com/p/libgdx-users/wiki/Screenshots (只需使用getScreenshot方法获取字节的Pixmap )。

票数 2
EN

Stack Overflow用户

发布于 2013-12-22 19:50:49

使用到纹理的转换如下:

代码语言:javascript
复制
final Pixmap pmap = new Pixmap(bytes, 0, bytes.length);
try{
    Gdx.app.postRunnable(new Runnable(){
        public void run(){
        texture=new Texture(pmap);
        }
    });
}catch(Exception e){
    e.printStackTrace();
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20731463

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档