apply gamma correction
This commit is contained in:
parent
0f122e2062
commit
cf0ed6f13f
@ -21,9 +21,10 @@ public final class Camera {
|
|||||||
private final @NotNull Vec3 origin;
|
private final @NotNull Vec3 origin;
|
||||||
private final @NotNull Vec3 direction;
|
private final @NotNull Vec3 direction;
|
||||||
|
|
||||||
// antialiasing
|
// rendering
|
||||||
private final int samplesPerPixel = 100;
|
private final int samplesPerPixel = 100;
|
||||||
private final int maxDepth = 10;
|
private final int maxDepth = 10;
|
||||||
|
private final double gamma = 2.0;
|
||||||
|
|
||||||
// internal properties
|
// internal properties
|
||||||
private final @NotNull Vec3 pixelU;
|
private final @NotNull Vec3 pixelU;
|
||||||
@ -103,7 +104,11 @@ public final class Camera {
|
|||||||
b += color.b();
|
b += color.b();
|
||||||
}
|
}
|
||||||
|
|
||||||
image.set(x, y, new Color(r / samplesPerPixel, g / samplesPerPixel, b / samplesPerPixel));
|
image.set(x, y, new Color(
|
||||||
|
Math.pow(r / samplesPerPixel, 1 / gamma),
|
||||||
|
Math.pow(g / samplesPerPixel, 1 / gamma),
|
||||||
|
Math.pow(b / samplesPerPixel, 1 / gamma)
|
||||||
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user