Commit Graph

1027 Commits

Author SHA1 Message Date
8e3d590b76 code cleanup: python/pep8 and double-promotion warnings. 2013-03-28 19:33:14 +00:00
5262fcd4d3 I18n: various fixing.
* Reflect changes stated in prev commit about contexts in py code.

* Add a "Plural" context, to handle cases where english does not mark plural at all (e.g. shorten labels of only one adjective). Not so happy with that, but can't see any other way to do it, for now.

* Abuse "ID_CURVE" context for all falloff curves (this should solve some confusion issues, e.g. "sharp"...).
2013-03-28 15:41:43 +00:00
0237e7eef2 fix for loosing recent-files when running 'Copy Previous Settings'. 2013-03-28 02:29:10 +00:00
385c72f5f2 Merged changes in the trunk up to revision 55546.
Conflicts resolved:
source/blenderplayer/bad_level_call_stubs/SConscript

Partly reverted changes to intern/cycles/blender/addon/ui.py in revision 52899
to make it easier to merge trunk changes.
2013-03-24 12:13:13 +00:00
Lukas Toenne
309c487b96 Fix for the use_hidden_preview setting in SpaceNode. The application of this flag to new nodes got lost during merges at some point. Also is now in the python node.add_node operator as well as the C function. 2013-03-22 13:08:37 +00:00
ae25aa2210 svn merge ^/trunk/blender -r55372:55392 2013-03-18 22:37:04 +00:00
Lukas Toenne
4638e5f99a Merge of the PyNodes branch (aka "custom nodes") into trunk.
PyNodes opens up the node system in Blender to scripters and adds a number of UI-level improvements.

=== Dynamic node type registration ===
Node types can now be added at runtime, using the RNA registration mechanism from python. This enables addons such as render engines to create a complete user interface with nodes.

Examples of how such nodes can be defined can be found in my personal wiki docs atm [1] and as a script template in release/scripts/templates_py/custom_nodes.py [2].

=== Node group improvements ===
Each node editor now has a tree history of edited node groups, which allows opening and editing nested node groups. The node editor also supports pinning now, so that different spaces can be used to edit different node groups simultaneously. For more ramblings and rationale see (really old) blog post on code.blender.org [3].

The interface of node groups has been overhauled. Sockets of a node group are no longer displayed in columns on either side, but instead special input/output nodes are used to mirror group sockets inside a node tree. This solves the problem of long node lines in groups and allows more adaptable node layout. Internal sockets can be exposed from a group by either connecting to the extension sockets in input/output nodes (shown as empty circle) or by adding sockets from the node property bar in the "Interface" panel. Further details such as the socket name can also be changed there.

[1] http://wiki.blender.org/index.php/User:Phonybone/Python_Nodes
[2] http://projects.blender.org/scm/viewvc.php/trunk/blender/release/scripts/templates_py/custom_nodes.py?view=markup&root=bf-blender
[3] http://code.blender.org/index.php/2012/01/improving-node-group-interface-editing/
2013-03-18 16:34:57 +00:00
c1ceab1281 Merged changes in the trunk up to revision 55357.
Resolved conflicts:
release/datafiles/startup.blend
source/blender/editors/space_nla/nla_buttons.c

Also updated source/blender/blenkernel/intern/linestyle.c as a follow-up of
recent changes for the use of bool.
2013-03-18 00:48:59 +00:00
84b90c2968 Fix misguiding menu label and make tooltip more descriptive 2013-03-14 15:01:23 +00:00
7a94ad9408 More UI message i18n fixes and improvements... 2013-03-10 16:14:29 +00:00
66a2b84897 Merged changes in the trunk up to revision 54992.
Resolved conflicts:
release/scripts/startup/bl_ui/space_view3d.py
2013-03-03 15:07:49 +00:00
3b953c39c3 Use sys.float_info.max instead of float('inf').
Review comment from Campbell.
2013-03-02 18:27:50 +00:00
732f6f7bd0 fix for python exception getting the ID from an operator button:
attempting to select 'Online Manual' or 'Python Reference' from the UI of a running operator would give an error popup.
2013-02-25 04:19:28 +00:00
63feb31b35 fix for regression in 'object.shape_key_transfer' operator since BMesh merge, using the RELATIVE_FACE method failed. 2013-02-25 03:54:16 +00:00
b2dcaf1b40 Some UI messages fixes... 2013-02-24 18:04:10 +00:00
d120ec146d Merged changes in the trunk up to revision 54802. 2013-02-24 03:39:20 +00:00
93c3593d82 rigidbody: Don't abort connect operator if last selected object is active
Was silly logic error.
2013-02-23 23:40:51 +00:00
09b124fbd3 rigidbody: Add option to create chanis for the connect operator
Connects objects based on distance.

Based on a patch by Brandon Hechinger (jaggz), thanks!
2013-02-21 19:04:39 +00:00
9c08d1c649 rigidbody: code cleanup
Use bpy.data.objects.new() instead of the object.add() operator.
2013-02-21 19:04:36 +00:00
6869ea8e7e code cleanup: no need to use list(range()), just use range() 2013-02-21 17:12:08 +00:00
85b6bbe6cd ribidbody: Fix setting "Bake to Keyframes" start frame above 2
Simulation needs to run from the beginning to work properly.
2013-02-17 18:13:22 +00:00
92436c94d3 Merged changes in the trunk up to revision 54594. 2013-02-16 18:38:03 +00:00
ac9ec06ec1 Merged changes in the trunk up to revision 54421.
Conflicts resolved:
release/datafiles/startup.blend
release/scripts/startup/bl_ui/properties_render.py
source/blender/SConscript
source/blender/blenloader/intern/readfile.c
2013-02-10 10:17:59 +00:00
5d4df1a999 pep8 cleanup 2013-02-10 08:54:10 +00:00
4b8fe80e6e code cleanup: use exist_ok keyword arg to os.makedirs() rather then checking if the dir exists first. 2013-02-07 04:02:24 +00:00
b64858cade rigidbody: Use ARROWS empty draw type when creating constraints
Since we don't have constraint visualization yet, it's useful to see
where the individual axes point.
2013-02-05 21:51:20 +00:00
fe26492538 Merged changes in the trunk up to revision 54171. 2013-01-29 03:42:19 +00:00
2bae448ed5 fix [#34018] Delete Edge Loop undo works not als expected. 2013-01-28 12:42:38 +00:00
1c2d5eeeef fix for rigid body assuming active object would be selected, also don't check length of selected objects in poll function (getting and throwing away object selection array on every redraw is no good). 2013-01-28 12:24:25 +00:00
8445a56b48 use more conventional names in rigid body script. 2013-01-28 12:15:50 +00:00
753890d0e8 rigidbody: Don't show dialog for "Connect" operator
Use redo last panel to change settings now.
This is more in line with how the rest of blender operates.

Also fix tootip
2013-01-28 11:56:01 +00:00
67c2cd916d Made the tooltip for rigid body constraint "Connect" operator clearer
Previously it wasn't clear what it was supposed to be doing, or what was
required for it to work.
TODO: figure out why the operator redo settings panel won't work. The workflow
here is still a bit clunky.
2013-01-28 02:48:19 +00:00
a2e55171fe Bunch of fixes for UI messages.
Also generate rigid body constraint types in py bullet code from RNA enum values (simpler than having to sync the code when something is changed here!).

Side note: RNA API about icons still needs to expose icons for enum values, and conversion funcs between icon_name and icon_value!
2013-01-27 18:14:24 +00:00
556912792a Merged changes in the trunk up to revision 54110.
Conflicts resolved:
source/blender/blenfont/SConscript
source/blender/blenkernel/intern/subsurf_ccg.c
source/blender/makesdna/intern/makesdna.c
source/blender/makesrna/intern/rna_scene.c
2013-01-26 23:49:13 +00:00
204ec89bff rigidbody: Improve add/remove operators
Now all add/remove operators for rigid body objects and constraints
automatically add objects to the appropriate groups and create groups if they
don't exist yet.

This makes handling rigid bodies easier but doesn't take away functionality.
If users want to handle groups manually they just need to create them before
adding any objects.

The previous behaviour was confusing and was even considered to be a bug since
clicking on rigid body in the physics tab seemed to do nothing.
2013-01-25 06:26:38 +00:00
fd35d42bf4 code cleanup: dont use 'bpy.context' when 'context' is available 2013-01-23 07:52:31 +00:00
c48238fac6 rigidbody: Add generic spring constraint
Behaves like the generic constraint but has optional spring on each axis.

TODO: Add option to set rest length.

Patch by Markus Kasten (markus111), thanks!
2013-01-23 05:57:01 +00:00
47c96081d0 rigidbody: Add rigid body constraints
Constraints connect two rigid bodies.
Depending on which constraint is used different degrees of freedom
are limited, e.g. a hinge constraint only allows the objects to rotate
around a common axis.

Constraints are implemented as individual objects and bahave similar to
rigid bodies in terms of adding/removing/validating.

The position and orientation of the constraint object is the pivot point
of the constraint.

Constraints have their own group in the rigid body world.

To make connecting rigid bodies easier, there is a "Connect" operator that
creates an empty objects with a rigid body constraint connecting the selected
objects to active.

Currently the following constraints are implemented:
* Fixed
* Point
* Hinge
* Slider
* Piston
* Generic

Note: constraint limits aren't animatable yet).
2013-01-23 05:56:56 +00:00
cdc8ed24bf rigidbody: Add "Copy Rigid Body Settings" and "Bake To Keyframes" operators
Based on a script by liero, thanks!
2013-01-23 05:56:49 +00:00
2d8637946b rigidbody: Add rigid body simulation
Add operators to add/remove rigid body world and objects.
Add UI scripts.

The rigid body simulation works on scene level and overrides the
position/orientation of rigid bodies when active.
It does not deform meshes or generate data so there is no modifier.

Usage:
* Add rigid body world in the scene tab
* Create a group
* Add objects to the group
* Assign group to the rigid body world
* Play animation
For convenience the rigid body tools operators in the tools panel of the 3d view
will add a world, group and add objects to the group automatically so you only have
to press one button to add/remove rigid bodies to the simulation.

Part of GSoC 2010 and 2012.
Authors: Joshua Leung (aligorith), Sergej Reich (sergof)
2013-01-23 05:56:44 +00:00
350a776a52 fix for arrow keys being reversed in the snap menu (Ctrl+Shift+Tab)
also - when expanding rna enums into existing menus - don't nest inside a row/column.
2013-01-17 01:03:56 +00:00
c8df3db370 show a title in menus triggered by WM_OT_context_menu_enum, also show an icon when available. 2013-01-17 00:29:39 +00:00
97d62f0183 style cleanup 2013-01-15 23:15:32 +00:00
4f7465cac1 Minor UI message fix (from [#33101] Minor interface typo in User Preferences > Themes > Add Preset, patch by gdh, on IRC). 2013-01-15 08:19:30 +00:00
608f6eccce simplify WM_MT_context_menu_enum(), use expanded enum property. 2013-01-13 16:25:46 +00:00
4f2a65d34c remove TRANSFORM_OT_snap_type, use WM_OT_context_menu_enum instead.
add Ctrl+Shift+Tab shortcut for selecting snap type to the UV editor too.

also added icon drawing to WM_OT_context_menu_enum() so it gets the icons from the enum to draw them in the menu.
2013-01-13 16:18:35 +00:00
c36ae09d57 remove 2.57-windows workaround for WM_OT_copy_prev_settings 2013-01-13 04:26:02 +00:00
5e6917a18e patch [#33738] Extend Selection option unified and added to few operators
from Sebastian Nell (codemanx), with minor edits
2013-01-12 10:48:10 +00:00
94ae0232b0 Merged changes in the trunk up to revision 53729.
Conflicts resolved:
release/datafiles/startup.blend
source/blender/blenloader/intern/readfile.c
2013-01-12 02:02:53 +00:00
25cc959a9c fix [#33646] Deleting edge loops creates holes in uv map 2013-01-08 17:53:38 +00:00