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
2015-06-12BLI_linklist, avoid full list search for appendCampbell Barton
For areas that require append, store the last node, Previous behavior would too easily hide poorly performing code. Also avoid (prepend, reverse) where possible.
2015-03-11Cleanup: 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-20Fix for invalid access to undefined hair data in edge-only cloth meshes.Lukas Tönne
Cloth data is used both for hair and actual cloth, which makes things really difficult. The face number was used for distinguishing the two types (no faces == hair mesh), but the extra hair data necessary for hair sim is generated by particles and not available for edge-only cloth meshes. This really needs to be sanitized ... Conflicts: source/blender/physics/intern/BPH_mass_spring.cpp
2015-01-20Randomness factor for hair bending stiffness.Lukas Tönne
This helps to create some variation in a hair system, which can otherwise become very uniform and boring. It's yet another confusing setting in a system that should have been nodified, but only option for now (broken windows ...) Conflicts: source/blender/blenkernel/intern/particle_system.c source/blender/physics/intern/BPH_mass_spring.cpp
2015-01-20Nicer hashing functionality for sim debugging using a variadic macroLukas Tönne
to support multiple hash identifiers. Using explicit hashing functions for every sim debug call defeats the purpose of having a quick feedback system. Now this can be done simply by passing an arbitrary number of hash inputs (integers) at the end of the function calls, which are then combined by a system of variadic macros (based on the ELEM feature). Up to 8 identifiers are supported currently, but more could be added easily if needed. Conflicts: source/blender/blenkernel/intern/particle_system.c 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-20Cleanup: Removed the unnecessary cloth solver abstraction (there is onlyLukas Tönne
one solver anyway), and split some particle cloth functions for clarity. Conflicts: source/blender/blenkernel/BKE_particle.h source/blender/blenkernel/intern/particle_system.c source/blender/blenloader/intern/versioning_270.c source/blender/makesdna/DNA_particle_types.h source/blender/makesrna/intern/rna_particle.c
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.
2015-01-20Fix for hair chain testing in the cloth modifier.Lukas Tönne
Bending springs are en-bloc and not interleaved with other springs, so this can't be used as a test for hair roots. Use consecutive indices instead.
2015-01-20Completed the implementation of bent rest shapes for hair.Lukas Tönne
Basically follows the Pixar approach from "Artistic Simulation of Curly Hair".
2015-01-20Target calculation for local non-straight rest shapes.Lukas Tönne
This is more involved than using simple straight bending targets constructed from the neighboring segments, but necessary for restoring groomed rest shapes. The targets are defined by parallel-transporting a coordinate frame along the hair, which smoothly rotates to avoid sudden twisting (Frenet frame problem). The rest positions of hair vertices defines the target vectors relative to the frame. In the deformed motion state the frame is then recalculated and the targets constructed in world/root space.
2015-01-20Calculate bending targets based on the direction of previous segments.Lukas Tönne
This makes the bending a truely local effect. Eventually target directions should be based in a local coordinate frame that gets parallel transported along the curve. This will allow non-straight rest shapes for hairs as well as supporting twist forces. However, calculating locally transformed spring forces is more complicated.
2015-01-20Simple initial implementation of angular bending springs.Lukas Tönne
These are much better suited for creating stiff hair. The previous bending springs are based on "push" type spring along the hypothenuse of 3 hair vertices. This sort of spring requires a very large force in the direction of the spring for any angular effect, and is still unstable in the equilibrium. The new bending spring model is based on "target" vectors defined in a local hair frame, which generates a force perpendicular to the hair segment. For further details see "Artistic Simulation of Curly Hair" (Pixar technical memo #12-03a) or "A Mass Spring Model for Hair Simulation" (Selle, Lentine, Fedkiw 2008) Currently the implementation uses a single root frame that is not yet propagated along the hair, so the resulting rest shape is not very natural. Also damping and derivatives are still missing.
2015-01-20Made the voxel grid size for hair interaction configurable and increasedLukas Tönne
the default to 32. Conflicts: source/blender/blenloader/intern/versioning_270.c
2015-01-20Renamed functions to make them explicitly refer to cloth, and split theLukas Tönne
create/free functions for solver data off from the cloth solver.
2015-01-20Moved the cloth solver code into a new subfolder/library inside BlenderLukas Tönne
code. The implicit solver itself should remain agnostic to the specifics of the Blender data (cloth vs. hair). This way we could avoid the bloated data conversion chain from particles/hair to derived mesh to cloth modifier to implicit solver data and back. Every step in this chain adds overhead as well as rounding errors and a possibility for bugs, not to speak of making the code horribly complicated. The new subfolder is named "physics" since it should be the start of a somewhat "unified" physics systems combining all the various solvers in the same place and managing things like synchronized time steps.
2014-11-11Avoid calling powf with integer exponent in more placesSergej Reich
Move powX functions from particle code into math library and use them.
2014-09-24Cleanup: boolCampbell Barton
2014-06-13GSet, GHash: Add BLI_gset_add, since its common to add members to a setCampbell Barton
also rename BLI_edgeset_reinsert -> BLI_edgeset_add, in this case its the same.
2014-04-04Cloth: replace EdgeHash with EdgeSetCampbell Barton
2014-03-17Code cleanup: styleCampbell Barton
2014-02-14Fix for crash caused by effectors doing precalculation //during// DAGLukas Tönne
updates. This file crashes on loading with NULL pointer access to curve_cache: {F77132} The pdInitEffectors function was amalgamating the simple collection of effector objects with an automatic precalculation for curve guides and the like. This precalculation requires object data that may not be available until the DAG has finished. Since for DAG dependencies only the list of effectors is required, added an argument to disable precalculation when collecting effectors.
2014-02-14Code cleanup: duplicate headersCampbell Barton
2014-02-06Patch T31269: Add sewing seams to cloth simulationDaniel Genrich
Description: -------------------------- Use loose edges marked as seams as sewing springs. Usage: ------------------------- All this patch does is set the rest length to 0 and the stiffness to 1 for springs for loose edges marked as seams so that during the cloth simulation they will be brought together. Example Video: ------------------------- http://www.youtube.com/watch?v=-Y_bC0gjoM0 Original Patch by thesleepless (+ git patch by codemanx) Thank you!
2013-10-31code cleanup: spellingCampbell Barton
2013-08-24cloth was using edgehash not quite correctly:Campbell Barton
- was ordering vertex args unnecessarily. - was adding the same edges multiple times into the edgehash.
2013-08-24cloth spring building: replace MIN2/MAX2 in assignments with a function ↵Campbell Barton
which orders on assignment.
2013-08-24fix for leak in cloth modifierCampbell Barton
- any error in cloth_build_springs wasn't freeing the edge-hash. - was checking BLI_edgehash_haskey on matching vertices. - was looping over setting NULL for all elements of a calloc'd array.
2013-08-24edge hash: take an arg for the guarded-malloc string (as ghash does)Campbell Barton
2013-07-22cloth: Fix [#36224] Cloth Simulation Doesn't Work on Rearranging ModifiersSergej Reich
Don't return imediately when simulation has changed. It's not needed and prevented proper initialization on startframe when simulation changed.
2013-03-15code cleanup: rename BKE_mesh_to_curve_ex --> BKE_mesh_to_curve_nurblist,Campbell Barton
also correct odd indentation.
2013-03-05code cleanup: also change BKE_blender.h BLENDER_VERSION_CHAR to 'a' so as ↵Campbell Barton
not to confuse things.
2013-01-23sim: Remove "continue physics" codeSergej Reich
This was left over from 2.4x days and is not used anymore. Now simulations are always interactive.
2012-12-28style cleanupCampbell Barton
2012-10-27A few more BMesh errors messages translated, and "automated" translation for ↵Bastien Montagne
modifers too!
2012-10-22style cleanupCampbell Barton
2012-10-21style cleanup: bge, switch statements mostly.Campbell Barton
also left bmesh decimator on in previous commit.
2012-10-21style cleanup: trailing tabs & expand some non prefix tabs into spaces.Campbell Barton
2012-10-09Bugfix [#32677] Cloth Pinning Does Not Obey Weight MapDaniel Genrich
Problem occured when having more than one weight map available.
2012-09-15quiet -Wmissing-prototypes warnings, and enable this warning by default for ↵Campbell Barton
C with gcc. helps for finding unused functions and making functions static, also did some minor code cleanup.
2012-08-13Bugfix Cloth: Hooks were broken by recent changes.Daniel Genrich
This makes it looks like if part 1 of the Dynamic Paint regression blend file fails, but actually it's correct.
2012-08-10Bugfix: Cloth did not work with Dynamic Paint.Daniel Genrich
Fix 1: Pinned vertices were never released when "unpinned" by Dynamic Paint. Fix 2: When pinning vertices during simulation, they would get "warped" to their original starting position of frame 1. Thanks to MiikaH for pointing this out and also for providing the regression blend file: http://wiki.blender.org/uploads/a/ab/Cloth_dynamic_paint.blend
2012-08-09Bugfix/Enhancement: Cloth didn't support animated vertex groups like the ↵Daniel Genrich
"Vertex Weight" modifier. Regression blend file: http://wiki.blender.org/uploads/b/b8/Cloth_anim_vertex.blend Thanks to Kologe for reporting this problem and also providing the regression blend file.
2012-08-08code cleanup: rename G.rt to G.debug_valueCampbell Barton
2012-07-07style cleanup: use c style comments in C codeCampbell Barton
2012-06-24style cleanypCampbell Barton
2012-06-17style cleanup:Campbell Barton
also fix for building ghost test and fix double free in one of the tests
2012-06-06Cloth: Add support for "Self Collision Vertex Group".Daniel Genrich
Self collision vertex groups enable artists to exclude selected vertices from getting involved in self collisions. This speeds simulations and it also resolves some self collision issues.
2012-05-23style cleanupCampbell Barton