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
2022-09-01UI: Select regions of text and toggle its stylesoc-2022-text-usabilityYash Dabhade
1. Text can be selected along the mouse pointer by dragging the cursor . 2. After the selection we can toggle the style of the selected region. 3. Word can be selected using double click.
2022-08-18UI: Select regions of text and toggle its styleYash Dabhade
1)Text can be selected along the mouse pointer by dragging the cursor . 2) After the selection we can toggle the style of the selected region.
2022-08-17Initial CommitYash Dabhade
2022-06-18Constraints: handle the custom target at the constraint level.Alexander Gavrilov
Since the custom target is a feature implemented at constraint level, it is more appropriate to handle it in the common wrapper functions, instead of modifying all the type specific callbacks like get_constraint_targets and flush_constraint_targets. Also, tag the special target with a flag so other code can handle it appropriately where necessary. This was split from D9732, and effectively reverts and refactors part of D7437. This patch should cause no functional changes. Differential Revision: https://developer.blender.org/D15168
2022-06-17Cleanup: compiler warningsBrecht Van Lommel
2022-06-17Curves: refactor Add brushJacques Lucke
This splits out the code that samples points on a surface and the code that initializes new curves. This code will be reused by D15134. Differential Revision: https://developer.blender.org/D15216
2022-06-17LibOverride: Handle dependencies in both directions in partial override cases.Bastien Montagne
When creating etc. a liboverride based on a partial hierarchy pre-selection (e.g: override hierarchy on the rig object of a character), now all linked data also using that rig (e.g. all meshes deformed by that armature) will also automatically be overridden. This si achieved by following dependencies in the reversed order (from used IDs to using IDs) when we find one tagged for override.
2022-06-17BKE_main: Relations: Add `TO`/`FROM` variants of processed flags.Bastien Montagne
In some cases, it can be usefull to distinguish when an entry has been processed in which direction (`to` when handling ID pointers used by the entry, `from` when handling ID using this entry). Previous `MAINIDRELATIONS_ENTRY_TAGS_PROCESSED` tag is now a combination of the two new ones.
2022-06-17Geometry Nodes: new Volume Cube nodeChris Clyne
This commit adds a Volume Cube primitive node. It outputs a volume that contains a single "density" float grid. The density per voxel can be controlled with a field that depends on the voxel position (using the existing Position node). Other field inputs are not supported. The density field is evaluated on every voxel. Possible future improvements are listed in D15198. Differential Revision: https://developer.blender.org/D15198
2022-06-17Cleanup: remove redundant string formattingCampbell Barton
2022-06-17Cleanup: spelling in commentsCampbell Barton
2022-06-17Cleanup: unused variable warningCampbell Barton
2022-06-16Geometry Nodes: add 'Intersecting Edges' output for boolean nodePhilipp Oeser
This patch adds a 'Intersecting Edges' output with a boolean selection that only gives you the new edges on intersections. Will work on a couple of examples next, this should make some interesting effects possible (including getting us closer to the "bevel- after-boolean-usecase") To achieve this, a Vector is passed to `direct_mesh_boolean` when the iMesh is still available (and intersecting edges appended), then from those edge indices a selection will be stored as attribute. Differential Revision: https://developer.blender.org/D15151
2022-06-16Fix T98796: avoid unnecessary mesh copyJacques Lucke
The call to `get_component_for_write` would sometimes copy the mesh even when the mesh is replaced with itself. The `replace_mesh` method handles that case already, so just use that instead.
2022-06-15Fix missing translation hint in tracking codeSergey Sharybin
Is likely harmless due to Camera being covered by other areas, but is still good to do a proper hint.
2022-06-15GPencil: Fix crash when using time offset modifierFalk David
This fixes a mistake in 60bf561d379a, which did not account for offset frames by the time offset modifier.
2022-06-15Fix T98853: Blender crashes when moving grease pencil object has any ↵filedescriptor
invisible layers Whats happening is that the modifier keeps adding new frames to the evaluated object resulting in an exponential increase. This is because when preparing the data for the modifiers we only copy visible strokes to the eval object. But the modifiers do not consider visibility and will generate the mirrored strokes even for layers that are hidden. Because those layers have not been copied (only their structure) we run into this issue. The solution is always copy the active frame of all layers (even if the layer is hidden).
2022-06-15Clip editor: Default to average error sort in dopesheetSergey Sharybin
This is what we agreed on during the workshop. Differential Revision: https://developer.blender.org/D15194
2022-06-15Clip editor: Sort tracks alphabetically when they have matched errorSergey Sharybin
Is nice to ensure order of tracks when their error is the same or is not known yet (the clip was not solved yet).
2022-06-15Cleanup: unused argument warningCampbell Barton
2022-06-14Fix T98879: PBVH active attrs only optimization is buggyJoseph Eagar
PBVH draw has an optimization where it only sends the active attribute to the GPU in workbench mode. This fails if multiple viewports are open with a mix of workbench and EEVEE mode; it also causes severe lag if any workbench viewport is in material mode. There are two solutions: either add the code in sculpt-dev that checks for EEVEE viewports at the beginning of each frame, or integrate pbvh draw properly inside the draw manager and let it handle which attributes should go to the GPU.
2022-06-14Cleanup: Fix const correctness of attribute search functionHans Goudey
Retrieving a mutable custom data layer from a const ID should not be possible.
2022-06-14Attributes: Adjustments to duplicate attribute API functionHans Goudey
Use a name argument, for the same reasons as 6eea5f70e3b79e3c668. Also reuse the layer and unique name creation in `BKE_id_attribute_new` instead of reimplementing it. Also include a few miscellaneous cleanups like using const variables and `std::string`.
2022-06-14Fix T98700: Regression: Crash when recursively nesting NLA meta stripsSybren A. Stüvel
The `update_active_strip_from_listbase()` function took meta-strips in the "source" list into account, but didn't recurse into the corresponding meta-strip of the "destination" list. This is now fixed. `update_active_strip_from_listbase()` needed a few changes to resolve the issue: - It was renamed to `find_active_strip_from_listbase()` to limit its reponsibility to just finding the active strip. It now leaves the assignment to the caller. This reduces the number of parameters by 1 and makes recursion simpler. - The destination strips are now, like the source strips, passed as `ListBase`, so that both source & dest can be recursed simultaneously.
2022-06-14Fix T98813: crash with GPU subdiv in edit mode and instanced geometryBrecht Van Lommel
Instancing with geometry nodes uses just the evaluated Mesh, and ignores the Object that it came from. That meant that it would try to look up the subsurf modifier on the instancer object which does not have the subsurf modifier. Instead of storing a session UUID and looking up the modifier data, store a point to the subsurf modifier runtime data. Unlike the modifier data, this runtime data is preserved across depsgraph CoW. It must be for the subdiv descriptor contained in it to stay valid along with the draw cache. As a bonus, this moves various Mesh_Runtime variables into the subsurf runtime data, reducing memory usage for meshes not using subdivision surfaces. Also fixes T98693, issues with subdivision level >= 8 due to integer overflow. Differential Revision: https://developer.blender.org/D15184
2022-06-14Cleanup: spellingCampbell Barton
2022-06-14Cleanup: quiet unused variable warningCampbell Barton
2022-06-13Cleanup: fix various typosBrecht Van Lommel
Found via codespell -q 3 -S ./intern,./extern -L ans,ba,bording,datas,eiter,fiter,hist,inout,lod,ot,parm,parms,pixelx,pres,te Contributed by luzpaz. Differential Revision: https://developer.blender.org/D15155
2022-06-13Cleanup: Remove unused variable and parameter in pbvh_update_draw_buffersJoseph Eagar
2022-06-12Fix T98784: PBVH gpu layout check being ignoredJoseph Eagar
Moved gpu vert format checking outside of pbvh_update_draw_buffers, which isn't called in every code path of BKE_pbvh_draw_cb. This led to the draw cache being partially populated by old draw buffers that were subsequently freed, causing a crash.
2022-06-10LibOverride: Add util to check if a given Override Property is animated.Bastien Montagne
Searches in available animdata for fcuve(s) with matching RNA path.
2022-06-10Liboverride: Add rna array index return value to ↵Bastien Montagne
`BKE_lib_override_rna_property_find`. Very useful e.g. for dealing with FCurves search.
2022-06-10Fix regression in the recent unit system changeRamil Roosileht
Resolves unit tests failure since the D15085. Also addressed API documentation and formatting format. Differential Revision: https://developer.blender.org/D15162
2022-06-10Fix T98727: Dynamic Paint does not update normalsPhilipp Oeser
Caused by {rB6a3c3c77b3eb}. Displacement and wave were tagging the original mesh normals dirty, instead the result's normals need tagging. Seems like a typo in above commit (similar to rBfe43c170831f). Maniphest Tasks: T98727 Differential Revision: https://developer.blender.org/D15165
2022-06-10Cleanup: Clang tidyHans Goudey
2022-06-09FCurve: optimize search from an RNA path + index.Bastien Montagne
By checking the index value first instead of a full fledge string comparision in `BKE_fcurve_find`, we can make that code significatly faster (from about 10% in a Heist production file to over 45% in a heavily animated test file). While this code was already very fast (a few microseconds per call typically), it gets called a lot from the UI (several hundreds of time per refresh), among other things. NOTE: the `UNLIKELY` hint is responsible for 25% to 30% of the speed improvement.
2022-06-09Fix variable being used without being initializedGermano Cavalcante
2022-06-09Curves: Port delete geometry node to the new curves typeHans Goudey
Add a method to remove points from the new curves type, just like the existing curve removal function. No functional changes are expected. The code is simpler because all data is just stored as attributes, but also different because the point data for all curves is stored in the same arrays. Similar performance improvements as other commits in T95443 are expected, expecially for cases where there are many small curves. Differential Revision: https://developer.blender.org/D15130
2022-06-09Cleanup: warningsCampbell Barton
2022-06-09Cleanup: formatCampbell Barton
2022-06-08Sculpt: PBVH Draw Support for EEVEEJoseph Eagar
This patch adds support for PBVH drawing in EEVEE. Notes: # PBVH_FACES only. For Multires we'll need an API to get/cache attributes. DynTopo support will be merged in later with sculpt-dev's DynTopo implementation. # Supports vertex color and UV attributes only; other types can be added fairly easily though. # Workbench only sends the active vertex color and UV layers to the GPU. # Added a new draw engine API method, DRW_cdlayer_attr_aliases_add. Please review. # The vertex format object is now stored in the pbvh. Reviewed By: Clément Foucault & Brecht Van Lommel & Jeroen Bakker Differential Revision: https://developer.blender.org/D13897 Ref D13897
2022-06-08D14823: Adds operator to duplicate the active color attribute layerDennis Ranish
Fixes T97706 Adds operator to duplicate the active color attribute layer. Adds `"Color Attribute Specials"` menu to color attribute ui to access the `"geometry.color_attribute_duplicate"` operator. Internally adds a function that duplicates a referenced CustomDataLayer - `BKE_id_attribute_duplicate` mostly copies the existing `BKE_id_attribute_new` - but gets the type and domain from the referenced layer - and copies the data from the old layer into the new layer Reviewed By: Joseph Eagar & Hans Goudey & Julien Kaspar Differential Revision: https://developer.blender.org/D14823 Ref D14823
2022-06-08D15085: Fix numbers jumping in edit voxel size widgetRamil Roosileht
Introduces an option for BKE_unit_value_as_string to skip stripping of zeroes, thus reducing flickering when using edit voxel size widget. {F13125416} Reviewed By: Julien Kaspar & Joseph Eagar Differential Revision: https://developer.blender.org/D15085 Ref D15085
2022-06-08Curves: Port set type node to new data-blockHans Goudey
This commit ports the "Set Spline Type" node to the new curves type. Performance should be improved in similar ways to the other refactors from the conversion task (T95443). Converting to and from Catmull Rom curves is now supported. There are a few cases where a lot of work can be skipped: when the number of points doesn't change, and when the types already match the goal type. The refactor has a few other explicit goals as well: - Don't count on initialization of attribute arrays when they are first allocated. - Avoid copying the entire data-block when possible. - Make decisions about which attributes to copy when changing curves more obvious. - Use higher-level methods to copy data between curve points. - Optimize for the common cases of single types and full selections. - Process selected curves of the same types in the same loop. The Bezier to NURBS conversion is written by Piotr Makal (@pmakal). Differential Revision: https://developer.blender.org/D14769
2022-06-08Attributes: Use names instead of layers for some functionsHans Goudey
This mirrors the C++ attribute API better, separates the implementation of attributes from CustomData slightly, and makes functions simpler, clearer, and safer. Also fix an issue with removing an attribute caused by 97712b018df71c meant the first attribute with the given type was removed instead of the attribute with the given name.
2022-06-07Cleanup: Use const pointers in attribute APIHans Goudey
2022-06-07Fix: Incorrect logic in attribute search functionHans Goudey
If a geometry does not have CustomData for a certain domain, it may still have CustomData on other domains. In that case we need to continue to the other domains instead of returning. This worked for meshes because the domains are all at the start of the `info` array. It didn't work for curves.
2022-06-07CustomData: Add function to free a named layerHans Goudey
This can be useful to avoid unnecessary boilerplate in various users of the CustomData API. Split from D14685 and D14769.
2022-06-07Fix: Make renaming attributes check uniqueness on all domainsMartijn Versteegh
This function only checked for uniqueness in the current domain, while attribute names should be unique among all domains within a geometry. Differential Revision: https://developer.blender.org/D15144
2022-06-07Cleanup: spelling in comments, minor formatting tweaksCampbell Barton