Commit Graph

1868 Commits

Author SHA1 Message Date
Daniel Genrich
e057b56d3b svn merge -r 12478:12495 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2007-11-06 12:10:59 +00:00
Daniel Genrich
b37bbe9024 New: pointcache integrated with cloth. Maybe some little glitches left there 2007-11-06 12:08:39 +00:00
Brecht Van Lommel
f66aeb7a74 Bugfix:
Mesh deform modifier crashed when applied to lattices.
2007-11-06 11:25:48 +00:00
Brecht Van Lommel
e2504c2ff1 Mesh Deform Modifier
====================

Added a button to invert the vertex group influence, to make blending
between mdef and armature deform easier.
2007-11-06 09:44:34 +00:00
Daniel Genrich
cbc941e342 Merged pointcache from particles branch, but is not used in the moment 2007-11-06 09:44:09 +00:00
Daniel Genrich
47c62453db Bugfix for wrong springs (resulted in weird behaviour), Implemented two speedups: One for small bending/wrinkle values (1/3 speedup), another speedup is that cloth get automatically in sleep mode but wakes up every frame ([quality-1]/quality speedup) 2007-11-06 02:30:53 +00:00
Campbell Barton
f1c6a69aad sequencer snap was crashing when no last selected was available (own mistake)
material names spelling was odd - HalveGreen -> HalfGreen
2007-11-05 21:06:27 +00:00
Daniel Genrich
873a26ff84 best part (file) was missing 2007-11-05 19:29:14 +00:00
Daniel Genrich
0a1be3e2ce Fun commit: I put some 3-liner verlet integrator in, to activate it, set clmd->sim_parms.solver_type in cloth_init to 1 - bugs in there 2007-11-05 19:28:38 +00:00
Brecht Van Lommel
63c5dbe745 Bugfix:
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.
2007-11-05 18:44:42 +00:00
Brecht Van Lommel
7d70dd98d6 Bugfix:
Dual quaternions + armature modifier vgroup didn't work together correct.
2007-11-05 17:38:07 +00:00
Daniel Genrich
7a6b3a63fa svn merge -r 12419:12478 https://svn.blender.org/svnroot/bf-blender/trunk/blender -- old cloth files with activated modifier won't work, please deactivate modifier before 2007-11-04 22:20:02 +00:00
Daniel Genrich
8c0968a013 Kicked my own cache code, will use point cache in the near feature 2007-11-04 22:11:00 +00:00
Brecht Van Lommel
1b9d661eca 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.

http://www.blender.org/development/current-projects/changes-since-244/modifiers/

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.
2007-11-04 22:00:24 +00:00
Daniel Genrich
01d19261bb Implemented simple selfcollisions with use of OpenMP (WITH_BF_OPENMP = 'true' - for NEW compilers like gcc 4.2.0 and MSVC prof) 2007-11-04 21:02:37 +00:00
Ton Roosendaal
044ae7f82f 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?
2007-11-04 19:41:21 +00:00
Ton Roosendaal
f996607632 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!
2007-11-04 17:14:39 +00:00
Brecht Van Lommel
c5d2be76d7 IK
==

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
before.
2007-11-01 12:40:46 +00:00
Matt Ebb
0edb5983ec * 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.
2007-10-31 21:55:06 +00:00
Ton Roosendaal
10680b34f2 New feature:
Weightpaint drawing now allows to define your own range of colors;
using a ColorBand, available in the User settings.

Log:
http://www.blender.org/development/current-projects/changes-since-244/animation-features/
2007-10-31 13:56:07 +00:00
Joshua Leung
2ae5da3fc2 == 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.
2007-10-31 10:04:57 +00:00
Joshua Leung
0fb83a87b9 == 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).
2007-10-30 11:18:50 +00:00
Joshua Leung
b617c191aa Bugfix #7685: Stamp info displays incorrect label for scene.
Copy+Paste error, wrong prefix used. Patch provided by Malcolm Tredinnick (malcolmt)
2007-10-30 05:58:25 +00:00
Joshua Leung
20905354fc Bugfix: "exploding candy"
Missed a case where I converted set_constraint_target incorrectly. This resulted in mancandy "exploding" on loading proxy-linked mancandy files.
2007-10-30 05:22:46 +00:00
Juho Vepsalainen
d6db819a83 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.
2007-10-29 14:37:19 +00:00
Joshua Leung
e448f20db5 Routine purge of compiler warnings. Yet again, they were mostly uninitialised vars. 2007-10-29 05:59:26 +00:00
Campbell Barton
7718b3d642 render stamp drawing is now done everywhere - (not just when saving
images)
separated stamp metadata and stamp draw functions.
2007-10-28 22:27:07 +00:00
Daniel Genrich
5f4323d2b1 svn merge -r 12391:12419 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2007-10-28 19:12:08 +00:00
Daniel Genrich
67f8ca0b66 Fixed typo which resulted in jumping cloth when collisions where enabled, fixed collision list memory leak. Ready to put real collision detection/response in. 2007-10-28 19:07:51 +00:00
Joshua Leung
04be929b88 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)
2007-10-28 01:01:46 +00:00
Campbell Barton
2a2453d3e2 nodes from eechlo
* glare
* tonemap
* lense distort
* fast gauss blur

http://projects.blender.org/tracker/?func=detail&atid=127&aid=7505&group_id=9

made fast gauss blur an option for the blur node rather then a separate node.
2007-10-26 15:32:36 +00:00
Daniel Genrich
4f72523654 Weekend commit: Enabled bounding box check for cloth again, but there's a bug in it (no collisions detected) 2007-10-26 15:13:50 +00:00
Joshua Leung
83eba96db2 Whitespace commit 2007-10-26 11:37:29 +00:00
Daniel Genrich
a61fb914ec Fixed compiling errors + introduced old speedup for springs again 2007-10-26 10:46:40 +00:00
Daniel Genrich
f59a4c2215 Fixing some goal problem 2007-10-25 23:10:42 +00:00
Daniel Genrich
096a1e87fc Fixed all known crashers, still have to verify a few things, and compiling works on gxx too, now 2007-10-25 22:09:06 +00:00
Daniel Genrich
f310214cc5 reverted part of cloth.c and modifier.c back to old code before switch to use "deform_only" modifier (not tested, needs cleanup but compiles) 2007-10-25 21:17:55 +00:00
Campbell Barton
fd98d38672 fix for valgrind warning - strcpy was trying to copy to/from the same value (aparently this can corrupt the value in some cases)
Fixed problem where hidden curve handles could still be transformed.
2007-10-25 20:30:18 +00:00
Daniel Genrich
f2cbe4e76b svn merge -r 12382:12391 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2007-10-25 16:42:17 +00:00
Campbell Barton
5007d95572 ==Curve Editing==
Curve select lasso and border didnt work with hide handles enabled.

Hiding handles was using the scene->selectmode variable, but looking at this now, I see there are places where selectmode is compared with 
SCE_SELECT_VERTEX, EDGE, FACE etc. as well as being.
Better to use a global flag, same as G_DRAWFACES.
This is not good since anyone using this in the few days will have an invalid selectmode variable. simple way to fix is to change modes, so do_versions shouldnt be needed.
2007-10-25 15:23:52 +00:00
Brecht Van Lommel
a9590ffaa7 Fix for pole target commit, broke blenderplayer compile. 2007-10-25 15:19:06 +00:00
Daniel Genrich
41b1505f83 svn merge -r 12347:12382 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2007-10-24 17:20:53 +00:00
Daniel Genrich
916cd17778 Fixed some bugs in bounding volumes, still some crasher in new cloth modifier 2007-10-24 17:13:13 +00:00
Brecht Van Lommel
30be716fc8 Pole Target for IK
==================

This adds an extra target to the IK solver constraint to define the
roll of the IK chain.

http://www.blender.org/development/current-projects/changes-since-244/inverse-kinematics/

Also fixes a crashes using ctrl+I to set an IK constraint on a bone
due to the recent constraints refactor.
2007-10-24 14:58:31 +00:00
Campbell Barton
05768a38e5 ==Image Stamp - Patch by GSR==
When using non opaque background, some overlap lines appear
due to filling some pixel lines twice. Before it did not matter
as only opaque bg was allowed, and it even compacted the text
a bit. The fix spreads a bit the lines to overcome the issue.
As a plus no text should touch the top edge ever (slashes did,
for example).

Compare:
http://www.infernal-iceberg.com/blender/stamp-alpha-overlap.png
http://www.infernal-iceberg.com/blender/stamp-alpha-cleanup.png
2007-10-24 08:45:23 +00:00
Campbell Barton
94dfb616a9 Patch by GSR #7628, I also added alpha for text background.
The list of changes (some are fixes):
- Properly horizontally centered tags in all fields (bug?).
- File area does not have trailing space and has leading "File " at
start instead (probably a bug).
- Small separation between to time related fields, space saving.
- Removed colons, for consistency and space saving again.
- Frame field is zero aligned for higher visual stability.
- Marker name shows a rarer name, "<none>" (using <> is typical for cases
in which there is nothing: <none>, <empty>, <blank>, etc).
- Top area for misc info that can be really long (file, note and render date).
- Bottom area for more constantly changing but short ones (marker, SMPTE,
frame, camera and scene).
- Only render date moves a line (when note field is not used), and frame one
moves if no SMPTE (still in same line, so no big jump), for extra visual
stability (marker is fixed, assuming most people would show frame and or
SMPTE).
- ISO 8601 date format for render date, localization independant.

Comparision images:
http://www.infernal-iceberg.com/blender/stamp-original.png
http://www.infernal-iceberg.com/blender/stamp-cleanup.png
2007-10-23 22:51:50 +00:00
Daniel Genrich
8bca9e5977 Another WIP commit. Building up bounding volume API 2007-10-23 22:38:07 +00:00
Joshua Leung
cf8032f315 == PyConstraints - Now working again ==
I've finally traced down the causes of several of the bugs which caused PyConstraints to work incorrectly (or not at all).

* Freeing is now done using BLI_freelistN inside the pycon_free function, instead of looping through the targets ourselves. This fixes all of those Memblock free: pointer not in list errors.
* BPY_pyconstraint_update now correctly creates/frees the constraint's targets as needed. Previously, it was creating/removing the wrong number of targets. Also, pyconstraints no longer get disabled when using armatures (not bones)
* The panel drawing was also not working right, as there were still some offset issues.
2007-10-23 08:23:57 +00:00
Joshua Leung
bf68055b93 Compiler warnings silencing - mostly uninitialised vars 2007-10-23 06:24:29 +00:00
Mal Duffin
9e0cecc337 ConvertToMesh for text ( and possibly curves ) was generating the wrong normals - the fact that the generated model was being set to double sided helped hide this.
To test for this in Blender, just add text, TAB out of edit mode, then convert to mesh ( ALT+C ), and press P for the game engine.  Alternatively select Textured Draw Mode.  You'll notice that the text is only visible from the back.  This patch reverses this, to be more correct.

Based on discussions on IRC, I'm now trying to fix another aspect of the extrude code - the fact that the faces at the front and back of the extruded curve face the same way ( ie one of them will be wrong ).  I'll keep working on this, but if someone can help out, feel free!
2007-10-23 00:02:29 +00:00