aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/dev/figboot/cuberender/state
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/dev/figboot/cuberender/state')
-rw-r--r--src/main/java/dev/figboot/cuberender/state/BlendMode.java6
-rw-r--r--src/main/java/dev/figboot/cuberender/state/Texture.java4
2 files changed, 7 insertions, 3 deletions
diff --git a/src/main/java/dev/figboot/cuberender/state/BlendMode.java b/src/main/java/dev/figboot/cuberender/state/BlendMode.java
index 0c30998..1c1acf4 100644
--- a/src/main/java/dev/figboot/cuberender/state/BlendMode.java
+++ b/src/main/java/dev/figboot/cuberender/state/BlendMode.java
@@ -12,9 +12,9 @@ public enum BlendMode {
float pAlphaFactor = prev.w * (1 - inOutColor.w);
float aOut = inOutColor.w + pAlphaFactor;
- inOutColor.x = (inOutColor.x + prev.x * pAlphaFactor) / aOut;
- inOutColor.y = (inOutColor.y + prev.y * pAlphaFactor) / aOut;
- inOutColor.z = (inOutColor.z + prev.z * pAlphaFactor) / aOut;
+ inOutColor.x = (inOutColor.x * inOutColor.w + prev.x * pAlphaFactor) / aOut;
+ inOutColor.y = (inOutColor.y * inOutColor.w + prev.y * pAlphaFactor) / aOut;
+ inOutColor.z = (inOutColor.z * inOutColor.w + prev.z * pAlphaFactor) / aOut;
inOutColor.w = aOut;
});
diff --git a/src/main/java/dev/figboot/cuberender/state/Texture.java b/src/main/java/dev/figboot/cuberender/state/Texture.java
index 843638d..70e66b2 100644
--- a/src/main/java/dev/figboot/cuberender/state/Texture.java
+++ b/src/main/java/dev/figboot/cuberender/state/Texture.java
@@ -11,4 +11,8 @@ public class Texture {
this.width = image.getWidth();
this.height = image.getHeight();
}
+
+ public float calcAspect() {
+ return (float)width / height;
+ }
}