Skip to main content
Share Your Experience: Take the 2024 Developer Survey
24 votes
Accepted

Why does my Perlin Noise look "blocky"?

The interpolation looks fine. The main problem here is that the hash function you're using isn't very good. If I look at just one octave, and visualize the hash result by outputting ...
Nathan Reed's user avatar
  • 25.1k
8 votes
Accepted

Ray Tracing Shadows: The Shadow Line Artifact

The shadow terminator problem (as it's also known) is still something of an open problem in ray-tracing. As you say, disabling self-shadowing is not a very good workaround, because non-convex meshes ...
Dan Hulme's user avatar
  • 6,830
6 votes
Accepted

Artifacts when gamma correcting

Short answer, set the precision of the image to a higher value. Long answer, When looking at a gamma correction curve, you can see that the lower values get changed much more, this means that the ...
bram0101's user avatar
  • 1,605
5 votes
Accepted

How to solve Z buffer artifacts

Short answer: Move your near clip plane further away. Depth buffer precision is very sensitive to the near clip plane distance. Complicated answer: Use different math in your view projection. There ...
Chifti Saidi's user avatar
5 votes
Accepted

Tesselation sine distortion?

Not enough triangles. The situation is analogous to the sampling theorem that states that you can not reconstruct a signal if your sample frequency is below a certain threshold. Although in this, case ...
joojaa's user avatar
  • 8,437
4 votes

Strange sphere reflection effects in ray tracing project. I cannot figure out what causes them

The issue was caused by an incorrect calculation of the reflection direction vector. With D ray direction and N the normal vector: R = D - 2 * dot(D, N) * N The ...
Speterius's user avatar
3 votes
Accepted

Weird rendering in rectangle mesh shader AKA Why has my basic shader become a modern art generator?

I think you are not constructing the index buffer correctly. Firstly you only need 1 degenerate vertex to terminate each triangle-strip row. You also should not need any special handling for odd/...
PaulHK's user avatar
  • 2,322
2 votes

Compression-friendly PNG files

PNG format is lossless format where for compression the image is first "filtered" and this filtered image is then passed to DEFLATE lossless compression algorithm. The purpose of filtering stage is to ...
JarkkoL's user avatar
  • 3,636
2 votes
Accepted

How to avoid curvature artifact in raytracer?

In raymarching, it's typical to change the direction of the ray according to the fragment coordinates, but leave the origin at vec3(0,0,0). In you code you add r, ...
Michael Sohnen's user avatar
1 vote
Accepted

How to achieve smooth max of two coordinates in a shader

You do not have a bug. This is not an artifact of your program, but of the human visual system — an optical illusion. The retina emphasizes the second spatial derivative of the image, a phenomenon ...
Kevin Reid's user avatar
  • 1,171
1 vote

What remedies are there for percieved color artifacts due to pixel geometry?

In computer typography, the technique for adjusting strokes so that they align with the pixel grid is called hinting. The color artifacts you are seeing are due to another technique called subpixel ...
Gus's user avatar
  • 111
1 vote

How to avoid curvature artifact in raytracer?

Some curvature artifacts are normal when doing raymarching or ray-tracing. And if you are careful, you can even find curvature artifacts in some rastered scenes if the triangles are small enough. It ...
Michael Sohnen's user avatar
1 vote
Accepted

What can be the cause of some strange ray shadows artefacts on a perfectly flat surface?

It appeared that it was exactly the problem explained in the link of my original post (Cause of shadow acne). The shadow function offset has been increased and the problem is solved!
Balfar's user avatar
  • 76
1 vote
Accepted

Visual Artifact in Wireframe Grid/Plane

It's a interference pattern, called Moire pattern. You get them in signal analysis and various other fields. I guess it could be considered an optical illusion. EDIT: To elaborate, this occurs when ...
lfgtm's user avatar
  • 456
1 vote
Accepted

Microfacet BRDF artifacts

It turns out that the ring was happening from a negative divided by a negative, so adding nom = max(nom, 0.0); fixed the problem. The new highlight, amplified:
Sam's user avatar
  • 198
1 vote

Ghosting in volumetric lighting

Temporal by definition will ghost. I’d limit past frame sampling, apply weight < 0.5, limit movement etc.
Alexey L's user avatar
1 vote

Normal Artifacts On Grazing Angles

According to learnopengl.com, the term $G(l, v, n)$ in the Cook-Torrance Specular BRDF can be written as $$ G=\frac{n \cdot v}{(n \cdot v)(1-k)+k} \cdot \frac{n \cdot l}{(n \cdot l)(1-k)+k} $$ and ...
TheCoder5550's user avatar

Only top scored, non community-wiki answers of a minimum length are eligible