Most Popular

1500 questions
25
votes
1 answer

Anti-aliasing / Filtering in Ray Tracing

In ray tracing / path tracing, one of the simplest way to anti-alias the image is to supersample the pixel values and average the results. IE. instead of shooting every sample through the center of the pixel, you offset the samples by some…
RichieSams
  • 3,782
  • 25
  • 35
25
votes
1 answer

Is my perspective math correct?

I've got a homework in which I have to calculate and plot some points using a pespective transformation, but I'm not sure my results are correct, since the 3d plot using Camera coordinates looks very different from the 2d plot using the image…
Vitor
  • 353
  • 2
  • 4
24
votes
3 answers

What is the difference between radiance and irradiance in BRDF

Currently I am reading the BRDF section from Real Time Rendering and I am having a hard time to visually understand the definition of this function. BRDF is the ratio between the radiance in outgoing direction and irradiance of incoming direction. I…
kevinyu
  • 493
  • 1
  • 3
  • 10
24
votes
1 answer

Get vector length with GLM

I am quite confused over how GLM library is behaving or I am using it improperly. glm::vec2 testVec(6,-4); float len = testVec.length(); I get the value 2 with the above code snippet. I believe I am trying to get the length of the vector defined…
sajis997
  • 1,279
  • 1
  • 10
  • 15
24
votes
1 answer

World coordinates, Normalised device coordinates and device coordinates

Can I get to know the difference between the three? A good example would add up too.
Anish Sharma
  • 343
  • 1
  • 2
  • 4
23
votes
3 answers

Why is thread safety such a huge deal for Graphics APIs?

Both Vulkan and DirectX12 are claimed to be usable in a thread-safe manner. People seem to be excited about that. Why is this considered such a huge feature? The "real" processing gets thrown over the memory bridge on a separate processing unit…
ratchet freak
  • 5,950
  • 16
  • 28
23
votes
2 answers

How to properly combine the diffuse and specular terms?

As far as I understand, in a BRDF the Fresnel term is telling us the probability for a photon to be reflected or refracted when it hits a surface. The reflected photons will contribute to the specular term, while the refracted ones will contribute…
Julien Guertault
  • 4,420
  • 2
  • 23
  • 47
22
votes
7 answers

How to raytrace Bezier surfaces?

I tried this question on math.SE and surprisingly, the answer was "the equations are too nasty, just feed the function it to a numerical root-finder". But if you consider yourself "a graphics guy" like me, and have played extensively with Bezier…
luser droog
  • 1,363
  • 2
  • 12
  • 27
22
votes
3 answers

Performance of vector graphics versus bitmap or raster graphics

Sometimes I use vector graphics, simply because they look just slightly nicer in some cases, and other times, I use bitmap/raster graphics. I was wondering, are there any significant performance differences between these two options?
Ethan Bierlein
  • 437
  • 5
  • 13
22
votes
1 answer

Why is this conditional in my fragment shader so slow?

I have set up some FPS-measuring code in WebGL (based on this SO answer) and have discovered some oddities with the performance of my fragment shader. The code just renders a single quad (or rather two triangles) over a 1024x1024 canvas, so all the…
Martin Ender
  • 2,730
  • 4
  • 23
  • 45
22
votes
1 answer

Why does my Perlin Noise look "blocky"?

I tried to implement Perlin Noise by myself using just the theory (following flafla2.github.io/2014/08/09/perlinnoise.html). Unfortunately I was unable to achieve the look of the "original" Perlin Noise. What's the reason the code below renders a…
sarasvati
  • 323
  • 2
  • 6
22
votes
2 answers

What is Illustrator's vector rasterization process?

I am currently trying to understand a few things about vector graphics rasterization and the different ways it is implemented in various application types. I tested and compared a few programs and noticed that there is a major difference in the way…
Gentle Moose
  • 385
  • 2
  • 6
21
votes
4 answers

What does GPU assembly look like?

I have played around with CPU assembly programming like Nasm, Tasm or Masm, but I'm really curious to know how GPU works now. However, i'm quite confused when I look on internet. I've heard about Cuda and OpenCL, but it is not what I'm looking…
sebastien finor
  • 313
  • 1
  • 2
  • 5
21
votes
2 answers

How do correlated samples influence the behavior of a Monte Carlo renderer?

Most descriptions of Monte Carlo rendering methods, such as path tracing or bidirectional path tracing, assume that samples are generated independently; that is, a standard random number generator is used that generates a stream of independent,…
Benedikt Bitterli
  • 2,625
  • 17
  • 21
19
votes
2 answers

What is the "dipole approximation" for subsurface scattering?

If you read papers about subsurface scattering, you'll frequently come across references to something called the "dipole approximation". This term seems to go back to the paper A Practical Model for Subsurface Light Transport by Henrik Wann Jensen…
Nathan Reed
  • 25,002
  • 2
  • 68
  • 107