13 years agoSmall feature added to new "show bone paths around cfra":
Ton Roosendaal [Wed, 14 Nov 2007 16:50:51 +0000 (16:50 +0000)]
Small feature added to new "show bone paths around cfra":
- after a insert-key (autokey mode) it updates paths.

13 years agoBugfix in MeshDeform file reading, should check for NULL pointer case...
Ton Roosendaal [Wed, 14 Nov 2007 16:20:19 +0000 (16:20 +0000)]
Bugfix in MeshDeform file reading, should check for NULL pointer case...

13 years agoBugfix #7686
Ton Roosendaal [Wed, 14 Nov 2007 10:20:13 +0000 (10:20 +0000)]
Bugfix #7686

Render, Ortho, lamphalo position was off a bit due to missing correction

13 years ago* Visualise the Map Old/Map New setting in the timeline with a stippled overlay in...
Matt Ebb [Wed, 14 Nov 2007 01:13:30 +0000 (01:13 +0000)]
* Visualise the Map Old/Map New setting in the timeline with a stippled overlay in the stretched section

13 years ago* New feature on compo scale node: "Scene Size %"
Matt Ebb [Tue, 13 Nov 2007 23:53:58 +0000 (23:53 +0000)]
* New feature on compo scale node: "Scene Size %"

This option sets the relative scaling factor to the amount set in the
scene "100%/75%/50%/25%" buttons. It's useful when you've got a fixed
background image, and want to do preview renders at a lesser
percentage, so you don't have to go and change the scale node each
time you change the %.

Also removed unnecessary use of a global from texture node.

13 years ago- bounding meshes with loc/size/rot didnt work.
Campbell Barton [Tue, 13 Nov 2007 21:32:53 +0000 (21:32 +0000)]
- bounding meshes with loc/size/rot  didnt work.
- better sorting of twigs (for recursive twigs)
- An option to lengthen child twigs.

13 years agoBugfix for endian bug in mdef file writing.
Brecht Van Lommel [Tue, 13 Nov 2007 18:50:57 +0000 (18:50 +0000)]
Bugfix for endian bug in mdef file writing.
Also an unrelated warning fix.

13 years agoBugfix 7733
Ton Roosendaal [Tue, 13 Nov 2007 18:01:01 +0000 (18:01 +0000)]
Bugfix 7733

New mouse scrollwheels allowing higher precision didn't work in Windows.
Code was assuming only value of +120 or -120 were returned.

13 years ago- new UV scaling option works better for big/small branches.
Campbell Barton [Tue, 13 Nov 2007 16:50:43 +0000 (16:50 +0000)]
- new UV scaling option works better for big/small branches.
- Can constrain twigs to only grow in a bounding mesh. And an option to prune twigs that grow out.

13 years ago==Python API==
Campbell Barton [Tue, 13 Nov 2007 15:32:27 +0000 (15:32 +0000)]
==Python API==
mesh.pointInside(vec)  wasnt working in all cases. (own mistake)

13 years ago== Peach Feature Requests (Bone-Path Drawing) ==
Joshua Leung [Tue, 13 Nov 2007 11:54:20 +0000 (11:54 +0000)]
== Peach Feature Requests (Bone-Path Drawing) ==

* Added a new option to only calculate a certain number of frames before/after the current frame instead of defining a frame range. This is useful in certain cases on longer timelines, to be able to view the paths for certain regions quicker.

* When inserting a keyframe, if a bone already has path drawing on, the path for that bone will get automatically recalculated. More testing is required to see if there are any more cases where this would be useful. Also, a global setting to turn this on/off would be a good idea.

Todo (requested but not yet implemented):
* Parts of path before/after current frame could get drawn with different colours

13 years ago==Mirror Modifier==
Chris Want [Tue, 13 Nov 2007 06:56:55 +0000 (06:56 +0000)]
==Mirror Modifier==

Support for using the axes of a different object as the line of mirror
symmetry for a mirror modifier. As a nice consequence, this allows
"clipping" to arbitrary planes in editmode.

A fun example of using a couple of mirror modifiers and an array
modifier to easily make a nice flower type model is here:

13 years agoTree Wizard.
Campbell Barton [Mon, 12 Nov 2007 23:19:33 +0000 (23:19 +0000)]
Tree Wizard.
'Twigs' - branch's added to the existing, made from blending existing branches into new ones.

Some user settings for scale, orientation randomness, number of twigs and recursive twigs.

13 years agoadded options to weightpaint normalize script
Campbell Barton [Mon, 12 Nov 2007 20:02:36 +0000 (20:02 +0000)]
added options to weightpaint normalize script
- armature only - so when using weight groups for other things only armature groups are affected,
- Active only - so you can normalize all weight groups

13 years ago= Changed Icosphere max to 8 and fixed Remove Doubles =
Juho Vepsalainen [Mon, 12 Nov 2007 12:54:37 +0000 (12:54 +0000)]
= Changed Icosphere max to 8 and fixed Remove Doubles =
This commit changes icosphere maximum to 8 (was 500 before).
Also made Remove Doubles button found in the Buttons Window work again.

13 years agoBugfix #7756
Ton Roosendaal [Mon, 12 Nov 2007 11:45:48 +0000 (11:45 +0000)]
Bugfix #7756

Sequencer: changing the Scene strip length (Ckey) crashed.
This is very confused code here... ancient allocation issues. :)

13 years agoBugfix #7735
Ton Roosendaal [Mon, 12 Nov 2007 09:37:46 +0000 (09:37 +0000)]
Bugfix #7735

Spothalo sometimes gave black pixels. Error was using floating point
32 bits precision checks where double should be used.

(10e-7 vs 10e-16)

13 years agoMesh Deform Modifier
Brecht Van Lommel [Mon, 12 Nov 2007 09:12:37 +0000 (09:12 +0000)]
Mesh Deform Modifier

Forgot to uncomment line again for the weight threshold before I committed,
this should save some time and memory space.

13 years agoPatch #7767: Constraint Subtargets can now target anywhere on a bone, not just the...
Joshua Leung [Mon, 12 Nov 2007 04:17:03 +0000 (04:17 +0000)]
Patch #7767: Constraint Subtargets can now target anywhere on a bone, not just the head or tail
Patch by: Roland Hess (harkyman)

For example, a constraint can be sub-targeted at the 50% (or 31.2% or 85% etc.) point of its target bone, giving you enormous rigging flexibility and removing the need for complex contraptions to do such things as:

- A bone whose base slides only between to points on a rig (CopyLoc with a variable, animated subtarget point)
- Bones that attach to multiple points along another bone (CopyLocs, each with a different head/tail percentage)
- Bones that need to stretch to a point midway between specific spots on two other bones (old way: too crazy to mention; new way: stretch bone between points on end bones, then another stretch to the midpoint of the first stretch)

It is only used for the constraint types for which it is relevant: CopyLoc, TrackTo, StretchTo and MinMax, TrackTo, and Floor.

- This is accessed by the Head/Tail number-slider.
- This value can be animated per constraint
- The old "Copy Bone Tail" option for the CopyLoc constraint has been automatically converted to 1.0 Head/Bone values for the affected constraints
- In the code, this value is in the bConstraint struct, so it is available for all constraints, even though only a few implement it.

13 years agoMesh Deform Modifier
Brecht Van Lommel [Sun, 11 Nov 2007 22:54:14 +0000 (22:54 +0000)]
Mesh Deform Modifier

Dynamic binding support. This means that the mesh can move _within_
the cage and still deform correct. If the mesh goes out of the cage,
don't expect correct result. Must be enabled with the 'Dynamic'
option, because it is slower and consumes more memory.

This is useful to use e.g. the cage mesh for main deformations and
still have shape keys for facial deformation working.

13 years agoLoop in parents cant happen anymore, better dealing with segments with more then...
Campbell Barton [Sun, 11 Nov 2007 21:14:44 +0000 (21:14 +0000)]
Loop in parents cant happen anymore, better dealing with segments with more then 4 children. print timing stats.

13 years agodropped some unused lines, if that was some new feature witch I no found mentions...
Joilnen Leite [Sun, 11 Nov 2007 16:56:22 +0000 (16:56 +0000)]
dropped some unused lines, if that was some new feature witch I no found mentions in svn logs please to commit
for trunk when ready

13 years agoProper code for bugfix revision 12365 (which was uncommitted today).
Ton Roosendaal [Sun, 11 Nov 2007 16:13:27 +0000 (16:13 +0000)]
Proper code for bugfix revision 12365 (which was uncommitted today).

Old log Message:
bug fix, when opening blender with a file (by double clicking or from the
command line) - the initial undo state would be set to the default scene.
So holding Ctrl+Z would go back to the default .B.blend rather then the
file that the user opened.

13 years agoUndoing 'undo' fix 12365, it didn't work the same on mac's, Ton would like to fix...
Campbell Barton [Sun, 11 Nov 2007 15:18:53 +0000 (15:18 +0000)]
Undoing 'undo' fix 12365, it didn't work the same on mac's, Ton would like to fix the bug himself.

Tree From Curve,
- report error when nurbs or poly curves are used.
- don't throw errors when >4 branch's per segment are used. also try deal with this better. though no nice solution exists.
- default speed is 10x slower then before.

13 years agoRewrote the part that converted blenders curves into branches,
Campbell Barton [Sat, 10 Nov 2007 20:00:15 +0000 (20:00 +0000)]
Rewrote the part that converted blenders curves into branches,
Was converting into a mesh and then doing location checks, to figure out what the radius should be and then interpolating. this was the slowest part of the script and it made a mesh every time.

Now use blenders bezier interpolation function and calculate points like blender does.

fixed a driver syntax error for the Z axis (typo)

13 years agoExclude generated images when checking if an image is already loaded, it can be very...
Campbell Barton [Sat, 10 Nov 2007 19:56:06 +0000 (19:56 +0000)]
Exclude generated images when checking if an image is already loaded, it can be very confusing when you don't appear to have the image loaded anywhere.

13 years agoadded buttons in the Transform Properties for changing curve handle types, (Similar...
Campbell Barton [Sat, 10 Nov 2007 15:31:41 +0000 (15:31 +0000)]
added buttons in the Transform Properties for changing curve handle types, (Similar to how Metaballs can be selected) for easier access then H,Shift H, V keys

13 years agoBugfix #6797: Relative paths load problem on new file (fix included)
Andrea Weikert [Sat, 10 Nov 2007 11:45:25 +0000 (11:45 +0000)]
Bugfix #6797: Relative paths load problem on new file (fix included)
- brought back the check for a valid relative base when selecting.
- kept the check for when file is saved too and warning message is printed to console instead of popping up.
Also fixed BLI_split_filedir overwriting parameter passed as const char*

13 years ago==Python API==
Campbell Barton [Sat, 10 Nov 2007 11:05:44 +0000 (11:05 +0000)]
==Python API==
added .smooth setting to CurNurb's

so you can do....
for curNurb in Curve.Get('foo'): curNurb.smooth = True

13 years ago== imagebrowser ==
Andrea Weikert [Sat, 10 Nov 2007 09:11:42 +0000 (09:11 +0000)]
== imagebrowser ==
* bugfix: calling imagebrowser with relative path results in non-existing dir
* cleanup: removed unneeded BIF_filelist_appenddir function
* added check for valid relative base when activating imagebrowser (like in filebrowser)

13 years agoCopyRot Constraint and Transforms:
Joshua Leung [Sat, 10 Nov 2007 02:53:19 +0000 (02:53 +0000)]
CopyRot Constraint and Transforms:

Now, when rotating along local axes of an object/bone with a copy-rot constraint that has offset on, the results are more predicatable. However, doing so with global axes is still in CrazySpace (TM).

13 years agobetter segment collapsing (check for radius/angle difference)
Campbell Barton [Fri, 9 Nov 2007 23:06:31 +0000 (23:06 +0000)]
better segment collapsing (check for radius/angle difference)
remove vert groups from existing mesh when its being reused

13 years agobranch cap ends, UV scale options, Automatic update option added. as well as some...
Campbell Barton [Fri, 9 Nov 2007 16:51:24 +0000 (16:51 +0000)]
branch cap ends, UV scale options, Automatic update option added. as well as some bugs fixed.

13 years agomistake in last commit
Campbell Barton [Fri, 9 Nov 2007 16:05:04 +0000 (16:05 +0000)]
mistake in last commit

13 years agoFeature: transform manipulator (align normal option) aligns with bezier
Ton Roosendaal [Fri, 9 Nov 2007 16:02:31 +0000 (16:02 +0000)]
Feature: transform manipulator (align normal option) aligns with bezier
handles now. Needed & useful for modeling trees here...

13 years agoPyTuple_Pack dosnt work with python 2.3 - removed
Campbell Barton [Fri, 9 Nov 2007 15:56:41 +0000 (15:56 +0000)]
PyTuple_Pack dosnt work with python 2.3 - removed

13 years agoQuick added feature: the "do not get scaling from parent bone" option.
Ton Roosendaal [Fri, 9 Nov 2007 14:58:55 +0000 (14:58 +0000)]
Quick added feature: the "do not get scaling from parent bone" option.

It's next to the 'hinge' button, a small 'S'. No more space here... will
make it nicer inferface later. :)
Let's first see if this works as expected.

13 years agosaving and loading of settings per tree, also added a way to get unique animation...
Campbell Barton [Fri, 9 Nov 2007 12:19:10 +0000 (12:19 +0000)]
saving and loading of settings per tree, also added a way to get unique animation using object locations in drivers

13 years agocurve2tree - animation settings - speed and magnitude
Campbell Barton [Fri, 9 Nov 2007 10:29:19 +0000 (10:29 +0000)]
curve2tree - animation settings - speed and magnitude
Python api - texture.evaluate can now accept tuples of numbers as well as vectors

13 years agotree branch bones can now animate using drivers that reference textures, so animation...
Campbell Barton [Fri, 9 Nov 2007 01:35:00 +0000 (01:35 +0000)]
tree branch bones can now animate using drivers that reference textures, so animation can be controlled from clouds, noise settings after being created. still need to add user preferences for animation speed and magnitude.

13 years agoBranch's now have weights assigned to the mesh and an armature modifier applied so...
Campbell Barton [Fri, 9 Nov 2007 00:05:15 +0000 (00:05 +0000)]
Branch's now have weights assigned to the mesh and an armature modifier applied so the bones effect the tree.

13 years agoautomatic armature generation follows branch's
Campbell Barton [Thu, 8 Nov 2007 22:13:40 +0000 (22:13 +0000)]
automatic armature generation follows branch's

13 years agobug fix with trimming intersecting branches, added setting for branch joint smoothing...
Campbell Barton [Thu, 8 Nov 2007 20:25:56 +0000 (20:25 +0000)]
bug fix with trimming intersecting branches, added setting for branch joint smoothing. some speedups

13 years agoBugfix:
Brecht Van Lommel [Thu, 8 Nov 2007 18:02:15 +0000 (18:02 +0000)]
Issue with dual quaternion scaling + vertex group influence.

13 years agoFix for bug [#7741] new colorband for weightpainting overlaps with verse settings
Martin Poirier [Thu, 8 Nov 2007 15:57:18 +0000 (15:57 +0000)]
Fix for bug [#7741] new colorband for weightpainting overlaps with verse settings

13 years agouser interface added for 'Tree from curves' tool.
Campbell Barton [Thu, 8 Nov 2007 15:41:11 +0000 (15:41 +0000)]
user interface added for 'Tree from curves' tool.
renamed Filter to Blur to Filter for #define as well

13 years agoFix for bug #7697 Appending screen crashes when appended screen is accessed:
Juho Vepsalainen [Thu, 8 Nov 2007 13:49:11 +0000 (13:49 +0000)]
Fix for bug #7697 Appending screen crashes when appended screen is accessed:
This commit fixes the issue by disabling access to screens via the path input field.

Note that appending screens might actually be a useful feature to implement at some point.

13 years ago* new stamp option to stamp forground sequence strip name.
Campbell Barton [Thu, 8 Nov 2007 13:02:59 +0000 (13:02 +0000)]
* new stamp option to stamp forground sequence strip name.
* made stamp filename optional
* renamed weightpaint "Filter" to "Blur"
* made the defailt weightpaint opacity 1.0 rather then 0.2 so when you select 1.0 weight you can paint it with without multiple clicks.

13 years agoBugfix #7682: Constraint.InsertKey works odd for PoseBones
Joshua Leung [Thu, 8 Nov 2007 09:49:49 +0000 (09:49 +0000)]
Bugfix #7682: Constraint.InsertKey works odd for PoseBones

Constraint.InsertKey was inserting keyframes for the wrong action-channel. It was doing so for the active bone, not the owner of the constraint.

13 years agoPatch #7722: no 'Auto IK' for solitary (unconnected) bone
Joshua Leung [Thu, 8 Nov 2007 08:27:21 +0000 (08:27 +0000)]
Patch #7722: no 'Auto IK' for solitary (unconnected) bone

'Auto IK' is a great feature, however when solitary unconnected bone (without connected child bones) is grabbed it can't be moved because of IK. This can be really annoying. Preventing 'Auto IK' for solitary bones would improve user-experience by making mixing of FK and IK  more convenient while using 'Auto IK'.

Patch by Teppo Kansala (teppoka).

13 years agoPatch #7760: X-Axis-Mirror support for 'make bone parent'
Joshua Leung [Thu, 8 Nov 2007 08:06:50 +0000 (08:06 +0000)]
Patch #7760: X-Axis-Mirror support for 'make bone parent'

This patch by Teppo Känsälä (teppoka) makes parenting bones with Ctrl-P support the X-Axis-Mirror option for Armatures. It will cause the mirror-bone of the selected bone to also get parented. i.e. if "bone.R" was selected and being parented, "bone.L" would also get parented.

I've made an addition to this patch, which means that if the bone that acts as the parent also has a mirror-bone (i.e. when parenting "lowerArm.L" to "upperArm.L", "lowerArm.R" gets parented to "upperArm.R"). Otherwise, they both get parented to the same parent bone (i.e. a parent bone that doesn't belong on either side such as "upperSpine")

13 years agoNew Curve function in the curve specials menu - "Smooth Radius" this smooth's the...
Campbell Barton [Thu, 8 Nov 2007 00:06:48 +0000 (00:06 +0000)]
New Curve function in the curve specials menu - "Smooth Radius" this smooth's the radius of selected curve points to unselected or endpoints. useful when changing the taper of a long curve
with many points (think treetrunk), it would be nice to take into account distance on the path when doing the curve interpolation.
Also moved added undo call's that were missing for 2 of the other curve specials.

13 years ago(work in progress commit) - tree wizard, makes a subsurfed skin from curves. also...
Campbell Barton [Wed, 7 Nov 2007 21:39:23 +0000 (21:39 +0000)]
(work in progress commit) - tree wizard, makes a subsurfed skin from curves. also adds UV's (and soon bones)
needs a user interface.

13 years ago=Python API bugfix=
Joseph Eagar [Wed, 7 Nov 2007 18:52:23 +0000 (18:52 +0000)]
=Python API bugfix=

Scene.update(full=1) was pretty useless as it didn't actually evaluate the
depsgraph DAG.  This meant, for example, that re-evaluating the parenting
tree for an armature pose could only be done by redrawing the view (which
evaluates the depsgraph). scene_update_for_newframe() is now called when Scene.update is in "full" mode; to prevent firing off newframe scriptlink events, scriptlinks are
temporarily disabled while scene_update_for_newframe() is being called.

13 years agoown silly error, was reusing an existing flag for the draw curve handles setting.
Campbell Barton [Wed, 7 Nov 2007 13:02:50 +0000 (13:02 +0000)]
own silly error, was reusing an existing flag for the draw curve handles setting.

13 years agoSmall fix for feature 'custom weight paint range': the range was not
Ton Roosendaal [Wed, 7 Nov 2007 11:14:52 +0000 (11:14 +0000)]
Small fix for feature 'custom weight paint range': the range was not
initialized on starting Blender.

13 years agocurve selection wasnt checking if the screen coords were clipped. made selecting...
Campbell Barton [Tue, 6 Nov 2007 19:56:25 +0000 (19:56 +0000)]
curve selection wasnt checking if the screen coords were clipped. made selecting off screen verts possible. This looks like an old bug (at least it existed before I added
hide handles option).

13 years ago==Python API==
Campbell Barton [Tue, 6 Nov 2007 18:53:46 +0000 (18:53 +0000)]
==Python API==
Blender.Geometry.ClosestPointOnLine(pt, vec1, vec2) -> (pt, lambda)
This wraps lambda_cp_line_ex

Needed for experemental tree generator

13 years agoBugfix:
Brecht Van Lommel [Tue, 6 Nov 2007 14:15:45 +0000 (14:15 +0000)]
Mesh deform invert vertex group influence didn't work entirely correct.

13 years ago==Python API==
Campbell Barton [Tue, 6 Nov 2007 13:44:26 +0000 (13:44 +0000)]
==Python API==
Bugfix, Space Handlers could crash blender when used with armatures.
also fixed some possible bugs in other areas.

13 years ago== "Extend" Transform Mode for Action + NLA Editors ==
Joshua Leung [Tue, 6 Nov 2007 11:41:09 +0000 (11:41 +0000)]
== "Extend" Transform Mode for Action + NLA Editors ==

Peach Request:
Now the Action and NLA editors have the "Extend" transform mode first seen in the Sequence Editor. Just use the EKEY to start transforming.

It works like Grab, except it only moves the keyframes/side of NLA-strip that was on the same side of the current-frame marker as the mouse was when transform started.

13 years agoBugfix:
Brecht Van Lommel [Tue, 6 Nov 2007 11:25:48 +0000 (11:25 +0000)]
Mesh deform modifier crashed when applied to lattices.

13 years agoMesh Deform Modifier
Brecht Van Lommel [Tue, 6 Nov 2007 09:44:34 +0000 (09:44 +0000)]
Mesh Deform Modifier

Added a button to invert the vertex group influence, to make blending
between mdef and armature deform easier.

13 years agosequencer snap was crashing when no last selected was available (own mistake)
Campbell Barton [Mon, 5 Nov 2007 21:06:27 +0000 (21:06 +0000)]
sequencer snap was crashing when no last selected was available (own mistake)
material names spelling was odd - HalveGreen -> HalfGreen

13 years ago== MSVC 7.1 projectfiles ==
Andrea Weikert [Mon, 5 Nov 2007 20:16:23 +0000 (20:16 +0000)]
== MSVC 7.1 projectfiles ==
- added missing CMP_crop.c

13 years agoBugfix:
Brecht Van Lommel [Mon, 5 Nov 2007 18:44:42 +0000 (18:44 +0000)]
B-bones didn't work well with non-uniform scaling applied to them.
The code to solve this is not too pretty, but don't know how to do
it simpler, and at least it makes that stretchy spine work.

13 years agoBugfix:
Brecht Van Lommel [Mon, 5 Nov 2007 17:38:07 +0000 (17:38 +0000)]
Dual quaternions + armature modifier vgroup didn't work together correct.

13 years agoTweaks I needed to get blender compiling on my new macbook running leopard.
Kent Mein [Mon, 5 Nov 2007 17:27:11 +0000 (17:27 +0000)]
Tweaks I needed to get blender compiling on my new macbook running leopard.


13 years agoTweak for MSVC2005 people:
Kent Mein [Mon, 5 Nov 2007 16:46:48 +0000 (16:46 +0000)]
Tweak for MSVC2005 people:


13 years agoMesh Deform Modifier
Brecht Van Lommel [Sun, 4 Nov 2007 22:00:24 +0000 (22:00 +0000)]
Mesh Deform Modifier

The MeshDeform modifier can deform a mesh with another 'cage' mesh.
It is similar to a lattice modifier, but instead of being restricted
to the regular grid layout of a lattice, the cage mesh can be modeled
to fit the mesh better.

Implementation Notes:
- OpenNL has been refactored a bit to allow least squares matrices to
  be built without passing the matrix row by row, but instead with
  random access. MDef doesn't need this actually, but it's using this
  version of OpenNL so I'm just committing it now.
- Mean value weights for polygons have been added to arithb.c, a type
  of barycentric coordinates for polygons with >= 3 vertices. This
  might be useful for other parts of blender too.

13 years agoA different approach for the new driver option: it now uses pose-space
Ton Roosendaal [Sun, 4 Nov 2007 19:41:21 +0000 (19:41 +0000)]
A different approach for the new driver option: it now uses pose-space
instead of bone-space. This makes it visual easier to use. For the todo:
a large array of buttons for users to pick what kind of 'space' is used?

13 years agoNew driver option for the poor suffering riggers:
Ton Roosendaal [Sun, 4 Nov 2007 17:14:39 +0000 (17:14 +0000)]
New driver option for the poor suffering riggers:

"Rotation Difference"

This option, for Bones, allows the angle between two Bones to be
the driver for another Ipo channel. This angle now is hardcoded
based on the Bone-space orientation (without parenting rotation).

Thanks to nathan for poking and test!

13 years agoBug fix to handle extruding with a mirror modifier, now that axes are
Chris Want [Sun, 4 Nov 2007 02:25:32 +0000 (02:25 +0000)]
Bug fix to handle extruding with a mirror modifier, now that axes are
specified with a bitmask rather than only operating on a single axis.
This is a reworking of the fix done in blender 2.42 that was mentioned
in the sixth on item on this page:

13 years agoTypo fix for my previous commit... wrong-sized array was being allocated, but somehow...
Joshua Leung [Fri, 2 Nov 2007 03:00:35 +0000 (03:00 +0000)]
Typo fix for my previous commit... wrong-sized array was being allocated, but somehow this still managed to work fine last night.

13 years ago== utils ==
Martin Poirier [Thu, 1 Nov 2007 21:44:41 +0000 (21:44 +0000)]
== utils ==

New listbase functions:
void BLI_insertlinkafter(struct ListBase *listbase, void *vprevlink, void *vnewlink);
- corrolary to insertlinkbefore

BLI_sortlist(struct ListBase *listbase, int (*cmp)(void *, void *));
- simple in place sorting method. NOT optimized, so use for small lists only. Uses a variant of insertion sort (I was lazy, people should feel free to rewrite).

13 years agoHinge Bone Transform
Brecht Van Lommel [Thu, 1 Nov 2007 12:55:47 +0000 (12:55 +0000)]
Hinge Bone Transform

This changes the way hinge bones are transformed when their parent bones
are also selected. Before it just disabled transform for these, now they
are rotated and scaled as well, but without influencing the transform
center, which gives behaviour as if they were regular bones.

13 years agoIK
Brecht Van Lommel [Thu, 1 Nov 2007 12:40:46 +0000 (12:40 +0000)]

Solving is now done independent of scale, by scaling the chain to have a
size of about 1.0. This solves some issues with small or big chains, and
also makes the IK stretch setting independent of scale. The latter breaks
backwards compatibility somewhat, but is an improvement over what it did

13 years agoBugfix - Ipo-Editor Scaling:
Joshua Leung [Thu, 1 Nov 2007 11:40:56 +0000 (11:40 +0000)]
Bugfix - Ipo-Editor Scaling:

When scaling all the control-points in the IPO Editor with negative scales, the control-points would end up "sticking together", and cancelling/undo would not help.

13 years agoBugfix #7639: Visual Rot keyframing not working properly
Joshua Leung [Thu, 1 Nov 2007 11:08:07 +0000 (11:08 +0000)]
Bugfix #7639: Visual Rot keyframing not working properly

When using targetless-ik, the offset in rotation of the final transform from the rest-position was being incorrectly calculated.

Now, visual-rotation keyframing uses the space-switching code I wrote for constraints, to calculate the value to keyframe. So far, it seems to work quite well.

As the constraint space-switcher correctly handles hinged bones too (I think it should!), I've also removed the restriction of only allowing visual-rotation keying on bones that didn't have hinge set.

13 years ago* Two usability tweaks in adding objects, with user prefs
Matt Ebb [Wed, 31 Oct 2007 21:55:06 +0000 (21:55 +0000)]
* Two usability tweaks in adding objects, with user prefs

This changes the default behaviour in adding new objects, which has been
discussed for a long time, in person, on the funboard, and in the tracker,
and was agreed to be implemented during the 2.5 release cycle, so here it is.
They have been made default, with preferences to bring back old behaviour since
although people like myself still prefer the new default anyway, it will benefit
new users the most.

The preferences are in the 'Edit Methods' section, changing back to old behaviour
is as simple as a click of a button.

- Switch to edit mode preference

By default, now adding a new object doesn't automatically switch to edit mode.
Not only can this be annoying (most of the time when setting up scenes and models
I don't want to edit it straight away anyway), but it's a major hurdle in the learning
curve that new users have had to deal with at a very early stage.

Blender's different modes are an important part of understanding how the software works
and should have clear behaviour. The problem is that when a user selects something from
the add menu, he's not telling Blender to change modes, he wants to add an object.
But Blender then goes ahead and changes modes underneath him anyway, something that was
never explicitly asked for, something that's unrelated to the mental task at hand, and
fundamentally important to the operation of the software.

We observed plenty of people struggling with this during the training sessions that
we ran during Project Orange, and there's also no shortage of "why can't I select
other objects" questions on the forums.

- Aligned to View preference

Now by default, adding a new object doesn't rotate it so it's aligned facing the view,
but rather, it's remains unrotated in world space. This is something that's more of
a convenience issue (allowing people like me to stop the 'Add->Tab->Alt R dance),
but also makes things easier for new users, especially when doing things like rigging.

For a lot of tools in Blender, like curve deform, path cycling, constraints, it's necessary
for your objects' local axes to be aligned. This requirement isn't that obvious, and I've
had to debug rigs a few times from the animator in our studio, who has everything set up
correctly, but he just happened to be in a different vie at the time he added the object,
so they're misaligned and causing problems. Having all objects get created aligned to
worldspace, by default, makes a lot of these problems go away. It's much more understandable
when rotations are caused by something you've done explicitly, rather than as a side effect
of the software.

For convenience as well, most of the time, when I'm working in context and I decide I need a new object,
particularly working on production scenes that involve more than just one model, an Alt R
is almost always required after adding, since I don't want to have to disrupt the current
view of the scene by switching to top view, just to add an object. It's a bit arbitrary,
the view from which you want to look at your objects isn't usually the way you want them to
be looking at you.

13 years agoFix typo in "#include" file.
Diego Borghetti [Wed, 31 Oct 2007 16:28:07 +0000 (16:28 +0000)]
Fix typo in "#include" file.

13 years agoNew feature:
Ton Roosendaal [Wed, 31 Oct 2007 13:56:07 +0000 (13:56 +0000)]
New feature:

Weightpaint drawing now allows to define your own range of colors;
using a ColorBand, available in the User settings.


13 years ago== Copy Scale Constraint - Offset ==
Joshua Leung [Wed, 31 Oct 2007 10:04:57 +0000 (10:04 +0000)]
== Copy Scale Constraint - Offset ==

Now the Copy Scale Constraint also has the Offset functionality that Copy Loc/Rot have.

== Copy Rotation Constraint ==

Also, fixed the tooltip for the CopyRot Offset button.

Note: when working with pose-bones, and using offset, setting both owner+target spaces to pose-space should cancel any unwanted rotations visible.

13 years ago== Copy Rotation Constraint - Peach (Cessen) Request ==
Joshua Leung [Tue, 30 Oct 2007 11:18:50 +0000 (11:18 +0000)]
== Copy Rotation Constraint - Peach (Cessen) Request ==

Copy Rotation constraint now has ability for the owner's rotation to be added on top of the copied rotation (i.e. an 'offset' like for the Copy Location constraint).

13 years agoBugfix #7685: Stamp info displays incorrect label for scene.
Joshua Leung [Tue, 30 Oct 2007 05:58:25 +0000 (05:58 +0000)]
Bugfix #7685: Stamp info displays incorrect label for scene.

Copy+Paste error, wrong prefix used. Patch provided by Malcolm Tredinnick (malcolmt)

13 years agoBugfix: "exploding candy"
Joshua Leung [Tue, 30 Oct 2007 05:22:46 +0000 (05:22 +0000)]
Bugfix: "exploding candy"

Missed a case where I converted set_constraint_target incorrectly. This resulted in mancandy "exploding" on loading proxy-linked mancandy files.

13 years agoGE Patch(#7684) by Ovidiu Sabou, Speedup patch for GE in OpenGL Display Lists.
Hamed Zaghaghi [Mon, 29 Oct 2007 19:41:25 +0000 (19:41 +0000)]
GE Patch(#7684) by Ovidiu Sabou, Speedup patch for GE in OpenGL Display Lists.

13 years agoCrop Compositing Node:
Juho Vepsalainen [Mon, 29 Oct 2007 14:37:19 +0000 (14:37 +0000)]
Crop Compositing Node:

This commit adds a new node, crop, to the compositor. This node can be used to
crop input image. It has two modes of operation. It can either crop image
size (Crop Image Size option) or crop while retaining original size of the
image. This latter mode can be used to preview the crop.

Use X1, Y1, X2, Y2 controls to manage the area to be cropped.

Note that I added a check for image preview min and max values to node_update.
This is because it could give inappropriate values in certain cases when
Crop Image Size option was toggled (values such as x1=0, y1=0, x2=60, y2=0 would
result in eternal loop due to bad min and max (min bigger than max!)). The check
makes sure that min and max values are always valid.

13 years agoStampinfo: added correct redraw after adding stamp.
Ton Roosendaal [Mon, 29 Oct 2007 13:11:42 +0000 (13:11 +0000)]
Stampinfo: added correct redraw after adding stamp.

The issue: while renderprogress is in use, the rr->renlay has to be set

13 years ago- handle size on last commit was incorrect at times, intended
Campbell Barton [Mon, 29 Oct 2007 10:59:26 +0000 (10:59 +0000)]
- handle size on last commit was incorrect at times, intended
functionality now works
- sequencer transform markers now redraws other views

13 years agoSmall fix:
Ton Roosendaal [Mon, 29 Oct 2007 10:48:50 +0000 (10:48 +0000)]
Small fix:

Commit I did in March (10378) tried to fix typedef callback for Group
nodes, but it missed a case, causing group node display to be wrong on
load (only first drawing was wrong).

13 years agoRoutine purge of compiler warnings. Yet again, they were mostly uninitialised vars.
Joshua Leung [Mon, 29 Oct 2007 05:59:26 +0000 (05:59 +0000)]
Routine purge of compiler warnings. Yet again, they were mostly uninitialised vars.

13 years agoBugfix #7629:
Joshua Leung [Mon, 29 Oct 2007 05:26:53 +0000 (05:26 +0000)]
Bugfix #7629:

Version patch for Constraints Refactor I was getting called for too many cases. This was noticeable in the way the StretchTo constraint got reset on loading.

13 years agorender stamp drawing is now done everywhere - (not just when saving
Campbell Barton [Sun, 28 Oct 2007 22:27:07 +0000 (22:27 +0000)]
render stamp drawing is now done everywhere - (not just when saving
separated stamp metadata and stamp draw functions.

13 years agosequencer strip selection didnt work well for verry thin strips.
Campbell Barton [Sun, 28 Oct 2007 16:00:23 +0000 (16:00 +0000)]
sequencer strip selection didnt work well for verry thin strips.
Improved the logic that deciedes when to select handles.

13 years agoBugfix #7674: Making proxy from linked armature ruins local armature
Joshua Leung [Sun, 28 Oct 2007 01:01:46 +0000 (01:01 +0000)]
Bugfix #7674: Making proxy from linked armature ruins local armature

This was caused by an error I made when converting old code during the constraints recode 2. As a result, constraint subtargets got cleared, messing up proxies.

(set_constraint_target didn't use to clear the subtarget of a constraint when passed NULL for the subtarget argument)

13 years ago== imagebrowser ==
Andrea Weikert [Sat, 27 Oct 2007 10:06:03 +0000 (10:06 +0000)]
== imagebrowser ==
* added support for .dds image files
* added support for .int, .inta and .rgba image files

== MSVC 7.1 project files ==
* added WITH_DDS to support .dds files when compiling with the project files by default
* added the dds source files to imbuf project
* also added CMP_glare, CMP_lensdist, CMP_tonemap nodes to nodes.vcproj

13 years ago==Python API==
Campbell Barton [Fri, 26 Oct 2007 22:38:15 +0000 (22:38 +0000)]
==Python API==
layerMask access for pose bones, even though this is a Bone property, its much more convenient to add access from the poseBone, it also matches how the
user interface works.

13 years agofix for msvc
Campbell Barton [Fri, 26 Oct 2007 22:11:08 +0000 (22:11 +0000)]
fix for msvc

13 years agoReplace ceilf()/floorf() with ceil()/floor() to fix VC7 compilation problems
Ken Hughes [Fri, 26 Oct 2007 20:04:04 +0000 (20:04 +0000)]
Replace ceilf()/floorf() with ceil()/floor() to fix VC7 compilation problems
reported by Stephane Soppera.