Commit Graph

222 Commits

Author SHA1 Message Date
Joshua Leung
269e943d58 == Copy Location Constraint ==
I've added two new options for this constraint:
* Copy Bone Tip Location
* Apply owner's location on top of copied location ('Offset')
2007-03-24 03:00:54 +00:00
Joshua Leung
26fd086bca Removed some more debug prints (regarding camera angle/lens stuff) 2007-03-24 02:20:00 +00:00
Martin Poirier
31f79cf5b4 === Constraints ===
Patch by Juho Vepsäläinen (bebraw)
[ #5850 ] Inverted axis' buttons to Copy Rotation and Copy Location constraints

This patch adds the options to invert the value being copied from each axis of the Copy Rot/Copy Loc constraints.


This commit also includes some slight code sanitization and tool tips cleanup (for the two track constraints, the tool tips were really unuseful).
2007-03-18 14:53:17 +00:00
Ken Hughes
8e43b3f950 More fix various gcc warning, mainly related to signed/unsigned parameters
passed in general.
2007-03-17 14:43:52 +00:00
Campbell Barton
e0c77c0f14 made all data adding functions accept a name such as add_mesh or add_curve, previously only some datatypes adding functions accepted a name.
also updated the Bpy.py epydocs
2007-03-11 16:25:17 +00:00
Ken Hughes
ef900ced64 Tools
-----
Bugfix #6156: Fluid simulation crashed on meshes with no vertices.  Add a
check for mesh->totvert==0 and print a message in that case.
2007-03-05 04:36:48 +00:00
Ton Roosendaal
28f18ac9e6 bugfix #6047
Provided by Juho: proper softbody panel button refreshes.
2007-02-14 20:53:35 +00:00
Ton Roosendaal
0bb0c54f4b Regression test fixes:
- New Softbody panel now is named "Soft Body Collision" (instead of II)
  Also made it start tabbed, and made Fluids panel start untabbed.

- Infowindow: skip drawing buttons when width is smaller than 320 pixels.
2007-02-14 11:00:05 +00:00
Ton Roosendaal
eaeed165db Bugfix #5599
TAB in text-edited buttons didn't always go to next button, for example
in constraints. Was caused by the 'roundbox' backdrop.
2007-01-06 10:59:07 +00:00
Joshua Leung
ed2f161c72 == Copy Rotation Constraint - Bugfix #5519 ==
Now, when only one axis toggle is on and click on it, all of the other
toggles will not be turned on.

For this to work, I've moved the version patches in the drawing/evaluation
code for this constraint to the file-reading code.
2006-12-27 05:00:43 +00:00
Joshua Leung
dbbf45875b == Scaling Constraints Working in Local-Space ==
* Patch #5442: "Fix Bone SizeLimit" by Heriberto Mendez (gammarayq21)
'Limit Scale' constraint can now work on bone's local scaling too.

* I've also made the 'Copy Scale' constraint able to use the local scaling
of bones too.
2006-12-18 10:17:40 +00:00
Erwin Coumans
0e6518731f Use degrees instead of radians for rigidbody constraint axis (euler angles). Radians can't specifiy 90-degree angles precisely, the input is only 3 decimals accurate... 2006-12-18 07:51:12 +00:00
Joshua Leung
8a5a29ae33 == Transform Limiting Constraints ==
Two tweaks:
* Reduced the amount of empty space at the bottom of these constraints.
* When using the Add Constraint menu (Ctrl Alt C) to add new constraints,
an empty is no longer created when creating a "Limit *" constraint.
2006-12-17 10:02:23 +00:00
Erwin Coumans
92379ec21f contribution from RCRuiz:
drawing of rigidbody constraint pivots, and allow passing of full constraint frame.
2006-12-16 05:50:38 +00:00
Campbell Barton
47adee414c added ob.passIndex to bpy, changed passIndex tooltip to a better one ton suggested. 2006-12-12 21:01:43 +00:00
Ton Roosendaal
869eeadeff Damn! Commit for render passes in wrong dir.... 2006-12-05 16:44:57 +00:00
Martin Poirier
4a2eceff20 === [ #5094 ] TrackTo Constraint with an animatable "up" direction ===
Patch by Matthew Plough: This adds an option to the Track To constraint to use the target's Z axis for Up axis reference instead of the global Z axis.

Off by default for backward compat.
2006-12-03 18:38:51 +00:00
Erwin Coumans
28bbf2d616 - added support for generic 6DOF constraint
- only 6DOF constraint shows buttons for limits
- added python support for rigidbody constraint (untested, but required for COLLADA Physics support)
2006-12-02 03:48:36 +00:00
Joshua Leung
5656d68aa3 Removed the other ugly global used in action editor. Now the
ACTWIDTH is a macro that tries to get actwidth from the active
SpaceAction (G.saction->actwidth). This should solve any potential
problems with having two action editors open editing shapekey
actions.

Also, I've fixed a compiler warning caused by erwin's constraint
commit. Wrong ui call for button.
2006-11-30 02:47:28 +00:00
Erwin Coumans
2572b9f72c Reserved some Bullet 2.x constraint data.
Although we will delay the main Rigid Body user interface after 2.43 release early 2007, I need some constraint data/UI to make progress with COLLADA Physics.
Added RigidBody constraint UI
LR_ALTKEY+LR_CTRLKEY+LR_SHIFTKEY+ P will bake rigidbody
Contribution by RCRuiz, Ramon Carlos.
2006-11-30 00:19:27 +00:00
Ton Roosendaal
eb03a578a3 New feature: Face Duplicators. Like vertex-duplicator, but now on a face
center, rotated according to face edges, and optionally with scale of the
face.

http://www.blender3d.org/cms/Face_Duplicator.828.0.html

Also: bugfix in undo/redo for relinking data to the UI. It was not checking
for Library data, accidentally linking non-library data with same names.
2006-11-29 08:57:32 +00:00
Ton Roosendaal
cadb47b415 Removed the highly disputable implementation that guessed a new view-center
when you go from Camera view to normal view. Now it returns, as usual, just
back to where you where working.
2006-11-25 14:37:59 +00:00
Jens Ole Wund
40c5b56707 softbodies
nice little 'debug' feature
SHIFT_ESC breaks baking without throwing away the baked keys
so you can check the solution calculated so far
baked sb replay checks for NULL pointers in keys -> motion will stop there
even saving and loading to file works here,
but i would not expect it to do so
humm .. may be i'll add a dirty flag for that
2006-11-23 20:31:46 +00:00
Jens Ole Wund
731e7e3915 having a nice break/esc behavior on bake
other occasions like ALT_A needs that too
2006-11-20 22:27:05 +00:00
Jens Ole Wund
85615f7ac8 More Softbodies
Added a less 'strict' solver step size control.
Cuts down needed loops to a 1/5 in 'regular' collision situations.
So why be a maths smartass when we want to do a skirt in a breeze :)
Is on by default, old mode can be turned on with the 'O' button beside the RK-limit.

Some minor fixes to the UI
2006-11-16 20:57:02 +00:00
Ton Roosendaal
d7f63b4062 Plumiferos request (and useful :)
Static particle option: maximum length. Button is next to "Vect" in first
particle panel. This allows weird forcefields and wind to act without
extreme long strands.
2006-11-16 20:23:00 +00:00
Ton Roosendaal
85c90b4951 Fixes in commit for Group Proxy feature;
- Groups with hidden parts didn't render OK
- Layer buttons sent out wrong events
2006-11-14 20:41:38 +00:00
Ton Roosendaal
9ab91ab361 New dupli-group feature: you can now set in Groups the layers you want
a group to show when used for duplicators. Is in the Object Buttons,
"Object and Links" panel. Note that the duplicator layer itself still
defines still visiblitily of entire group.
2006-11-14 17:16:15 +00:00
Jens Ole Wund
9e717b59cb softbody review
1. UI review -> disabeling options when not available .. giving hints why ( even tried to give usefull tooltips )
1.1 give some more user control to the solving process  (mins,maxs).. optional feedback on the console

2. replacing ugly object level 'sumohandle' with SB (private runtime) level/pointer 'scratch'
which holds runtime data like cached collider data and more .. and it's thread save this way :)

3.related no 2.  write a 'private' history of collision objects to ease the 'fast' collider tunneling syndrome'

4. some <clean> optimizations, 3-BSP for self collision,  general AABB checking before ever going to collision details

5. some <dirty>  ( in the sense of do some inacurate physics noone ever will see ) little tricks to make things faster .. ..fuzzy collision situation bypass .. forward collision resolution
2006-11-10 23:09:16 +00:00
Brecht Van Lommel
b48c514db8 Added an option in the IK constraint to disable stretching, useful
in rigs with layered IK constraints. Also removed the tolerance
setting, this value wasn't used in the solver anymore.
2006-11-06 23:51:37 +00:00
Nils Thuerey
3bea663ffa - bugfixes
#4742 exported normals are now correct
  #4821 & 4956 for complex movements in/outflows can now also
  use the animated mesh option
- new features
  * isosurface subdivision: directly
    creates a finer surface mesh from the simulation data.
    this increases simulation time and harddisk usage, though, so
    be careful - usually values of 2-4 should be enough.
  * fluidsim particles: extended model for particle
    simulation and generation. When isosurface subdivision is enabled,
    the particles are now included in the surface generation,
    giving a better impression of a single connected surface.
    Note - the particles are only included in the final surface
    mesh, so the preview surface shows none of the particle
    effects.
  * particle loading: different types of particles can now be selected for
    display: drops, floats and tracers. This is a bit obsolete
    due to the extensions mentioned above, but might still be useful.
    Floats are just particles floating on the fluid surface, could
    be used for e.g. foam.
  * moving objects impact factor: this is another tweaking option,
    as the handling of moving objects is still not conserving
    mass. setting this to zero simply deletes the fluid, 1 is
    the default, while larger values cause a stronger
    impact. For tweaking the simulation: if fluid disappears, try
    increasing this value, and if too much is appearing reduce it.
    You can even use negative values for some strange results :)
- more code cleanup, e.g. removed config file writing in fluidsim.c,
  added additional safety checks for particles & fluidsim domains (these
  currently dont work together). I also removed the "build particles"
  debug message in effects.c (seemed to be unnecessary?).

Some more info on the new features:
Here are two test animations showing the difference between
using the particle generation with isosurface subdivision.
This is how it would look with the old solver version:
http://www10.informatik.uni-erlangen.de/~sinithue/blender/fluid6_fl6manc4_1noparts.mpg
and this with the new one:
http://www10.informatik.uni-erlangen.de/~sinithue/blender/fluid6_fl6manc4_2wparts.mpg
Both simulations use a resolution of 64, however, the version with particles
takes significantly longer (almost twice as long).
The .blend file for a similar setup can be found here:
http://www10.informatik.uni-erlangen.de/~sinithue/blender/fluid6_testmanc4.blend
(Minor Tips for this file: dont enable subdivions of characters until rendering,
thus leave off for simulation, as it uses the rendering settings! For making
nice pictures switch on subdivion, and OSA.)

And here's a picture of old vs. new (for webpage or so):
http://www10.informatik.uni-erlangen.de/~sinithue/blender/fluid6_manc4compare.png
2006-11-05 16:30:29 +00:00
Ton Roosendaal
402287940a Bugfix #5022
If you rename a Constraint, the used Constraint Channels (Ipo curves) were
not renamed as well, making animations not work anymore.

Now renaming works up to this level:
- own object constraints
- own object Action constraints

This is identical to Bone renaming. Note that other actions (like in NLA)
are not corrected for renaming. Have to look at ways to provide that once.
2006-11-02 10:13:01 +00:00
Jens Ole Wund
57f01fdb46 more softbody goodies:
SB collision targets may be picked up from modifier stack
works fine with static targets having subsurf and/or array mofifiers
see-->
http://www.wund.homepage.t-online.de/hidden/Mstack.blend
http://www.wund.homepage.t-online.de/hidden/Mstack_II.blend

however when calulating the SB object dynamics the vertices of the
'deform only' m-stack result are used

so SB <-> SB may look strange
subsuf modifier is applied to SB object after doing SB dynamics
(that is: colliding mesh is subsurfed, SB is not )
subsurfed SB cubes colliding
link --> http://www.wund.homepage.t-online.de/hidden/ColSelfMod.blend

or may give unwanted results
subsuf and array modifier is applied to SB object after doing SB dynamics
link --> http://www.wund.homepage.t-online.de/hidden/ColSelfMod_nobug.blend

last, modifiers that change vertex locations in time (like waves)
suffer from not beeing seen at needed time resolution
(SBs see colliders static in a frame)
well but that's beyond the limits of the current dep-graph use
and needs to be resolved on design level

anyhoo have fun
BM
2006-10-19 22:01:06 +00:00
Jens Ole Wund
f0fbffcd59 made a nice new softbody II panel on UI to keep things usable (logic wise)
- failed on final alinignment issues may be matt can give a helping hand ? :)
2006-10-17 22:03:32 +00:00
Jens Ole Wund
03be45c8c0 softbodies again
unnesting aerodynamics from edge collision
cleaning up softbody.c
that is:
removing old todos in comments
adding some new :)
2006-10-14 19:03:06 +00:00
Jens Ole Wund
babb95c3e0 softbody update
nicer kinematics in self collision -> blending to complete inelastic impact
now does something close to real physics

first steps towards aerodynamics
anisotropic friction
springs 'see' their movement in media
--> see surrrounding  media does not move and/or reacts on wind
(*for now  needs to have a pseudo collider araound  -> that is: add a cube in the same layer
and make it a deflector  *)
2006-10-13 21:27:43 +00:00
Jens Ole Wund
80aa6fe5fb softbodies
-seld collision adding fine control to UI
-cleaning up code
volatile test file again
http://www.wund.homepage.t-online.de/hidden/sb_col_must_2_0.blend
2006-10-11 22:53:22 +00:00
Jens Ole Wund
b6b5cdefa9 some tiny changes to the softbody system
- UI for self collision ball size definition
- edge collision mode added (almost a bug fix)
volatile test file -->
http://www.wund.homepage.t-online.de/hidden/sb_col_must_1_2.blend
2006-10-10 21:49:02 +00:00
Jens Ole Wund
aaaae78527 removing self collision for curves
just did a few tests, with the 'surprising' result that balls are not curves ..
and i don't want to be swamped by bug reports tellling me
'it does not collide as i whised it would'
2006-10-05 21:30:55 +00:00
Jens Ole Wund
f2d27eb4cb bug fix
only alow self collision for suited objects

feature request from hairdressers
self collision for curves
works amazingly well if you keep in mind there balls around vertices colliding
2006-10-05 17:46:01 +00:00
Jens Ole Wund
21d6b199ab softbody self collision
ironing out a few glitches related to goal pinning
volatile test blend ->
http://www.wund.homepage.t-online.de/hidden/sb_col_must.blend
+ adding a few alternative collision ball calculation algos
since i did not want to blow up (waste)  DNA space without need,
coded as -1.0 -0.1 -1.1 values in 'ball size' (look at tooltip popup)
2006-10-04 21:36:55 +00:00
Jens Ole Wund
1ace6ec0ef softbody panel cosmetics
and a forgotten debug print .. tsk
2006-10-02 17:05:56 +00:00
Jens Ole Wund
ab92fca306 softbodies
mostly reshuffeling UI to have things where i'd expect them to be
2006-10-01 21:49:10 +00:00
Jens Ole Wund
8e7b403924 new softbody feature:
simple (naive) self collision
estimates a collision ball
using the spring lenght to attached neighbours
(idea stolen from old cloth modifier files, but i'm sure ZAZ and genscher won't mind)
-- usefull for untangeling static cloth like objects
-- may be used for cloth simulation with known limitations
like 'tunnel effect' if objects are moving too fast ...

demo -- volatile files
http://www.wund.homepage.t-online.de/hidden/sb_without_selfcol.avi
http://www.wund.homepage.t-online.de/hidden/sb_with_selfcoll.avi

have fun
BM
2006-09-28 20:27:46 +00:00
Jens Ole Wund
d0899c2642 Rigidity only for meshes 2006-09-26 17:16:23 +00:00
Jens Ole Wund
d8874df09c New softbody option: adjustable rigidity.
Gives local structure stability for though fabrics, thin steelplates ..
even suzanne gets pretty crash resistant that way.
If non zero it not only adds diagonals but all other "2edge-wide" springs
so it somehow replaces stiff quads for meshes too.
2006-09-26 12:53:57 +00:00
Roland Hess
4725ca6c02 This commit adds local target rotation support to the floor constraint,
making it much more useful. Requested and taunted for frequently by
Plumiferos folks. Click on "Use Rot" to take target object rotations
into account.

Good for using rotated empties, etc., as a sloped floor.
2006-09-22 15:57:58 +00:00
Nils Thuerey
f21f3cb290 - modified patch #4681, for scons compiling
of the fluidsim can now be disabled with the
	flag: BF_NO_ELBEEM='true', e.g. for irix systems.
	(The number of ifdefs from the original
	patch was reduced, and the defines are now
	only necessary when elbeem is switched off.)
- particle generation option is available again
2006-08-22 11:18:00 +00:00
Ton Roosendaal
8dd3a792f0 Fixing stuff without using brains... shouldn't do that too often! :)
This fixes my commit of august 13th, that cleaned up the code for
drawing optional buttons for Constraint targets.
Now, Bone target buttons are corectly drawn, when a target is Armature.

(also bug report #4907)
2006-08-20 12:38:06 +00:00
Ton Roosendaal
9851153814 Fix for issue found in IRC:
The Object Buttons, Constraint panel, didn't show Object constraints for
armatures when Armature was not in PoseMode. It was always drawing the
constraints for the active Bone...
Solved with a decent check in beginning of function, and have all types
use that.
2006-08-15 09:41:33 +00:00