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-11-16Transform: better contextualize the status barGermano Cavalcante
`Remove Last Snap Point` should only be displayed when there is a Snap Point to be removed.
2021-11-16Merge branch 'blender-v3.0-release'Sergey Sharybin
2021-11-16Fix crash on freeing hair systemSybren A. Stüvel
Fix a crash when a hair system's `ParticleSettings` ID datablock was linked from another file but couldn't be found. This results in default settings, with `type = PART_EMITTER`, where the particle data still has a non-NULL `hair` pointer. Previously, copies of such a particle system would NOT copy hair data for non-hair particle systems, hence the pointer of the copy pointed to the original data, which got freed (at least) twice upon closing the blend file. This is now fixed by always copying the hair data, regardless of the particle system type. Reviewed by: mont29 Differential Revision: https://developer.blender.org/D13245
2021-11-16Asset Browser: hide catalog debug info behind debug optionSybren A. Stüvel
Add a new "experimental" debug option `show_asset_debug_info`, and use that to determine the visibility of the active asset's catalog UUID and simple name. Previously this was only determined by the "Developer Extras" option, which meant it was visible in too many situations. It's not really a "developer extra", and really just a debugging tool, so the new option is more in line with its purpose. Reviewed by: Severin Differential Revision: https://developer.blender.org/D13242
2021-11-16Merge branch 'blender-v3.0-release'Julian Eisel
2021-11-16UI: Fix hard to read text for drag disabled hintsJulian Eisel
In 499dbb626acb, the background color of drag tooltips were changed so text becomes more readable. But multiple people were touching the same code, so the disabled hint tooltips didn't get the same tweak. They would benefit from them even more, since the red text is even harder to read on the transparent background than the regular, white text.
2021-11-16Merge remote-tracking branch 'origin/blender-v3.0-release'Sybren A. Stüvel
2021-11-16Tests: fix memory leak of GHOST system pathsSybren A. Stüvel
Dispose of GHOST system paths when tearing down `BlendfileLoadingBaseTest` and some other test cases. This prevents a memory leak. A better solution would be to rework Blender's initialisation & teardown structure, but that's outside the scope of this fix. No functional changes to Blender.
2021-11-16Asset Browser: Forbid dragging catalogs into themselvesJulian Eisel
While there is nothing technically that would cause issues when moving a catalog into itself (it just changes the path of the catalog, and the missing parent catalogs will be created), it seems broken to the user. So disable this in the drag & drop code for asset catalogs.
2021-11-16Geometry Nodes: refactor virtual array systemJacques Lucke
Goals of this refactor: * Simplify creating virtual arrays. * Simplify passing virtual arrays around. * Simplify converting between typed and generic virtual arrays. * Reduce memory allocations. As a quick reminder, a virtual arrays is a data structure that behaves like an array (i.e. it can be accessed using an index). However, it may not actually be stored as array internally. The two most important implementations of virtual arrays are those that correspond to an actual plain array and those that have the same value for every index. However, many more implementations exist for various reasons (interfacing with legacy attributes, unified iterator over all points in multiple splines, ...). With this refactor the core types (`VArray`, `GVArray`, `VMutableArray` and `GVMutableArray`) can be used like "normal values". They typically live on the stack. Before, they were usually inside a `std::unique_ptr`. This makes passing them around much easier. Creation of new virtual arrays is also much simpler now due to some constructors. Memory allocations are reduced by making use of small object optimization inside the core types. Previously, `VArray` was a class with virtual methods that had to be overridden to change the behavior of a the virtual array. Now,`VArray` has a fixed size and has no virtual methods. Instead it contains a `VArrayImpl` that is similar to the old `VArray`. `VArrayImpl` should rarely ever be used directly, unless a new virtual array implementation is added. To support the small object optimization for many `VArrayImpl` classes, a new `blender::Any` type is added. It is similar to `std::any` with two additional features. It has an adjustable inline buffer size and alignment. The inline buffer size of `std::any` can't be relied on and is usually too small for our use case here. Furthermore, `blender::Any` can store additional user-defined type information without increasing the stack size. Differential Revision: https://developer.blender.org/D12986
2021-11-16Merge branch 'blender-v3.0-release'Philipp Oeser
2021-11-16Fix T93066: Alembic export ignores Mantaflow particlesPhilipp Oeser
`ABCPointsWriter::is_supported` already checked for valid particle system types (liquid, spray, foam, bubbles, ...). `AbstractHierarchyIterator::make_writers_particle_systems` did not create a writer for these though, so now bring these in line and also create writers for these.
2021-11-16Cleanup: Use C++ matrix identity constructorHans Goudey
2021-11-16Cleanup: Typo in commentsRichard Antalik
2021-11-15VSE: Use alpha over as default blend modeRichard Antalik
With transform tools, it is expected to see backgroud image when overlay is transformed. Alpha over caused performance to be not optimal when used with opaque media. This should be addressed with D12914 at least partially. There may be some corner cases not addressed. Differential Revision: https://developer.blender.org/D12952
2021-11-15VSE: Use early out for aplha over blendingRichard Antalik
When scaling down image, users expect to see background, which doesn't currently happen in VSE. This is because strips use cross blend mode by default, because alpha over is much slower. Reason is, because any area of image can be transparent, and therefore it can't have early out implemented in a way that cross blend mode can. Flag images rendered by codecs that don't support transparency as fully opaque and implement a form of early out for alpha over blend mode. When rendering image stack, 2-input effects are ignored on the "way down". Alpha over needs rendered overlay image to decide whether it will use only overlay or background too. Therefore overlay can be rendered safely before it is used. Image flags can be checked and it can be freed if needed. Freeing doesn't cause any performance degradation, because image is always stored in cache. This feature does not improve blend mode performance. In summary, it only allowes for having alpha over blend mode on background images without suffering from lower performance. Reviewed By: sergey Differential Revision: https://developer.blender.org/D12914
2021-11-15Merge branch 'blender-v3.0-release'Richard Antalik
2021-11-15Fix T90592: Incorrect scrollbar range with backdropRichard Antalik
`v2d->tot` rect was set for backdrop drawing. Set range before drawing scrollbars. Reviewed By: Severin Differential Revision: https://developer.blender.org/D13099
2021-11-15Fix T90415: Missing cache invalidationRichard Antalik
Some RNA properties and operators did not invalidate cache or did it incorrectly. Reviewed By: sergey Differential Revision: https://developer.blender.org/D13101
2021-11-15Fix T91405: Block artefacts in WEBM videoRichard Antalik
Issue was caused by incorrect FFmpeg asynchronous decoding API. In most cases, decoder returns 1 frame each time it is fed by 1 packet. Here decoder wanted to return more frames, but our code always expected only one. Before sending new packets to decoder, check if there are frames to receive. If there are, process them, otherwise continue decoding as usual. Reviewed By: zeddb, sergey Differential Revision: https://developer.blender.org/D13079
2021-11-15Fix T91992: Incorrect clip strip image sizeRichard Antalik
When proxy size lower than 100% is used, clip strips are rendered with incorrect image size. This is because if proxies aren't enabled in movieclip, it automatically falls back on rendering original media. Sequencer doesn't have knowledge about this and since 9c99292a16df it assumes that image is proxy, because it explicitly requested this size. Check movieclip flag to see if proxies are enabled. Reviewed By: sergey Differential Revision: https://developer.blender.org/D13080
2021-11-15Cleanup: remove unnecessary functionsJacques Lucke
Those functions were more useful when `FieldInferencingInterface` was still declared further down in `node.cc`.
2021-11-15Merge branch 'blender-v3.0-release'Hans Goudey
2021-11-15Fix: Incorrect socket identifier versioningJacques Lucke
There were two issues: - The third math node socket does not exist in old enough files. - The comment incorrectly referred to the vector math node. Differential Revision: https://developer.blender.org/D13219
2021-11-15Fix T93074: Gpencil cutter not using flat caps in middle cutsAntonio Vazquez
When cut an stroke using the option Flat Caps, the falt was not done if the cut was done in the middle of the stroke. Now the flat is applied to the segments created and also some cleanup of the code done.
2021-11-15Fix T89260: Eevee crashes with custom node sockets.Jeroen Bakker
Cause of this issue is that Custom Node Sockets info type was initialized as SOCK_FLOAT when registering. Areas within the core that would ignore custom socket types by checking its type would use the socket as being a float type. When custom node sockets have a property called default_value blender tries to store it as an internal default value what failed in debug builds. This patch will set the socket type to SOCK_CUSTOM when registering a custom socket type and allow, but skip storage of custom default values. In this case the default values should already be stored as custom properies. Reviewed By: campbellbarton, JacquesLucke Maniphest Tasks: T89260 Differential Revision: https://developer.blender.org/D13174
2021-11-15Merge branch 'blender-v3.0-release'Kévin Dietrich
2021-11-15Fix T92750: sculpt vertex colors missing in object modeKévin Dietrich
The layers were not aliased properly for usage in the shaders. Regression caused by rB03013d19d167.
2021-11-14Fix text editor auto-close with quotesCampbell Barton
Back-spacing a quote from the beginning of a line would delete the quote in-front instead of doing nothing.
2021-11-14Cleanup: minor tweaks to auto-closeCampbell Barton
Spelling and failure to reuse variable missed in review.
2021-11-13BLF: Use Floats for Font Point SizesHarley Acheson
Allow the use of floating-point values for font point sizes, which allows greater precision and flexibility for text output. See D8960 for more information, details, and justification. Differential Revision: https://developer.blender.org/D8960 Reviewed by Campbell Barton
2021-11-13Cleanup: Correct order of guard and lock in moviecache_valfreeJesse Yurkovich
Fix own mistake in rB7061d1e39fe In my attempt to quickly address T92838, along with the original bug, I made a nonsensical choice to use the limiter lock to guard the check against the cache item itself. While harmless, it is not necessary and semantically wrong / potentially confusing to future readers of the code. Differential Revision: https://developer.blender.org/D13122
2021-11-13Fix splash screen showing on startup with files loaded by scriptsCampbell Barton
Suppressing the splash was only done when passing in an argument from the command line. Remove G.file_loaded, as it is misleading, only set once on startup, replace with G.relbase_valid which is used everywhere else to check if the file path should be used.
2021-11-13Text Editor: Auto close relevant charactersMatheus Santos
Support the ability to close relevant characters like '(', '[' and '{'. It will also delete the pair character if they're empty. Ref D13119 Reviewed By: campbellbarton
2021-11-13Cleanup: spelling in comments, comment block formattingCampbell Barton
2021-11-13Cleanup: clang-formatCampbell Barton
2021-11-13Merge branch 'blender-v3.0-release'Germano Cavalcante
2021-11-13Fix snapping not performing on selected bones or splinesGermano Cavalcante
This is an old issue but never reported as it is only visible in the measure tool snapping.
2021-11-13Merge branch 'blender-v3.0-release'Germano Cavalcante
2021-11-13Cleanup: reference some snap parameters in the snap context itselfGermano Cavalcante
This decreases the number of parameters in functions and makes important variables available in more places.
2021-11-13Revert "Fix T92636: Vector math node link disconnects when loading old file"Hans Goudey
This reverts commit 6b4ca781085fecc1058566a3b51bd3536eb9d4a1. A simpler fix was used for 3.0, but rBd845ba481c6d2ef already contained a more complete solution to the problem of inconsistent socket ids.
2021-11-13Merge branch 'blender-v3.0-release'Hans Goudey
2021-11-13Fix T92636: Vector math node link disconnects when loading old fileHans Goudey
Previously, unique identifiers for sockets were created automatically, sometimes using .001 and sometimes _001. Now they are created manually with the second format, but some files were saved with .001 format. I think this was only an issue in the vector math node. rBd845ba481c6d fixed this problem in 3.1, but in a more general way. After I merge this patch to 3.1, I will revert it, since the versioning added in that commit will make this redundant. Differential Revision: https://developer.blender.org/D13209
2021-11-12Merge branch 'blender-v3.0-release'Johnny Matthews
2021-11-12Fix: Node Class Type for Select by Handle TypeJohnny Matthews
Change the node class type for Node Select by Handle Type to NODE_CLASS_INPUT
2021-11-12Cleanup: split 'initSnappingMode' into more specific functionsGermano Cavalcante
This helps to reuse small regions of a function's code elsewhere. The logic had to be reorganized, theoretically it should behave the same way.
2021-11-12Cleanup: move 'imm_drawcircball' to 'gpu_immediate_util.c'Germano Cavalcante
2021-11-12Cleanup: fix some comments in the transform codeGermano Cavalcante
2021-11-12Cleanup: use 't->tsnap.mode' in transform codeGermano Cavalcante
This also prevents different snap modes from being used at the same time in the code.
2021-11-12Cleanup: unify snap modes to geometry in a single flagGermano Cavalcante
This combination was being repeated in some places.