Commit Graph

183 Commits

Author SHA1 Message Date
Joshua Leung
b6b2f37f27 Lattice Editing: Distortion-Free "Flip" Operator
This operator (Ctrl-F) allows you to flip the lattice coordinates without
inverting the normals of meshes deformed by the lattice (or the lattice's
deformation space for that matter). Unlike the traditional mirror tool, this
tool is aware of the fact that the vertex order for lattice control points
matters, and that simply mirroring the coordinates will only cause the lattice
to have an inverted deform along a particular axis (i.e. it will be scaling by a
negative scaling factor along that axis).

The problems (as I discovered the other day) with having such an inverted
deformation space are that:
- the normals of meshes/objects inside that will be incorrect/flipped (and will
disappear in GLSL shading mode for instance)
- transforming objects deformed by the lattices will become really tricky and
counter-intuitive (e.g. rotate in opposite direction by asymmetric amounts to
get desired result)
- it is not always immediately obvious that problems have occurred

Specific use cases this operator is meant to solve:
1) You've created a lattice-based deformer for one cartoonish eye. Now you want
to make the second eye, but want to save some time crafting that basic shape
again but mirrored.
2) You've got an even more finely crafted setup for stretchy-rigs, and now need
to apply it to other parts of the rig.

Notes:
* I've implemented a separate operator for this vs extending/patching mirror
transform tool as it's easier to implement this way, but also because there are
still some cases where the old mirroring seems valid (i.e. you explicitly want
these sort of distortion effects).
* Currently this doesn't take selections into account, as it doesn't seem useful
to do so.
2012-10-13 10:42:38 +00:00
Ove Murberg Henriksen
cb42de588d Adding weightpaint transfer tool.
From: https://svn.blender.org/svnroot/bf-blender/branches/meshdata_transfer

Bachelor project at Narvik university collage (Norway).
By Ove M Henriksen (Cyborgmuppet)
 
Thesis will be published at Cyborgmuppets blender page.

Thanks for letting me participate!
2012-10-09 12:25:10 +00:00
Campbell Barton
8730b390fb patch [#31919] limit the number of bone deform weights per vertex. Many game engines require a limit of 4.
from Kesten Broughton (kestion)


Usage: In weight paint mode, select the mesh to have its weights culled. Click on "Limit Weights" button. A sub-panel will appear "Limit Number of Vertex Weights" with a slider field "Limit" which you can set to the appropriate level. The default level is 4, and it gets executed upon pressing "Limit Weights" so you will need to do an "undo" if your max bone limit is above 4. The checkbox "All Deform Weights" will consider all vertex weights, not just bone deform weights.
2012-10-09 10:56:35 +00:00
Ove Murberg Henriksen
7247af6af5 svn merge ^/trunk/blender -r48592:HEAD 2012-10-09 10:53:20 +00:00
Joshua Leung
b2a5f28421 Follow Path Constraint - "Animate Path" Operator
Added a convenience operator to the Follow Path constraint which adds a F-Curve
for the path (or the operator's "fixed position" value if no path is assigned),
with options for setting the start frame and length of motion. This makes it
easier for common users to just set up a quick follow-path animation where the
camera (e.g. flying around a set over certain number of frames).

A key advantage of this is that it takes care of the underlying math required
for setting up the generator curve accordingly (I've got some plans for making
this a bit friendlier to use later). Now, animating the paths is a one-click
operation, with the start and length properties able to be controlled using the
operator properties.
2012-10-05 14:51:35 +00:00
Bastien Montagne
00ce0c9aae Clean up in "add object" code:
* Get rid of ED_object_add_generic_invoke() and all invoke callbacks using it, it was doing nothing exec() callbacks would not do. In fact, its only action (setting part of common add ops properties, like loc, layers, etc.) was needed too by direct exec call, so it was done twice in case of using invoke()!
* Replace custom invoke code for metaballs by WM_menu_invoke helper (as already used by lamps).
* Add a new OBJECT_OT_empty_add op, to allow direct addition of empties of a given drawtype.
* And some general code cleanup (like trailing spaces, empty lines, ...).

Did quite a bunch of tests/verifications, but obviously could not tackle all possible scenarios... Anyway, if any, bugs should arize quite quickly (but I don’t expect any! :p ).
2012-10-05 12:59:09 +00:00
Campbell Barton
7d3e854aeb add hook now has option to add to active bone (mango request). 2012-08-13 08:54:33 +00:00
Ove Murberg Henriksen
d43e1fa7be svn merge ^/trunk/blender -r48095:48592 2012-07-04 15:56:42 +00:00
Campbell Barton
72f7ab441d removing from group now shows menu to select group to remove. 2012-06-20 14:13:22 +00:00
Ove Murberg Henriksen
736daa9f04 svn merge ^/trunk/blender -r46844:HEAD 2012-05-23 10:56:06 +00:00
Nicholas Bishop
45265b326a Add operator to extract armature and vertex groups from skin.
* The operator creates bones for each input edge (does not subdivide
  them like the skin operator does), adds a fake root bone for skin
  roots with multiple children.

* The operator adds vertex weight groups to the original mesh.

* Make copy_object_transform() public, used to match the armature
  object to the mesh object.

Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier
2012-05-22 15:29:57 +00:00
Nicholas Bishop
11309a19e2 Add skin vertex operators.
* Add operator to mark selected vertices as skin roots.
* Add operator to mark/clear selected vertices as loose.
* Add operator to equalize skin radii.

Skin modifier documentation:
http://wiki.blender.org/index.php/User:Nicholasbishop/SkinModifier
2012-05-22 15:29:44 +00:00
Ove Murberg Henriksen
8521ca69fa removed:
OBJECT_OT_vertex_group_copy_to_selected_single()
plan for future to implement option as an argument in:
OBJECT_OT_vertex_group_copy_to_selected()
2012-05-17 12:36:07 +00:00
Ove Murberg Henriksen
0978d1eb9d Added framework for transfer weight options.
vertex_group_transfer_weight_exec() governs all.
Functions renamed/added with _transfer_weight_
as opposed to _copy_by_ 
This is to reflect changes in parameters and usage as the internal code will change.
2012-05-17 01:42:06 +00:00
Ove Murberg Henriksen
68179be662 svn merge ^/trunk/blender -r45927:HEAD --accept=theirs-full
This revision does not compile. code need to be merged in manualy.
2012-05-09 14:55:50 +00:00
Ove Murberg Henriksen
7b3beec987 merging back to a version that works...
svn merge -r46433:46359 .
2012-05-08 19:49:39 +00:00
Ove Murberg Henriksen
1d5440350d svn merge ^/trunk/blender -r46330:46335 2012-05-07 22:28:59 +00:00
Ove Murberg Henriksen
6c86b70145 svn merge ^/trunk/blender -r46000:46100
some conflicts. had to backup my code, accept with "tc" and introduce my own code again.
Hope I didnt leave anything out.
2012-05-06 22:19:13 +00:00
Joshua Leung
5d02292d3c Bugfixes for Motion Path drawing/updating in light of the recent changes:
* Added proper "update" operators in place of the abuse of the calculate
operators, so now the display ranges won't get overwritten everytime (with the
default values) you go to update the paths.

* Display range settings in properties editor now actually work. Before, the "In
Range" mode only displayed the entire paths.
2012-05-06 04:18:13 +00:00
Campbell Barton
e2c453b5f9 style cleanup: editors / mesh & object 2012-04-28 15:42:27 +00:00
Ove Murberg Henriksen
93f22cf012 svn merge ^/trunk/blender -r45364:HEAD --accept postpone 2012-04-12 16:01:24 +00:00
Campbell Barton
2a54ef0442 there was no way to reset timing for absolute shape keys, add an operator to do so. 2012-04-05 06:10:15 +00:00
Ove Murberg Henriksen
244836b18d svn merge ^/trunk/blender -r44562:45364 2012-04-03 11:55:39 +00:00
Ove Murberg Henriksen
4fb535070e Removed: The uneccecary previously added code and added functions for "copy_to_selected_single.
Reason: less code and  consistensy with existing code.

Added fuction "ED_vgroup_copy_single" that forms the basis for the above.
2012-04-03 08:23:00 +00:00
Ove Murberg Henriksen
0b8ae86e59 Added functionality: copy vertex group from source to targets.
Changed some comments to represent the code more accuratly.
2012-03-15 21:49:40 +00:00
Nicholas Bishop
24b676e370 Remove the OBJECT_OT_test_multires operator.
Originated in r35213, appears to have been some test for multires in
BMesh.
2012-03-10 05:15:17 +00:00
Ove Murberg Henriksen
5b29a7bd2f from first change up until including this: added two buttons to gui,
transfer weight and trtransfer weight all, made the basic structure, redy to implement the contents of the functions in object_vgroup.c
2012-03-02 13:33:14 +00:00
Ove Murberg Henriksen
42dfd82928 M source/blender/editors/object/object_ops.c
M    source/blender/editors/object/object_intern.h
2012-02-29 19:55:54 +00:00
Ove Murberg Henriksen
94a2775a14 M source/blender/editors/object/object_vgroup.c
M    source/blender/editors/object/object_ops.c
M    source/blender/editors/object/object_intern.h
2012-02-29 19:46:31 +00:00
Campbell Barton
48006292d8 svn merge ^/trunk/blender -r44189:44204 2012-02-17 20:56:25 +00:00
Campbell Barton
2b7ca2304a unify include guard defines, __$FILENAME__
without the underscores these clogged up the namespace for autocompleation which was annoying.
2012-02-17 18:59:41 +00:00
Campbell Barton
917714acf7 svn merge ^/trunk/blender -r43345:43381 2012-01-15 09:16:39 +00:00
Campbell Barton
166a37532f remove *.select_inverse operators where the *.select_all operator has an invert option. 2012-01-14 06:58:03 +00:00
Campbell Barton
b308e61312 svn merge ^/trunk/blender -r43220:43278 --accept postpone 2012-01-11 14:14:04 +00:00
Campbell Barton
f1c229e8b3 Change how object menu selection works, use an operator with an enum rather then a menu with 'OBJECT_OT_select_name',
remove 'OBJECT_OT_select_name' operator since its no longer needed.
2012-01-11 03:40:20 +00:00
Campbell Barton
81f5c9ed9b svn merge ^/trunk/blender -r42991:43009 2011-12-31 03:07:14 +00:00
Campbell Barton
4ced91da47 svn merge ^/trunk/blender -r42778:42839 2011-12-23 08:41:53 +00:00
Sergey Sharybin
9774c93435 Merging r42770 through r42799 from trunk into soc-2011-tomato 2011-12-21 14:50:05 +00:00
Dalai Felinto
056c49e9ec Patch [#29654] New menu option under Object > Game with "Copy All Physics Attributes" by Daniel Macedo
"This is a patch that adds an option under the menu Object > Game to copy all the physics attributes from Game Engine."
2011-12-21 02:41:27 +00:00
Sergey Sharybin
ba16e7d631 Object tracking: object with object solver constraint is now parented to scene's camera
Made Object Solver operator parent object to scene's camera. Behavior is pretty much
familiar to Child Of constraint -- it stores inverted transformation matrix which gives
constant offset in parent's space.
Current files would open incorrect, to make object aligned well again, just press
"Set Inverse" button in Object Solver constraint.
Fixed orientation operators so now they should work in all cases.
Also changed behavior of Set Origin operator which now sets origin to the median
point of all selected tracks/
2011-12-15 16:09:57 +00:00
Campbell Barton
e6e265b2b5 svn merge -r41779:41847 ^/trunk/blender 2011-11-15 02:58:06 +00:00
Lukas Toenne
11c83d8432 Ocean Sim modifier patch
by Matt Ebb, Hamed Zaghaghi

This adds a new Modifier "Ocean" to simulate large-scale wave motion.
Details can be found in the wiki documentation [1], the project homepage [2] and the patch tracker [3]

The modifier is disabled by default for now. To enable it, the WITH_OCEANSIM (cmake) / WITH_BF_OCEANSIM (scons) flags have to be set. The code depends on fftw3, so this also has to be enabled.

[1]
http://wiki.blender.org/index.php/Doc:2.6/Manual/Modifiers/Simulation/Ocean

[2]
http://www.savetheoceansim.com

[3]
http://projects.blender.org/tracker/?group_id=9&atid=127&func=detail&aid=28338
2011-11-13 12:17:27 +00:00
Campbell Barton
15e6d6cd75 svn merge ^/trunk/blender -r41226:41227 . 2011-10-24 12:43:08 +00:00
Campbell Barton
4a04f72069 remove $Id: tags after discussion on the mailign list: http://markmail.org/message/fp7ozcywxum3ar7n 2011-10-23 17:52:20 +00:00
Campbell Barton
4a157de23d svn merge ^/trunk/blender -r40587:40643 2011-09-28 07:34:48 +00:00
Sergey Sharybin
dcccf3fc1f navmesh: solve bad level calls to edit mesh functions
Move navmesh operators from editors/object to editors/mesh
2011-09-27 09:09:52 +00:00
Campbell Barton
7126a4699e svn merge ^/trunk/blender -r40367:40368 --- raddish weight paint merge 2011-09-22 16:09:27 +00:00
Campbell Barton
a89b253aa6 edits to radish before merge with trunk
- removed some unused functions.
- renamed vars to make more sense paint_vertex.c 'flags' --> 'lock_flags'
- some odd modifications were made in unrealted, commented code, copy these back from trunk.
- rename vertex_group_fix 'cp' property to 'accuracy'
- make style more consistant with trunk.
- remove 'Radish' comments.
2011-09-19 02:43:03 +00:00
Jason Hays
73863a1da5 Split do_weight_paint_vertex() to isolate the simple case.
Added a tool-tip to the "fix deforms" op.

Removed code markers:
"Radish"
2011-09-18 17:10:28 +00:00
Jason Hays
a9c99f58f4 Changed the branch code markers to say "Radish" in response to a review.
They weren't & aren't meant to show ownership, they just help me navigate my related code.
2011-09-18 03:49:00 +00:00