Improved antialiasing / Improved outlines

This commit is contained in:
Anuken
2019-02-26 10:42:20 -05:00
parent d05f9c5540
commit 0cb14461ba
10 changed files with 50 additions and 77 deletions

View File

@@ -24,7 +24,9 @@ def antialias = {File file ->
}
def color = new Color()
def color2 = new Color()
def sum = new Color()
def suma = new Color()
for (int x = 0; x < image.getWidth(); x++){
for(int y = 0; y < image.getHeight(); y++){
@@ -50,18 +52,30 @@ def antialias = {File file ->
if ((F==H && F!=B && H!=D && E!=G) || (H==D && H!=F && D!=B && E!=I)) p8=H
if (F==H && F!=B && H!=D) p9=F
int total = 0
suma.set(0)
[p1, p2, p3, p4, p5, p6, p7, p8, p9].each{ val ->
Color.argb8888ToColor(color, val)
suma.r += color.r*color.a
suma.g += color.g*color.a
suma.b += color.b*color.a
suma.a += color.a
}
if(color.a > 0.05){
sum.r += color.r
sum.g += color.g
sum.b += color.b
sum.a += color.a
total++
}
suma.mul(suma.a <= 0.001f ? 0f : (float)(1f / suma.a))
float total = 0
sum.set(0)
[p1, p2, p3, p4, p5, p6, p7, p8, p9].each{ val ->
Color.argb8888ToColor(color, val)
float a = color.a
color.lerp(suma, (float)(1f - a))
sum.r += color.r
sum.g += color.g
sum.b += color.b
sum.a += a
total += 1f
}
sum.mul((float)(1f / total))
@@ -73,7 +87,6 @@ def antialias = {File file ->
ImageIO.write(out, "png", file)
}
task swapColors(){
doLast{
if (project.hasProperty("colors")) {