Age | Commit message (Collapse) | Author |
|
- was using un-initialized stack memory if the source / target object had no vertex group.
- if the target object had no vertex groups it would fails silently (not a bug but not very good functionality)
- added an error message if any copying fails.
|
|
moved to invalid times to avoid overlap but would immediately refresh back to overlapping locations after.
|
|
click on header not working
also get rig of more shadowed vars (-Wshadow).
|
|
this gave noticeable issue when transforming int/fcurve's below zero.
|
|
found in ('VERTS')
|
|
|
|
- duplicate cases in if/else
- calc inside sizeof(...)
- redundant NULL checks.
- assignment to self.
- fix error getting text prefix for screen ID button.
|
|
|
|
Two part bug:
Part 1) NLA Editor menu was calling wrong operator
Part 2) r35829 broke NLA scaling, since it only checked that the
transform mode used was allowed in the Action Editor (probably
confused by Part 1)
|
|
floats.
also use macros RAD2DEGF & DEG2RADF.
|
|
- Sync Markers option works for local markers (or any other list of
markers in future) too now.
- Apply Pose to Restpose operator now displays a warning if an action
was found (warning about the action now being invalid)
|
|
useful.
Instead of only working for the "extend" transform mode, standard
transforms now work too now (i.e. grab and scale).
TODO:
This currently only works on Scene markers, though it should be
possible to make this work on a provided list of markers instead...
|
|
* NLA timing was only applied to fcurve keys, but not handles, so strange things happened.
* This time tweaking was missed in selections too, so fcurve handles couldn't be selected properly either if the NLA strip was moved from frame 1.
|
|
edit mode works strangely
Not sure why proportional editing used to disable crazyspace corrections,
but from that time hwn it was done transform stuff was changed a lot.
I've made several tests (with file from report and sintel from durian
data files) and it worked nice.
|
|
|
|
in dope sheet/ graph editor leads to duplicated keys
The old hack using the transform "undostring" didn't work anymore, as
this wasn't set. Instead, I've added a special mode transform mode for
this that the duplicate operators can set to get this functionality.
|
|
|
|
* The fcurve points changed their order when rotating, but the transform data wasn't updated properly for this change so some curve handle pointers got lost.
* Also found a second bug while fixing this: The fcurve handle type pointers weren't updated at all when the order changed, so some auto handles could turn into aligned handles even if the transform was canceled (no undo possible in this case!).
|
|
|
|
|
|
auto-ik updates are done by notifiers at the moment which are ignored when running bpy.ops.transform.translate(), so add an special_aftertrans_update() check for this case.
|
|
Switching layers reveiled hidden objects in wrong positions, changes
are currently not being handled for hidden objects.
Only way to fix it is by completely update newly visible objects...
(Also fixed a typo and a compile warning)
|
|
header static for blenlib, blenkernel and editors.
|
|
python functions.
- use NULL rather then 0 where possible (makes code & function calls more readable IMHO).
- set static variables and functions (exposed some unused vars/funcs).
- use func(void) rather then func() for definitions.
|
|
==========================
Removed limitation of armatured-only objects for sculpting -- now all
deformation modifiers are allowed in sculpt mode. Use crazyspace corrections
like from transformation modules was used to support all deformation modifiers.
Internal change: all crazyspace-related functions were noved to crazyspace.c
P.S. Brush could make quite unexpected deformation for meshes which are
deformed in specified way. Got patch for this and discussing with Brecht
if it's really needed or maybe it could be done in better way.
|
|
Scene (Toolsettings, i.e. alongside "layered" option for using NLA
while doing auto-keying)
This option makes all Auto-Keying operations use the active Keying Set
to carry out keyframing operations instead of picking and choosing
their own Keying Sets to use, thus cutting down on the number of
unwanted keys.
Warning: if the older userpref option was enabled in an old
startup.blend, it may be difficult to turn this option off.
|
|
- "CONSTRAINT_IK_AUTO" flag for targetless IK constraints was being
set in the wrong place. This is for the IK constraint data's flag, not
the generic constraint's flag
- Converting stack var "targetless" from type bConstraint to
bKinematicConstraint (i.e. constraint baseclass -> specialised data),
since it was only used in one place with a cast used there.
- When using targetless IK with no specified chain length, bone
rotation locks are taken into account too, saving a bit of extra setup
work
|
|
... actually, this was just an off-by-one bug again.
|
|
code for object transform stuff
|
|
#25554. As found by Daniel Lara (Pepeland) in #25554, the original
problems in #21825 all stemmed from the ChildOf constraint there
having an incorrect inverse set, which was altering the final results.
Now Auto-IK works nicely for old rigs again (i.e. FK arms on BBB rigs)
|
|
This commit restores some basic functionality for retiming Grease
Pencil sketches. Some of the functionality that existed before still
hasn't been restored (namely snap/mirror tools as well as copy+paste),
though it should be possible to use this for basic retiming and
sketch-frame management again.
- There's still a lot of work required to get this up to the standard
of the rest of the animation editor code, as some of this code was
originally just hacked in based on the old-style code.
- Work is already required to not have to directly access the main db
global to get the list of Grease Pencil datablocks to show, but that
can come along with pending cleanups of the filtering code.
|
|
Actually a minor tweak:
Auto-IK fails on correcting for constrainted bones in chains.
For that reason it stops including constrainted bones for it.
Now it does include constraints with influence zero, or which
were disabled by user input.
|
|
- move GS() define into DNA_ID.h
- add BLI_utildefines as an automatic include with makesrna generated files.
|
|
MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h.
no functional changes.
|
|
Code changes are minimal, re-using the code as already was there.
Options are in pulldown menu, or SHIFT+T and SHIFT+ALT+T
Might be that Martin likes to see it different... do we need
a special operatortype for it?
|
|
Auto-IK: applying back the IK transform on bones fails for constrainted
bones themselves. This would require the post-transform of IK to be
converted to a pre-transform for the constraint. That's too much of
a headache for bugfixing days.
To keep the autoIK feature work it now stops IK chains at constrainted
bones. Added todo item for a matrix wizzard to fix this one day.
(What would be really cool is a matrix-api for armature to easily
get all the required pre- and post transforms and apply. There's a lot
of duplicate exception handling for hinge bones for example.)
|
|
|
|
applies to project paint too, added with comment.
|
|
In sculpt mode, Object transform still worked, which was:
1) Not undo-able (sculpt undo stack)
2) Clearing the entire sculpt undo stack on operator redo
3) Had keymap conflict for R
Simply added check for this case and return trans operator.
|
|
assignment.
Makes adding new flags give ambiguous results and also makes it less easy to tell whats intended.
In some places it looks like OB_RECALC_TIME should be left out too.
|
|
After using loop-cut with multiple edges, transform widget
disappeared. Reason was a variable being set in function
not being called on cancelled operators. Now it's in Posttrans()
|
|
|
|
only tags the ID and does the actual flush/update delayed, before the next
redraw. For objects the update was already delayed, just flushing wasn't
yet.
This should help performance in python and animation editors, by making
calls to RNA property update quicker. Still need to add calls in a few
places where this was previously avoided due to bad performance.
|
|
- fixed bug in paste material, exposed by stricter warnings.
- removed/renamed various shadowed vars.
- removed BGE lamp.colour, only allow lamp.color attribute.
|
|
sync marker option worked for translate and extend but not for scale in the dope sheet.
|
|
* Keyframing operators now use the reports system for displaying all its error messages.
- The benefit of this is that users no longer need to check the console for error messages if keyframing fails.
- Unfortunately, reports are not currently viewable in any space/view in Blender, so...
* Added a temporary operator (UI_OT_reports_to_textblock), which can be accessed in the UI from the button which appears in place of the icon when more than one report exists. This dumps the current list of reports to a textblock "Recent Reports", from which they can be viewed.
This isn't really nice, but at least we now have a way to view these again, which makes debugging some things a pain.
* Bugfix #24606 - when trying to add keyframes to F-Curves with F-Modifiers already which alter the curve significantly enough that the keyframes will have no effect, there are now warnings which aim to alleviate any confusion.
|
|
|
|
This was a 2-part bug:
1) "Track index" (i.e. "index of NLA track within NLA Stack") was calculated incorrectly when the transform data is created. A typo meant that this was actually "index of strip within original track"
2) Strips were flying around madly vertically (especially for downward movements, and with extreme difficulty for upwards) as the track index was being updated incorrectly. I suspect at the time I was misreading it as trackIndex = ... vs trackIndex += ..., though it obviously looked wrong looking at it now!
|
|
spacebar to activate
|
|
obj moving
Comment from source...
/* re-calculating the frame positions means we loose our original transform if its not auto-keyed [#24451]
* this hack re-applies it, which is annoying, only alternatives are...
* - dont recalc paths.
* - have an object_handle_update() which gives is the new transform without touching the objects.
* - only recalc paths on auto-keying.
* - ED_objects_recalculate_paths could backup/restore transforms.
* - re-apply the transform which is simplest in this case. (2 lines below)
*/
Martin, if you think this workaround is unacceptable, then automatic recalculating of paths after transform should probably be disabled since it looses data on non transform un-keyed values.
|