Я хотел бы переписать/очистить часть изображения, используя прозрачный цвет в PlayN. Возможно ли это как-то? (PlayN 1.3.1)PlayN: очистить часть изображения
Вот пример кода, я сделал:
@Override
public void init() {
// create and add background image layer
Image bgImage = assetManager().getImage("images/bg.png");
ImageLayer bgLayer = graphics().createImageLayer(bgImage);
graphics().rootLayer().add(bgLayer);
SurfaceLayer surfaceLayer = graphics().createSurfaceLayer(640, 480);
CanvasImage image = graphics().createImage(640, 480);
surfaceLayer.surface().setFillColor(0xff000000);
surfaceLayer.surface().fillRect(100, 100, 200, 200);
surfaceLayer.surface().setFillColor(0x00000000);
surfaceLayer.surface().fillRect(150, 150, 50, 50);
graphics().rootLayer().add(surfaceLayer);
image.canvas().setFillColor(0xff000000);
image.canvas().fillCircle(300, 300, 100);
image.canvas().setFillColor(0x00000000);
image.canvas().fillCircle(300, 300, 50);
graphics().rootLayer().add(graphics().createImageLayer(image));
}
Так что я попытался с SurfaceLayer
, а также с не помогали ImageLayer
ни один из них (я предполагаю, что это так, как это не возможно для перезаписи деталей). Я хотел иметь два пересекающихся прямоугольника и круги, но я вижу только один из них.
Спасибо, это путь, но я боюсь, что это не поможет с проблемами GC на Android. (Чтобы сделать вещи прозрачными снова, не потребовалось бы воссоздать весь слой/изображение и уничтожить их.) –