我想将部分Pixmap(指定的Rectangle)上传到GPU中的纹理(指定位置)。
我想要实现的是
void updateTextureFromPixmap(sourcePixmap,sourceRectangle,destTexture, destRectangle) {
destTexture.fill(copyfrom(sourcePixmap),copyarea(SourceRectangle),newArea(destRectangle));
}
我应该使用glTexSubImage2D吗?我还在学习opengl; /
答案 0 :(得分:1)
您可以使用Texture#draw将像素图添加到纹理中。像这样:
Pixmap imgA = new Pixmap(Gdx.files.internal("mypng"));
Texture texture = new Texture(200, 200, Pixmap.Format.RGBA8888);
texture.draw(imgA, 0, 0);
答案 1 :(得分:0)
public class PixmapHelper {
static Pixmap fullGraphics ;
static Pixmap miniObject;
public static void Initialize()
{
fullGraphics =AssetLoader.GetPixmap(Settings.TEX_MAP_OBJECTS);
miniObject=new Pixmap(8,8, Pixmap.Format.RGBA8888);
}
static void Draw(TextureRegion textureRegion,Texture dstTexture,int dstX,int dstY)
{
miniObject.drawPixmap(fullGraphics, 0,0, textureRegion.getRegionX(),textureRegion.getRegionY(),
textureRegion.getRegionWidth(),textureRegion.getRegionHeight());
dstTexture.draw(miniObject,dstX,dstY);
}
}