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-10-15Merge branch 'master' into temp-pbvh-splitJoseph Eagar
2022-10-15Cleanup: comment out unused lambda parameterJoseph Eagar
2022-10-15Sculpt: Fix face set relax being too strongJoseph Eagar
2022-10-15Sculpt: Fix draw artifacts when drawing multires maskJoseph Eagar
2022-10-15Sculpt: Ensure faces are uniquely assigned to PBVHNodesJoseph Eagar
PBVH_FACES and PBVH_GRIDS do not store faces directly in nodes; instead they store 'primitives', which are tesselation triangles for PBVH_FACES and grids (which are per-loop) for PBVH_GRIDS. Primitives from the same face could sometimes end up in different PBVH nodes. This is now prevented in two ways: * All primitives of the same face are given the same boundary during PBVH build. This prevents them from being swapped away from each other during partitioning. * build_sub adjusts the final partition midpoint to fall between primitives of different faces.
2022-10-15Sculpt: do not validate PBVH draw data in mesh_batch_cache_validJoseph Eagar
Turns out PBVH drawing and normal mesh batches are not mutually exclusive inside the draw cache; there are edge cases with modifiers and instancing where you need both, and forcing one or the other inside this function leads to memory corruption.
2022-10-15Sculpt: fix crash when instancing sculpt objectsJoseph Eagar
2022-10-15Fix: Missing part of previous BMesh bug fixHans Goudey
Missed actually using the variables from 6f190c669f3001f73e9.
2022-10-14Fix T101746: Node copy and paste changes multi-input socket orderHans Goudey
The multi-input indices have to be copied, and updated after pasting in case all original connected nodes weren't copied.
2022-10-14Fix T101803: Max length Operator bl_idname is truncated 1 character.Bastien Montagne
There were quite a few issues here: * Bad usage of nagic number leading to confusing code * Forgetting to take into accoun final `NULL` char * RNA code thinkin `bl_idname` is python version, when it is actually BL/C version.
2022-10-14Fix: Draw: Initialize StencilSet in the correct orderMiguel Pozo
tmp
2022-10-14Cleanup: Fix wrong comment of breadcrumb tree pathJun Mizutani
The breadcrumb of tree path in node editor is displayed on the top of the editor. Reviewed by: PratikPB2123 Diff: https://developer.blender.org/D14994
2022-10-14Fix: Muted curves connect to the Fac socketCharlie Jolly
Resolve by setting no_muted_links() on Factor sockets. Same issue as T101613 Reviewed By: HooglyBoogly Differential Revision: https://developer.blender.org/D16153
2022-10-14Cleanup: simplify calculation of NDOF pan/zoom in 2D viewsCampbell Barton
Make the logic for converting NDOF Z-motion to a scale value more straightforward. Flipping the Z axis was scaling by negative-time, now the entire pan vector is scaled by time and the zoom value is calculated as `scale = 1 - (z * time)` instead of `1 + (z * -time)`. Although they're equivalent, confusion here caused T100953. Also clamp the scale (while unlikely, negative scale wasn't prevented).
2022-10-14Fix: Curves sculpt adding resets attribute valuesHans Goudey
Error in 9088a1f4764f371f7.
2022-10-14Cleanup: Small changes to curves draw cacheHans Goudey
- Remove unused include - Avoid repeating blender:: namespace - Remove timer left in by mistake in previous commit
2022-10-14Curves: Multithread position vertex buffer extractionHans Goudey
On a Ryzen 3700x I observed a 4ms improvement (from 5ms to 1ms) on every redraw when sculpting with 88000 curves.
2022-10-13Build: Add TBB define to BMesh moduleHans Goudey
Allows using BLI_task.hh to write multithreaded code.
2022-10-13Nodes: Duplicate Linked operator + User Preference option for Node TreeDalai Felinto
This operator (Alt + D) allows users to explicitly create a linked copy of a group node (same current behaviour for the Duplicate operator). The duplicate operator (Shift + D) now takes the new User Preference duplicate data option for Node Tree into account. It is by default disabled, leading to no functional change for users. Although we could make in the future make this option "on" by default, to make it consistent with the rest of Blender we do not at the time. Differential Revision: https://developer.blender.org/D16210
2022-10-13Outliner: Use row background color for elements count indicatorDalai Felinto
From T101799: Currently, the count indicator background and color are hardcoded to black and white in an attempt to maximize contrast, at the expense of being too prominent even when not needed. Changing the background color to match the row (or any other element) background, would make it look like the data-block icon is masked out, improving readability while not standing out too much. The circle background color should not have transparency, as it does now. And the text inside should match the color of the text used for the parent element (instead of hardcoded white). This should make it look good in any theme. --- Before: {F13674265, size=full} After: {F13674269, size=full} Differential Revision: https://developer.blender.org/D16246
2022-10-13Fix: Attribute layers can be skipped in Mesh to BMesh conversionHans Goudey
In some situations, layers were filled with their default value when converting from Mesh to BMesh (entering edit mode, for example). This was caused by the recently added "copy mesh to bmesh" or "merge mesh to bmesh" custom data functions creating a difference custom data format than was used for the copying functions used later. `CustomData_to_bmesh_block` is not robust enough to handle simple differences in layout between the layout of the source and result CustomData layers, because it relies on the order of the types and the number of layers within each type. As a fix, make the "mesh to bmesh" special case more explicit in the conversion functions. This makes the difference in the API smaller, which is a nice improvement anwyay. Fixes T101796
2022-10-13Fix: Crash updating draw cache of original curves dataHans Goudey
Error in c67e5628d22f8348492 which mistook clearing the pointer for clearing the values in the struct.
2022-10-13Realtime Compositor: Keep interpolation in Scale nodeOmar Emara
Currently, the scale node always changes the interpolation of its result to bilinear. This was done because the scale node does not have an interpolation option, unlike the Transform node, so a default of bilinear was assumed. This turned out to be problematic, because in the pixelation use cases, a nearest interpolation is typically preferred by the user. This patch changes the default interpolation of input nodes to bilinear, makes the scale node keep the interpolation of the input it receives, and makes the pixelate node changes the interpolation to nearest. In effect, for non-pixelation use cases, the default bilinear interpolation will be used, and for pixelation use cases, the nearest interpolation will be used unless explicitly specified using a node that sets the interpolation.
2022-10-13Fix T101501: Masks are not visible in Image EditorSergey Sharybin
Need to initialize the mask drawing overlays when the new space is created. Otherwise the new space is configured in a way that the splines are not visible and overlay opacity is 0. This change fixes the new masking files created. The currently saved ones need a manual tweak.
2022-10-13UI: Fix wrong error message when trying to apply modifierPablo Vazquez
The error message when trying to apply a constructive modifier on a curve object was wrong, "transform" makes no sense in this context. Thanks Philipp for pointing it out!
2022-10-13Cleanup: simplify uv packing apiChris Blackbourn
Affects paint.add_simple_uvs No user visible changes. Differential Revision: https://developer.blender.org/D16231
2022-10-13Cleanup: Use std::mutex for mesh runtime mutexesHans Goudey
Instead of allocating three separate ThreadMutex pointers, just embed std::mutex into the struct directly.
2022-10-13Mesh: Move runtime data out of DNAHans Goudey
This commit replaces the `Mesh_Runtime` struct embedded in `Mesh` with `blender::bke::MeshRuntime`. This has quite a few benefits: - It's possible to use C++ types like `std::mutex`, `Array`, `BitVector`, etc. more easily - Meshes saved in files are slightly smaller - Copying and writing meshes is a bit more obvious without clearing of runtime data, etc. The first is by far the most important. It will allows us to avoid a bunch of manual memory management boilerplate that is error-prone and annoying. It should also simplify future CoW improvements for runtime data. This patch doesn't change anything besides changing `mesh.runtime.data` to `mesh.runtime->data`. The cleanups above will happen separately. Differential Revision: https://developer.blender.org/D16180
2022-10-13Point Cloud: Support applying modifiersHans Goudey
The geometry nodes modifier can now be applied on point cloud objects. This is basically a copy of the logic from 96bdd65e740e669ece and 538da79c6d17a6e660a9.
2022-10-13Cleanup: Use correct blenkernel namespace for mesh functionsHans Goudey
2022-10-13Draw: Add missing TBB define to draw moduleHans Goudey
Allows improving performance with BLI_task.hh in draw extraction code. Threading added in c15a63d21eae49ffd improved performance by 3-4x for me, but didn't make a difference until now.
2022-10-13Cleanup: Remove deprecated socket variablesHans Goudey
Last used in 62421470ee09fb70f343e.
2022-10-12Fix T95683: FFmpeg seeking is brokenRichard Antalik
According to information I gathered, ffmpeg seeks internally using DTS values instead of PTS. In some files DTS and PTS values are offset and ffmpeg fails to seek correctly to keyframe located before requested PTS. This issue become evident after hardcoded preseek of 25 frames was removed and effort went into more precise seeking to improve performance. It was thought, that this is bug in ffmpeg code, but after reading some discussions, I don't think it is considered as such by their developers, see below: http://ffmpeg.org/pipermail/ffmpeg-devel/2018-March/226354.html https://trac.ffmpeg.org/ticket/1189 Best solution seems to be to add small preseek value possibly at detriment of performance, so 3 frames of preseek are applied. Number 3 was chosen experimentally. Performance impact seems to be insignificant with this change. Reviewed By: zeddb Differential Revision: https://developer.blender.org/D15847
2022-10-12Nodes: Add "Legacy" to legacy node UI names, skip in searchHans Goudey
Currently there is no way to tell that these node types are deprecated in the UI. This commit adds "(Legacy)" to the end of the names. It also makes it simple to skip these in the various node searches more automatically than before. Fixes T101700 Differential Revision: https://developer.blender.org/D16223
2022-10-12Fix T101711: Curve to points node sometimes skips initializing radiusHans Goudey
Don't add the radius attribute to point clouds by default, since not having a radius attribute should be a valid state. The radius is only set when a radius attribute also exists on curves.
2022-10-12Cleanup: Decrease variable scope in UI region popup codeHans Goudey
2022-10-12Cleanup: EEVEE-Next: Add precision to commentClément Foucault
2022-10-12DRW: View: Expose matrices through interfaceClément Foucault
2022-10-12DRW: Wrappers: Add TextureRef to wrap around GPUTexture pointersClément Foucault
This adds the possibility to use the C++ API for other GPUTexture.
2022-10-12DRW: Fix gl error related to incorrect uniform sizeClément Foucault
2022-10-12Cleanup: DRW: Improve state_stencil documentationClément Foucault
2022-10-12Cleanup: Use const vertex pointer argumentHans Goudey
2022-10-12Cleanup: Reduce variable scope in vertex group mirror operatorHans Goudey
Combined with the previous cleanup, this would have prevented T101773.
2022-10-12Cleanup: Remove macro usage in vertex group mirror operatorHans Goudey
Avoiding a few lines of duplication is not worth the confusion and worse debugging experience of macros.
2022-10-12Fix T101773: Mirror Vertex Weights operator brokenHans Goudey
2022-10-12Fix T101679: Duplicate objects are created when 'Make' override is called on ↵Bastien Montagne
existing override in 3DView When the active selected object in the 3DView is already a local liboverride, only perform the 'clear system flag' process on selected objects, there is no point in trying to create an override out of it.
2022-10-12ImageEngine: Clamp image data to fit half float range.Jeroen Bakker
When image data exceeds half float ranges values are set to +/- infinity that could lead to artifacts later on in the pipeline. Color management for example. This patch adds a utility function `IMB_gpu_clamp_half_float` that clamps full float values to fit within the range of half floats. This fixes T98575 and T101601.
2022-10-12Cleanup: Simplify node insert after drag codeHans Goudey
- Give functions and variables more descriptive names - Use references for arguments - Use tree topology cache to avoid iterating over all links - Group related code together
2022-10-12Cleanup: use 'u' prefixed unsigned typesCampbell Barton
2022-10-12Cleanup: use function style casts for C++, format & spellingCampbell Barton