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
2018-06-29Workbench: Removed MaterialData UBOJeroen Bakker
Most of the times the materials differ due to the object_id. This was an overhead and resulted in instabilities on Intel graphical cards. This commit will revert the Material Data UBO and replace it with normal uniform.
2018-06-29Merge branch 'master' into blender2.8Campbell Barton
2018-06-28Workbench: Anti-aliasing refactorJeroen Bakker
- TAA is also enabled for Forward rendering - Uses less GPU memory (removed one history buffer) - TAA is done after the color management - consolidated the aa code between forward and deferred rendering (workbench_effects_aa.c)
2018-06-28Workbench: Removed unused code in cavity shaderJeroen Bakker
2018-06-28Workbench: Materials Texture hashJeroen Bakker
only hash the texture if it exists. Really minor improvement
2018-06-28Workbench: Fix Texture drawingJeroen Bakker
textures were not always drawn as the material did not always include the image in the hash. Not sure if this will solve all cases, but it definitely works better with this change.
2018-06-27Cleanup: styleCampbell Barton
2018-06-27Workbench: Use different samples in AO per TAA iterationJeroen Bakker
Per iteration a different AO samples are used, so the final result is less distorted. Will improve the quality of the image a lot when the cavity option is turned on.
2018-06-27Workbench: Added a quality slider for the viewportJeroen Bakker
Currently only attached to the Anti Aliasing of the solid mode of the viewport. But eventually we could add other options here. Quality setting can be found in the System tab of the userpref. The slider goes from No Antialiasing (0.0 - 0.1) to FXAA (0.1 - 0.25) to TAA8 (0.25 - 0.6) to TAA16 (0.6 - 0.8) to TAA32 (0.8 - 1.0)
2018-06-26Workbench: TAA quick fix for AMD cardsJeroen Bakker
Seems to be that mix(a, b, 1.0) will not give you b. on nvidia this is not a problem as a was initialized with 0.0, but on AMD it can be any floating point number, resulting that mix(inf, b, 1.0) was still more to inf than to b.
2018-06-26Workbench: Tempural Anti AliasingJeroen Bakker
- FXAA is now also done in the workbench_forward engine. - User can enable TAA8 in the userpref by setting their max viewport AA to TAA8. FXAA will still be used when navigating
2018-06-25Cleanup: rename object base flags to be more clear.Brecht Van Lommel
2018-06-25Cleanup: code styleCampbell Barton
2018-06-23Eevee: Fix wrong depth test in main shading pass.Clément Foucault
2018-06-22PaintMode: Full Shading Boolean => SliderJeroen Bakker
There was a Full Shading bool that was shared across the WP, VP and TP modes. This commit makes some changes: - Replace the bool with a factor. This gives the user more control on the visibility. - Also draw it on top of the Material and Rendered mode so the user can control what he needs. In certain cases you don't want to see the final rendered material, but the actual texture. - Removed the skipping of objects when in paint modes. As now the paint modes are blended.
2018-06-22Cleanup: styleCampbell Barton
2018-06-21Workbench: Remove warningJeroen Bakker
When in forward rendering and Object outline was disabled every render call created one console warning (uniform objectId not found) this commit removes this warning
2018-06-21T55570: Moved Texture drawtype as to shading popoverJeroen Bakker
the use of the texture drawtype is limited. so who should we have it this prominent on the screen. By adding it as a shading.color_type option we should save some screenspace.
2018-06-21Studiolight: Calculation of irradiance bufferJeroen Bakker
The calculation of the irradiance buffer was slow. Now it is only calculated when it is being used (background_alpha > 0.0) this solves the freeze when switching to LookDev mode. Also changed the default calculation to use the Spherical Harmonics calculation. This is able to generate the irradiance buffer fast, but is less accurate. As the irradiance buffer is only used for visual guidance speed is more important than accuracy. Added compile directive to switch between the implementations. (see STUDIOLIGHT_IRRADIANCE_METHOD) Disabled caching the irradiance buffer when STUDIOLIGHT_IRRADIANCE_METHOD_SPHERICAL_HARMONICS is used as it is not needed.
2018-06-20Studiolight: Spherical harmonicsJeroen Bakker
Compile time option to reduce the level of the SH
2018-06-20T55550: Workbench Shadows are incorrect in first draw cycleJeroen Bakker
Shadows uses the old location for light_direction. Maybe a merge conflict.
2018-06-18Workbench: increased Quality of the diffuse lighting modelJeroen Bakker
- implemented Spherical Harmonics L2 for diffuse shading. TODO: caching the precalculated harmonics so it won't take soo long to open the popover
2018-06-18Refactor: Put ViewportAA as UserPrefJeroen Bakker
By default users want AA in the viewport. For slower systems you want to be able to turn it off. As in the future we would also like to support TAA in the viewport we introduced it as a Max Viewport AA settings. Also removed the drawoption to enable/disable AA per viewport When rendering the AA is always turned on.
2018-06-17Cleanup: codestyleCampbell Barton
2018-06-16Merge branch 'master' into blender2.8Brecht Van Lommel
The Eevee AO node supports the new Normal socket, but ignores Distance, Samples, Inside and Only Local settings.
2018-06-15Workbench OpenGL render: always render alpha on 1.0Jeroen Bakker
Old implementation rendered alpha to 0.0 for background, but only during deferred rendering. We should attach this to an DNA setting and also let the forward shading respect this. But for now this is a better default
2018-06-15Workbench: Disable AA when doing opengl render.Jeroen Bakker
- OpenGL uses linear space and has its own AA. So we don't calculate when doing opengl rendering.
2018-06-15Workbench: FXAAJeroen Bakker
- do the FXAA pass after the color management. Be aware that during rendering this is still being done in linear space
2018-06-15Workbench: FXAAJeroen Bakker
FXAA implementation in the deferred renderpass of the workbench. Can be enabled per 3dview. Eventually this will also be a user setting as it is more a system/performance setting than a scene setting.
2018-06-15T55486: use GPU_R11F_G11F_B10F for target of Xray compoJeroen Bakker
2018-06-14Cleanup: styleCampbell Barton
2018-06-14Workbench: Code cleanup: Double assignmentJeroen Bakker
2018-06-14GPU: consistenly use mipmap on/off in all draw modes.Brecht Van Lommel
This is important for good texture paint performance.
2018-06-14Workbench: Material colors + settings during sculptingJeroen Bakker
2018-06-13DRW: Fix crash caused by hair transform feedbackClément Foucault
Seem to be cause by the lack of proper FBO bound.
2018-06-13Merge branch 'master' into blender2.8Brecht Van Lommel
This includes making Eevee match Cycles behavior of inserting an emission node when linking colors to closures.
2018-06-12T55454: removal of clay engineJeroen Bakker
The ClayEngine was introduced to test the blender2.8 architecture during development. As currently we have the wanted features implemented with matcaps we are going to remove the clay engine as it was never intended to be an official releasable engine Note: The test cases are never run. But when enabled will be skipped as they were implemented over the Clay Engine
2018-06-12LookDev: Move lookdev balls when menu switchesJeroen Bakker
2018-06-11MetaBall support for Workbench + EEVEEJeroen Bakker
Note: Metaballs only support the first material slot. Splicing it per material would create empty Batches. In order to overcome this we set the batch for other materials to NULL. We added extra checks in EEVEE and Workbench to not draw when the geom is NULL.
2018-06-11Workbench: Flipping MatCaps for forward shadingJeroen Bakker
2018-06-10Workbench: Xray: Fix hairs with matcaps.Clément Foucault
2018-06-10Workbench: Xray: Make dithered depth dependant on alpha.Clément Foucault
The range is 0.25 to 0.75 opacity when the Xray opacity is between 0.0 to 1.0. This is to avoid loosing completely the sense of occlusion when having no other solid drawing than the wireframe and loosing the transparency when xray alpha is at 1.0. Also replace Bayer (checkerboard) method by interlieved gradient noise to minimize the chance to loose an occluded line completely. Other noise function could be tested in the future.
2018-06-10Workbench: Xray: Make nearest surfaces more clearClément Foucault
By using equation 7 from the paper, we make the surfaces nearest to the viewpoint appear more "opaque". This gives better sense of ordering than the previous weighting function that was really not doing anything.
2018-06-10Workbench: Xray: Lower hairs opacityClément Foucault
Since hairs are very likely to owerflow the weight buffer, we divide their alpha value by 3. This might become a particle system setting if needed.
2018-06-10Workbench: Xray: Optimize and fix implementation.Clément Foucault
There was a method explained in the Weighted Blended Order-Independent Transparency paper to support hardware that does not support per render target blending function. So now only 2 geometry passes are required instead of 3 (one being the outline/depth fill pass). This also fix how the blending is done. There was some premult confusion in the implementation.
2018-06-10Fix T55423: GLSL compilation error Flat + XRayJeroen Bakker
2018-06-09Workbench: Fix material compilation.Clément Foucault
2018-06-09Eevee: Improve compilation time (reduce branching).Clément Foucault
This patch reduce the branching in the lamp loop, improving compilation time noticeably (2372ms to 1785ms for the default shader). This should not change the appearance of the shader. Performance impact is negligeable.
2018-06-09Workbench: Fix xray normal not being normalized.Clément Foucault
2018-06-09Workbench: Matcaps: Fix matcap under perspective.Clément Foucault
This fixes the problem that matcaps have when using a very larg FOV in perspective view. This was because it was stupidly using the normal direction which can not aligned with the view vector under perspective. So to workaround this problem we don't use the normal as is, but compute how much it's facing the camera. This changes how matcaps looks in perspective because they now always use the full range of the matcap (which is expected).