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
2019-01-30Cleanup: line lengthCampbell Barton
2018-12-18Cleanup: python quotesCampbell Barton
2018-11-23Cleanup: single quote enumsCampbell Barton
2018-11-06Shrinkwrap: new mode that projects along the target normal.Alexander Gavrilov
The Nearest Surface Point shrink method, while fast, is neither smooth nor continuous: as the source point moves, the projected point can both stop and jump. This causes distortions in the deformation of the shrinkwrap modifier, and the motion of an animated object with a shrinkwrap constraint. This patch implements a new mode, which, instead of using the simple nearest point search, iteratively solves an equation for each triangle to find a point which has its interpolated normal point to or from the original vertex. Non-manifold boundary edges are treated as infinitely thin cylinders that cast normals in all perpendicular directions. Since this is useful for the constraint, and having multiple objects with constraints targeting the same guide mesh is a quite reasonable use case, rather than calculating the mesh boundary edge data over and over again, it is precomputed and cached in the mesh. Reviewers: mont29 Differential Revision: https://developer.blender.org/D3836
2018-11-06Implement an Armature constraint that mimics the modifier.Alexander Gavrilov
The main use one can imagine for this is adding tweak controls to parts of a model that are already deformed by multiple other major bones. It is natural to expect such locations to deform as if the tweaks aren't there by default; however currently there is no easy way to make a bone follow multiple other bones. This adds a new constraint that implements the math behind the Armature modifier, with support for explicit weights, bone envelopes, and dual quaternion blending. It can also access bones from multiple armatures at the same time (mainly because it's easier to code it that way.) This also fixes dquat_to_mat4, which wasn't used anywhere before. Differential Revision: https://developer.blender.org/D3664
2018-10-18Cleanup: styleCampbell Barton
2018-10-17Shrinkwrap: implement the use of smooth normals in constraint & modifier.Alexander Gavrilov
- Use smooth normals to displace in Above Surface mode. - Add an option to align an axis to the normal in the constraint. I've seen people request the alignment feature, and it seems useful. For the actual aligning I use the damped track logic. In order to conveniently keep mesh data needed for normal computation together, a new data structure is introduced. Reviewers: mont29 Differential Revision: https://developer.blender.org/D3762
2018-10-01Shrinkwrap Constraint: implement projection features from the modifier.Alexander Gavrilov
Allow raycasting in two directions and culling front or back faces. Also implement a new Invert Cull option in both constraint and modifier that can be used to aim for faces aligned with the project axis direction when raycasting both ways. Reviewers: mont29 Differential Revision: https://developer.blender.org/D3737
2018-09-26Implement additional modes for Shrinkwrap to a surface.Alexander Gavrilov
In addition to the original map to surface and Keep Above Surface, add modes that only affect vertices that are inside or outside the object. This is inspired by the Limit Distance constraint, and can be useful for crude collision detection in rigs. The inside/outside test works based on face normals and may not be completely reliable near 90 degree or sharper angles in the target. Reviewers: campbellbarton, mont29 Differential Revision: https://developer.blender.org/D3717
2018-08-28Cleanup: pep8Campbell Barton
2018-08-28RNA: UILayout.split(..) 'percentage' to 'factor'Campbell Barton
Misleading name since it's between 0..1. Use as a keyword argument to prepare for keyword only args. Also document that leaving unset has special behavior.
2018-08-28UI: text keyword argument to labelCampbell Barton
Prepare for keyword only args
2018-08-13Implement multiplicative Copy Scale and make it the new default.Alexander Gavrilov
Scale is a multiplicative quantity, so adding it doesn't make sense. However, for backward compatibility reasons, and in case somebody actually desires the old additive behavior, the old way remains as an option. Without this change the only way to properly combine scale is via parenting or the complicated Transformation constraint. The new mode is turned on by a flag for file compatibility, but the RNA option is reversed so that the new behavior feels more default. Reviewers: aligorith Differential Revision: https://developer.blender.org/D3558
2018-06-05Cleanup: pep8Campbell Barton
Use 'autopep8 --ignore E721,E722' on our UI code, only minor changes.
2017-07-24Cleanup: trailing spaceCampbell Barton
2017-03-19Moving classes to separate listing broke panel orderCampbell Barton
Although this wasn't so obvious since it only showed up for factory settings and in the preferences window. Panel display order depends on registration order, Sorry for the noise. On the bright side we no longer need to move classes around to re-arrange panels.
2017-03-18PyAPI: remove bpy.utils.register_module()Campbell Barton
In preparation for it being removed, see: T47811
2016-08-06Basic Alembic supportKévin Dietrich
All in all, this patch adds an Alembic importer, an Alembic exporter, and a new CacheFile data block which, for now, wraps around an Alembic archive. This data block is made available through a new modifier ("Mesh Sequence Cache") as well as a new constraint ("Transform Cache") to somewhat properly support respectively geometric and transformation data streaming from alembic caches. A more in-depth documentation is to be found on the wiki, as well as a guide to compile alembic: https://wiki.blender.org/index.php/ User:Kevindietrich/AlembicBasicIo. Many thanks to everyone involved in this little project, and huge shout out to "cgstrive" for the thorough testings with Maya, 3ds Max, Houdini and Realflow as well as @fjuhec, @jensverwiebe and @jasperge for the custom builds and compile fixes. Reviewers: sergey, campbellbarton, mont29 Reviewed By: sergey, campbellbarton, mont29 Differential Revision: https://developer.blender.org/D2060
2016-07-07Revert "ChildOf Constraint: Hide the Loc/Rot/Scale toggles"Joshua Leung
This reverts commit 4fd78bb06faa31f265af6a5f247cf4255b5ac479. After further testing, it turns out that these options are less-broken than I remember them being (and have been hearing about). Specifically, as long as you disable all 3-axes of a transform component (i.e. all location, all rotation, all scale) you're not likely to have problems, whereas if you only disabled one axis (i.e. y-rotation), you may have problems in some cases. So, restoring these to the UI.
2016-06-23ChildOf Constraint: Hide the Loc/Rot/Scale togglesJoshua Leung
The RNA properties are still there (in case you really need them), except now they will not be shown in the UI anymore, as this constraint really didn't work well/at all when any of those was disabled. Most people shouldn't really need to worry about this change. If anyone wants a matrix-math challenge, they're welcome to try getting those working for real, so that we can show these toggles again.
2016-05-17Bendy Bones: Advanced B-Bones for Easier + Simple RiggingJoshua Leung
This commit/patch/branch brings a bunch of powerful new options for B-Bones and for working with B-Bones, making it easier for animators to create their own rigs, using fewer bones (which also means hopefully lighter + faster rigs ;) This functionality was first demoed by Daniel at BConf15 Some highlights from this patch include: * You can now directly control the shape of B-Bones using a series of properties instead of being restricted to trying to indirectly control them through the neighbouring bones. See the "Bendy Bones" panel... * B-Bones can be shaped in EditMode to define a "curved rest pose" for the bone. This is useful for things like eyebrows and mouths/eyelids * You can now make B-Bones use custom bones as their reference bone handles, instead of only using the parent/child bones. To do so, enable the "Use Custom Reference Handles" toggle. If none are specified, then the BBone will only use the Bendy Bone properties. * Constraints Head/Tail option can now slide along the B-Bone shape, instead of just linearly interpolating between the endpoints of the bone. For more details, see: * http://aligorith.blogspot.co.nz/2016/05/bendy-bones-dev-update.html * http://aligorith.blogspot.co.nz/2016/05/an-in-depth-look-at-how-b-bones-work.html -- Credits -- Original Idea: Daniel M Lara (pepeland) Original Patch/Research: Jose Molina Additional Development + Polish: Joshua Leung (aligorith) Testing/Feedback: Daniel M Lara (pepeland), Juan Pablo Bouza (jpbouza)
2016-01-31Cleanup: pep8Campbell Barton
2015-07-19Fix T45495: Armatures using the iTaSC IK solver causes UI truncation in bone ↵Bastien Montagne
constraints panel. Caused by rB404f9ddc37fc, cleanup is OK but please double-check changes before committing. :(
2015-06-07Cleanup: use staticmethodsCampbell Barton
2015-04-14Cleanup: don't use single sets for comparisonsCampbell Barton
2015-01-29cleanup: pep8Campbell Barton
also remove empty class parenthesis
2015-01-13Pataz-Gooseberry Request: Limits on Volume Preservation for Spline IKJoshua Leung
This commit adds a new type of volume preservation mode to Spline IK which makes it possible to set limits on the minimum and maximum scaling of bone "fatness". * The old volume preseving mode has been kept but renamed, to avoid breaking old rigs. "Volume Presevation" uses the new method, while "Inverse Preservation" is the old one. * The code and settings for this new xz scale mode are directly lifted from the improved Stretch To constraint
2014-10-13Integrated limits for volume preservation in stretch-to constraints.Lukas Tönne
Currently the volume variation feature in stretch constraints is unlimited. This has to be compensated by riggers by adding scale limit constraints, but these are unaware of the stretch orientation and can lead to flipping. Also the stretch calculation itself is not working properly and can lead to collapsing volume. The patch fixes this with several modifications: - Interpret the volume variation factor as exponent, which works better with large values for artistic purposes. - Add integrated limits to the volume "bulge" factor, so secondary constraints for compensation become unnecessary - Add a smoothness factor to make limits less visible. Eventually a generic volume preservation constraint would be nicer, because multiple constraints currently implement volume variation of their own. This feature could actually work very nicely independent from other constraint features. Differential Revision: https://developer.blender.org/D826
2014-07-24Implement option to parent object to undistorted position of 2D trackSergey Sharybin
2014-05-01Fix T39987: The new "redirect to bone constraints" button at the object ↵Bastien Montagne
constaints tab is wrong in bone edit mode In edit mode, do as with usual objects - show object constraints!
2014-04-07Fix T39563: Tiny unit-display problem in constraint panels.Bastien Montagne
There is no good solution here, since RNA props can only have one type/unit. Tried to find the less worse one - have different RNA props for same DNA value (a bit like the angle/length for camera lens). Also fixed two other issues with Transform conctraint: * Angle were still in degrees (yes, another backward-compatibility breacking). * Scale was absolute, unlike loc/rot. Also cleaned up a bit the code, replaced some magic numbers by proper enums, ...
2014-03-19Usual UI messages fixes...Bastien Montagne
2014-03-15UI Tweak: Add a convenience button for switching to Bone Constraints TabJoshua Leung
To reduce user confusion, we were already presenting users with an error message when they tried to edit constraints for bones from the Object Constraints tab. This commit just makes things more convenient by adding a button which takes users to the right tab when clicked.
2013-09-07shrink-wrap constraint, improve and remove some limitations.Campbell Barton
- ability to change the space the axis is projected in (so you can choose worldspace or -space, was always local-space before). - support projecting on a negative axis, without this some very simple clamping is not possible if the direction happened not to be positive. - add distance limit (same as modifier), without this single meshes surrounding an object would make the constraint impossible to use in some cases (it would snap to the wrong side). note: this removes the ability to project on multiple axes at once but this option only added up directions and didnt project on multiple axes as you might expect.
2013-08-24Followup to r59434 : py UI scripts edits.Bastien Montagne
Notes: * Made those edits by full checking of py files, so I should have spoted most needed edits, yet it remains quite probable I missed a few ones, we'll fix if/when someone notice it... * Also made some cleanup "on the road"!
2013-03-11code cleanup: pep8 & minor changesCampbell Barton
2013-03-11Renaming "properties_object_constraint.py" to "properties_constraint.py"Joshua Leung
The code in this file is NOT restricted to use in object context only. Renaming it makes it easier to find this file (taking in account name truncations).