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
2017-08-19Merge branch 'blender2.8' into strand_editmodeLukas Tönne
2017-08-19Eevee: Bloom: Add Bloom ColorClément Foucault
Moar artistic control yay!
2017-08-19Eevee: Bloom: Add Clamp settingClément Foucault
It's purpose is to limit the amount of light that spread across the screen. Not entierly sure if it's very usefull, but it sure help to avoid to drown the screen in bloom.
2017-08-19Eevee: Fix problem with GPU_texture_generate_mipmapClément Foucault
This function was called to recreate the lower mip level of the probe texture. But this is not it's usage and it introduced a stall. This patch add cubemap mipmap level regeneration in eevee_effects.c
2017-08-18Implement control strands generation for basic hair types along surface normals.Lukas Tönne
The default hair group type uses vertex normals to generate guide strands automatically.
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-18Eevee: Add some utils functionsClément Foucault
2017-08-18Eevee: MinmaxZ: Avoid unecessary conversions.Clément Foucault
2017-08-18Eevee: Fix some problem with Glass & Diffuse BSDF with SSRClément Foucault
Diffuse was not outputing the right normal. (this is not a problem with SSR actually) Glass did not have proper ssr_id and was receiving environment lighting twice. Also it did not have proper fresnel on lamps.
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-14Removed fiber drawing from the strand edit mode to simplify code.Lukas Tönne
For rendering hair fibers the edit mode should just use the underlying data.
2017-08-14Hair drawing data based on the new DNA hair groups.Lukas Tönne
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-12Eevee: Fix and opimize MinMaxZ generation.Clément Foucault
2017-08-11Eevee: SSR: Change clamp default.Clément Foucault
2017-08-11Eevee: Refraction: Fix low roughness artifact.Clément Foucault
2017-08-11Eevee: Re: Fix NaNClément Foucault
This should be faster and apparently more stable.
2017-08-11Eevee: SSR Clamp color when blurring buffers.Clément Foucault
This effectivly reduce firefly bleeding all over the place. We still need the clamp in the resolve pass because the level 0 has not been clamped. NOTE: I did not clamped each sample individually for performance BUT I did not profile it to know how much it cost.
2017-08-11Eevee: Fix NaNClément Foucault
This was surely cause by float overflow. Limit roughness in this case to limit the brdf intensity. Also compute VH faster. Add a sanitizer to the SSR pass for investigating where NANs come from. Play with the roughness until you see where the black pixel is / comes from.
2017-08-10Eevee: Refraction: Add "thickness" parameter.Clément Foucault
This enables to fake a second refraction event. This is great to simulate thin planar objects such as glass panels.
2017-08-10Eevee: Fix multiply blend mode.Clément Foucault
2017-08-10Eevee: Refraction: Make it available for opaque materials.Clément Foucault
Theses Materials are rendered after the SSR pass. The only difference with previous method is that they have a depth prepass (less overdraw) and are not sorted.
2017-08-10Eevee: Fix AO not working.Clément Foucault
2017-08-10Eevee: Add Screen Space Refraction.Clément Foucault
For the moment the only way to enable this is to: - enable Screen Space REFLECTIONS. - enable Screen Space Refraction in the SSR parameters. - enable Screen Space Refraction in the material tab.
2017-08-10Eevee: Refraction: Fix border artifacts.Clément Foucault
2017-08-10Eevee: SSR: Fix cone footprint estimation.Clément Foucault
2017-08-10Eevee: SSR: Blur Mipmaps more.Clément Foucault
Cost is negligeable (Only 0.02 ms more) and it improve stability.
2017-08-10Eevee: SSR: Refine Raytrace Algorithm.Clément Foucault
We track the previous ray position offseted by the thickness. If the sampled depth is between this value and the current ray position then we have a hit. This fixes rays that are almost colinear with the view vector. Thickness is now only important for rays that are comming back to the camera. As a consequence, this simplify a lot of things. Also include some refactor.
2017-08-10Eevee: Correct Mipmap texel alignment.Clément Foucault
Since we are working with non power of 2 textures, the mipmap level UV does not line up perfectly. This resulted in skewed filtering and bad sampling of the min/max depth buffer.
2017-08-10Eevee: Add Refraction via probes.Clément Foucault
2017-08-10Eevee: Small code codestyle and fixes.Clément Foucault
Rename get_specular_dominant_dir to get_specular_reflection_dominant_dir. Add Zero length N check everywhere.
2017-08-10Eevee: LUT generation.Clément Foucault
We generate a 3D lut to precompute the btdf intensity. I decided to use a 64*64*16 (N dot V, ior, roughness) because the btdf varies less with roughness than with IOR. We also remap the ior to better use the space in the LUT.
2017-08-10Eevee: Add precomputed BTDF LUT.Clément Foucault
2017-08-07Merge branch 'blender2.8' of git.blender.org:blender into strand_editmodeLukas Tönne
2017-08-06Prototype hair deformers for generated detail like clumping and curling.Lukas Tönne
Currently only clumping and curls are implemented. There is no proper input for the parameters yet, these are just hardcoded atm. Eventually the hair system should either define uniform values from hair system settings or enable per-fiber values using a material or other node-based input.
2017-08-03Subdivision of hair fibers for smoother shading.Lukas Tönne
Subdivision works on the parent strands for efficiency. The fibers lengths are based on the final subdivided length of parents, so no changes to the shader are required. This would be nicer with a tesselation shader, but this feature is not available in Blender 2.8.
2017-08-03Use a 2D texture for the hair interpolation data instead of 1D for larger ↵Lukas Tönne
number of hairs. It turns out that 1D textures have the same size limit on their 1 axis as 2D textures. This limits the potential number of hair dramatically, even though the actual size of the texture is very small. Using a 2D texture and wrapping the index avoids this problem.
2017-08-02Moved the hair fiber shader from strand edit mode into Eevee.Lukas Tönne
This allows the shader to use proper lighting from the standard Eevee shaders. The code for interpolating hair strands is in a glsl library file to facilitate use in other engines later.
2017-07-31Eevee: SSR: Change clamp to a real clamp and add Max Roughness.Clément Foucault
Clamp will now works as in Cycles. Max roughness limit ssr to a certain roughness level: for noise / performance tweaking.
2017-07-31Eevee: Draw background after depth prepass.Clément Foucault
Reduce overdraw. 0.4ms goes to 0.01ms if background is completely occluded.
2017-07-31Eevee: SSR: Rewrote the raytracing algorithm.Clément Foucault
It now uses a quality slider instead of stride. Lower quality takes larger strides between samples and use lower mips when tracing rough rays. Now raytracing is done entierly in homogeneous coordinate space. This run much faster. Should be fairly optimized. We are still Bandwidth bound. Add a line-line intersection refine. Add a ray jitter between the multiple ray per pixel to fill some undersampling in mirror reflections. The tracing now stops if it goes behind an object. This needs some work to allow it to continue even if behind objects.
2017-07-27Eevee: Fix probes interfeering with SSR.Clément Foucault
2017-07-27Eevee: Planar Reflection: only support mirror reflection if not using SSR.Clément Foucault
2017-07-27Eevee: Fix bloom once and for all.Clément Foucault
... Hopefully ...
2017-07-27DRW: Add stats group to eevee and object mode.Clément Foucault
2017-07-25Eevee: Fix post process with Ugly color.Clément Foucault
This was cause by some post process not always sampling the highest mipmap. But if there is no need for mipmapping (i.e. no SSR) these levels will be undefined. So forcing all Post FX shader to sample level 0 fix this.
2017-07-25Eevee: SSR: Add support for planar probes.Clément Foucault
This add the possibility to use planar probe informations to create SSR. This has 2 advantages: - Tracing is less expensive since the hit is found much quicker. - We have much less artifact due to missing information. There is still area for improvement.
2017-07-24Eevee: Silence printfs.Clément Foucault
2017-07-24Eevee: Fix crash when saving file with motion blur.Clément Foucault
2017-07-24Eevee: Fix double buffer issue.Clément Foucault