Rasterization is based on the idea of projecting various primitives (e.g. triangles, line segments, points, quads, maybe even some curved surfaces like bezier patches) on the screen and then ...

This is a very good question. There is a common misconception that Monte Carlo, or integration is applied "recursively" on the rendering equation. That is not what's happening. Numerical integration ...

The rendering equation aims to describe what the light distribution for a specific scene is, under several assumptions. The most important assumption is that we are working in a geometrical optics ...

Ambient occlusion is the direct illumination at a Lambertian surface point due to a homogeneous light source at infinity. That means that you assume a light source with $L_e(\pm\infty, \omega_i) = 1$, ...

Triangulate the Voronoi cell then write the integral as a sum over the triangles: $$\int_{\Omega}\|P - Pi\|\,dP = \sum_{k=1}^{N}\int_{\Delta_k}\|P-P_i\|\,dP.$$ Write the integration over the ...

If you have $(x,y,z) \in \mathbb{R}^3$ and you relate it to $(x/z, y/z) \in \mathbb{R}^2$ then you have interpreted $(x,y,z)$ as one possible representation of the 2D vector $(x/z, y/z)$ in ...

I have a few suggestions: Partition the volume by using tetrahedra within the mesh, and outside of it (in the cube). Set the probability to sample each tetrahedron to its volume divided by the inside/...

It comes from the relation between the area formulation and the solid angle formulation of the rendering equation: $d\omega = \frac{\cos\theta_L}{r^2}dA$: https://arxiv.org/abs/1205.4447

You can use a shear, or equivalently a rotation by 45, scale along one of the axes, rotate back (which is equivalent to the shear which you are looking for). EDIT: On second thought, you don't need ...

"A not so simple approach". I may have messed a little bit too much with grouping the terms, do forgive my elementary math skills, it's a side effect of using tools like wolfram and mathematica too ...

The 'jumps' to 'a bit darker' are an optical illusion due to how human perception works. Check out Mach bands in wikipedia. Now as for why you get a step function even though you have a smooth ...

The $\omega$ is a direction. Whether you parametrise this direction in spherical coordinates $(\phi, \theta)$, in Cartesian coordinates $(x,y,z)$, or some other coordinate system is irrelevant. Thus ...

There are 2 ways to go about intersecting the triangle. Let the vertices of the triangle have positions $v_1, v_2, v_3$. Let the ray have origin $o$ and direction $d$. Let the model (4x4) matrix be $M$...

Having the rendering equation one can rewrite it in operator form: $$L = L_e + TL$$ $$(I-T)L = L_e$$ $$L = (I-T)^{-1}L_e$$ $$L = \sum_{k=0}^{\infty}T^kL_e$$ The last equality holds if $T$ is a ...

Rasterization is sometimes used for primary rays. However, it limits greatly what you can do - depth of field, motion blur, participating media, refraction, only basic camera models, no adaptive or ...

Throughout my answer I'll sometimes refer to some results in https://sites.fas.harvard.edu/~cs278/papers/veach.pdf by using [MIS,section_number]. You can skip the following derivation if you don't ...

If a ray intersect a transparent object (regardless of the order) multiply by the colour to get proper attenuation, then continue. Note that the order does not matter. The other options is to ignore ...

The relationship between standard coordinates $(x,y)$ and homogeneous coordinates $(X,Y,Z)$ is $x = X / Z, y = Y/Z$. Homogeneous coordinates are a type of projective coordinates. All points on the ...

The easiest way to deal with this would be to provide thickness for the edges in the continuous setting. That is, make your edges out of solid capsules/cylinders, then you would not have this issue. ...

It is cancelled out by the probability density function in the estimator. The pdf in their case is exactly: $\frac{\cos\theta}{\pi}$, which is in the denominator: att = albedo * cos_theta / pdf = ...

The issue is, that you considered that the rays coming from the camera to be the light carrying rays. Instead, the rays bounce off the surface, and return to the light source (which you have decided ...

For a function $y = f(x)$ the (signed) curvature at $x$ is given by: $$\kappa(x) = \frac{f''(x)}{(1+f'^2(x))^{\frac{3}{2}}}$$ If you assume that the slope is very small compared to $1$: $f'^2<\!... View answer 2 votes Since you seem to want an explanation in terms of irradiance, consider both the radiance and irradiance definitions: $$E = \frac{d\Phi}{dA}, \quad L = \frac{d^2\Phi}{d\omega dA^{\perp}}$$ We can ... View answer Accepted answer 2 votes That's actually incorrect. You can transform every ray of your camera if you wish (and numerous implementations do so). There are some advantages and disadvantages to each method (e.g. if your rays ... View answer Accepted answer 2 votes You can look into this: https://cescg.org/wp-content/uploads/2017/03/Dvo%C5%99%C3%A1k-Estimating-Approximate-Plane-of-Symmetry-of-3D-Triangle-Meshes.pdf There are definitely other papers on the ... View answer Accepted answer 2 votes Let me first address some misconceptions you have: the theory states that we need to shoot x number of rays for each intersection No, the "theory" doesn't state such a thing. Note also that the ... View answer 2 votes Your first image employs an orthographics projection, while the second uses a perspective projection. You can look up the perspective matrix derivation in: http://www.songho.ca/opengl/... View answer Accepted answer 2 votes Since the question was somewhat clarified I will formalize both the question and the answer for future readers. Having a differentiable scalar field$f : \mathbb{R}^4 \rightarrow \mathbb{R}$we want ... View answer 1 votes Let the edge to be flipped be made up of$v_l, \, v_r$. This edge needs to be part of 2 triangles (cannot be a boundary edge). Let the remaining vertices of the two triangles be$v_t, \, v_b\$. Now ...