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-13Small changes during review.Monique
2022-09-13Merge branch 'temp-T73411-add-scene-parameters' into ↵Monique
temp-T73411-view-layer-lazy-cache
2022-09-13Merge branch 'master' into temp-T73411-add-scene-parameterstemp-T73411-add-scene-parametersMonique
2022-09-13Fix T100980: Missing deg update when duplicating a geometry nodetree in node ↵Bastien Montagne
editor. Tagging depsgraph for relation rebuild does not replace tagging IDs for update.
2022-09-13Fix T101027: Sculpt tools don't respect visibility after recent commitHans Goudey
Caused by b5f7af31d6d4, which exposed the fact that the PBVH wasn't retrieving the updated hide status attributes if they were allocated in sculpt mode. Previously the attributes were always allocated when entering sculpt mode.
2022-09-13NLA: Remove Edited Action tab from NLA panelNate Rupsis
Removes the "Edited Action" tab for selected Action strips in the NLA editor. It is still available in the Action editor, where it is actually suitable/usable. Having it in the NLA got in the way of the actual NLA strip properties. Reviewed By: sybren, RiggingDojo Differential Revision: https://developer.blender.org/D14964
2022-09-13Fix: set ipo/easing in dope ignores hidden channelsWayde Moss
Animators were not able to set channel interpolation or easing type for channels visible in the dopesheet but hidden in the graph editor. Bug seemed to be due to typo. No official report, but there was a RCS on this https://blender.community/c/rightclickselect/yWgbbc/ Reviewed By: sybren, RiggingDojo Differential Revision: https://developer.blender.org/D10228
2022-09-13Fix T101031: Crash with Initialize Face Sets operatorHans Goudey
2022-09-13obj: implement support for PBR .mtl extensionsAras Pranckevicius
Implement import & export support for "PBR extensions" in .mtl files (T101029, also fixes T86736). Newly supported parameters: - Roughness (Pr, map_Pr) - Metallic (Pm, map_Pm) - Sheen (Ps, map_Ps) - Clearcoat thickness (Pc) and roughness (Pcr) - Anisotropy (aniso) and rotation (anisor) - Transmittance (Tf / Kt) Exporter has an option to enable these additional PBR parameters export; defaults to off since not all software understands that. Exporter UI tweaked and all material-related options were put into their own separate box. Added/extended test files in Subversion repository for test coverage.
2022-09-13Geometry Nodes: new evaluation systemJacques Lucke
This refactors the geometry nodes evaluation system. No changes for the user are expected. At a high level the goals are: * Support using geometry nodes outside of the geometry nodes modifier. * Support using the evaluator infrastructure for other purposes like field evaluation. * Support more nodes, especially when many of them are disabled behind switch nodes. * Support doing preprocessing on node groups. For more details see T98492. There are fairly detailed comments in the code, but here is a high level overview for how it works now: * There is a new "lazy-function" system. It is similar in spirit to the multi-function system but with different goals. Instead of optimizing throughput for highly parallelizable work, this system is designed to compute only the data that is actually necessary. What data is necessary can be determined dynamically during evaluation. Many lazy-functions can be composed in a graph to form a new lazy-function, which can again be used in a graph etc. * Each geometry node group is converted into a lazy-function graph prior to evaluation. To evaluate geometry nodes, one then just has to evaluate that graph. Node groups are no longer inlined into their parents. Next steps for the evaluation system is to reduce the use of threads in some situations to avoid overhead. Many small node groups don't benefit from multi-threading at all. This is much easier to do now because not everything has to be inlined in one huge node tree anymore. Differential Revision: https://developer.blender.org/D15914
2022-09-13Cleanup: spelling in commentsCampbell Barton
2022-09-13Nodes: Avoid unnecessary sorting when selecting or moving nodesHans Goudey
Previously the nodes were sorted wven when there was no change. This is a fixed version of e3ef6a6660032ca18, which was reverted by dc937c5aee4532.
2022-09-13NLA: actionclip_add now fails on invoke if no NLA track is selectedColin Basnett
This makes the NLA_OT_actionclip_add operation (Shift+A while mousing over the NLA strips area) fail on invocation if no tracks are active. This stops the annoyance of using the Shift+A menu to select an action to add, but only getting the error after you select an action. Differential Revision: https://developer.blender.org/D15737
2022-09-13Fix: Node edge pan and remove on cancel doesn't workHans Goudey
Caused by 4a71765f9a41 which used an operator that didn't have the properties it expected.
2022-09-13Fix: Multires crash after recent face set refactorHans Goudey
Missing null check when retrieving face sets for multires automasking. Caused by b5f7af31d6d474c3b455b.
2022-09-12USD IO: fixed compiler warningsMichael Kowalski
2022-09-12Fix T100886: error saving side-by-side stereo EXR image of depth passBrecht Van Lommel
The stereo saving code that combines two image buffers into one did not work correctly when the number of channels is not equal to 4.
2022-09-12Sculpt: Fix T100608: SCULPT_UNDO_FACE_SETS broken for redoJoseph Eagar
Always swap values when restoring sculpt undo data.
2022-09-12When these features aren't used, there is no sense in storing theHans Goudey
corresponding data layers and using their values for computations. Avoiding that should increase performance in many operations that would otherwise have to read, write, or propagate these values. It also means decreased memory usage-- not just for sculpt mode but for any mesh that was in sculpt mode. Previously the mask, face set, and hide status layers were *always* allocated by sculpt mode. Here are a few basic tests when masking and face sets are not used: | Test | Before | After | | Subsurf Modifier | 148 ms | 126 ms | | Sculpt Overlay Extraction | 24 ms every redraw | 0 ms | | Memory usage | 252 MB | 236 MB | I wouldn't expect any difference when they are used though. The code changes are mostly just making sculpt features safe for when the layers aren't stored, and some changes to the conversion to and from the hide layers. Use of the ".hide_poly" attribute replaces testing whether face sets are negative in many places. Differential Revision: https://developer.blender.org/D15937
2022-09-12Fix T100016: Memory leak in USD importer.Michael Kowalski
These changes were implemented by Sonny Campbell. Fixed the first issue by freeing the operator customdata when the import is cancelled. Fixed the second issue by using a character array instead of allocating new memory for the prim_path_mask. Differential Revision: https://developer.blender.org/D15781
2022-09-12UI: Cleanup/Fixes of some UI messages.Bastien Montagne
2022-09-12Fix T100999: GPencil Copy paste stroke(s) does not respect autokeyingAntonio Vazquez
The operator was not checking the status of the Autokey button.
2022-09-12Fix T100851: Sync markers does not work for numinputPhilipp Oeser
special_aftertrans_update would always use TransInfo values (not the values_final -- we need the final values to follow numinput, snapping, etc). Maniphest Tasks: T100851 Differential Revision: https://developer.blender.org/D15893
2022-09-12Cleanup: replace BLI_snprintf with BLI_path_joinCampbell Barton
Also use a larger buffer to account for the unlikely case of the buffer not being big enough for the appended directories.
2022-09-12UV: support uv seams when computing uv islandsChris Blackbourn
An edge can be marked BM_ELEM_SEAM, which means the UV co-ordinates on either side of the edge are actually independent, even if they happen to currently have the same value. This commit optionally add support for UV Seams when computing islands. Affects UV sculpt tools, individual origins, UV stitch and changing UV selection modes etc. Required for upcoming packing refactor which requires seam support when computing islands. Differential Revision: https://developer.blender.org/D15875
2022-09-10Apply formatting, remove unneeded changes.Monique
2022-09-10Adding `const Scene*` parameter in many areas.Monique
Related to {D15885} that requires scene parameter to be added in many places. To speed up the review process the adding of the scene parameter was added in a separate patch. Differential Revision: https://developer.blender.org/D15930
2022-09-10GPencil: New Set Start point operatorAntonio Vazquez
This operator allows to set the start point for any cyclic stroke. This is very handy to fit interpolation issues or use thickness modifier. Note: There is small change in this commit to fix a typo error in the name of the operator. Reviewed By: mendio, frogstomp Maniphest Tasks: T100827 Differential Revision: https://developer.blender.org/D15881
2022-09-10Cleanup: replace strncpy with BLI_strncpyCampbell Barton
Also replace strncpy+strcat with BLI_string_join
2022-09-10Fix possible NULL pointer dereference in bookmark operatorsCampbell Barton
Although unlikely, the result of BKE_appdir_folder_id_create may be NULL. Check this for bookmark operators & move writing bookmarks into a shared utility function.
2022-09-10Cleanup: remove redundant NULL checksCampbell Barton
Checking if a property exists only makes sense for generic callbacks that apply to multiple operators.
2022-09-10Fix: Missed return in ASSET_OT_bundle_install item enumeratorJesse Yurkovich
Discovered from inspection. Differential Revision: https://developer.blender.org/D15699
2022-09-09Merge branch 'master' into temp-T73411-add-scene-parametersJeroen Bakker
2022-09-09Add scene parameterMonique
2022-09-09Mesh: Move bevel weight out of MVert and MEdgeHans Goudey
As described in T95966, the goal is to move to a "struct of arrays" approach rather than gathering an arbitrary set of data in hard-coded structs. This has performance benefits, but also code complexity benefits (this patch removes plenty of code, though the boilerplate for the new operators outweighs that here). To mirror the internal change, the options for storing mesh bevel weights are converted into operators that add or remove the layer, like for some other layers. The most complex change is to the solidify modifier, where bevel weights had special handling. Other than that, most changes are removing clearing of the weights, boilerplate for the add/remove operators, and removing the manual transfer of bevel weights in bmesh - mesh conversion. Eventually bevel weights can become a fully generic attribute, but for now this patch aims to avoid most functional changes. Bevel weights are still written and read from the mesh in the old way, so neither forward nor backward compatibility are affected. As described in T95965, writing in the old format will be done until 4.0. Differential Revision: https://developer.blender.org/D14077
2022-09-09Cleanup: Simplify BKE_mesh_nomain_to_meshHans Goudey
- Remove "take ownership" argument which was confusing and always true - The argument made ownership very confusing - Better to avoid boolean arguments that switch a function's purpose - Remove "mask" argument which was basically wrong and not used properly - "EVERYTHING" was used because developers are wary of removing data - Instead use `CD_MASK_MESH` for its purpose of original mesh data - Remove use of shallow copied temporary mesh, which is unnecessary now - Split shape key processing into separate functions and use C++ types - Copy fields explicitly rather than using memcpy for the whole struct - Use higher level functions and avoid redundant code - The whole idea is pretty simple and can be built from standard logic - Adjust `CustomData` logic to be consistent with "assign" expectations - Clear the layer data from the source, and moves the anonymous ID Differential Revision: https://developer.blender.org/D15857
2022-09-09Cleanup: remove unnecessary use of BLI_make_file_stringCampbell Barton
Use BLI_join_dirfile instead, also reduce right-shift.
2022-09-09Add scene parameterMonique
2022-09-09Fix Auto-offset for nodes: Revert "Cleanup: Return early"Dalai Felinto
This "cleanup" commit broke Auto-offset for nodes. This reverts commit e3ef6a6660032ca18af53dd24cd19bf36e56a85c.
2022-09-09Cleanup: move return arguments last, use `r_` prefixCampbell Barton
Also use '_num' suffix instead of '_tot'.
2022-09-09Fix T96787: Edit mode normalize fails to respect locked groupsNate Rupsis
Add BKE_object_defgroup_flip_map_unlocked which excludes locked groups from the flip-map. Reviewed By: zanqdo, campbellbarton Ref D15317
2022-09-09Cleanup: format, trailing spaceCampbell Barton
2022-09-09Cleanup: spelling in commentsCampbell Barton
2022-09-09Fix T100521: Nodes added with link drag search not added to frameDominik Fill
Use macro NODE_OT_translate_attach for attaching node created through link-drag-search to frame, as suggested by Leon Schittek (@lone_noel) in D15888. Differential Revision: https://developer.blender.org/D15920
2022-09-08WIP: Adding const Scene* to many areas.Jeroen Bakker
2022-09-08Fix: link drag search feature only works forgeometry nodes groupsHans Goudey
The node tree used to detect if the tree was a node group wasn't the last in the node editor's path like it should be, so the search thought that all shader node groups weren't node groups.
2022-09-08Cleanup: Remove unused face customdata for merging meshesHans Goudey
2022-09-08Outliner: Hide "data operations" context menu entries unless supportedJulian Eisel
The context menu would always show a section with "Select", "Deselect", "Hide", "Unhide" and "Select Linked" if there were no more specific operators to show (e.g. modifier operations). For many tree elements they did not make sense and simply would do nothing. Only show the section for supported types.
2022-09-08Cleanup: Simplify outliner context menu building queriesJulian Eisel
- Remove unnecessary calls to `get_element_operation_type()` (result wasn't used). - Remove branches/checks for cases that couldn't possibly happen. (assert instead). - Ensure all return arguments are set so caller can't make the mistake of forgetting that. - Early exit instead of big `if` block. - Use `const`.
2022-09-08IDManagement: Add new `BKE_id_owner_get` accessor.Bastien Montagne
Essentially calls `IDTypeInfo->owner_get` for now, will make more sense once the callback is changed to return the address of the pointer instead.