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
2020-12-09Cleanup: use common 'MOD_WELD_MODE_' prefixCampbell Barton
2020-12-09Modifier: Add "Connected" mode to the weld modifierHenrik Dick
Implement improvement from T73139 for merging along edges. It is now called "Connected" mode, while the default is called "All". With the recent performance improvement, the Connected Mode is in some cases only double the speed than the usual merge all strategy but in other cases it may be even faster. The bottleneck is somewhere further down the line of merging geometry. The motivation for this patch came from T80897, because the merging in complex solidify is making it very slow. Now merging can be removed from solidify without greater consequences, as this is just a quicker and more advanced algorithm to do the same thing that solidify currently does slowly. Reviewed by: mano-wii, campbellbarton Ref D8966
2020-12-05Add more timing hooks for boolean.Howard Trickey
2020-12-02Cleanup: Store "is_active" instead of pointer property in panel typeHans Goudey
This is consistent with the way other panel type fields are stored.
2020-12-02Geometry Nodes: unify icons -> use ICON_NODETREE for everythingDalai Felinto
Until there is a icon made specially for this, the nodetree icon is up for grabs. Using it in the nodegroup + modifier + editor helps the users to make a connection on where to edit those modifiers.
2020-12-02Cleanup: remove all of "#ifdef WITH_POINT_CLOUD"Dalai Felinto
Since Point Cloud was removed from experimental this is no longer needed.
2020-12-02Cleanup: remove most of "#ifdef WITH_GEOMETRY_NODES"Dalai Felinto
The ones around the simulation datablock are still there, since they are not needed for the features planned for master yet.
2020-12-02Geometry Nodes: active modifier + geometry nodes editorHans Goudey
This commit adds functions to set and get the object's active modifier, which is stored as a flag in the ModifierData struct, similar to constraints. This will be used to set the context in the node editor. There are no visible changes in this commit. Similar to how the node editor context works for materials, this commit makes the node group displayed in the node editor depend on the active object and its active modifier. To keep the node group from changing, just pin the node group in the header. * Shortcuts performed while there is an active modifier will affect only that modifier (the exception is the A to expand the modifiers). * Clicking anywhere on the empty space in a modifier's panel will make it active. These changes require some refactoring of object modifier code. First is splitting up the modifier property invoke callback, which now needs to be able to get the active modifier separately from the hovered modifier for the different operators. Second is a change to removing modifiers, where there is now a separate function to remove a modifier from an object's list, in order to handle changing the active. Finally, the panel handler needs a small tweak so that this "click in panel" event can be handled afterwards.
2020-12-02Geometry Nodes: initial scattering and geometry nodesJacques Lucke
This is the initial merge from the geometry-nodes branch. Nodes: * Attribute Math * Boolean * Edge Split * Float Compare * Object Info * Point Distribute * Point Instance * Random Attribute * Random Float * Subdivision Surface * Transform * Triangulate It includes the initial evaluation of geometry node groups in the Geometry Nodes modifier. Notes on the Generic attribute access API The API adds an indirection for attribute access. That has the following benefits: * Most code does not have to care about how an attribute is stored internally. This is mainly necessary, because we have to deal with "legacy" attributes such as vertex weights and attributes that are embedded into other structs such as vertex positions. * When reading from an attribute, we generally don't care what domain the attribute is stored on. So we want to abstract away the interpolation that that adapts attributes from one domain to another domain (this is not actually implemented yet). Other possible improvements for later iterations include: * Actually implement interpolation between domains. * Don't use inheritance for the different attribute types. A single class for read access and one for write access might be enough, because we know all the ways in which attributes are stored internally. We don't want more different internal structures in the future. On the contrary, ideally we can consolidate the different storage formats in the future to reduce the need for this indirection. * Remove the need for heap allocations when creating attribute accessors. It includes commits from: * Dalai Felinto * Hans Goudey * Jacques Lucke * Léo Depoix
2020-12-02Add Custom Falloff Curve to the Vertex Weight Proximity Modifier.Christian Friedrich
The Vertex Weight Edit Modifier already got the Custom Curve, there was no real reason for the proximity not to have it as well. With some fixes by Bastien Montagne (@mont29). Reviewed By: mont29 Differential Revision: https://developer.blender.org/D9594
2020-11-26UI: Use decorators in volume modifiersHans Goudey
This is consistent with the UI for other modifier types.
2020-11-20Cleanup: spellingCampbell Barton
2020-11-18Merge branch 'blender-v2.91-release'Nathan Craddock
2020-11-18Fix exact boolean coplanar problem due to inexact transform.Howard Trickey
This is an addendum to previous boolean fix, where the object transformation was "cleaned". Now the operand one is too. This fixes the issue shown in the video in T82301 when you move a column around the XY plane with the top and bottom faces supposedly coplanar with a cube. The transformation matrix when you do that has a tiny offset in the z component.
2020-11-16Merge branch 'blender-v2.91-release'Howard Trickey
Bring in exact boolean fix.
2020-11-16Fix T82736, Exact Boolean fail with repeated subtraction of same object.Howard Trickey
Two problems were fixed. One, the code for dissolving vertices left a face around if dissolving a vertex would leave less than three vertices. Instead, the face should be deleted. Two, with transformations like "rotate 180 degrees", this should be no problem with exact, but the current transformation matrix has very small non-zero entries where it shouldn't. Cleaning the transformation matrix makes it more likely that user expectations about coplanar faces will be fulfilled.
2020-11-13Cleanup: Make panel type flag names more clearHans Goudey
The overlap with the `Panel` flags that start with "PNL" was quite confusing because wasn't clear which enum a flag was from. The new names are a bit longer, but the clarity is worth it.
2020-11-09Cleanup: more renaming in the render/ module for consistencyBrecht Van Lommel
2020-11-09Merge branch 'blender-v2.91-release'Campbell Barton
2020-11-09Fix T82495: assert with cast modifier in edit-modeCampbell Barton
2020-11-08Fix T81651, exact boolean modifier incorrect if operand hidden.Howard Trickey
The code was trying to ignore hidden geometry when doing boolean, which is correct when used as a tool, but not when a modifier. Added a "keep_hidden" argument to bmesh_boolean to distinguish the two cases. Also fixed a bug when the tool is used with hidden geometry that is attached to unhidden geometry that is deleted by the operation.
2020-11-08Fix T81651, exact boolean modifier incorrect if operand hidden.Howard Trickey
The code was trying to ignore hidden geometry when doing boolean, which is correct when used as a tool, but not when a modifier. Added a "keep_hidden" argument to bmesh_boolean to distinguish the two cases. Also fixed a bug when the tool is used with hidden geometry that is attached to unhidden geometry that is deleted by the operation.
2020-11-06Cleanup: Clang-Tidy modernize-use-nullptrSybren A. Stüvel
Replace `NULL` with `nullptr` in C++ code. No functional changes.
2020-11-06Cleanup: Render Module: move header files to main directoryAaron Carlisle
Move headers files from `render/extern/` to `render/` Part of T73586
2020-11-06Cleanup: use ELEM macro (>2 args)Campbell Barton
2020-11-06Cleanup: use ELEM macroCampbell Barton
2020-11-04Modifiers: Fix wrong object when setting error in modifierJacques Lucke
This was introduced in rBe4facbbea54019abe257787a7e9e8594a6ce3609.
2020-11-04Merge branch 'blender-v2.91-release' into masterJacques Lucke
2020-11-04Modifiers: return empty mesh in case of error in Volume to Mesh modifierJacques Lucke
Passing on the original mesh does not really make sense. For that one should simply disable the modifier.
2020-11-04Fix T82393: Volume to Mesh modifier with sequence fails during renderingJacques Lucke
The issue was that the volume for the current frame might not have been loaded already by the time the modifier runs. The solution is simply to make sure that the volume is loaded. This is similar to the Volume Displace modifier.
2020-11-03Merge branch 'blender-v2.91-release'Antonio Vazquez
2020-11-03Docs: add comments to some surface deform internal structuresCampbell Barton
2020-11-03Fix T82074: Volume to Mesh normals are invertedJacques Lucke
OpenVDB seems to have a different winding order convention. Reviewers: brecht Differential Revision: https://developer.blender.org/D9434
2020-11-03Merge branch 'blender-v2.91-release'Campbell Barton
2020-11-03Fix T81988: Surface Deform "Bind" causes vertices to spikeCampbell Barton
Surface deform weight calculation assigned weights in a non-uniform way that caused vertices to deform upon binding. This was caused by the face-corner angle being used in calculations which where squared & scaled. Causing a triangle fan of many thin faces to have a much greater influence compared to the same shape made from a single triangle. Change the calculation of the weight so each face-corner is scaled by it's angle.
2020-11-01Fix T82089 Boolean on empty mesh with collection fails.Howard Trickey
For the fast solver, there was an optimization carried over from the non-collection case for empty meshes which did not work in the chained boolean code for collection operands. Removed that optimization in the collection case.
2020-11-01Fix T82089 Boolean on empty mesh with collection fails.Howard Trickey
For the fast solver, there was an optimization carried over from the non-collection case for empty meshes which did not work in the chained boolean code for collection operands. Removed that optimization in the collection case.
2020-10-30Cleanup: Use an enum to set instanced panel expansionHans Goudey
This commit uses an enum to access expansion for specific panels for each modifier, constraint, etc. Even though these values are quite simple, this can help make the code more explicit when the ui_expand_flag is accessed directly. Also update comments about this bitfield to make them consistent.
2020-10-27Multires: Remove simple subdivision typeSergey Sharybin
The simple subdivision as a type only causes issues like no-continuous normals across edges, inability to reliably switch the type and things like this. The new subdivision operators supports wider variety of how to add details to the model, which are more powerful than a single one-time decision on the subdivision type. The versioning code is adjusting topology converter to specify all edges as infinitely sharp. The reason for this (instead of using settings.is_simple) is because in a longer term the simple subdivision will be removed from Subsurf modifier as well, and will be replaced with more efficient bmesh-based modifier. This is finished up version of D8436. Differential Revision: https://developer.blender.org/D9350
2020-10-26Merge branch 'blender-v2.91-release'Philipp Oeser
2020-10-26UI: Datatransfer modifier: set mix factor inactive when not in usePhilipp Oeser
For Customdata layer copying, interpolation with the mixfactor is only done for certain mix modes, now set the UI inactive if the mixfactor is not in use. Namely, the modes are the "Above / Below Threshold" which are only used for flags, colors and normals and mixing is not supported in these cases. Spotted while looking into T81914. Differential Revision: https://developer.blender.org/D9327
2020-10-26Modifiers: include the object & modifier when logging errorsCampbell Barton
Without this, there was no way of finding out which object, modifier combination caused the error, making the logs not very useful for debugging.
2020-10-24UI: Capitalization CorrectionsYevgeny Makarov
Approximately 141 changes of capitalization to conform to MLA title style. Differential Revision: https://developer.blender.org/D8392 Reviewed by Julian Eisel
2020-10-22Fix T81909: Translation missing for some labels in modifier panelsHans Goudey
Every label string in uiItem* calls needs an IFACE_ call.
2020-10-21Preferences: separate feature flags for geometry nodes and point cloud typeJacques Lucke
Those two features are not directly related and one might be activated in master earlier than the other. WITH_PARTICLE_NODES was removed, because we continue the project under the name "Geometry Nodes".
2020-10-20Cleanup: warning on windowsJacques Lucke
2020-10-20Simulation: remove particle nodes with outdated designJacques Lucke
The design for how we approach the "Everything Nodes" project has changed. We will focus on a different part of the project initially. While future me will likely refer back to some of the code I remove here, there is no point in keeping this code around in master currently. It would just confuse other developers working on the project. This does not remove the simulation modifier and data block. Those are just cleaned up, so that the boilerplate code can be reused in the future.
2020-10-20Volumes: simplify volumes in modifiers or on loadJacques Lucke
This changes how the simplify volumes setting works. Before, it only affeted viewport rendering. This was an issue, because all internal computations would still have to happen on the high resolution volumes. With this patch, the simplify setting already affects file loading and procedural generation of volumes. Rendering does not have to care about the simplify option anymore, it just gets the correct simplified version from the depsgraph. Reviewers: brecht Differential Revision: https://developer.blender.org/D9176
2020-10-19Spelling: Then Versus ThanHarley Acheson
Corrects incorrect usages of the words 'then' and 'than'. Differential Revision: https://developer.blender.org/D9246 Reviewed by Campbell Barton
2020-10-19Cleanup: Use BLI string functionsHans Goudey
It's better not to assume that strings passed as arguments will have the proper size.