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-07-16Simulation: Change BPH prefix to SIMJacques Lucke
In a previous commit the `physics` folder has been renamed to `simulation`. This commit updates the function/file prefix accordingly.
2020-06-12Cloth: implement support for a hydrostatic pressure gradient.Alexander Gavrilov
When a fluid is put under influence of gravity or acceleration, it forms an internal pressure gradient, which causes observable effects like buoyancy. Since now cloth has support for simulating pressure changes caused by fluid compression or expansion, it makes sense to also support the effects of gravity. This is intended for better simulation of objects filled or surrounded by fluids, especially when constrained by collisions or pinned vertices, and should result in more realistic shapes. Obviously, this doesn't actually simulate fluid dynamics; instead it is assumed that the fluid immediately adapts to changes in the shape or acceleration of the object without friction or turbulence, and instantly reaches a new static equilibrium. Differential Revision: https://developer.blender.org/D6442
2020-05-08Cleanup: clang-formatCampbell Barton
2020-05-08Fix T76498: Refactoring - Rename BKE modifiers funtionsAntonio Vazquez
2020-03-19Cleanup: `make format` after SortedIncludes changeDalai Felinto
2020-02-04Fix: UI: Spelling and CapitalizationAaron Carlisle
2019-12-09Add the ability to create internal springs to the cloth simSebastian Parborg
This can be used to make closed surfaces behave more like a soft body. Reviewed By: Jacques Lucke Differential Revision: http://developer.blender.org/D5788
2019-12-04Add cloth pressure vertex group and unlock cloth shrink values rangeSebastian Parborg
Introduced a way to specify cloth pressure force influence with a vertex group. This will allow users to only have pressure affect certain parts of the mesh. In addition to this, the "shrink factor" is now also unlocked to allow negative values and thus allowing the cloth mesh to grow as well. Reviewed By: Jaques Lucke Differential Revision: http://developer.blender.org/D6347
2019-11-27Fix T30941: Add cloth air pressure simulationSebastian Parborg
This adds some basic simulation of internal air pressure inside of closed cloth mesh objects. Reviewed By: Jacques Lucke Differential Revision: http://developer.blender.org/D5473
2019-11-21Fix T62631: Cloth vertex mass capped to a very low number on scaled scenes.Sebastian Parborg
Removed the weight limit and made the setting more clear in what it actually does. IE, it controlls the weight of the vertices of the cloth mesh Reviewed By: Brecht Differential Revision: http://developer.blender.org/D5450
2019-08-23RNA: Cleanup PointerRNA structJacques Lucke
The old layout of `PointerRNA` was confusing for historic reasons: ``` typedef struct PointerRNA { struct { void *data; } id; struct StructRNA *type; void *data; } PointerRNA; ``` This patch updates it to: ``` typedef struct PointerRNA { struct ID *owner_id; struct StructRNA *type; void *data; } PointerRNA; ``` Throughout the code base `id.data` was replaced with `owner_id`. Furthermore, many explicit pointer type casts were added which were implicit before. Some type casts to `ID *` were removed. Reviewers: brecht, campbellbarton Differential Revision: https://developer.blender.org/D5558
2019-08-20Liboverride: Add more missing ID RNA pointers as overridable.Bastien Montagne
2019-07-01Fix T66267: only add DEG cloth collision relations if collisions arePhilipp Oeser
enabled was detecting unneccessary dependency cycle Reviewers: sergey, brecht Maniphest Tasks: T66267 Differential Revision: https://developer.blender.org/D5160
2019-06-03Cleanup: style, use braces in RNACampbell Barton
2019-05-20Cleanup: reorder report argument for pointer assignmentCampbell Barton
Most code uses ReportList argument last (or at least not first) when an optional report list can be passed in.
2019-05-17Python: Raise an error even NO_MAIN data is assigned to objectSergey Sharybin
The goal is to prevent assignment of temporary or evaluated meshes to objects from the main database. Majority of the change is actually related on passing reports around. On a positive side there are more error prints which can become more visible to scripters. There are still possible further improvements in the related areas. For example, disable user counting for evaluated ID datablocks when assignment happens. But can also happen later on as a separate improvement. Reviewers: brecht, campbellbarton, mont29 Reviewed By: brecht Differential Revision: https://developer.blender.org/D4884
2019-04-17ClangFormat: format '#if 0' codeCampbell Barton
Previous cleanups didn't account for space after '#'.
2019-04-17ClangFormat: apply to source, most of internCampbell Barton
Apply clang format as proposed in T53211. For details on usage and instructions for migrating branches without conflicts, see: https://wiki.blender.org/wiki/Tools/ClangFormat
2019-02-20RNA: use factor when appropriateWilliam Reynish
- Many factor properties were set to PROP_NONE, even properties that had 'Factor' in the name! - Some time properties were not set to PROP_TIME, especially in Particles. - Changed motion_blur_shutter to use a soft max value of 1 instead of 2. Anything > 1 here is not physically correct and makes no real logical sense. - Changed display name of Dynamic Paint dissolve_speed to Dissolve Time, since it's a time property, not speed.
2019-02-18doxygen: add newline after \fileCampbell Barton
While \file doesn't need an argument, it can't have another doxy command after it.
2019-02-06Cleanup: remove redundant doxygen \file argumentCampbell Barton
Move \ingroup onto same line to be more compact and make it clear the file is in the group.
2019-02-03Cleanup: trailing commasCampbell Barton
Needed for clan-format not to wrap onto one line.
2019-02-01Cleanup: remove redundant, invalid info from headersCampbell Barton
BF-admins agree to remove header information that isn't useful, to reduce noise. - BEGIN/END license blocks Developers should add non license comments as separate comment blocks. No need for separator text. - Contributors This is often invalid, outdated or misleading especially when splitting files. It's more useful to git-blame to find out who has developed the code. See P901 for script to perform these edits.
2019-01-26Fix: Use correct units for cloth propertiesValentin
Differential Revision: https://developer.blender.org/D4260
2019-01-26Cleanup: remove redundant BKE/BLI/BIF headersCampbell Barton
2018-12-07Depsgraph: Remove duplicated sets of recalc/update flagsSergey Sharybin
There were at least three copies of those: - OB_RECALC* family of flags, which are rudiment of an old dependency graph system. - PSYS_RECALC* which were used by old dependency graph system as a separate set since the graph itself did not handle particle systems. - DEG_TAG_* which was used to tag IDs. Now there is a single set, which defines what can be tagged and queried for an update. It also has some aggregate flags to make queries simpler. Lets once and for all solve the madness of those flags, stick to a single set, which will not overlap with anything or require any extra conversion. Technically, shouldn't be measurable user difference, but some of the agregate flags for few dependency graph components did change. Fixes T58632: Particle don't update rotation settings
2018-11-28Use collection and instance terminology in Python APISergey Sharybin
This follows naming convention agreed on in T56648.
2018-09-26Cloth: Collision improvementsLuca Rood
This commit includes several performance, stability, and reliability improvements to cloth collisions. Most notably: * The implementation of a new self-collisions system. * Multithreading of collision detection. * Implementation of single sided collisions and normal overrides. * Replacement of the `plNearestPoints` function from Bullet with a dedicated solution. Further, this also includes several bug fixes, and algorithmic improvements. Reviewed By: brecht Differential Revision: http://developer.blender.org/D3712
2018-09-14Cloth: Improve UILuca Rood
This reorganizes the cloth UI, and changes some of the behaviour to be more reasonable. Changes included here: * Reorganized cloth panels * Improved some tooltips * Removed `vel_damping` option * Removed cloth pinning checkbox * Removed stiffness scaling checkbox * Separated shrinking from sewing * Separated self collisions from object collisions Reviewed By: brecht Differential Revision: http://developer.blender.org/D3691
2018-08-31Cloth: Componentize forcesLuca Rood
This separates cloth stiffness and damping forces into tension, compression, and shearing components, allowing more control over the cloth behaviour. This also adds a bending model selector (although the new bending model itself is not implemented in this commit). This is because some of the features implemented here only make sense within the new bending model, while the old model is kept for compatibility. This commit makes non-breaking changes, and thus maintains full compatibility with existing simulations. Reviewed By: brecht Differential Revision: http://developer.blender.org/D3655
2018-06-09Merge branch 'master' into blender2.8Campbell Barton
2018-06-09Cleanup: trailing space in RNACampbell Barton
2017-10-18Merge branch 'master' into blender2.8Campbell Barton
2017-10-18Cleanup: Use const for RNA EnumPropertyItem argsCampbell Barton
Practically all access to enum data is read-only.
2017-06-08Replace all old DAG calls with direct calls to new DEG and remove ↵Luca Rood
BKE_depsgraph.h This removes BKE_depsgraph.h and depsgraph.c
2016-08-16Fix depsgraph to compute more accurate links for collision & force.Alexander Gavrilov
Current implementation more or less indiscriminately links physics objects to colliders and forces, ignoring precise details of layer checks and collider groups. The new depsgraph seemed to lack some such links at all. The relevant code in modifiers suffers from a lot of duplication. Different physics simulations use independent implementations of collision and similar things, which results in a lot of variance: * Cloth collides with objects on same or visible layer with dupli. * Softbody collides with objects on same layer without dupli. * Non-hair particles collide on same layer with dupli. * Smoke uses same code as cloth, but needs different modifier. * Dynamic paint "collides" with brushes on any layer without dupli. Force fields with absorption also imply dependency on colliders: * For most systems, colliders are selected from same layer as field. * For non-hair particles, it uses the same exact set as the particles. As a special quirk, smoke ignores smoke flow force fields; on the other hand dependency on such field implies dependency on the smoke domain. This introduces two utility functions each for old and new depsgraph that are flexible enough to handle all these variations, and uses them to handle particles, cloth, smoke, softbody and dynpaint. One thing to watch out for is that depsgraph code shouldn't rely on any properties that don't cause a graph rebuild when changed. This was violated in the original code that was building force field links, while taking zero field weights into account. This change may cause new dependency cycles in cases where necessary dependencies were missing, but may also remove cycles in situations where unnecessary links were previously created. It's also now possible to solve some cycles by switching to explicit groups, since they are now properly taken into account for dependencies. Differential Revision: https://developer.blender.org/D2141
2016-08-13Prevent max stiffness values from going under normal stiffness values in ↵Luca Rood
cloth stiffness scaling. When updating the max values under stiffness scaling, they clip at the normal stiffness values as expected, however when updating stiffness values, you could set them higher than the max values, and the max values weren't updated accordingly. As the stiffness scaling computes using the absolute difference between the max values and the stiffness values, you got higher stiffnesses in scaled areas even though your max is actually lower than the normal stiffness. This diff fixes that behaviour, by updating the max values to be equal to the stiffness whenever you set a higher stiffness than the max value. Also, I have initialized the max values to the same as the stiffnesses, as they were previously just set to zero, and caused the same problem described above. Reviewers: lukastoenne Reviewed By: lukastoenne Tags: #physics Differential Revision: https://developer.blender.org/D2147
2016-07-30Cloth Simulation: add time scale propertyCampbell Barton
This setting can also be animated, to create a "time warp" effect. D2122 by @LucaRood
2016-07-30Cloth: option to use dynamic base meshCampbell Barton
This adds the ability for cloth simulations to respect changes in the underlying mesh. So you can for instance, animate shape keys, armatures, or add any deformation modifiers (above the cloth modifier). This is mainly useful for (but not limited to) cartoon animations, where your character might stretch or change shape, and you want the clothes to follow accordingly. D1903 by @LucaRood
2016-07-30Cloth: UI cleanup & quality hard limit removalCampbell Barton
D2121 by @LucaRood
2016-05-06Cloth: Invalidate cache when sewing springs are toggled on or off.Alexander Gavrilov
2016-01-21Cleanup: line length, indentationCampbell Barton
2015-02-12Removed the cloth preroll feature.Lukas Tönne
This feature has been totally broken for a long time. It was added originally because negative frames were not supported. Giving simulations (cloth and others) time to settle before animation starts needs to be solved in a much better and more generic way.
2015-01-21Removed generic debug1..4 values from the cloth data.Lukas Tönne
These were used as UI buttons during development. If such parameters are needed again later they should instead be added in the (now global) SimDebugData and made accessible with a dev addon or so.
2015-01-20Some tweaking of value ranges for hair target density and removedLukas Tönne
density factor (already included in grid velocity). Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp
2015-01-20Use dedicated debug values in cloth settings instead of abusing unusedLukas Tönne
other values. Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp
2015-01-20Implementation of a target density feature for the hair simulation.Lukas Tönne
This allows setting a target density which the fluid simulation will take into account as an additional term in the pressure Poisson equation. Based on two papers "Detail Preserving Continuum Simulation of Straight Hair" (McAdams et al. 2009) and "Two-way Coupled SPH and Particle Level Set Fluid Simulation" (Losasso et al. 2008) Currently the target pressure is specified directly, but it will be a lot more convenient to define this in terms of a geometric value such as "number of hairs per area" (combined with hair "thickness"). Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp
2015-01-20Use a fixed, uniform cell size for hair continuum grids.Lukas Tönne
This is a bit more awkward for artists to use, but necessary for a stable solution of the hair continuum calculation. The grid size is defined by the user, the extent of the grid is then calculated based on the hair geometry. A hard upper limit prevents bad memory allocation in case too small values are entered. Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp
2015-01-20Removed unused voxel_filter_size DNA property.Lukas Tönne
This is an artifact of earlier attempts to implement velocity smoothing, but doesn't work anyway. Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp
2015-01-20Added separate damping for bending springs.Lukas Tönne
The bend damping factor was hardcoded to the same value as the stiffness. Now it has its own factor in the settings and button in hair dynamics.