Commit Graph

2054 Commits

Author SHA1 Message Date
Dalai Felinto 3b6aa5b6a5 Logic Editor: clear properties operator + logics in the object menu
clear properties operator
- now it's not part of the copy properties anymore (Matt's suggestion).

If anyone want to change the menu, please help yourself (renaming, putting in it's own submenu, making it invisible when mode is not Game ..)
2010-06-03 06:41:24 +00:00
Nick Samarin d3d2e92fcc synched branch with trunk at revision 29109 2010-05-31 23:44:43 +00:00
Joshua Leung 5d6bdd7c2e Various constraint code cleanups:
1) Fixed some weird formatting introduced during math-lib cleanups, and some other inconsistencies
2) Optimised the Maintain Volume constraint by taking the value calculations out

Copy All Constraints Operators:
* Added one for bones too
* These are now included in the menus
* Removed some weird/extra code copying/changing/bleh the actcol/totcol stuff...
2010-05-27 11:56:31 +00:00
Joshua Leung 4ebc634168 == Pivot Constraint ==
This constraint allows an object or bone to have their rotations applied as if their origin/pivot-point was located elsewhere. The most obvious uses include foot-roll, see-saws, but could also include more complicated rolling-box examples.  

== Usage Examples ==
=== Foot Roll ===
1. Add 'Pivot' Constraint to the bone without any target.
2. Set the 'Y' value of the offset to the length of the bone. Usually this should be negative (if you rig with feet facing 'forwards' along -Y axis). This gives you a pivot point relative to the bone's (preconstraint) location, which should be at the tip of the bone here. Disabling the 'Use Relative Offset' would make this offset be relative to 0,0,0 instead of to the owner/bone-head.
3. Ensure that the 'Pivot When' setting is set to '-X Rot', (default) which means that the pivot will only used when the rotation on the X-Axis is negative to get tip-toe 'roll'. 

=== See Saw ===
1. Add a 'Pivot' constraint too see-saw plank object, this time with a target that you wish to have as the pivot-point. It's possible to do this without too (as before), but is less intuitive.
2. Optionally, if you want the plank slightly raised, set the z-offset value, which should make the pivot-point used to be relative to the target with the z-offset applied.
3. Ensure that 'Pivot When' is set to 'Always', which means that the pivot will always be used, irrespective of the rotation.

== Notes ==
* The 'Pivot When' setting has been integrated in the constraint, since this is something that will often be required for these setups. Having to set up additional drivers to drive the constraint to do this kindof beats the purpose of providing this.

* The 'Offset' functionality is probably not presented as clearly as it could be. We may need to go over this again.

* For foot-roll - if any scaling of the foot is required, simply set up a driver on the y-offset to make this dynamically respond to the "scale" RNA property of the bones (don't use the "Transform Channel" vartype since that won't work correct here). However, this shouldn't be common enough to warrant special treatment.
2010-05-27 10:50:06 +00:00
Matt Ebb 6e92ddf8b3 Progress indicators for threaded jobs
Now, rather than the bit-too-alarming stop sign, threaded wmJobs 
display a progress indicator in the header. This is an optional feature
for each job type and still uses the same hardcoded ui template
(could use further work here...).

Currently implemented for:
Render - parts completed, then nodes comped
Compositor - nodes comped
Fluid Sim - frames simulated
Texture Bake - faces baked

Example: http://mke3.net/blender/devel/2.5/progress.mov
2010-05-27 08:22:16 +00:00
Campbell Barton 9852543154 make bpy.ops.object.select_name(name) also make the object active since Alt+RMB wasnt setting the object active.
if other tools need this not to switch the active object we could make setting active an option.
2010-05-27 08:09:25 +00:00
Matt Ebb e26cc71bd0 Tweaks to copy game properties operator for Dalai 2010-05-25 06:24:45 +00:00
Dalai Felinto 6c01b7b4f8 Logic Editor - fix for Keyboard Sensor + Copy Game Property fancy submenu
* Keyboard Sensor entry keys (key, modifier 1 and 2) can actually be any key
- (you can use Shift as main key, and D as modifier if you want). It's
- strange in my opinion, but it's 2.49 way of doing it.

* Copy Game Property (operator found in SPACE menu)
- reorganized it so the properties appear as submenu items.
- a "little lot" of work for such a small eye-candie but well I hope more
- people like it as well :)

Matt, I had to recreate the dynamic_enum to make it work. I'm count on you
for a real fix for this ;)
2010-05-24 10:38:05 +00:00
Campbell Barton a1ada0f21c - remove OBJECT_OT_curve_add
- rename CURVE_OT_primitive_bezier_add --> CURVE_OT_primitive_bezier_curve_add # matches nurbs operator
- rename CURVE_OT_primitive_curve_path_add --> CURVE_OT_primitive_nurbs_path_add
- fix for warnings from 28923
2010-05-24 07:14:55 +00:00
Sergey Sharybin 9f7c04944a Removed unused argument mmd from multires reshape functions. 2010-05-21 14:18:07 +00:00
Dalai Felinto a7a9862cc9 Logic UI and Operators: adjusts on Layout + copy properties operator + fix on copy logic bricks operator (and moved to OBJECT_OT)
* adjusts on Layout:
 - in order to avoid much changes when copying Logics, it's nice to have the logic s/c/a always displaying even though it's not valid (e.g. edit mesh used from a camera object).
Now a message shows in the s/c/a alerting to the problem.

* logic operators under OBJECT_OT - copy properties and logics

Matt, is it possible to have the object game properties listed as a submenu from "Copy Properties" ?
So from the "Copy Game Property" menu we would have three options:
"Copy a property" -> (submenu) prop1, prop2, prop3 
"Replace all Properties"
"Merge all Properties"

For the current task list in Logic Editor:
http://www.pasteall.org/13245
2010-05-19 09:40:45 +00:00
Dalai Felinto ce6e6112eb Logic UI: copy logic operator (old Ctrl+C) + add logics (shift+a)
According to Matt the RMB->Copy to selected wouldn't work for logics because the copy we need is for the whole logic (s/c/a). So (at least for the time been), copy logic is possible again.
It work as 2.49 (replacing the existent logic).

Add Logics is a python menu to give quick access to add logics. I have to see how to put that in Add Menu. I should be easy, but I'll leave it for later.
2010-05-16 16:28:50 +00:00
Campbell Barton 4f77bea8f6 restrict render_clear was operating on hidden objects, now work on selection 2010-05-13 07:53:06 +00:00
Campbell Barton db0733eb12 remove use of global 'G' 2010-05-12 22:47:37 +00:00
Diego Borghetti d0802b4db2 Bring back the pupmenu for "select object in the same group"
when the object have more that one group.

I put a XXX because the selection function use G.main to
get the group, probably we need a CTX_DATA_BEGIN for
groups ? Brecht ? Campbell ?

I make a new operator for the pupmenu, it's only for the
selection menu, so don't have any key binding.

Matt, can you check ?
2010-05-12 22:29:32 +00:00
Matt Ebb 413c4c91ca Fix [#22296] Wrong Operator Names? 2010-05-10 01:49:35 +00:00
William Reynish 5afb24cedb Added backspace as an alternative to the X key, for deleting things. 2010-05-09 21:37:53 +00:00
Joshua Leung 1613829e8e Minor formatting tweaks (killing some "caterpillar if's"... yuck those things are nasty to edit/extend) 2010-05-07 10:59:48 +00:00
Campbell Barton 70a96a1089 saving multires data didnt get the new filename when the external struct was alredy allocated (making save external fail) 2010-05-07 09:41:26 +00:00
Matt Ebb 9084df418d Warning cleanup
While I was looking in outliner.c, made some changes to let extra passes display
there such as environment (commented out before due to a previous limitation).

Also changed outliner object visbility/selectability/renderability toggles to use 
RNA buttons so you can insert keyframes with RMB menu etc.
2010-05-07 03:44:34 +00:00
Campbell Barton 294e82446a own restrict-render commit broke hide unselected. 2010-05-06 18:11:01 +00:00
Campbell Barton cbf7d507c5 last commit broke linking to scenes from the UI 2010-05-06 11:47:10 +00:00
Campbell Barton 12cf8ac1d6 - split objet group add/link into 2 operators
- link now brings up a search box so when there are 100's of groups its less annoying.
- utility functions for id-enums so only local objects can be displayed in a search list (used for group_link)
- renamed operator properties from typle to scene, group, action etc.
2010-05-05 15:41:38 +00:00
Joshua Leung bfca6d8f75 Bugfix #22244: Crash on using ops.constraint.childof_set_inverse and childOf_clear_inverse incorrectly
Adding some NULL checks to all the constraint operators. This is not ideal, but at least the crashes are gone now. More work is needed to properly fix this...
2010-05-05 00:44:42 +00:00
Campbell Barton 7a63442f99 remove conflicting restrict render key 2010-05-04 22:01:24 +00:00
Campbell Barton 22a34cc83b render hide/unhide (Ctrl+H, Ctrl+Alt+H, Ctrl+Alt+Shift+H) 2010-05-04 15:04:28 +00:00
Joseph Eagar a7cbd5008e merging revisions 28564-28569 from render branch into trunk 2010-05-04 12:31:24 +00:00
Campbell Barton 0975b9a35f clear 2 warnings 2010-05-04 05:30:17 +00:00
Matt Ebb 43f0fd08b3 Fix [#22227] Unbinding calls bind operator
Problem wasn't that the same operators was being called, just seems like the code wasn't updated after rev. 28376
2010-05-03 02:01:38 +00:00
Campbell Barton 610c4befd4 option to copy constraints without making their ID references direct links.
needed because proxies are causing libs to be linked directly when they should be kept indirect (likely slowing load times though I didnt time this)
2010-04-29 15:31:53 +00:00
Campbell Barton 6662440867 select linked options, Library and Library ObData 2010-04-29 14:44:39 +00:00
Matt Ebb f85fe4d633 Pass constraint names as operator properties in constraint operators
This is similar to commit revision 22078, but for constraint operators rather 
than modifiers, making it possible to use them from scripting.
2010-04-26 03:42:38 +00:00
Campbell Barton 93f420b666 correct typo's 2010-04-25 15:24:18 +00:00
Campbell Barton ace1c998c4 warning cleanup, also made voxel.c and volumetric.c use BM_INLINE define rather then having their own ifdefs in each file. 2010-04-24 10:08:07 +00:00
Campbell Barton 39c0e690d3 sub_v3_v3v3 --> sub_v3_v3 (where possible) 2010-04-23 23:57:00 +00:00
Matt Ebb 9957e926f9 warning cleanup 2010-04-22 11:35:36 +00:00
Campbell Barton c8c22d2cf6 rna: added lib.parent access and made filename editable. 2010-04-22 08:25:05 +00:00
Matt Ebb a2b6abeee1 Fix [#22097] missing panels in texture tab
Made texture/texture slot context a bit less flaky when dealing with active material and 
texture nodes inside a node material in the node editor. Now if the active material has 
nodes enabled, and there are no active material/texture nodes inside it, nothing will be 
shown in the texture properties (similar to 2.49).
2010-04-22 06:59:41 +00:00
Matt Ebb 5c94896490 Fix [#22078] Cannot apply modifier in python (context error)
Previously all modifier operators relied on the buttons layout data context pointer to 
decide which modifier to work on. This meant that these operators would only work 
from from the properties panel, and not from scripting/macros or for operator redo.

This commit makes all modifier operators take the modifier name as an operator 
property, so the operators can be re-done or executed outside of the modifier panel. 
When invoking the operators from the modifier panel, they automatically fill in the 
operator property from context.

This isn't a perfect API design, but it does bring these operators in line with the design 
of being able to access all UI functionality via other means like scripts.
2010-04-22 01:55:10 +00:00
Campbell Barton fba7ebcbea replace add_v3_v3v3() --> add_v3_v3() where possible 2010-04-21 12:27:48 +00:00
Campbell Barton 9c69a8028b bugfix [#22091] Crashing on Add Shortcut 2010-04-21 07:56:34 +00:00
Matt Ebb 7119d5ba70 Fix [#21492] "Align to view" option from tools panel's operator part doesn't works.
Also changed some usage of CTX_wm_region_view3d(C) to ED_view3d_context_rv3d(C)
2010-04-16 02:14:56 +00:00
Brecht Van Lommel 9a85013692 Merge various small changes from render branch:
* Division by zero fix for TNT SVD code.
* Sound fix, in case ffmpeg decode fails, don't use the samples.
* Fix for incorrect bounds of transformed objects in new raytracing code.
* Gave memory arena's a name used for allocations for easier memory
  usage debugging.
* Dupligroup no_draw option was using layers but not restrict view/render
  setting. (not a bugfix exactly but would do display list context switching
  while drawing for no reason).
* Fix objects instanced on hair particles not giving consistent results
  when the object is transformed.
* New math functions: madd_v4_v4fl, len_squared_v3v3, interp_v4_v4v4v4,
  mul_v4_m4v4, SH and form factor functions, box_minmax_bounds_m4.
* mul_m4_m4m4 and mul_m3_m3m3 now accept the same pointers for multiple
  arguments.
* endjob callback for WM jobs system.
* Geometry node uv/color layer now has search list/autocomplete.
* Various small buildsystem tweaks, not strictly needed yet in trunk.
2010-04-15 10:28:32 +00:00
gsr b3d 7d9067ca2c Make memstat easier to read, add missing Intel ID and cleanups. 2010-04-14 21:12:05 +00:00
Joseph Eagar fe3a9a2f30 fixed make local bug; it was only looking at editable objects, which of course lib objects are not. 2010-04-13 16:52:18 +00:00
Sergey Sharybin 403c1e2a8e Todo #21831: Deform modifier is applied to base mesh instead of
multires modifier if both are in the stack (patch #21965)

This patch also removes limitation of multires reshaping when
destination object has got modifiers after multires modifier.
2010-04-13 06:06:49 +00:00
Matt Ebb 93c1a7354f Fix [#21982] Operator bug: Edit mode
Hid the 'Enter Edit Mode' property when adding an object, not necessary anyway.
2010-04-12 00:40:56 +00:00
Campbell Barton 909493eac9 booleanops.c was moved to MOD_boolean_util.c, remove empty file. 2010-04-11 22:20:02 +00:00
Dalai Felinto 139a0e7cb8 Copy Constraints Operator
the C code to copy the constraint was already there (same as 2.49) so this operator simply exposes it.
I'm using the name Copy Constraints to Others based on what we have in material operators (e.g. Copy Material to Others).

If we bring back the whole Copy Attributes menu (old Ctrl+C) having the individual operators is still important for scripts. Nevertheless I'm not comfortable with the name (to Others sounds unnecessary verbose) but so far having the functionality back is important (request from Caju Studio). I'll be glad to make any change later if needed.
(no shortcut for that, to use it go to userpref->keymap and assign a shortcut for this operator or add it to the toolshelf)
2010-04-11 22:08:58 +00:00
Campbell Barton 39d3ff135f no functional change
- convert solidify edge crease values into chars once rather then for each edge.
- sort vertex was checking the array all the time when it wasnt needed.
2010-04-08 16:08:06 +00:00