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
path: root/source
AgeCommit message (Collapse)Author
2021-02-16Cleanup: spellingCampbell Barton
2021-02-16Workbench: Improve AntiAliasing samplingJeroen Bakker
This improves stability and convergence speed of Workbench Temporal AntiAliasing. This adds a filtering kernel (blackmann-haris, same as EEVEE/Cycles) to the temporal antialiasing sampling. We also gather neighbor pixels since they might end up in the pixel footprint. We use a 1px radius for the filter window which is a bit less than the 1.5 default of cycles and EEVEE since it does blur quite a bit more than what we have now. Another improvement is that the filtering is now in log space which improves AntiAliasing around highlights. Theses improvement may not be very useful for every day case but it was an experiment to try to make TAA usable for GPencil. Test file used : {F9798807} |filtered+logspace|filtered|original| |{F9798847}|{F9798848}|{F9798849}| Reviewed By: jbakker Differential Revision: https://developer.blender.org/D10414
2021-02-16Merge branch 'blender-v2.92-release'Nicholas Rishel
# Conflicts: # intern/ghost/intern/GHOST_SystemWin32.cpp # intern/ghost/intern/GHOST_WindowWin32.cpp # intern/ghost/intern/GHOST_WindowWin32.h
2021-02-16Revert Wintab High Frequency Input.Nicholas Rishel
This revert removes handling of cursor move and button press events during Wintab's WT_PACKET event, instead storing pressure and tilt information to be combined with Window's WM_MOUSEMOVE events. This also reverts dynamic enabling and disabling of Wintab, dependent on the chosen Tablet API. If the Tablet API is not explictly Windows Ink during startup, Wintab is loaded and enabled. Left in place is a fallback to Windows Ink when the Tablet API is set to Automatic and no Wintab devices are present. This allows devices with Wintab installed but not active to fallback to Windows Ink. Using position provided by Wintab was found to have too many regressions to include in Blender 2.93. The primary source of regressions was tablets which mapped coordinates incorrectly on multi- monitor and scaled displays. This resulted in an offset between what the driver controlled Win32 cursor position and the Wintab reported position. A special case of this included tablets set to mouse mode, where Wintab reported absolute position while the system cursor moved as a relative mouse with mouse acceleration.
2021-02-16Docs: add a docstring for UserDef.pythondirCampbell Barton
2021-02-16Fix reloading preferences ignoring 'script_directory'Campbell Barton
Reloading preferences didn't update Python's `sys.path` to account for the modified `script_directory`. This meant the operator to load settings from a previous version required a restart to initialize Python when this directory was set.
2021-02-16UI: Clarify descriptions in properties popoverNathan Craddock
Updates the descriptions and labels for outliner sync in the properties editor popover to be more clear. Differential Revision: https://developer.blender.org/D10010
2021-02-16UI: Clarify descriptions in properties popoverNathan Craddock
Updates the descriptions and labels for outliner sync in the properties editor popover to be more clear. Differential Revision: https://developer.blender.org/D10010
2021-02-15Fix T85587: Crash on selecting multiple framesFalk David
Blender would crash when selecting multiple keyframes while multiframe edit was active. This was due to the active frame being NULL in some instances. The fix checks if the active frame is not NULL. Reviewed By: antoniov Maniphest Tasks: T85587 Differential Revision: https://developer.blender.org/D10421
2021-02-15macOS: add Embree, OpenImageDenoise and sse2neon libraries for ARMBrecht Van Lommel
This required using a fork of Embree, newer LLVM version, unreleased ISPC version and sse2neon directly from Git. Hopefully over time all the required changes end up in official releases. For now we deviate from other platforms. Based on contributions by Apple and Stefan Werner. Ref D9527, D8237, T78710
2021-02-15Merge branch 'blender-v2.92-release'Falk David
2021-02-15Fix T85499: Crash on switching to edit mode with uv editor openFalk David
A fix for T83187 (rBf83aa830) assumed in the overlay code of the uv editor that the object was a mesh when it did not have to be - causing a crash. The fix makes sure that the object is a mesh. Reviewed By: jbakker, campbellbarton Maniphest Tasks: T85499, T85495 Differential Revision: https://developer.blender.org/D10369
2021-02-15UI/Nodes: Adding node groups via drag & drop (e.g. from Asset Browser)Julian Eisel
Adds `NODE_OT_add_group` operator to add a node group from a given name, and uses that to register a node editor drop-box. When dropping a node-group asset, the ID will be appended. This is what we do for other ID assets too. Should the node group insertion fail (e.g. the group is not compatible with the current tree, as checked by the poll), the appended data-block is removed. Differential Revision: https://developer.blender.org/D10405 Reviewed by: Jacques Lucke
2021-02-15Merge branch 'blender-v2.92-release'Jacques Lucke
2021-02-15Fix T84624: node group data-block has phantom userJacques Lucke
This is because the node editor added a "real user" to the node group that it displays. It was mainly added as a hack to solve issues with custom tree types (T36024). Since we can store id references in custom properties now, this "real user" is not really necessary anymore. Given that we are close to a release, I'll only disable line for geometry nodes, for which the bug has been reported. Discussed this solution with Hans Goudey.
2021-02-15Fix: wrong clang tidy cleanupJacques Lucke
This reverts a part of rBd3960164163c910d5031a8f076c41b39e0a5503d. It is not a `std::shared_ptr` but a `boost::shared_ptr`. This could probably be fixed differently, but `NOLINT` is fine now.
2021-02-15Cleanup: Remove code duplication (merge error)Falk David
2021-02-15Cleanup: clang tidyJacques Lucke
2021-02-15Cleanup: Spelling in function nameSergey Sharybin
2021-02-15FFmpeg: Improve multi-threading settings for VSE proxiesPeter Fog
Following code from D8627 this patch corrects multi threaded processing of proxies, where a 60 sec proxy generation drops to 35 sec. Differential Revision: https://developer.blender.org/D8659
2021-02-15FFmpeg: Improve multi-threading settingsSergey Sharybin
Allow use all system threads for frame encoding/decoding. This is very straightforward: the value of zero basically disables threading. Change threading policy to slice when decoding frames. The reason for this is because decoding happens frame-by-frame, so inter-frame threading policy will not bring any speedup. The change for threading policy to slice is less obvious and is based on benchmark of the demo files from T78986. This gives best performance so far. Rendering the following file went down from 190sec down to 160sec. https://storage.googleapis.com/institute-storage/vse_simplified_example.zip This change makes both reading and writing faster. The animation render is just easiest to get actual time metrics. Differential Revision: https://developer.blender.org/D8627
2021-02-15Attributes: return refined Attribute from attributes.new methodJacques Lucke
Previously `mesh.attributes.new(...)` would return a generic attribute that one could not do much with. Now it returns refined attributes like `FloatAttribute`.
2021-02-15Merge branch 'blender-v2.92-release'Sergey Sharybin
2021-02-15Cleanup: Use enum class for CryptomatteLayerState.Jeroen Bakker
2021-02-15Cleanup: Grammar in commentsJeroen Bakker
2021-02-15Fix: incorrect versioning for Attribute Randomize nodeJacques Lucke
2021-02-15Cleanup: unused variableJacques Lucke
2021-02-15Fix T71960: Malformed .bmp files lead to crashSergey Sharybin
Add a boundary check, avoiding access past actual data. Ideally would need to report error to the user somehow, but it doesn't seem to be easy to do. This is a minimal safe patch. The proper complete fix is being worked on by Jesse. Differential Revision: https://developer.blender.org/D10357
2021-02-15Fix T85633: Misspelling of "neighborhood" in descriptionHans Goudey
2021-02-14Merge branch 'blender-v2.92-release'Falk David
2021-02-14Fix T85488: Display units inset operatorFalk David
The inset operator would display the inset thickness and depth as Blender units during transform. This meant that when the scene units were set to something different than meters, the display value would give different results than entering the same number using the value input. (Similar to D10325) The fix makes sure that the numbers are always displayed in the correct scene units. Reviewed By: campbellbarton Maniphest Tasks: T85488 Differential Revision: https://developer.blender.org/D10366
2021-02-14Cleanup: spellingCampbell Barton
2021-02-14Cleanup: Simplify geometry nodes attribute API usageHans Goudey
Getting an "ouput" attribute is equivalent to creating an attribute and then getting a write attribute. Replace the latter with the former for consistency with other code, and to decrease the used surface area of the attribute API to hopefully facilitate future cleanup.
2021-02-14Cleanup: use doxy sectionsCampbell Barton
2021-02-14Cleanup: use return argument prefixCampbell Barton
2021-02-14Cleanup: correct/update commentsCampbell Barton
2021-02-14Cleanup: unused functionCampbell Barton
2021-02-14Cleanup: remove commented logic for Alt-Pad0 to use previous cameraCampbell Barton
While this could be useful, it's been removed since 2.4x, keeping this here doesn't help add it back since it would need to be re-implemented.
2021-02-14Cleanup: spellingCampbell Barton
2021-02-14Cleanup: Source Code Typosluzpaz
Corrects approximately 36 spelling errors in source variable names. Differential Revision: https://developer.blender.org/D10347 Reviewed by Hans Goudey
2021-02-13EEVEE: Fix glass with sharp distribution not ignoring roughnessClément Foucault
2021-02-13EEVEE: Change cubemap roughness fitClément Foucault
This changes the roughness mapping to better utilize the mip chain resolution. This improves glossy reflections with small roughness. Lightcache version bumped because old data does not have the same roughness mapping and cannot be used.
2021-02-13EEVEE: Update Offline LUTClément Foucault
This follows a change in the LUT generation code.
2021-02-13EEVEE: Update LUT GGX generation shaderClément Foucault
This modifies the principled BSDF and the Glass BSDF which now have better fit to multiscatter GGX. Code to generate the LUT have been updated and can run at runtime. The refraction LUT has been changed to have the critical angle always centered around one pixel so that interpolation can be mitigated. Offline LUT data will be updated in another commit This simplify the BTDF retreival removing the manual clean cut at low roughness. This maximize the precision of the LUT by scalling the sides by the critical angle. I also touched the ior > 1.0 approximation to be smoother. Also incluse some cleanup of bsdf_sampling.glsl
2021-02-13EEVEE: Fix incorrect fresnel function.Clément Foucault
The optimized version was not correct. Also it is not showing any benefit over the non optimized version.
2021-02-13EEVEE: Refactor closure_lit_lib.glslClément Foucault
This refactor was needed for some reasons: - closure_lit_lib.glsl was unreadable and could not be easily extended to use new features. - It was generating ~5K LOC for any shader. Slowing down compilation. - Some calculations were incorrect and BSDF/Closure code had lots of workaround/hacks. What this refactor does: - Add some macros to define the light object loops / eval. - Clear separation between each closures which now have separate files. Each closure implements the eval functions. - Make principled BSDF a bit more correct in some cases (specular coloring, mix between glass and opaque). - The BSDF term are applied outside of the eval function and on the whole lighting (was separated for lights before). - Make light iteration last to avoid carrying more data than needed. - Makes sure that all inputs are within correct ranges before evaluating the closures (use `safe_normalize` on normals). - Making each BSDF isolated means that we might carry duplicated data (normals for instance) but this should be optimized by compilers. - Makes Translucent BSDF its own closure type to avoid having to disable raytraced shadows using hacks. - Separate transmission roughness is now working on Principled BSDF. - Makes principled shader variations using constants. Removing a lot of duplicated code. This needed `const` keyword detection in `gpu_material_library.c`. - SSR/SSS masking and data loading is a bit more consistent and defined outside of closure eval. The loading functions will act as accumulator if the lighting is not to be separated. - SSR pass now do a full deferred lighting evaluation, including lights, in order to avoid interference with the closure eval code. However, it seems that the cost of having a global SSR toggle uniform is making the surface shader more expensive (which is already the case, by the way). - Principle fully black specular tint now returns black instead of white. - This fixed some artifact issue on my AMD computer on normal surfaces (which might have been some uninitialized variables). - This touched the Ambient Occlusion because it needs to be evaluated for each closure. But to avoid the cost of this, we use another approach to just pass the result of the occlusion on interpolated normals and modify it using the bent normal for each Closure. This tends to reduce shadowing. I'm still looking into improving this but this is out of the scope of this patch. - Performance might be a bit worse with this patch since it is more oriented towards code modularity. But not by a lot. Render tests needs to be updated after this. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D10390 # Conflicts: # source/blender/draw/engines/eevee/eevee_shaders.c # source/blender/draw/engines/eevee/shaders/common_utiltex_lib.glsl # source/blender/draw/intern/shaders/common_math_lib.glsl
2021-02-13Fix geometry nodes build error with TBB enabled and OpenVDB disabledBrecht Van Lommel
Don't rely on TBB includes coming along with OpenVDB.
2021-02-13Fix T85573: Building with Python 3.10a5 failsCampbell Barton
Replace deprecated _PyUnicode_AsString{AndSize} usage. T83626 still needs to be resolved before 3.10 is usable.
2021-02-13Fixes T84651: Weight paint gradient doesn't auto-normalize weightsCampbell Barton
Auto-normalize when the option is enabled. Ref D10239 by @PratikPB2123 with minor edits.
2021-02-13Merge branch 'blender-v2.92-release'Antonio Vazquez