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-01-12UI: Icon for Multires Displacement Smear ToolRahul Chaudhary
This commit adds the icon for the new tool.
2021-01-11Geometry Nodes: Attribute Vector Math NodeHans Goudey
This patch implements the same operations and interface as the regular vector math node, but it runs for every element of the attribute. This should expand what's possible with geometry nodes quite a bit. Differential Revision: https://developer.blender.org/D9914
2021-01-11Geometry Nodes Point Distribution: Align points to face normalsHans Goudey
This patch makes the point distribute node write to the "rotation" attribute with the normal of each face at each distributed point. The "normal" attribute is also created with the triangle normal at each point. The conversion from the triangle normal to an Euler rotation is somewhat arbitrary, since we only have one direction vector. For a more flexible rotation for each point, the "Align Rotation to Vector" node can be used in the future. Differential Revision: https://developer.blender.org/D9965
2021-01-11Fix T83422: Dimensions incorrect after undoing if it has modified geometry.Bastien Montagne
Root of the issue is that `BKE_object_eval_boundbox` (that ports back evaluated bbox to orig object during active depsgraph evaluation) is only called when object's geometry actually is evaluated. However, with new undo, often Object itself can be changed by undo, without requiring its geometry to be re-evaluated, which was leading to the evaluated bbox not being copied back into orig object anymore. Fixing that by moving bbox copying-to-orig code into `BKE_object_sync_to_original` instead, which is always executed when object is evaluated (as hinted by the comment above `BKE_object_eval_boundbox` actually). Also allows to cleanup code for armature eval, apparently. Maniphest Tasks: T83422 Differential Revision: https://developer.blender.org/D9789
2021-01-11Cloth: add a vertex group setting to exclude from object collision.Alexander Gavrilov
This can be useful as a workaround on the boundary with the pinned vertices in some situations among other things, and completely copies the existing design of the self collision vertex group setting. Differential Revision: https://developer.blender.org/D10043
2021-01-11Collision: allow disabling collision without removing the modifier.Alexander Gavrilov
The `object.collision.use` flag was treated as a redundant marker of the existence of the modifier, going as far as adding/removing it when the value was changed, which is not actually very useful. Removing the modifier loses its position in the stack, and requires a dependency graph rebuild. It feels it may be a legacy flag? What would be useful however is the ability to toggle collisions dynamically without removing the modifier. This patch adjusts the code to keep the modifier when the flag is disabled, and add it if it doesn't exist when the flag is enabled. The modifier now checks the flag at the start and quickly exits after cleaning up stale data. The redesigned setting is exposed in the UI. Collisions can't be disabled by simply using the modifier enable flags because the modifier merely saves a snapshot of the mesh at a certain point of the modifier stack for other objects to use, and thus has to be able to clear the stale data. Differential Revision: https://developer.blender.org/D10064
2021-01-11ImBuf: Add error handling to IMB_indexer_openSybren A. Stüvel
Handle return value of `fread()` by printing an error and closing the file when it cannot be read from. Not only is error handing a good idea, it also prevents GCC from warning that the return value of `fread()` should not be ignored: ``` .../blender/source/blender/imbuf/intern/indexer.c: In function ‘IMB_indexer_open’: .../blender/source/blender/imbuf/intern/indexer.c:201:5: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] 201 | fread(&idx->entries[i].frameno, sizeof(int), 1, fp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .../blender/source/blender/imbuf/intern/indexer.c:202:5: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] 202 | fread(&idx->entries[i].seek_pos, sizeof(unsigned long long), 1, fp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .../blender/source/blender/imbuf/intern/indexer.c:203:5: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] 203 | fread(&idx->entries[i].seek_pos_dts, sizeof(unsigned long long), 1, fp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .../blender/source/blender/imbuf/intern/indexer.c:204:5: warning: ignoring return value of ‘fread’, declared with attribute warn_unused_result [-Wunused-result] 204 | fread(&idx->entries[i].pts, sizeof(unsigned long long), 1, fp); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ``` Differential Revision: https://developer.blender.org/D9916 Reviewed by: campbellbarton
2021-01-11ID Creation: generate `session_uuid` in more cases.Bastien Montagne
Previous code would not generate a session uuid for embedded IDs (like root node trees or master collections). While this is not a problem currently since those are not directly stored in Main data-base, this is conceptually wrong, since those IDs still pertain the Main data. Further more, this is blocking using `session_uuid` more in depsgraph in place from ID pointer itself, as identifier (related to T84397).
2021-01-11Fix Embedded IDs creation bypassing ID management completely.Bastien Montagne
No ID (even remotely) related to Main database should ever be created directly through MEM_mallocN. Using `BKE_libblock_alloc` is the bare minimum. Note that there is no behavior change expected here.
2021-01-11Fix missing IDType init in ViewLayer tests.Bastien Montagne
Kinda miracle this did not cause problems so far, but was breaking tests with some upcoming changes.
2021-01-11Fix T84516: ID properties have incorrect names in Python dir() listBrecht Van Lommel
Caused by not going through the proper accessor function to access the property identifier.
2021-01-11Geometry Nodes: transform Object Info outputs to local spaceJacques Lucke
Ref T83670. Differential Revision: https://developer.blender.org/D10071
2021-01-11BLI: fix math operationJacques Lucke
That fixes a stupid mistake of mine that was copied a couple of times.
2021-01-11Cleanup: remove redundant UV edge selection callsCampbell Barton
Selecting vertices and faces first checked edge selection, this was called to set vert1 & vert2 variables which have since been removed. These calls should have been removed in 51f04bf7b8ee03a7973c50e525ffa5c67dde5fb7.
2021-01-11Fix T84565: UV face select fails when zoomed inCampbell Barton
Exposed by recent commit 246efd7286f6187e4dd4b3edcc79cccb1746bb1d Although this was an existing logical error causing `uv_find_nearest_face` to only work properly when the hit distance was initialized to FLT_MAX, which wasn't the case in multi-object edit mode.
2021-01-11Fluid: Adjusted viscosity strength step size in UISebastián Barschkis
Step size was too small.
2021-01-11Fix T84327: outliner_id_copy_tag was only copying from expanded nodes.Pi Lanningham
If a node was closed in the hierarchy, we would only copy that node, even if child nodes were selected. Reviewed By: brecht, mont29 Maniphest Tasks: T84327 Differential Revision: https://developer.blender.org/D9995
2021-01-11Cleanup: Added const to RenderLayersProg methodsJeroen Bakker
2021-01-11VSE: store raw images in cacheRichard Antalik
Previously raw images were not cached if image wasn't preprocessed. This caused issue, that image had to be read from disk on every redraw. Effect strips must be excluded, because this would cause problem with invalidation. Effect strips can use preprocessing however. This is mainly to allow usimg modifiers on them. This change should follow rBf448ff2afe7a77, but I have wrongly assumed, that it has been implemented already. ref T80278
2021-01-11Fix versioning code outside of version checkRichard Antalik
Bug introduced in f448ff2afe7a probably due to mistake when resolving conflicts and not checking functionality.
2021-01-11Fix T84459: Face normals not displaying (AMD GPU)Jeroen Bakker
This is part two of the fix for T84459. Issue appears to be caused by AMD graphics driver later than 20.11.1 and affects older GPUs (Polaris/FIJI cards). Drawing normals in edit mode uses the same OpenGL data type for storing normals that is known to be faulty. This change fixes the face dot normals by using GPU_COMP_I16.
2021-01-11Cleanup: Incorrect commentJeroen Bakker
2021-01-11Fix T84459: Wireframe not displaying with AMD GPUJeroen Bakker
Issue appears to be caused by AMD graphics driver later than 20.11.1 and affects older GPUs (Polaris/FIJI cards). Wireframe drawing uses the same OpenGL data type for storing normals what is known to be faulty. This patch enabled storing the normals using GPU_COMP_I16. It also solves the normals drawing in edit mode for vertex and loop normals.
2021-01-11Cleanup: skip accessing sequence strip name/source when hiddenCampbell Barton
2021-01-11Fix incorrect use of BLI_snprintf in sequencer text concatenationCampbell Barton
The start of the text was stepped over without subtracting it's length (introduced in fad80a95fd08ec87a37f30f0b94a7061d4e382f2). Replace this logic with BLI_string_join_array to simplify construction.
2021-01-11Fix missing directory separator in image/movie strip identifierCampbell Barton
2021-01-11Cleanup: use switch statement for sequence typesCampbell Barton
Also remove duplicate NULL pointer check and replace BLI_snprintf with BLI_strncpy.
2021-01-11Fix T84582: WalkNavigation.mouse_speed ignored with tabletCampbell Barton
Scale the speed up 4x instead of clamping the value to a minimum of 4.
2021-01-11Revert "Fix typo; Documentation; Expose layer for framebuffer attachament; ↵Germano Cavalcantemano-wii
Add framebuffer viewport setter; Remove framebuffer restore; Expose framebuffer push/pop stack API; Remove blend modes; Remove depth_range_set; Implement GPU_face_culling, GPU_front_facing, GPU_point_size, GPU_line_width, GPU_viewport, GPU_color_mask and GPU_depth_mask" This reverts commit 9db3d1951da15254efbbcf028176facb78118ec1. This was an accidental commit of the patch D8826
2021-01-11Transform: In the Header, show translation value in local space only with ↵Germano Cavalcantemano-wii
constraint This partially reverts commit ad15e764dd92. The local value is only useful with constraint.
2021-01-11Transform: In the Header, show the translation value in local spaceGermano Cavalcantemano-wii
Showing value in the global space was an unintentional change.
2021-01-11Fix Increment Snapping Without Constraints in Non-Axis-Aligned ViewsGermano Cavalcantemano-wii
The incremental snap was always operating in the local space, which in most cases is the VIEW type orientation. Use only local space when the operation is affected by constraint. Differential Revision: https://developer.blender.org/D10052
2021-01-11Fix typo; Documentation; Expose layer for framebuffer attachament; Add ↵Germano Cavalcantemano-wii
framebuffer viewport setter; Remove framebuffer restore; Expose framebuffer push/pop stack API; Remove blend modes; Remove depth_range_set; Implement GPU_face_culling, GPU_front_facing, GPU_point_size, GPU_line_width, GPU_viewport, GPU_color_mask and GPU_depth_mask
2021-01-10UI: Improve node group input / output list interfaceHans Goudey
This commit replaces the two-column list for editing node group inputs and outputs with a cleaner solution with two panels. The new layout has several benefits: - It uses the vertical space in the node editor sidebar better. - It should be more familiar because of similarity with other UI lists. - It should look better with consistent alignment and icons. Note that displaying the "Name" property outside of the list itself is a bit inconsistent and could possibly be removed in the future. Differential Revision: https://developer.blender.org/D9683
2021-01-10Fix T83777: Crash when enabling guidesSebastián Barschkis
Also adjusted adjusted guiding UI parameters so that guiding will not get invalidated when changing domain values.
2021-01-10Fix T84529: Crash with strip using deleted scenePeter Fog
If scene strip has no scene assigned, leave source string empty. Same goes for all other strips, that use ID datablocks. Reviewed By: ISS Differential Revision: https://developer.blender.org/D10058
2021-01-10Fix sequencer disk cache not writing dataRichard Antalik
Error handling added in 512a23c3d61d caused that reading header of new file failed, since it is empty. Don't attempt to read header if file is empty. If header can not be read anyway, try to delete the file. Add asserts, as this should never happen. Reviewed By: sybren Differential Revision: https://developer.blender.org/D9954
2021-01-09Cleanup: remove unused struct membersCampbell Barton
Non-projection painting in the viewport is no longer supported, remove struct members used for this.
2021-01-09Cleanup: use bool arguments & variablesCampbell Barton
2021-01-09Fix UV selection threshold which ignored image aspect and zoom levelCampbell Barton
Selecting UVs wasn't properly scaling based on the zoom or image aspect. This now matches vertex selection in the 3D view.
2021-01-09Fix build error after last commitHans Goudey
2021-01-09Cleanup: Use bool instead of intHans Goudey
2021-01-09Geometry Nodes: Don't start with empty group nodes selectedHans Goudey
The nodes were selected in new node groups because they are by default, but there's no particular reason for them to be selected, and it can be distracting.
2021-01-08Scenes: forbid deleting last local sceneJacques Lucke
Previously, it was only forbidden to delete the last scene. This can lead to the situation where a .blend file only contains linked scenes. This is problematic, because linked data might not always be available or can be removed from a .blend file without having an additional check for remaining scenes. Now there always has to be at least one local scene. Reviewers: mont29 Differential Revision: https://developer.blender.org/D10049
2021-01-08Fix T84453: Crash bezier curves transfromGermano Cavalcante
The pointer allocated to the `TransData` was being incorrectly incremented, causing misalignment and consequently `heap-buffer-overflow`. Because of this, `TD_NOTCONNECTED` was being set in a strange way that did not correspond to other types of `TransData`. The solution is to not increment the `TransData` pointer and set `TD_NOTCONNECTED` only for "unconnected" segments. The code was also a bit deduplicated.
2021-01-08Fix T83942: improve error checking when trying to render high resolution volumeJacques Lucke
Reviewers: fclem Differential Revision: https://developer.blender.org/D10032
2021-01-08Cleanup: clang formatPhilipp Oeser
2021-01-08Fix T84475: Outliner missing update when adding IDs to main via RNAPhilipp Oeser
Was reported for meshes, but was true for any type. Now add appropriate notifier to refresh the Outliner. Maniphest Tasks: T84475 Differential Revision: https://developer.blender.org/D10030
2021-01-08GPU: Mark AMD Polaris 20.11+ drivers with limited support.Jeroen Bakker
The issue does not render wireframes correctly.
2021-01-08Use the term "N-gon" instead of "Polygon" for triangulation methodPhilipp Oeser
This was reported for the Triangulate geometry node, but was also true for the triangulate modifier and in exporters. Note the modifier was introduced with "Ngon Method" in rBa7b44c82e5b9 but was renamed to "Polygon Method" in rBf4762eb12ba5. Since quads are also polygons (and quads have their own method), the term "N-gon" is more appropriate here and is also described in the glossary https://docs.blender.org/manual/en/2.92/glossary/ index.html#term-N-gon Docs have been updated in rBM7539 (partially - the method would also have to be renamed once this patch lands). Note this also fixes the wrong enum used for the alembic exporter. Fixes T83907 Maniphest Tasks: T83907 Differential Revision: https://developer.blender.org/D10022