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
2020-07-30EEVEE: GLSL refactor/cleanupClément Foucault
- add the use of DRWShaderLibrary to EEVEE's glsl codebase to reduce code complexity and duplication. - split bsdf_common_lib.glsl into multiple sub library which are now shared with other engines. - the surface shader code is now more organised and have its own files. - change default world to use a material nodetree and make lookdev shader more clear. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D8306
2020-06-02EEVEE: Refactor of eevee_material.cClément Foucault
These are the modifications: -With DRW modification we reduce the number of passes we need to populate. -Rename passes for consistent naming. -Reduce complexity in code compilation -Cleanup how renderpass accumulation passes are setup, using pass instances. -Make sculpt mode compatible with shadows -Make hair passes compatible with SSS -Error shader and lookdev materials now use standalone materials. -Support default shader (world and material) using a default nodetree internally. -Change BLEND_CLIP to be emulated by gpu nodetree. Making less shader variations. -Use BLI_memblock for cache memory allocation. -Renderpasses are handled by switching a UBO ref bind. One major hack in this patch is the use of modified pointer as ghash keys. This rely on the assumption that the keys will never overlap because the number of options per key will never be bigger than the pointed struct. The use of one single nodetree to support default material is also a bit hacky since it won't support concurent usage of this nodetree. (see EEVEE_shader_default_surface_nodetree) Another change is that objects with shader errors now appear solid magenta instead of shaded magenta. This is only because of code reuse purpose but could be changed if really needed. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D7642
2019-06-07Eevee: Try to fix NaN caused by normal maps + bentnormalsClément Foucault
Should help with T65118.
2019-06-05Fix T65118 Eevee: NaN when using bent normalsClément Foucault
2019-06-03Cleanup: style, use braces in drawCampbell Barton
2019-05-01Cleanup: comments (long lines) in drawCampbell Barton
2019-04-17ClangFormat: apply to source, most of internCampbell Barton
Apply clang format as proposed in T53211. For details on usage and instructions for migrating branches without conflicts, see: https://wiki.blender.org/wiki/Tools/ClangFormat
2018-12-17Eevee: Change Bent normal calculationClément Foucault
This changes the bent normal effect to be a bit more subtle. I also tuned down the bent normal blending factor so mesh faceted look may appear more in occluded regions. this is to increase the fidelity of the indirect lighting. This blending might be a parameter in the future. Based the calculation on "Bent Normals and Cones in Screen-space" by O. Klehm, T. Ritschel, E. Eisemann, H.-P. Seidel
2018-11-16Cleanup: remove unused variablemano-wii
2018-09-11Eevee: Prepare for fullres tracingClément Foucault
2018-07-05Cleanup: flag checksCampbell Barton
2018-05-26Cleanup: whitespace, long lines, duplicate includeCampbell Barton
2018-01-22Eevee: Put all constant uniforms in a global UBO.Clément Foucault
This is an optimization / cleanup commit. The use of a global ubo remove lots of uniform lookups and only transfert data when needed. Lots of renaming for more consistent codestyle.
2018-01-16Eevee: AO: Removes samples and denoise options.Clément Foucault
This comes with a lot of code simplification that leads to a small performance improvement.
2017-11-25Eevee: Fix Defered AO definesClément Foucault
2017-11-01Eevee: Fix Bad AO on opaque refractive geometry.Clément Foucault
2017-10-04Eevee : Fix T52991Clément Foucault
2017-10-02Eevee : SSR : Make sure to not apply Specular Occlusion to SSR.Clément Foucault
This makes the metals shine more. Previous behaviour was not correct.
2017-08-21Eevee: Offset the for each AA sample.Clément Foucault
This means we have less overall noise for rendered image. SSR, AO, and Refraction are affected by this change. SSR still exhibit artifacts because the reconstruction pattern needs to change every frame (TODO).
2017-08-18Eevee: Rework GTAOClément Foucault
This includes big improvement: - The horizon search is decoupled from the BSDF evaluation. This means using multiple BSDF nodes have a much lower impact when enbaling AO. - The horizon search is optimized by splitting the search into 4 corners searching similar directions to help which GPU cache coherence. - The AO options are now uniforms and do not trigger shader recompilation (aka. freeze UI). - Include a quality slider similar to the SSR one. - Add a switch for disabling bounce light approximation. - Fix problem with Bent Normals when occlusion get very dark. - Add a denoise option to that takes the neighbors pixel values via glsl derivatives. This reduces noise but exhibit 2x2 blocky artifacts. The downside : Separating the horizon search uses more memory (~3MB for each samples on HD viewport). We could lower the bit depth to 4bit per horizon but it produce noticeable banding (might be fixed with some dithering).
2017-08-15Attempt to fix GLSL errors on Blender startup.Brecht Van Lommel
I couldn't reproduce either, but calling min() with different argument data types and indexing vectors with an index not known at compile time seem likely to cause problems. Ref T52404, T52404.
2017-08-13Eevee: Optimize and improve GTAO Horizon searchClément Foucault
This fix a bug when occluder are on the edge of the screen and occludes more than they should. Grouped the texture fetches together and clamp the ray at the border of the screen. Also add a few util functions.
2017-08-10Eevee: Fix AO not working.Clément Foucault
2017-07-24Eevee: HiZ buffer: Split into two 24bit depth bufferClément Foucault
This way we don't have float precision issue we had before and we save some bandwidth.
2017-06-29Eevee: Fix T51922: Avoid division by 0.Clément Foucault
Problem was caused by a division by 0 when rendering the probes. This patch make the visibility equal to 1.0 in this case.
2017-06-28Eevee: Refactor of shading code to be more modular.Clément Foucault
This will enable creating shading models more easily.
2017-06-23Eevee: Put pack AO parameters.Clément Foucault
2017-06-23Eevee: Attempt to optimize GTAO shader.Clément Foucault
Unroll horizon search loop. Use fast version of acos. On nvidia linux, unrolling the 2nd loop is giving very high compilation time.
2017-06-22Eevee: Ambient Occlusion: Enable Multibounce approximation and Change ↵Clément Foucault
influence factor. Making the influence a power for easy tuning. Works like a contrast knob.
2017-06-22Eevee: Ambient Occlusion: Initial implementation.Clément Foucault
Implement GTAO (Ground Truth Ambient Occlusion) which is a special case of Horizon Based Ambient Occlusion that is more physically accurate. Also add a bent normal option to sample indirect irradiance (diffuse lighting) with the least occluded direction.