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
2022-08-19Cleanup: lint, unused_varsChris Blackbourn
2022-08-19UV: respect uv selection for smart uv, cube, sphere and cylinder projectionChris Blackbourn
Differential Revision: https://developer.blender.org/D15711
2022-08-19Cleanup: uvedit_*_select, replace `BMEditMesh*` with `BMesh*`Chris Blackbourn
Change `cd_loop_uv_offset` from signed to unsigned, forcing a crash if passed invalid input. Differential Revision: https://developer.blender.org/D15722
2022-08-19Fix GPUShader.format_calc documentationGermano Cavalcante
`format_calc` instead of `calc_format`.
2022-08-18BLF: Gamma CorrectionHarley Acheson
Gamma correction for glyph coverage values. See D13376 for details and examples. Differential Revision: https://developer.blender.org/D13376 Reviewed by Julian Eisel
2022-08-18Cleanup: Remove unused outliner functionJulian Eisel
This is unused, and I don't see a need for it.
2022-08-18Outliner: Refactor outliner tree-hash interfaces with C++Julian Eisel
- Turn storage into an object with "automatic" memory management (RAII) so freeing is implicit and reliable. - Turn functions into member functions, to have the data and its functions close together with controlled access that increases encapsulation and hiding implementation details. - Use references to indicate null is not an expected value. - Related minor cleanup (comments, use const etc.) Couldn't spot any changes in performance.
2022-08-18Outliner: Add commented out benchmarking calls for tree rebuildingJulian Eisel
This way you can benchmark the tree rebuilding by simply commenting out a single line. Not that it was difficult before, but this makes it as easy as it gets, with basically no knowledge of existing benchmarking tools required.
2022-08-18Outliner: Use C++ container for tree hash element storageJulian Eisel
Simplifies code quite a bit, since this was doing the typical work of such a container. I may remove this vector entirely as I'm working on performance fixes, not sure, but simplifying this helps reason about the design. Couldn't spot performance differences in some benchmarks, and I wouldn't expect any. Maybe some minor onces thanks to the small buffer optimization of `blender::Vector`.
2022-08-18Cleanup: General style improvements for Outliner tree hashing codeJulian Eisel
- Use C++ nullptr instead of C's NULL (clang-tidy warns otherwise) - Use early exit/continue to avoid indentation (helps readability because visual scope of no-op branches is minimized). - Use const for local variables, to separate them clearly from the mutable ones. - Avoid struct typedef, this is not needed in C++
2022-08-18Fix build error when not using unity buildBrecht Van Lommel
2022-08-18Merge branch 'blender-v3.3-release'Bastien Montagne
2022-08-18Fix T100475: Crash on undoing the created override from ID template.Bastien Montagne
We only need to 'manually' remap RNA ID pointer property to the newly created override if the owner itself was not already a local override. Also some more minor tweaks to notifiers sent when creating the override.
2022-08-18Realtime Compositor: Implement bilateral blur nodeOmar Emara
This patch implements the bilateral blur node for the realtime compositor. Differential Revision: https://developer.blender.org/D15674 Reviewed By: Clement Foucault
2022-08-18Realtime Compositor: Implement despeckle nodeOmar Emara
This patch implements the despeckle node for the realtime compositor. Differential Revision: https://developer.blender.org/D15673 Reviewed By: Clement Foucault
2022-08-18GPencil: Fix wrong material index in previous commitAntonio Vazquez
2022-08-18GPencil: New operator to convert strokes to perimeter.Antonio Vazquez
This operator converts any stroke of gpencil with a center line into a stroke with the perimeter. It's possible to assign the active material, keep current or create a new material for all perimeters. The conversion is only done for strokes with a material using `Stroke`. Only `Fill` strokes are not converted. Known issues: As the perimter has not boolean implementation, some perimeters can be overlaped. This could be solved in the future when a new 2D boolean library will be developed. Reviewed By: mendio, pepeland, frogstomp Differential Revision: https://developer.blender.org/D15664
2022-08-18Merge branch 'blender-v3.3-release'Bastien Montagne
2022-08-18LibOverride: Preserve active object when creating overrides.Bastien Montagne
2022-08-18LibOverride: Fix more crashes when creating overrides from IDTemplates.Bastien Montagne
Assigning to RNA ID pointer properties will not _always_ trigger a rebuild of the outliner tree, so try to enforce this when actually creating overrides.
2022-08-18Merge branch 'blender-v3.3-release'Luca Rood
2022-08-18Fix T100423: Addon's custom context menu entries get overridden by other addonsLuca Rood
This introduces a new `UI_MT_button_context_menu` class which is registered at startup. Addons can append/prepend draw functions to this class, in order to add their custom context menu entries. The new class replaces the old `WM_MT_button_context` class, thus requiring a small change in addons using this feature. This is done because addons were previously required to register the class themselves, which caused addons to override each other's context menu entries. Now the class registration is handled by Blender, and addons need only append their draw functions. The new class name ensures that addons using the old method don't override menu entries made using the new class. Menu entries added with the legacy `WM_MT_button_context` class are still drawn for backwards compatibility, but this class must not be used going forward, as any addon using it still runs the risk of having its menu entries overridden, and support for the legacy class is subject to removal in a future version. Reviewed By: campbellbarton Maniphest Tasks: T100423 Differential Revision: https://developer.blender.org/D15702
2022-08-18Fix T100470: Crash when changing the domain typeSergey Sharybin
2022-08-18Merge branch 'blender-v3.3-release'Bastien Montagne
2022-08-18Fix T100476: Shift click to create overrides on objects not working.Bastien Montagne
Case where object was directly linked and not owned by a linked collection was not properly handled, added some level of support for it now. Note that the behavior may not always be ideal in cases where the linked object would be linked in many different local collecitons, hard to get best solution always from this Editor given limited hierarchy data available here.
2022-08-18Fix (unreported) outliner not redrawing on 'removed ID' notification.Bastien Montagne
Could lead to crahses in some cases, with outliner drawing code accessing freed ID data in its tree.
2022-08-18Realtime Compositor: Implement directional blur nodeOmar Emara
This patch implements the directional blur node for the realtime compositor. Differential Revision: https://developer.blender.org/D15672 Reviewed By: Clement Foucault
2022-08-18Realtime Compositor: Implement filter nodeOmar Emara
This patch implements the filter node for the realtime compositor. Differential Revision: https://developer.blender.org/D15661 Reviewed By: Clement Foucault
2022-08-18Realtime Compositor: Implement bokeh image nodeOmar Emara
This patch implements the bokeh image node for the realtime compositor. Differential Revision: https://developer.blender.org/D15660 Reviewed By: Clement Foucault
2022-08-18WM: optimize adding notifier duplication checkCampbell Barton
Use a GSet to check for duplicate notifiers, for certain Python scripts checking for duplicate notifiers added considerable overhead. This is an alternative to D15129 with fewer chances to existing logic.
2022-08-18Cleanup: de-duplicate notifier add functionCampbell Barton
2022-08-18Cleanup: early return, reduce right-shiftCampbell Barton
2022-08-18Fix T97618: Clipped text labels intermittently missing ellipsesColin Basnett
The offending line was attempting to artificially add width to the length of the string in order to "avoid ellipsing text that nearly fits". The line doesn't actually appear to do anything beneficial, and it causes the nasty text bug. Old: {F13029695} New: {F13327308} Reviewed By: campbellbarton Ref D15585
2022-08-18Cleanup: spelling, formatCampbell Barton
2022-08-18CMake: support building with musl libclistout
Instead of using macros like GLIBC we can use the CMake build systems internal functions to check if some header or functions are present on the running system's libc. Add ./build_files/cmake/have_features.cmake to add checks for platform features which can be used to set defines for source files that require them. Reviewed By: campbellbarton Ref D15696
2022-08-18Cleanup: Move subdiv_mesh.c to C++Hans Goudey
2022-08-17UI: Fix inconsistency use of uppercase/capitalizationPablo Vazquez
Since VBO stands for vertex buffer object it should always be uppercase. "Vertex" in "vertex buffer object" should only be capitalized at the beginning of a sentence.
2022-08-17Outliner: Compile outliner tree-hashing files in C++Julian Eisel
Some performance issues were found here with a heavy production file and we want to look into using some C++ to improve things for this ancient code.
2022-08-17Cleanup: Improvements to Outliner tree writing code, add assertJulian Eisel
Comments there weren't really helpful, took me a while to get what they try to say. This attempts to add a better explanation. Also add an assert for a previous, implicit (but commented) assumption, and some minor cleanups.
2022-08-17Outliner: Avoid unnecessary Outliner storage copyJulian Eisel
Was always creating a copy of `SpaceOutliner`, even though it's only needed for one conditional branch. This is a shallow copy, so shouldn't be that expensive, still trivial to avoid.
2022-08-17Fix: Compiler warning in macro after recent C++ conversionHans Goudey
The iterator parameters struct should be initialized to zero in both C and C++. Using memset seems to be the only reliable way to do that.
2022-08-17Cleanup: Remove redundant use of evaluated non-mesh objectsHans Goudey
Metaball, curve, text, and surface objects use the geometry component system to add evaluated mesh object instances to the dependency graph "for render engine" iterator. Therefore it is unnecessary to process those object types in these loops-- it would either be redundant work or a no-op.
2022-08-17Merge branch 'blender-v3.3-release'Bastien Montagne
2022-08-17LibOverride: Remove the 'make all editable' user preferences.Bastien Montagne
This behavior is now implicitely controlled by the 'Make' operations, based either on context or selected items.
2022-08-17Cleanup: Fix outdated commentHans Goudey
2022-08-17Cleanup: Remove unused functionHans Goudey
Also remove two DispList references I missed in the previous commit.
2022-08-17Cleanup: Fix outdated comments referring to DispListHans Goudey
2022-08-17Merge branch 'blender-v3.3-release'Hans Goudey
2022-08-17Fix: Node editor context path for curves objectsHans Goudey
The object data path item wasn't added properly. Also remove some of the unnecessary variables and forward declarations.
2022-08-17Metaball: Evaluate metaball objects as mesh componentsHans Goudey
With the ultimate goal of simplifying drawing and evaluation, this patch makes the following changes and removes code: - Use `Mesh` instead of `DispList` for evaluated basis metaballs. - Remove all `DispList` drawing code, which is now unused. - Simplify code that converts evaluated metaballs to meshes. - Store the evaluated mesh in the evaluated geometry set. This has the following indirect benefits: - Evaluated meshes from metaball objects can be used in geometry nodes. - Renderers can ignore evaluated metaball objects completely - Cycles rendering no longer has to convert to mesh from `DispList`. - We get closer to removing `DispList` completely. - Optimizations to mesh rendering will also apply to metaball objects. The vertex normals on the evaluated mesh are technically invalid; the regular calculation wouldn't reproduce them. Metaball objects don't support modifiers though, so it shouldn't be a problem. Eventually we can support per-vertex custom normals (T93551). Differential Revision: https://developer.blender.org/D14593