Commit Graph

1813 Commits

Author SHA1 Message Date
Campbell Barton 389e590460 ghash alloc string from render branch
svn merge https://svn.blender.org/svnroot/bf-blender/branches/render25 -r28571:28573
 svn merge https://svn.blender.org/svnroot/bf-blender/branches/render25 -r28575:28576
2010-05-07 07:54:25 +00:00
Joseph Eagar 9610515b22 keyframe transform, both through dopesheet/action editor and graph editor, works a bit better with handles. handles now follow keyframes properly in frame snap mode, in situations where they would move (but the keyframe would not) in undesirable ways before. also hopefully fixed vector scope crash in image editor. and disabled snapping to seconds (ever); this can be a seperate option, silently switching to second snapping in frame snapping mode is absolutely evil. also, the action editor draws in hundredth of seconds, not seconds, so it didn't even work. Aligorith: I hope this code is ok, if not feel free to rewrite it. 2010-05-06 19:54:43 +00:00
Martin Poirier 8961d63c54 [#22212] edit problem with translate manipulator
Missing a matrix normalization (objects scaled in object mode would have the bug).
2010-05-05 02:07:26 +00:00
Campbell Barton 39c0e690d3 sub_v3_v3v3 --> sub_v3_v3 (where possible) 2010-04-23 23:57:00 +00:00
Campbell Barton fba7ebcbea replace add_v3_v3v3() --> add_v3_v3() where possible 2010-04-21 12:27:48 +00:00
Brecht Van Lommel 1dce678c2b Fix problem with limit rotation constraints during transform. This code
would convert from quat to matrix and back if the bone had any constraint,
but did not normalize the quat first as done in other places, giving a
sudden jump when starting transform on some bones with constraints. Two
changes:

* Normalize quaternion first.
* Only do this conversion on bones with limit rotation constraints,
  instead of all bones with any constraint.
2010-04-19 09:38:36 +00:00
Campbell Barton 8f1500da00 remove config.h references, was added for automake build system rev around 124-126 but isnt used by any build systems now. 2010-04-18 10:28:37 +00:00
Martin Poirier 584dbcc2fc [#21993] Edge Slide operator should disable projection snapping
Adding proper flag.

If there are others like that, other people can fix them too, it's easy peasy.
2010-04-12 22:42:09 +00:00
Campbell Barton 8c3ab1c2a4 - use more inline math funcitons where possible
- swapped in less verbose math functons
- modifier include cleanup
2010-04-12 00:36:50 +00:00
Martin Poirier 56b1c4e47f Specific operator for Push/Pull (no need to go through the generic operator and it makes it available in the operator search) 2010-04-11 16:04:11 +00:00
Joshua Leung 8bf6e2d09c Auto Keyframing:
Made 'PoseLib', 'Pose Paste', and 'Transforms' use the active KeyingSet instead of a hardcoded one if there is an active KeyingSet and the 'Only Insert for Keying Set' option is enabled in the User Prefs.

Also, made sure that for transforms, the active KeyingSet is provided with the data being modified instead of having them retrieve this from the context (which may miss a few items).

---

While making the changes for pose paste, made pasting poses not destroy the existing properties on the bones if the buffer bones didn't have any properties to replace the old ones with. IMO, this seems a bit too destructive if they don't get replaced, but perhaps in some cases not removing causes some problems with bad poses?
2010-04-07 11:27:59 +00:00
Martin Poirier d329388245 Missed one of the tweak operator for nodes when adding new param. 2010-04-05 00:06:06 +00:00
Martin Poirier 824be96dc0 More work on Drag Immediate:
- Rename option and flag to something more sane
- Add property to manipulator operator and set true by default

Confirm on Release can now be forced true or false per operator, in which case it won't use the default value (the user preference).
2010-04-03 17:38:43 +00:00
Martin Poirier 5a805c5fc3 [#21840] When clicking to move a Node it sticks to the mouse
Add hidden property to be able to force confirm on release (drag immediately is a silly name) on or off.

Streamline method for adding common properties to transform operators.
2010-04-02 19:40:51 +00:00
Campbell Barton 9105f6f0bd rna naming, *_frame --> frame_* 2010-04-01 21:44:56 +00:00
Brecht Van Lommel 515592438f Baking for dupligroup & linked library objects
- library data allows pointcache writing (hard to know how this should work long term so ifdef'd for now)
- changing the frame now updates the dupligroup objects
- BKE_ptcache_ids_from_object(), option to get the id's from duplis

note! scene_update_tagged() is called from the main() loop, and runs BKE_ptcache_quick_cache_all(), this could become a performance issue, especially with duplis, should probably not call BKE_ptcache_quick_cache_all() all the time, even when not playing back animation.
(commits 27856 by Campbell from render25 branch)
2010-03-30 12:23:13 +00:00
Brecht Van Lommel 19fb497d13 Fix a few warning in editors/ module. 2010-03-30 11:38:06 +00:00
Matt Ebb b09ee4923d Fix [#21711] Position of 2d cursor is not displayed correctly and cannot be set
in uv/image editor properties panel

Note: Moved UV editor 2d cursor to SpaceImage rather than View2d, so it's 
more accessible to RNA.
2010-03-30 05:52:05 +00:00
Sergey Sharybin 5497c2004c Mirror clipping for curves and surfaces. 2010-03-29 09:29:50 +00:00
Martin Poirier d010dae91b [#21767] Project Vert. on the Surf. of Other Obj. enabled causes crash when trying to Crease some edges
Don't want to project for Crease (and others).
2010-03-28 13:59:33 +00:00
Joshua Leung 386e97f73a Purging compiler warnings 2010-03-26 03:10:58 +00:00
Joshua Leung 3c872daa59 4 Devs in Agreement - End of the Road for Old Track
This commit removes the Old Track method (used to be found under Object -> Animation -> Track), with all existing instances of this being converted to Track To Constraints. In fact, while performing this removal, I found that this was supposed to have happened in version 2.27 already, but for some reason the options were left in, and this function managed to survive for a further decade.

I've left the tracking axes around still, since it seems some curve tools still use that. However, that usage should probably get faded out in future too?


Misc notes:
* Fixed compiling error with constaints from harkyman's Maintain Volume patch. 
* Subversion of 2.52 now bumped up to .2
2010-03-26 02:57:49 +00:00
Joshua Leung 7a56ca7d6f Bugfix #21739: Extend in the NLA crashes (Ekey) 2010-03-26 00:25:14 +00:00
Campbell Barton f743b583bf more lint includes
Only source/blender/editors/ dir, should not give errors on different platforms
Only removing:  UI_*.h, ED_*.h, WM_*.h, DNA_*.h, IMB_*.h, RNA_*.h, PIL_*.h
2010-03-23 14:09:09 +00:00
Campbell Barton 1e9bf0cfdb spaces -> tabs, (4 spaces == 1 tab, only for white space preceding text) 2010-03-22 09:30:00 +00:00
gsr b3d 42ac4a3e7d Fix syntax for ID keyword. 2010-03-21 01:14:04 +00:00
Martin Poirier 5e7b1bde8d Hack to make people stop bugging me.
Working around a problem in a work around for holes in the operator API and event system.
2010-03-19 03:26:31 +00:00
Brecht Van Lommel abb7a25426 transform marker sync for extend and grab is back.
(commit 27537 by Campbell from render25 branch)
2010-03-16 18:01:22 +00:00
Joshua Leung ea4a987fd4 == Massive Keying Sets Recode ==
After a few days of wrong turns and learning the finer points of RNA-type-subclassing the hard way, this commit finally presents a refactored version of the Keying Sets system (now version 2) based on some requirements from Cessen.

For a more thorough discussion of this commit, see 
http://sites.google.com/site/aligorith/keyingsets_2.pdf?attredirects=0&d=1

------

The main highlight of this refactor is that relative Keying Sets have now been recoded so that Python callbacks are run to generate the Keying Set's list of paths everytime the Keying Set is used (to insert or delete keyframes), allowing complex heuristics to be used to determine whether a property gets keyframed based on the current context. These checks may include checking on selection status of related entities, or transform locks.

Built-In KeyingSets have also been recoded, and moved from C and out into Python. These are now coded as Relative Keying Sets, and can to some extent serve as basis for adding new relative Keying Sets. However, these have mostly been coded in a slightly 'modular' way which may be confusing for those not so familiar with Python in general. A usable template will be added soon for more general usage.

Keyframing settings (i.e. 'visual', 'needed') can now be specified on a per-path basis now, which is especially useful for Absolute Keying Sets, where control over this is often beneficial.

Most of the places where Auto-Keyframing is performed have been tidied up for consistency. I'm sure quite a few issues still exist there, but these I'll clean up over the next few days.
2010-03-16 06:18:49 +00:00
Brecht Van Lommel ae6ee27d37 Fix #21619 and #21613: edge loop delete crashes, after recent transform
manipulator ctrl+click increment fix.
2010-03-15 20:22:05 +00:00
Martin Poirier cbe776655a transform: Ctrl-Click on manipulators uses increments correctly. 2010-03-14 19:38:36 +00:00
Martin Poirier 9b660f3425 [#21523] Drag Immediately only working when "Select With" is set to LMB
Partial fix. Check lauch event if left or right mouse.

Also added a bug fix for manipulator (sometimes, type = 0)
2010-03-14 18:58:14 +00:00
Joshua Leung 6028470a9c Motion Paths + Auto-Keying:
Revised the conditions under which motion paths get recalculated after transforms (when auto-keying is enabled). Now, the type of path display does not matter, but rather that the object/bone in question has any paths at all. This makes animating with these a much smoother experience.
2010-03-11 11:15:25 +00:00
Joseph Eagar d6158a4019 brought back x-mirror editing, though it's currently buggy. also made tesselation face normals writable to disk. 2010-03-11 05:30:01 +00:00
Joseph Eagar b8b6fad640 fixed edge slide to an extent, though it still needs work (finding correct transform direction vector, uvs/vcols, etc). also got delete and vert connect (ykey) to work again. 2010-03-10 11:16:26 +00:00
Campbell Barton ad0e57a2a8 reproject - clamp image by the maximum texture size, remove debug printf. 2010-03-09 14:35:56 +00:00
Joshua Leung 6a4b39ed2c Bugfix #21508: Hidden bones remain "selected" and are affected by transforms
Made hidden bones get ignored by transform code. This should be quite an old bug...
2010-03-09 08:31:41 +00:00
Joseph Eagar 71003b9bcc merge with trunk at r27259 and commit of a patch by anthony jones to fix msvc (though further work may be needed because changes made by the merge 2010-03-09 04:32:40 +00:00
Martin Poirier 70efb8d322 [#21433] Angular rotation snap issue, final value set is not snapped - SVN 27250 and 2.50A1
Proper fix for this. Moving special mouse input stuff to custom callbacks (this also makes the per transform main functions a bit cleaner).

It also fixes the operator property (value) for shear and warp.
2010-03-09 01:19:32 +00:00
Campbell Barton 1138214a8c commit from r27250 to fix bug #21433, broke local axis rotation for pose bones and objects.
commented fix and reopened report.
2010-03-08 11:47:43 +00:00
Campbell Barton 3b105657d5 option to transform markers in the dope sheet, needed for re-timing animation. currently supports translate and extend.
TODO:
- select markers in dope sheet.
- transform time scale.
2010-03-08 09:06:58 +00:00
Martin Poirier 8a4f9ef831 [#21433] Angular rotation snap issue, final value set is not snapped - SVN 27250 and 2.50A1
Needed to reassign calculated rotation into the values vector.
2010-03-07 15:36:52 +00:00
Campbell Barton ca7b6e2cd0 fix for more crashes with baked fcurves 2010-03-03 13:20:18 +00:00
Martin Poirier 9e35777019 Revert back debuging code that made drawing transform constraints only work on one side. 2010-02-28 17:51:23 +00:00
Joshua Leung be44ac7490 * Renaming some Keying Sets API functions to make the terminology more consistent in the UI
* Fixed bug with hotkeys for adding properties to Keying Sets using the KKEY over the relevant buttons. Was calling the remove callback instead.
2010-02-27 02:03:33 +00:00
Campbell Barton 9352c9f0c1 use negate_v3 rather then multiplying a vector by -1.0 (no functional changes) 2010-02-26 09:02:52 +00:00
Martin Poirier de574490d2 [#21338] B-Bone display size crash [27127]
EditBones pretending to be pose bone when doing bone resize need a valid object pointer.

Tsk, who thought this was a good idea...
2010-02-26 02:33:04 +00:00
Martin Poirier a8d364ce4a Move increment value into numinput structure.
Easier for transform to have different values per transform then (also different from gears values).

(Based on a bug reported by Jonathan Smith)
2010-02-22 23:25:34 +00:00
Martin Poirier 438b93dccc [#21265] Rotate behaves wrong with constraints
With new axis var for rotate, it wasn't reset properly when constraints are turned off.
2010-02-21 14:13:20 +00:00
Joshua Leung ddc0c68a5c Bugfix #21234: Autokey "insert only available" userpref inserts keys for all bones in an armature
-- 

Bugfix: When autokey is enabled, notifiers to refresh the animation editors *after* transforms finished for objects were missing.
While I understand the need to limit these to not doing this during transform, after transform, this lead to lag/inconsistent UI problems.

-- 

* Added 'Damped Track' Option to 'Make Track' Operator
* Improved the code of the 'Clear Track' operator to include other types of tracking constraint too
2010-02-21 11:42:32 +00:00