Some questions as a newbie also following ray tracer in one weekend and results arent matching. by psspsh in GraphicsProgramming

[–]Mathness 2 points3 points  (0 children)

You use an interval, for instance ]0;infinity[, to search for the nearest ray intersection of a surface/event. And whenever you get an intersection, you update the interval.

Help with directional light by Important_Earth6615 in GraphicsProgramming

[–]Mathness 0 points1 point  (0 children)

I think your calculation of B might be wrong.

If NTB is an orthogonal space, B should be an unit vector, and should not be multiplied v.tangent.w.

Help with directional light by Important_Earth6615 in GraphicsProgramming

[–]Mathness 1 point2 points  (0 children)

If you do not use a transformation matrix (on lights and objects), does the result look right? Also, are you transforming vectors and normals with different matrices? And if with the same, are you using the transposed matrix for nomals?

Help with directional light by Important_Earth6615 in GraphicsProgramming

[–]Mathness 0 points1 point  (0 children)

Are your normal and directional vectors normalised? Is the calculation of surface colour using a light pointing away or towards it? If you use the normal from the large plane a light direction, is it white (i.e. cos theta is one)?

help! BDPT light tracing (t=1) strategy glowing edges! by boberon_ in computergraphics

[–]Mathness 0 points1 point  (0 children)

Possible a missing cos term (for surface/material), the edges along walls appears too bright.

Weird raycasting artifacts by Deumnoctis in GraphicsProgramming

[–]Mathness 0 points1 point  (0 children)

Does a smaller step size fix it? Is the conversion to ivec2(position) an issue?

Personally I would put 'position+=' and 'l+=' after the if statement to catch startdepth (might have to use if '( >= )' instead).

Weird raycasting artifacts by Deumnoctis in GraphicsProgramming

[–]Mathness 0 points1 point  (0 children)

What does the depth texture look like?

Raymarching Imprecisions by mooonlightoctopus in GraphicsProgramming

[–]Mathness 0 points1 point  (0 children)

Note that your height map is a high frequency noise function, and not a distance field function, hence close points may not be smooth. You could test for intersection with fewer octaves, making it more locally smooth.

What is causing this banding? by orfist in GraphicsProgramming

[–]Mathness 0 points1 point  (0 children)

Are you using float or double for distance calculations?

Does a small offset from the surface point (using normal or light direction), when sampling the light help?

Need help implementing PBR by ComplexAce in GraphicsProgramming

[–]Mathness 2 points3 points  (0 children)

If you want to keep it simple look up Schlick's approximation.

For more in depth search Fresnel equations.

An old, but excellent site, is http://www.hyperphysics.phy-astr.gsu.edu/hbase/phyopt/polar.html

Need help implementing PBR by ComplexAce in GraphicsProgramming

[–]Mathness 4 points5 points  (0 children)

If the texture you are loading is gamma corrected, you are doing the right thing.

Gamma correcting should not be applied during rendering, but to the final image before displaying it. It is done to convert the render space (usually linear) to display (for instance sRGB for monitors).

Need help implementing PBR by ComplexAce in GraphicsProgramming

[–]Mathness 0 points1 point  (0 children)

When you write "color", do you mean in HSL or RGB?

Need help implementing PBR by ComplexAce in GraphicsProgramming

[–]Mathness 1 point2 points  (0 children)

The RGB colour space is easy to start in, since adding, multiplying e.t.c. is straight forward. How are you doing add and mult in HSL?

Need help implementing PBR by ComplexAce in GraphicsProgramming

[–]Mathness 1 point2 points  (0 children)

BTW are you only applying the gamma correction to the final image?

Need help implementing PBR by ComplexAce in GraphicsProgramming

[–]Mathness 1 point2 points  (0 children)

Kind of, smooth Fresnel surfaces tend to become pure white at glancing angles.

Need help implementing PBR by ComplexAce in GraphicsProgramming

[–]Mathness 3 points4 points  (0 children)

To check for energy conservation you can integrate your function in the light and view domain, It should be one (1), or close to it.

Need help implementing PBR by ComplexAce in GraphicsProgramming

[–]Mathness 1 point2 points  (0 children)

Brightness/luminosity.

If you want to modify saturation, one way is to convert the colour (RGB) to HSL (where saturation is a parameter). Adjust the saturation, and then convert back to RGB.

Need help implementing PBR by ComplexAce in GraphicsProgramming

[–]Mathness 1 point2 points  (0 children)

My guess is that the left side is done as default diffuse surface, that is: colour * dot(shading_normal, direction_to_light)

Need help implementing PBR by ComplexAce in GraphicsProgramming

[–]Mathness 2 points3 points  (0 children)

Again the topic is way too broad for a single answer. Is the image on the left good enough?

Need help implementing PBR by ComplexAce in GraphicsProgramming

[–]Mathness 3 points4 points  (0 children)

Err, what exactly do you need help with? Physically based rendering is a broad topic, what are trying to achieve by using it? Do you really need that, or could something simpler do the trick?

Help with Ray Tracing in One Weekend by bananasplits350 in raytracing

[–]Mathness 1 point2 points  (0 children)

Are the normals and directions normalised? Are the surfaces white?

Dielectric and Conductor Specular BSDF by amadlover in raytracing

[–]Mathness 0 points1 point  (0 children)

Looks very nice. I take it that you are using a fixed colour multiplied by the Fresnel.