如何翻转像素图以绘制到libgdx中的纹理?

Leo*_*pez 10 java textures flip libgdx

所以我要做的是通过将pixmaps绘制到纹理来为我的游戏生成背景图像.到目前为止,我可以做到这一点,但现在我需要绘制在X轴或Y轴上翻转到纹理的像素图.但是我找不到任何可以做到的事情.pixmap类不提供该功能.然后我想我可以在纹理上绘制一个翻转的纹理区域,但到目前为止我还没有找到如何做到这一点.所以我想知道我怎么能做这样的事情,是否可以用其他java库翻转png图像,然后从翻转的图像创建一个像素图?

Pet*_*kov 7

除了迭代像素之外,我也没有看到其他选项:

public Pixmap flipPixmap(Pixmap src) {
    final int width = src.getWidth();
    final int height = src.getHeight();
    Pixmap flipped = new Pixmap(width, height, src.getFormat());

    for (int x = 0; x < width; x++) {
        for (int y = 0; y < height; y++) {
            flipped.drawPixel(x, y, src.getPixel(width - x - 1, y));
        }
    }
    return flipped;
}
Run Code Online (Sandbox Code Playgroud)

  • 谢谢!顺便说一下,如果你想在Y轴上翻转,你只需要执行`flipped.drawPixel(x,y,src.getPixel(x,height - y - 1));`. (2认同)