【发布时间】:2023-04-08 00:25:01
【问题描述】:
您好,我正在为游戏制作闪光灯。我使用 Arc2D 制作手电筒,并且基本上剪掉了地图的一部分,以便只显示该部分,但我也希望地图的一部分也如此。
如何获得黑色区域?
【问题讨论】:
您好,我正在为游戏制作闪光灯。我使用 Arc2D 制作手电筒,并且基本上剪掉了地图的一部分,以便只显示该部分,但我也希望地图的一部分也如此。
如何获得黑色区域?
【问题讨论】:
可以使用Area#subtract方法获取想要的区域:
Rectangle2D screen =
new Rectangle2D.Double(0,0,screenWidth, screenHeight);
Area result = new Area(screen);
Area clippingArea = new Area(yourArcClipShape);
result.subtract(clippingArea);
result 将成为全屏的形状,除了您原来的“弧形”剪切形状 - 即图像中的黑色区域。
相关答案,展示了一些灯光效果和图像合成:
【讨论】: