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-01-23CMake: Refactor external dependencies handlingSergey Sharybin
This is a more correct fix to the issue Brecht was fixing in D6600. While the fix in that patch worked fine for linking it broke ASAN runtime under some circumstances. For example, `make full debug developer` would compile, but trying to start blender will cause assert failure in ASAN (related on check that ASAN is not running already). Top-level idea: leave it to CMake to keep track of dependency graph. The root of the issue comes to the fact that target like "blender" is configured to use a lot of static libraries coming from Blender sources and to use external static libraries. There is nothing which ensures order between blender's and external libraries. Only order of blender libraries is guaranteed. It was possible that due to a cycle or other circumstances some of blender libraries would have been passed to linker after libraries it uses, causing linker errors. For example, this order will likely fail: libbf_blenfont.a libfreetype6.a libbf_blenfont.a This change makes it so blender libraries are explicitly provided their dependencies to an external libraries, which allows CMake to ensure they are always linked against them. General rule here: if bf_foo depends on an external library it is to be provided to LIBS for bf_foo. For example, if bf_blenkernel depends on opensubdiv then LIBS in blenkernel's CMakeLists.txt is to include OPENSUBDIB_LIBRARIES. The change is made based on searching for used include folders such as OPENSUBDIV_INCLUDE_DIRS and adding corresponding libraries to LIBS ion that CMakeLists.txt. Transitive dependencies are not simplified by this approach, but I am not aware of any downside of this: CMake should be smart enough to simplify them on its side. And even if not, this shouldn't affect linking time. Benefit of not relying on transitive dependencies is that build system is more robust towards future changes. For example, if bf_intern_opensubiv is no longer depends on OPENSUBDIV_LIBRARIES and all such code is moved to bf_blenkernel this will not break linking. The not-so-trivial part is change to blender_add_lib (and its version in Cycles). The complexity is caused by libraries being provided as a single list argument which doesn't allow to use different release and debug libraries on Windows. The idea is: - Have every library prefixed as "optimized" or "debug" if separation is needed (non-prefixed libraries will be considered "generic"). - Loop through libraries passed to function and do simple parsing which will look for "optimized" and "debug" words and specify following library to corresponding category. This isn't something particularly great. Alternative would be to use target_link_libraries() directly, which sounds like more code but which is more explicit and allows to have more flexibility and control comparing to wrapper approach. Tested the following configurations on Linux, macOS and Windows: - make full debug developer - make full release developer - make lite debug developer - make lite release developer NOTE: Linux libraries needs to be compiled with D6641 applied, otherwise, depending on configuration, it's possible to run into duplicated zlib symbols error. Differential Revision: https://developer.blender.org/D6642
2020-01-23Make deps: Fix zlib symbols defined twiceBrecht Van Lommel
We compile zlib as own dependency, but are not informing BLOSC to use it. This leads to zlib symbols defined twice when linking Blender: one set comes from libz.a and another one from libblosc.a. Tested on Linux Debian testing and CentOS 7.5. It is possible that this change on its own will lead to linking errors after libraries are re-compiled, This will be fixed as a dedicated fix to Blender's build system. Reviewed By: brecht, mont29, LazyDodo Differential Revision: https://developer.blender.org/D6641
2020-01-23Fix T73327: GPencil strength sculpt brush not working with small brush radiusAntonio Vazquez
The problem was related to the smooth of the strength. As the factor was very low and the value was smoothed , the result was almost nothing when the radius was very small. Now the factor is higher and the smooth is done after clamping pressure.
2020-01-23Fix T67050 Overlay: Forcefield limits are not dashedClément Foucault
This adds some kind of dashing to the tube and cone limits. Although the dashing is in object space and is not a good as old dashing. But it is the least time consuming and least complex solution.
2020-01-23Fix T66956 EEVEE: NaN produced by bad geometry mess with the DoFClément Foucault
Sanitize the source of the depth of field.
2020-01-23Fix T73335 Overlay: Light Distance line does not represent custom distanceClément Foucault
This is a fix to the issue that light distance line end does not represent anything now that shadow bounds are computed automatically.
2020-01-23Fix T71311 Bridge Edge Loops crash when bridging cube edgesSybren A. Stüvel
This commit will prevent the crash. It does produce a result that may not be desirable (only briding one face of the cube), but at least it's better than crashing.
2020-01-23Fix T73279: Particle Rotation checkbox enabled when a bake existsSybren A. Stüvel
The contents of the Rotation panel was already disabled when a bake exists, but the checkbox in the header wasn't. Since rotations are part of the baked data, it doesn't make sense to enable/disable rotations after baking.
2020-01-22Fluid: Cleaned up functions that deal with Python objects (C-API)Sebastián Barschkis
This commit belongs to T72894. It's related to (my) previous commits on pointer exchanges (today + yesterday). It cleans up the functions by describing their usage in the comments, adds additional nullptr checks, and fixes the reference count responsibilities of newly created PyObjects.
2020-01-22Fluid: Refactored Mantaflow <-> Blender pointer exchange once moreSebastián Barschkis
2020-01-22Fix T71344: Optix render errors with motion blur and unknown bone constraint ↵Patrick Mours
relationship The OptiX SRT motion expects a motion defined by translation, rotation, shear and scale, but the matrix decomposition code in Cycles was not able to extract shear information and instead produced a stretch matrix with the information baked in. This caused conflicting transforms between traversal and shading and lead to render artifacts. This patch changes the matrix decomposition to produce factors inline with what OptiX expects to fix that. Reviewed By: brecht Differential Revision: https://developer.blender.org/D6605
2020-01-22Fix wrong DNA alignment on arm{el,hf} and mipselSergey Sharybin
Technically, pointers are to be padded with followup pointer.
2020-01-22Fix T69921: VSE - Waveforms unnecessary redrawn on offset changeRichard Antalik
Waveform is freed in `sound_load_audio()` when sound length is `queried by BKE_sound_info_get()`. Add argument free_waveform, so `BKE_sound_info_get()` can skip waveform freeing, as it is not expected to alter sound. Reviewed By: sybren Differential Revision: http://developer.blender.org/D6053
2020-01-22Fix T73311: Mantaflow > Liquid: Enabling Initial Velocity on Inflow / ↵Sebastián Barschkis
Outflow crashes Blender
2020-01-22Fix T72894: Mantaflow: several crashes due to null pointersSebastián Barschkis
Incorporated LazyDodo's suggestions from the task.
2020-01-22Fix Blender DMG bundling for macOS failing on buildbotBrecht Van Lommel
The change from D6462 caused a permission prompt. Setting the user and group UID appears unnecessary to fix the issue, so leave just the mode.
2020-01-22UI: rename transparency to opacityCampbell Barton
Calling it transparency makes value seem inverted, resolves T73306.
2020-01-22Fix T70415 100% proxy files playing with poor performanceRichard Antalik
Refactor code to use `eSpaceSeq_Proxy_RenderSize` or corresponding `IMB_Proxy_Size` enum items directly. `SEQ_PROXY_RENDER_SIZE_100` has assigned value 99 to distinguish from `SEQ_PROXY_RENDER_SIZE_FULL`. This caused error in image size calculation and because of that image had to be scaled. Author: EitanSomething Reviewed By: ISS Differential Revision: http://developer.blender.org/D6368
2020-01-21Fix numerical instabilities of solidify with complex constraintsHenrik Dick
Sometimes on flat open vertices the thickness would suddenly start to be jumping in powers of 2, also when bending a plane there is a noticeable jump in the geometry. When offset is set to -1 or 1 weird glitches happen. See D6559 for test cases that failed.
2020-01-21Fix T72619: Fix/implement support of particle modifiers in liboverride.Bastien Montagne
Some modifiers (like particle system, but also some other physics simulations) require extra steps besides creating the modifier itself, so had to switch to higher-level `ED_object_modifier_add()` to add inserted modifiers in an overriding object data-block. Due to how particle modifier handles copying, some extra nasty hacks/work-around were also needed to get it working.
2020-01-21Make ED_object_modifier_add() accept NULL scene parameter.Bastien Montagne
This data is only used to get current time/frame value, which is never mandatory to add a modifier. Needed by incoming fix to support particles modifiers in liboverrides.
2020-01-21Fluid: Refactored the Mantaflow <-> Blender pointer exchange function and ↵Sebastián Barschkis
switched to from NULL to nullptr in cpp files
2020-01-21Fix T72459: Mask Modifier breaks Vertex ParentingSybren A. Stüvel
The `give_parvert()` function was only considering the mesh's original vertex indices when the parent vertex index was valid for the evaluated mesh. However, when using the Mask modifier the evaluated mesh can have less vertices but still have the parent vertex. Since the `if (nr < numVertex)` condition wasn't used to prevent any out-of-bounds access, and seems just an incorrect optimisation, it could be removed.
2020-01-21libs/windows: Prevent USD exports from leaking into blender binary.Ray Molenkamp
Even though we build USD as static, it still feels the need to mark its symbols with declspec(dllexport) which means the blender binary now exports these symbols. this patch fixes that unwanted behaviour, however USD libs still need to rebuild before this becomes visible in the blender binary Differential Revision: https://developer.blender.org/D6563 Reviewed By: sybren
2020-01-21Fix: Building with clang on windows.Ray Molenkamp
The USD landing broke building with clang on windows due to a couple of reasons: 1) Some incompatibilities in their headers [1] only one of them was important for us and is included in our patchset now. 2) clangs lld wanted the full path to the libusd_b library when using the whole archive link option, while msvc can figure it out from just the library name. Tested with clang/msvc and msbuild and ninja generators [1] https://github.com/PixarAnimationStudios/USD/issues/1030
2020-01-21Docs: describe turn-table gimble lock mitigationCampbell Barton
2020-01-21Fix T73297: Incorrect lock properties tooltipCampbell Barton
2020-01-21Fix T73233: Image Editor Color Picker CrashJeroen Bakker
When using the color picker on a image editor it tries to read the color from the original image. When there is no original image the code crashes during the determination of the UDIM tile number. There are 2 approaches to solve this. 1. Modify `BKE_image_get_tile_from_pos` to support NULL pointers. 2. Modify `ED_space_image_color_sample` with an early exit. This patch modifies `ED_space_image_color_sample` with an early exit. Reviewed By: brecht Differential Revision: https://developer.blender.org/D6629
2020-01-21Fix T73295: Incorrect BMesh volume calculationCampbell Barton
Use double precision since volume calculation is susceptible to float precision errors.
2020-01-21Fix T72216 Copied Particles not refreshing in the viewportSybren A. Stüvel
The depsgraph was not tagged for relations update after the copy, which means it was incomplete and thus didn't update the copied particle sim.
2020-01-21Industry Compatible Keymap: use MMB to access the active toolCampbell Barton
Fallback tools are used on LMB, MMB accessed the active tool.
2020-01-21Fix T70891: Motion Path - Changing endframe clamps startframe to 1Sybren A. Stüvel
There were two strange things going on: - Start frame was clamped to 1, even when frame 0 is always a valid number. This also ignored the 'Allow Negative Frames' user preference. - Start frame was only clamped when setting the end frame, so first setting the end frame and then the start frame would result in a different result than doing it in the opposite order. This commit fixes both issues by: - Clamping the lower bound of the start frame only if negative frames are not allowed, and - apply that clamp both when setting the start and the end frame.
2020-01-21Fix T61259: Loop Cut with Trackpad or MagicMouseYevgeny Makarov
2020-01-21Fix T72213: F-Curve animation does not update FreeStyle propertiesSybren A. Stüvel
FreeStyle line styles were not part of the dependency graph, and blacklisted from the Copy-on-Write system. As a result, animated FreeStyle properties would not be updated by the animation system, resulting in T72213. There was an explicit call to run the animation system on the original datablocks, but that was (for good reasons) removed in D5394. This commit adds the FreeStyleLineStyle datablocks to the dependency graph and allows them to be handled by the CoW system. As a result - the UI now updates properly when properties are animated, and - animated property values are actually used when rendering. This commit includes @Sergey's patch P1222, which unifies two bits of code that did the same thing: check whether datablock type is covered by copy-on-write. Reviewed By: sergey, brecht Differential Revision: https://developer.blender.org/D6609
2020-01-21Fix T62882: Make Dynamic Paint update weights in viewportNico Zevallos
Related to T62882 When the SupportsMapping modifier flag was added to the dynamic paint modifier it was added commented out. It may have not worked back then, but it seems to work fine now. MOD_weightvgedit.c was already updated similarly. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D6072
2020-01-21Windows: Update platform_win32.cmake to boost 1.70Ray Molenkamp
to match the updated libs in svn.
2020-01-21Partial Fix T73043: Denoising Albedo not working well for SheenLukas Stockner
Similar to the Microfacet Closures, the Principled BSDF Sheen closure is added at a high weight but typically results in fairly low values. Therefore, the default weight is a bad indicator of importance. The fix here is the same as it was back then for Microfacets: Compute an average weight using the normal as the half-vector and use it to scale down the sample weight and the albedo channel. In addition to drastically improving denoising of materials with sheen when using the new Denoising node, this also can reduce noise on such materials considerably.
2020-01-20Fix T73110: UDIM Texture Paint CrashPhilipp Oeser
This would happen if a tile is found on disk, painting would actually request that tile (because corresponding uvs were in that range), but that tile was not added in blenders list of tiles in that Image. Need to also check tile in `image_quick_test` (regardless of iuser having passed). thx @lukasstockner97 for additional input! Maniphest Tasks: T73110 Differential Revision: https://developer.blender.org/D6578
2020-01-20Fix T72546: Video Sequencer: Select grouped 'OVERLAP' operator wrongPhilipp Oeser
selection False positive when a sequences end would be the same as active sequences start. Also thx @sybren for the heads up to make this more readable. Maniphest Tasks: T72546 Differential Revision: https://developer.blender.org/D6451
2020-01-20Overlay: Improve Outline diagonal AntialiasingClément Foucault
I doubt we can do much better. Most of the aliasing comes from the edge detection which does not use a lot of samples. We could use more samples but then the detection becomes way more complex and expensive. The second issue comes from the reconstruction (AA pass) that only bleed adjacent pixels in if their line direction is perpendicular to the offset. This makes corner gaps on certain diagonals.
2020-01-20Fix T71825: Custom Animation Player path overrides chosen playerSybren A. Stüvel
Thanks @mano-wii for providing the patch! The original code assumed that when `animation_player_preset` was not `CUSTOM`, the `animation_player` path would be empty. This is a bad assumption, as it can be quite useful to be able to toggle between a custom and a built-in player. As such, `animation_player` should not be reset to an empty string when a non-custom player is chosen.
2020-01-20Fix T73162: Modal tools cant be mapped to MMBCampbell Barton
Also rename struct members to 'launch_event', since it's more descriptive and was called this in some places.
2020-01-20Fix T73265: GPencil console error when delete frist frameAntonio Vazquez
2020-01-20Fluid: Fix for liquid domains in cache replay modeSebastián Barschkis
Added missing check that prevented bake from being executed correctly.
2020-01-20Fix T72050 Subdivide method "Straight Cut" not working with N-Gons enabledSybren A. Stüvel
'Straight Cut' is actually documented as creating N-Gons. However, the code was disallowing this. This is probably a mix-up as the "allow N-Gons" option is documented as a "force quad/tri" option.
2020-01-20Bevel: flush selection with non-modal executionCampbell Barton
2020-01-20Fix file browser not excluding AirDrop from the System list on macOSYevgeny Makarov
There is already code for this, it just wasn't working. Now add the slash after checking for an empty string. Differential Revision: https://developer.blender.org/D6568
2020-01-20Fluid: Fix for smoke domain geometry object with adaptive domain enabledSebastián Barschkis
The smoke mesh geometry always needs to be updated when using the adaptive domain.
2020-01-20Fix failing cycles_render_graph_finalize_test when building with clangRay Molenkamp
The gflags library was not fully configured to be built as a static library, only one of two files was changed. Differential Revision: https://developer.blender.org/D6611
2020-01-20Fix T73187 Overlay: Stereo 3D Camera not displaying correctlyClément Foucault