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-10-26Geometry Nodes: support evaluation with more than one group inputJacques Lucke
Group inputs are not yet exposed in the modifier. For now I just added a simple float setting that will be passed to every float input of the group. Inputs of other types have some default value.
2020-10-26Geometry Nodes: improve node tree evaluationJacques Lucke
This change reduces the number of unnecessary copies of data and avoids computing the same value more than once.
2020-10-26Merge branch 'master' into geometry-nodesJacques Lucke
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-23Geometry Nodes: improve node group evaluationJacques Lucke
This adds support for nodes that have a multi-function implementation. That includes various function nodes like Math, Combine Vector, ... Furthermore, there is support for implicit conversions now. So it should work when one connects e.g. a float to an integer and vice versa.
2020-10-23Merge branch 'master' into geometry-nodesHans Goudey
2020-10-22Geometry Nodes: Add edge split node functionalityHans Goudey
2020-10-22Geometry Nodes: simplify and deduplicate callbacks on socketsJacques Lucke
This adds a layer of abstraction between the code calling callbacks on sockets and the implementation of those callbacks. This abstraction layer allows some sockets to not implement all callbacks when those can be derived from some other callback.
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-22Geometry Nodes: change "Node Tree" to "Node Group"Jacques Lucke
2020-10-22Geometry Nodes: initial support for evaluating geometry node groupsJacques Lucke
This is still very basic and does quite a few unnecessary computations. Also the error handling is quite weak currently, so when invalid things are connected, it will probably just crash. Also the interface that individual nodes have to implement will have to change, but the current solution is a good starting point. Only the triangulate node is implemented for now.
2020-10-21Merge branch 'master' into geometry-nodesJacques Lucke
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-21Nodes: improve dependency between modifier and node groupJacques Lucke
2020-10-21Modifiers: add node_tree to NodesModifierDataJacques Lucke
2020-10-21Modifiers: rename Simulation to Nodes modifierJacques Lucke
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.
2020-10-19Volumes: new Volume to Mesh modifierJacques Lucke
This modifier is the opposite of the recently added Mesh to Volume modifier. It converts the "surface" of a volume into a mesh. The "surface" is defined by a threshold value. All voxels with a density higher than the threshold are considered to be inside the volume, while all others will be outside. By default, the resolution of the generated mesh depends on the voxel size of the volume grid. The resolution can be customized. It should be noted that a lower resolution might not make this modifier faster. This is because we have to downsample the openvdb grid, which isn't a cheap operation. Converting a mesh to a volume and then back to a mesh is possible, but it does require two separate mesh objects for now. Reviewers: brecht Differential Revision: https://developer.blender.org/D9141
2020-10-17UI: Tweak decimate modifier layoutHans Goudey
- Expand the "Type" toggle at the top. This is consistent with other modifiers where there is a "Type" option at the top. It conveys the property's importance and makes it faster to switch it. - Expand the "Delimit" option vertically so the text isn't squashed. There isn't enough space on one line for this, and is has to be expanded because more than one option can be selected. This is also consistent with how "multi-select" enums are often displayed, like the 3D view snapping settings. | Before | After | | {F9000996} | {F9000985} |
2020-10-14Cleanup: spellingCampbell Barton
2020-10-13Fix T81467: Crash with KD-Tree Weld ModifierGermano Cavalcante
The problem is related to the `use_index_order` option of `BLI_kdtree_3d_calc_duplicates_fast`. With this option, the higher index is expected to be less than `tree->nodes_len`.
2020-10-12Cleanup: use openvdb matrices properlyJacques Lucke
Before I was double confused about how openvdb stores its transformation matrices. Now, I know they have the same layout physically in memory, but are logically transposed (i.e. the translation is in the last row instead of in the last column).
2020-10-12Volumes: reduce step and default of strength in Volume Displace modifierJacques Lucke
The strength has a high impact on performance. With the previous step and default one could easily and accidentally make Blender unusably slow, because of a too high displacement strength.
2020-10-12Volumes: use bounding box diagonal to compute adaptive voxel sizeJacques Lucke
Using the diagonal has the benefit, that the adaptive voxel size changes when the bounding box changes its shape in any way. Having a changing voxel size looks bad when rendering an animation, therefore one should usually use a fixed voxel size when rendering an animated volume. This becomes apparent earlier, when the adaptive voxel size changes when the bounding box changes in any way. Otherwise this can easily go unnoticed when rendering only a few frames of an animated volume.
2020-10-10Exact Boolean: let Collection be empty.Howard Trickey
With an empty collection, Exact Boolean performs the useful function of removing self-intersections.
2020-10-10Cleanup: remove unnecessary commentsCampbell Barton
2020-10-09Volumes: lower minimal voxel size in Mesh to Volume modifierJacques Lucke
The 0.1 limit was too large. The issue with making it smaller is that one can easily crash blender by making it to small. To counteract this, the step has been reduced as well. A voxel size/amount of 0 disables the modifier.
2020-10-07Refactor `BKE_id_copy_ex` to return the new ID pointer.Bastien Montagne
Note that possibility to pass the new ID pointer as parameter was kept, as this is needed for some rather specific cases (like in depsgraph/COW, when copying into already allocated memory). Part of T71219.
2020-10-07Volumes: new Volume Displace modifierJacques Lucke
This modifier uses a 3D texture to displace a volume. For now, this can only use the previously existing texture system, because we do not have a better alternative yet. Still, the results can be quite good and interesting. See D9075 for some examples. Reviewers: brecht, simonthommes Differential Revision: https://developer.blender.org/D9075
2020-10-05Fix T80897: Complex solidify crash when special ngons are mergedHenrik Dick
This has serious performance implications as the additional check makes it O(N^2) when there are a lot of merged vertices. The goal is to move the merging to the weld modifier where it would be much easier to optimize. Ref D8946
2020-10-05Fix T80893: Complex solidify special case with singularityHenrik Dick
Ref D8929
2020-10-05Fix T80895: Complex solidify compare edges by contentHenrik Dick
Even if the index of the edge is not equal the content can be equal if it has been merged. So compare the content. Ref D8931
2020-10-05Modifiers: Use vertex group options for complex solidify flat facesHenrik Dick
Ref D8945
2020-10-05Fix T80269: Match material offset in solidify modesHenrik Dick
This commit to complex solidify swaps the side of the geometry which is affected by the material offset when the normal flip option is enabled. This matches simple solidify and is considered correct/useful. Ref D8948
2020-10-05Revert "Volumes: make Mesh to Volume modifier independent of object transforms"Brecht Van Lommel
This reverts commit 66cd82a8d. This was based on a misunderstanding. We do want to take into account transforms similar to other modifiers like booleans, to support taking into account animated transforms, combining multiple meshes into one volume, etc.
2020-10-03Cleanup: Remove/replace C standard library assert() and header usagesJulian Eisel
We have our own assert implementation, `BLI_assert()` that is prefered over the C standard library one. Its output is more consistent across compilers and makes termination on assert failure optional (through `WITH_ASSERT_ABORT`). In many places we'd include the C library header without ever accessing it.
2020-10-02Volumes: make Mesh to Volume modifier independent of object transformsJacques Lucke
2020-10-01Cleanup: Use DNA defaults for cloth modifierHans Goudey
Followup for rB8398050695 This requires moving a few enum definitions to DNA instead of BKE, and adding default definitions for the two structs the cloth modifier where the cloth modifier stores its settings. The defaults are also reordered to be consistent with the order of each item in the struct.
2020-10-01remove foreachObjectLink callbackJacques Lucke
This removes `foreachObjectLink` from `ModifierTypeInfo`, `GpencilModifierTypeInfo` and `ShaderFxTypeInfo`. There is no need to have both, `foreachObjectLink` and `foreachIDLink`. There is not code that actually depends on `foreachObjectLink`. Reviewers: brecht Differential Revision: https://developer.blender.org/D9078
2020-10-01Fix subdivision surface wrong for non-limit surface and subdivision level 1Brecht Van Lommel
Remove the workaround for T59395 that increases the minimal refinement to 2 to work around an OpenSubdiv bug. This bug appears to be fixed in the latest OpenSubdiv version we are using. Problem found by Piotr Ostrowski. Ref D9076
2020-10-01Use DNA defaults system for modifiersHans Goudey
As noted in T80164, there are quite a few area of Blender where the "Reset to Default Value" operator in button context menus doesn't work. Modifiers are one of them, because the DNA defaults system was never set up for them. Additionally, this should make modifier versioning easier. Whenever a new field is added it should be automatically initialized to the default value. I had to make some ordering changes in the following modifiers to work around an error with `-Wsign-conversion` in the macros: - Solidify Modifier - Corrective Smooth Modifier - Screw Modifier Some modifiers are special cases and are skipped in this commit: - Data Transfer Modifier - Cloth Modifier - Fluid Modifier - Softbody Modifier Differential Revision: https://developer.blender.org/D8747
2020-10-01Cleanup: Remove unused variableHans Goudey
2020-10-01Fix: Mesh to Volume modifier crashes when object is in edit modeJacques Lucke
Bug and fix has been found by dfelinto, thanks.
2020-10-01Fix some inactive modifier properties not being editableBrecht Van Lommel
The convention is to keep inactive settings editable even if they are grayed out for having no effect due to other settings.
2020-09-30Subdivision Surfaces: add boundary smooth option to modifiersPiotr Ostrowski
This adds the option to either smooth the entire boundary, or to keep corners sharp, for the Subdivision Surface and Multiresolution modifiers. This mainly helps with compatibility with other software. The default behavior remains to smooth the entire boundary. Differential Revision: https://developer.blender.org/D8485