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-11-23Cleanup: use `rna_enum_` prefix for RNA enumsCampbell Barton
Definitions could shadow local vars.
2015-11-23OpenNL: make the API thread safe by always passing context.Brecht Van Lommel
Previously two laplacian smooth or deform modifiers executing simultaneously could crash.
2015-11-23OpenNL: significantly simplify code using Eigen / STL.Brecht Van Lommel
2015-11-18Cleanup: editor api namingCampbell Barton
- use ED_ prefix for api calls - use ED_*_select_pick for mouse selection (was already done in parts)
2015-11-08Code cleanup: remove some unused mesh laplacian code.Brecht Van Lommel
2015-09-22Cleanup: indentationCampbell Barton
2015-09-20Cleanup: Use new vector transform functionsJulian Eisel
2015-09-18Use squared length where possibleCampbell Barton
2015-09-13Cleanup: spellingCampbell Barton
2015-09-04Fix T46010: Bone offset between Rest Pose and Edit mode.Bastien Montagne
That one was hairy... To summarize: * We were setting Bone.head/tail (aka **local** rest location of bone) from EditBone data, using **EditBone's parent computed armature space**. * We use those local head/tail to define Bone's restpose (in `BKE_armature_where_is_bone()`), using **Bone's parent armature space** (aka parent's arm_mat). * Because of bone's roll nightmare, the two above parent's matrices will often not be the same. In an ideal world, this should not affect locations (head/tail), but in real world of float it does - noticeably, in some extreme cases. So! This commit cleans up things a bit (`fix_bonelist_roll()` was already doing much more than just fixing roll mess, has been renamed to `armature_finalize_restpose()`), and ensures we do use (final!) parent's arm_mat local space to compute children's local head/tail as well. This allows us to avoid too much imprecision here. Checked the patch also with a complete Victor's rig from Gooseberry, seems to have no nasty side effects - fingers crossed!
2015-09-04Armature: Cheap edit-to-object mode speedup.Bastien Montagne
`fix_bonelist_roll()` is already recursive, and was calling recursive `BKE_armature_where_is_bone()` twice! Changed `BKE_armature_where_is_bone()` to controll whether we recurse over children or not. With full Victor's rig, we gain 16% in `ED_armature_from_edit()` (from 31ms to 26ms). With a dummy test-case 100 bones chain, we gain 80% in `ED_armature_from_edit()` (from 1.25ms to 0.25ms). Not crucial, but still worth it. ;)
2015-08-22Fix T45689: Pose Libraries cannot be used when using lib-linked actions as ↵Joshua Leung
poselibs This commit makes some tweaks that make it at least possible to use lib-linked actions as Pose Libraries. Specifically: * The apply poses button is no longer greyed out * It is possible to select different poses from the list of poses * All pose library operators which edit the poses stored in the poselib now have improved poll callbacks which perform extra checks for lib-linked actions (which cannot be edited, as all those changes will be lost) Caveats: * Due to the way the UI list template works, it doesn't seem to be possible to make it not grey out the items in the list. (While the double-click to rename thing shouldn't be allowed, items should at least look like they can be clicked on) * The difference between clickable vs not-clickable isn't too great, making it hard to tell that that while the Add/Remove/Sanitise toggles are not usable, the Apply Poses is actually functional. But, this is a more of a UI-toolbox level issue
2015-08-21BVH-raycast: Use watertight intersectionsCampbell Barton
By default watertight intersections are used, For callbacks where its not needed, BLI_bvhtree_ray_cast_ex can be called without the BVH_RAYCAST_WATERTIGHT flag. Fixes T45286
2015-08-21BVH-raycast: ensure input direction is unit-lengthCampbell Barton
This was already the case for most users of ray-cast. Doing this avoids 2x normalize calls per ray-cast in many places.
2015-08-20Avoid redundant normal calculation in heat-weightCampbell Barton
2015-08-18Refactor translation code out of blenfontCampbell Barton
- Add blentranslation `BLT_*` module. - moved & split `BLF_translation.h` into (`BLT_translation.h`, `BLT_lang.h`). - moved `BLF_*_unifont` functions from `blf_translation.c` to new source file `blf_font_i18n.c`.
2015-08-04SCons: Fix for really nasty bug with polluting configuration environmentSergey Sharybin
The issue was caused by the following construction: def = env['SOMETHING'] defs.append('SOMETHING_MORE') Since first assignment was actually referencing environment option it was totally polluted hawing weird and wonderful side effects on all other areas of Blender.
2015-08-01Docs: doxy cleanup/minor editsCampbell Barton
2015-07-23Mesh Deform: support for ngons when bindingCampbell Barton
Weights were calculated using tessellation data, giving slightly uneven weighting. Now only use tessellation for ray-cast but weight the influences from the original polygons. Also cache arrays from derived-mesh, they we're called each intersection.
2015-07-22Use looptri for MeshDeform modifierCampbell Barton
2015-07-22Cleanup: use struct for storing callback dataCampbell Barton
2015-07-20Replace MFace use by MLoopTri w/ heat-weightingCampbell Barton
D1418 by @scorpion81 with edits
2015-07-09Curve selection, de-duplicate & cleanupCampbell Barton
2015-07-07Correct default enum valuesCampbell Barton
Had assert creating cheat sheet
2015-07-03UI: add ability to access/generate 'shortcuts strings' of modal keymaps.Bastien Montagne
We already had that for global keymaps (used e.g. to generate shortcuts for menu entries), but this wasn’t possible for modal keymaps yet (e.g. help message in header during transforms and other modal operation). This commit only adds needing background code, it does not change anything from user PoV. Modal operators will be updated to use it in comming weeks. Thanks to Campbell for revisions & suggestions. :) Differential Revision: https://developer.blender.org/D780
2015-07-01Cleanup: use swap math funcsCampbell Barton
2015-06-21Fix/Cleanup possibility to type insane values in 'add' operators options.Bastien Montagne
Our 'hard limit' values was too often max_int/float here, mis-typing could lead to crash (or infinite hanging) of Blender, see e.g. http://blender.stackexchange.com/questions/32790/blender-forces-computer-to-reboot-after-mistyping-extreme-value-for-resolution-i
2015-06-19Cleanup: fix mismatch in printf formating (int/unsigned int).Bastien Montagne
Noisy and annoying with new gcc5...
2015-06-16Partial Fix T44997: Propagate pose on selected keyframes only included those ↵Joshua Leung
after the current frame This behaviour was confusing, since "selected keyframes" suggests that it covers all selected keyframes (instead of trying to do this based on frame ranges).
2015-06-12Armature: add armature dissolveCampbell Barton
Works like mesh dissolve (access from delete or Ctrl+X)
2015-06-06CleanupCampbell Barton
2015-05-27Fix parent tips staying selected after separateCampbell Barton
2015-05-27Use PKey for edit-armature separateCampbell Barton
As used already for mesh & curves. Add confirmation menu for curve & armature, since this isn't such a common operation and undoing leaves object data (long term bug/todo to fix).
2015-05-23Cleanup: typosCampbell Barton
2015-05-17Numeric Input for Pose Breakdowner/Slide/Push ToolsJoshua Leung
2015-05-12Depsgraph: Add utility function to tag pose for recalcSergey Sharybin
Currently this function only tags pose itself, totally matching previous behavior. But this will be needed in the future once new dependency graph is landed, because of it's granular nature which relies on the fact that pose channels are all up to date when building the graph. Should be no functional changes so far.
2015-05-03Fix T44591: Set PBone Group operator did not handled predifined group index ↵Bastien Montagne
in its invoke func.
2015-04-08Use IS_EQF for floatsCampbell Barton
2015-04-08Partial fixes for issues raised in T44219Joshua Leung
* The breakdowner tool will no longer operate directly on properties of type "enum", as this doesn't make sense most of the time. This is still not much use though when custom properties (ints) are used to drive some underlying enum property though (as in blenrig) * The breakdowner no longer tries to perform any blending if the start and end values are the same, to avoid float precision issues.
2015-04-07Revert Sticky Keys (and everything related to that)Julian Eisel
Our current keymap doesn't give us enough room to make such changes in the event system. To fix small issues caused by this, we would need to do drastic changes in Blender's keymaps and internal handling. It was worth a try, but it didn't work. I can write down a more descriptive statement in a few days, but for now I need a break of this stuff.
2015-04-07Use BKE_edgehash_ensure_p where possibleCampbell Barton
2015-04-06UI i18n cleanup...Bastien Montagne
And some general style cleanup as well (line length...).
2015-04-04Cleanup: use BKE_animdata_* prefixCampbell Barton
2015-04-03Sticky Keys backendJulian Eisel
Design task: T42339 Differential Revision: D840 Initial implementation proposal: T41867 Short description: With this we can distinguish between holding and tabbing a key. Useful is this if we want to assign to operators to a single shortcut. If two operators are assigned to one shortcut, we call this a sticky key. More info is accessible through the design task and the diff. A few people that were involved with this: * Sean Olson for stressing me with this burden ;) - It is his enthusiasm that pushed me forward to get this done * Campbell and Antony for the code and design review * Ton for the design review * All the other people that gave feedback on the patch and helped to make this possible A big "Thank You" for you all!
2015-04-02Expose the Pose Propagate tool a bit more in the UIJoshua Leung
From the various forum threads and the fact that a new addon has cropped up, it appears that it is not that well known that this tool exists, and that it can be used solve a very common problem that animators face. Namely: When you've gone through blocking out your key poses and then realise that you need to adjust parts of the rig which don't change much, this tool solves the problem of needing to go through doing grunt-work to fix all the other keyframes which now need to change as well. So, this tool is now available in the following two places (in addition to the existing Pose -> Propagate menu): * Toolbar - The "Propagate" button will use the default mode (or the last used mode for each subsequent invocation). The arrow-button beside this will allow choosing between the different modes. (NOTE: The UI team may have different thoughts on this, but, let's give this a try for a while first, to see if this sort of thing works) * Alt-P - In Pose Mode, this will now bring up a menu allowing you to choose which mode is used. Since this sort of thing is something that does get run several times in a row when you need it, having this hotkey will make it a bit more convenient.
2015-04-02Propagate Pose: Added 'Selected Keyframes' modeJoshua Leung
This commit adds a new mode for the Propagate Pose tool. With this new option, the Propagate Pose will copy the current pose over to all selected keyframes after the current frame. For reference, some of the other/existing options are: to copy it to each subsequent keyframe with the same value (WHILE_HELD - the default), to the next keyframe, or to the last keyframe.
2015-03-30Cleanup: use const for typeinfoCampbell Barton
2015-03-28Cleanup: redundant struct declarationsCampbell Barton
2015-03-28Use union for EditBone'sCampbell Barton
Avoids complicated casts accessing as int
2015-03-23Cleanup: comments, styleCampbell Barton