Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-12-07Cleanup: Fix various source typosluzpaz
This is a continuation of D13462 to clean up source typos. Differential Revision: https://developer.blender.org/D13471
2021-11-30Cleanup: clang-format, trailing spaceCampbell Barton
2021-11-30Cleanup: capitalize NOTE tagCampbell Barton
2021-11-19Cleanup: fix typos in comments and docsBrecht Van Lommel
Contributed by luzpaz. Differential Revision: https://developer.blender.org/D13264
2021-09-22EEVEE fix gloss low roughness errorJake
Up lower clamp on spec_angle to prevent NaN from being generated on intel GPUs at low roughness. Fixes T88754 Reviewed By: fclem Maniphest Tasks: T88754 Differential Revision: https://developer.blender.org/D12508
2021-09-21Fix T87801: Eevee ambient occlusion is incorrect on M1 macMiniClément Foucault
The issue was caused by `textureSize()` returning the size of the level 0 even when the min texture level is higher than 0. Using a uniform to pass the correct size fixes the issue. This issue also affected the downsampling of radiance for reflections and refractions. This does not affect anything other than the recusive downsampling shaders.
2021-07-07Cleanup: spelling in commentsCampbell Barton
2021-07-03Cleanup: consistent use of tags: NOTE/TODO/FIXME/XXXCampbell Barton
Also use doxy style function reference `#` prefix chars when referencing identifiers.
2021-06-26Cleanup: full sentences in comments, improve comment formattingCampbell Barton
2021-06-24Cleanup: comment blocks, trailing space in commentsCampbell Barton
2021-05-28EEVEE: Fix NaN caused by ensure_valid_reflection()Clément Foucault
This was caused by unsafe sqrt calls. Fixes T86578 white artifacts in EEVEE Reviewed By: brecht, dfelinto Differential Revision: https://developer.blender.org/D11428
2021-05-27Revert "EEVEE: Ensure Reflection: Use new implementation"Clément Foucault
Both before and after can have artifacts with some normal maps, but this seems to give worse artifacts on average which are not worth the minor performance increase. This reverts commit 5c4d24e1fd752a8a89d44d05e8e3f9b31f2d7db0. Ref T88368, D10084
2021-05-15EEVEE: Depth of Field: Fix tile artifacts in mixed focus regionsClément Foucault
This was caused by the slight focus gather not being wide enough for small radii. Now the cast to int will properly round the radius to the nearest integer. This is related to T86244 Black Artefacts in EEVEE on Transparent BSDF
2021-05-15Fix T85845 EEVEE: Depth Of Field: Artifacts with slight out of focusClément Foucault
This was caused by the bokeh LUT being sampled outside the valid range. But `texelFetch` is only valid if the sample actually exists. This lead to undefined behavior. The fix is to increase `DOF_MAX_SLIGHT_FOCUS_RADIUS` (which just offsets the LUT along the X=Y axis) to avoid any sample outside the defined range.
2021-05-12Fix T87851 EEVEE: Performance regression with baked lighting & transparencyClément Foucault
This was caused by the drivers not optimizing the shader enough to remove the samplers and data used by closure eval. Removing the lighting loops from the depth shader fixes the perf regression.
2021-05-05Fix T87068 EEVEE: Moire effect with particle hair and subsurfaceClément Foucault
This artifact was already present in previous version but was hidden by the faulty SSS scale. The issue comes from the translucence using the geometric normal (computed using fragment shader derivative) leading to poor precision at depth discontinuity. Replacing using the same geometric normal reconstruction as the ambient occlusion pass removes most of the issue.
2021-04-20Fix T87369 EEVEE: Ambient Oclussion: Firefly caused by degenerated normalClément Foucault
This was caused by some sort of degenerated normals.
2021-04-20Fix T87541 EEVEE: AO causes black outline around objects and NaN pixelsClément Foucault
It seems the pow result is unstable on some implementations. Also avoid undefined behavior by clamping aoFactor to strict positive values.
2021-04-08EEVEE: Ensure Reflection: Use new implementationClément Foucault
Use same implementation as Cycles. Is also a bit faster. Should also fix T86578 at the same time.
2021-03-22Cleanup: clang-format, trailing spaceCampbell Barton
Minor manual tweak to prevent wrapping an array into columns.
2021-03-21Fix T86660 EEVEE: Undefined behaviour in specular_occlusionClément Foucault
Define visibility error to be 1 by default to avoid undefined behaviour.
2021-03-19EEVEE: Volumetrics: Add back support for light clampClément Foucault
The new clamping works by modifying the lamp internal radius which then soften the light contribution. However this does remove more light compare to the old solution. This is because the clamp now affects the light over a much larger distance since it is smoother. Old scene needs manual tweaking.
2021-03-19EEVEE: Volumetrics: Add support for soft volumetric shadowsClément Foucault
Soft surface shadows were already supported but now we support soft shadows of the volume themselves. This is only enabled if the light casts shadow and the scene soft shadows toggle is enabled.
2021-03-19EEVEE: Volumetrics: Add Area light shape supportClément Foucault
Previously area lights were just considered as point lights. We now use a "most representative point" technique that make the light shape appearant and gives more homogenous result. This technique is quite cheap but it is not physically correct. So I came up with a power function to have almost the same intensity output as cycles in the general case.
2021-03-19EEVEE: Volumetrics: Add special attenuation volume for lightsClément Foucault
This makes volume lights more efficient if they have lower power.
2021-03-19EEVEE: Volumetrics: Fix sun volumetric shadowClément Foucault
Sun lights are treated as distant light source and need to gather shadowing from the full frustum. This might have performance impact on certain scenes.
2021-03-19EEVEE: Lights: Add Volume and diffuse light power sliderClément Foucault
This adds 2 new sliders for light objects that modulates the diffuse light and the volume light intensities. This also changes the way volume light is computed using point lamp representation. We use "Point Light Attenuation Without Singularity" from Cem Yuksel instead of the usual inverse square law.
2021-03-18Fix T86448 EEVEE: SSRefraction Depth regressionClément Foucault
Caused by recent change for contact shadow raytracing. rB4e236326c137
2021-03-16Fix T86612 EEVEE: Wrong AmbientOcclusion on refractive materialsClément Foucault
This is because the refractive materials were using the deferred AO computation instead of tracing their own.
2021-03-15EEVEE: Contact Shadow: Fix self intersection issuesClément Foucault
This was cause by the change of some epsilon values for reflections. This commit changes the planar reflection tracing to have correct handling of parallel rays and discard any self intersection with normal screen raytrace.
2021-03-15Cleanup: EEVEE: Remove unused variableClément Foucault
2021-03-14EEVEE: Specular Occlusion: Avoid overdarkening on smooth surfacesClément Foucault
Accumulate error caused by the low amount of integration slices and correct it for the low roughness surfaces. This increases light leak but it is less distracting than dark fringe everywhere.
2021-03-14Cleanup: EEVEE: Replace `brightness()` by `max_v3()`Clément Foucault
It is more straightforward to understand and is define in common file.
2021-03-14EEVEE: RenderPass: Fix Ambient Occlusion passClément Foucault
The shader was not using the horizon texture and was trying to trace the AO again. Also the depth reconstruction was off because now using the maxzBuffer.
2021-03-14Cleanup: EEVEE: Remove the horizon search layered shaderClément Foucault
This shader is of no use now that we the fullres hizbuffer.
2021-03-14EEVEE: Planar reflections: Fix ambient occlusion broken in reflectionsClément Foucault
Use the maxzbuffer to get the correct depth information.
2021-03-13EEVEE: ScreenSpaceReflections: Avoid outputing NaNsClément Foucault
This happens when the normal is too much deformed to give valid reflection even after ensure_valid_reflection. Cycles seems to not handle this case either so we just discard the rays.
2021-03-13Fix T86476 EEVEE: SSS material with variable radius can produce NaNsClément Foucault
Simple divide by 0 error. The input radius was assumed to be safe but is not when the user can scale it arbitrarly. This also move the division out of the loop.
2021-03-13EEVEE: Fix wrong sss component being affected by alphaClément Foucault
This fixes NaNs / blown up values when using alpha-hashed transparency or alpha clip with SSS.
2021-03-13EEVEE: ScreenSpaceReflections: Add back multi ray-hitpoint reuseClément Foucault
We now reuse 9 hitpoints from the neighboorhood using a blue noise sample distribution as mentionned in the reference presentation. Reusing more rays does however make some area a bit more blury. The resulting noise is quite lower compared to previous implementation which was only reusing 4 hits.
2021-03-13EEVEE: ScreenSpaceReflections: Increase depth thresholdClément Foucault
This avoids going through geometry when ray have certain angle.
2021-03-13EEVEE: ScreenSpaceReflections: Jitter starting texelClément Foucault
This make sure the rays are generated randomly from a fullres texel center. This creates more noise but increase the convergence when doing half res tracing.
2021-03-13EEVEE: Fix split commitClément Foucault
2021-03-13Cleanup: EEVEE: Split effect_ssr.glslClément Foucault
This split is to make code easier to manage and rename the files to `effect_reflection_*` to avoid confusion. Also this cleans up a bit of the branching mess in the trace shader.
2021-03-13Cleanup: EEVEE: Remove hammersley texture and split hammersley codeClément Foucault
2021-03-13Cleanup: EEVEE: Make bsdf_sampling_lib.glsl more tidyClément Foucault
2021-03-10EEVEE: ScreenSpaceReflections: Improve minimal hit thresholdClément Foucault
This makes the hit delta threshold dependant on the ray angle. If the ray is more aligned with the view, its intersection threshold gets bigger to avoid going through geometry. This improves reflections and fix T86448 refraction issue.
2021-03-10Cleanup: EEVEE: Remove unused function and fix commentClément Foucault
2021-03-10Fix T86429 EEVEE: Ambient occlusion broken on some platformClément Foucault
This was cause by a division by 0 if the ray direction had no depth difference. Adding a small epsilon fix the issue.
2021-03-10EEVEE: ScreenSpaceReflections: Add back support for planar reflectionsClément Foucault
We now have a new buffer to output reflection depth. This buffer is only usefull for non planar SSR but we use it to tag the planar rays. This also touch the raytrace algo for planars to avoid degenerate lines on vert sharp reflections.