Commit Graph

18549 Commits

Author SHA1 Message Date
0c64d6d71e Small tweaks to gesture drawing to show the filled selectable area.
Gives nice feedback for what will be selected, especially with lasso.
2010-01-06 04:52:13 +00:00
169626fa92 MSVC compile fix 2010-01-06 04:08:06 +00:00
4ba5b70d2f Node editor tweaks
* Cleaned up dead code, removed all traces of socket selection

* Modified border select so it's possible to have border select on mouse tweak.
With this change, by default, click+dragging on a node will select and move it, 
but click+dragging on empty space will border select.
2010-01-06 03:00:19 +00:00
7ec67dd43d Fix for PROP_MATRIX auto UI layout 2010-01-06 01:41:00 +00:00
06e6011ae9 Restored Compositor 're-render single layer' functionality (buttons on renderlayer comp nodes).
This works with operator properties - if you pass the name of a scene and renderlayer to 
the screen.render operator, it will render that layer as a single layer re-render.
2010-01-06 00:09:07 +00:00
4b202b562a fix for [#20352] Crash when rendering viewport 2010-01-06 00:02:37 +00:00
17bb2800ea Description attributes for macros too 2010-01-05 20:32:20 +00:00
d5e3c5482f Increased minimal value for Point Density Texture "Radius" from 0.01 to 0.001. 2010-01-05 20:30:40 +00:00
3b5014c69b Python descriptions were not getting used in tooltips. 2010-01-05 20:19:54 +00:00
62e14cdcb9 Broke DNA yesterday (stupid sdna can't use macro for length).
Only affected user preferences (all .B25.blend saved after revision 25726 would crash on load)
2010-01-05 20:18:45 +00:00
d51e0594fb sanity check that prevents crashing when syncing poses,
attempted to do a partial sync with pose mode however this seems not easy at all since connected data gets lost, parents are invalid etc.
2010-01-05 19:34:19 +00:00
0a0d43a926 Merge -c 25001,25310,25311,25638,25746 from COLLADA branch into trunk. 2010-01-05 17:42:01 +00:00
06d548bd6f COLLADA branch: bone anim export works. Export-import roundtrip is possible.
Importer now takes mesh bind position into account.

TODO: read/write object-level anim on armatures and fix memleaks.
2010-01-05 16:07:10 +00:00
73f84b24fc Particles:
* Fix crash in mirror tool.
* Added X Mirror option back to the UI, flag is now same as the
  one for edit and paint modes, stored in the mesh.
2010-01-05 15:23:09 +00:00
9a3362c84f BUGFIX: revision 25736 (about 3 hours ago) introduced a problem in SDNA
for drivers, which will cause files that include drivers and saved since
then to crash on load, and loading existing files to crash as well. This
commit fixes that problem. So, don't use builds from revision 25736-25743.

The problem is this line, SDNA does not support parsing #defines:

DriverTarget targets[MAX_DRIVER_TARGETS];
2010-01-05 14:56:48 +00:00
a1034a0526 Fix #20571: run script operator crashes in 3d view. 2010-01-05 14:27:13 +00:00
d16547ab73 Alt+B view clipping is now taken into account properly for sculpt, particle
edit and snapping, by clipping the view ray.
2010-01-05 14:26:38 +00:00
01b762e846 fix for bpyob.foreach_set(), when the list is empty 2010-01-05 13:55:51 +00:00
cc72f7e1b1 Revert previous preview render commit, causing some problems 2010-01-05 12:14:18 +00:00
b6598ed710 Quick fix for layout of Transform Channel var type, since on smaller regions, the widget sizes were too small to be useful. 2010-01-05 12:12:26 +00:00
05cddaa280 Quick fix for previous commit - changing order of items in the variable type menu to make it easier to use the transform one.
Also, forgot to mention in previous commit that I tweaked the path-renaming code to only rename driver targets that were being used, and commenting out some code there that wouldn't work...
2010-01-05 12:03:32 +00:00
6fb1d0e6a3 More Driver Fixes:
* Fixed Driver version-patching code to work correctly again with the new system.

* Fix for bug #20484, by adding a new driver variable type ('Transform Channel') which makes it easier to use object/bone transforms as in the past. The main differences with using this (compared with the 'Single Prop' type) are that this allows for 'final' transforms to get used instead (i.e. constraints are also taken into account), and also that this variable type can only be used for transforms (more limited scope -> less flexibility -> point-n-click goodies can follow). Mancandy now loads correctly again.

* Added toggle for local vs worldspace transforms when working with Rot/Loc Diff variable types, and also for the newly added Transform Channel

* Removed some dead code from sequencer...
2010-01-05 11:59:12 +00:00
cce1d178b8 obscure feature: Display Custom Bone Shape at another bones transform.
Brecht and I took a fair bit of convincing on this one however Cessen was jumping through hoops to do without this feature.
Having the shape being an external mesh deformed by its own armature, which were both hidden but in the same layer *(so the depgraph would update them).
Without this some of the bones in the rig also dont make much sense when animating with.
2010-01-05 11:47:43 +00:00
52a2b82852 speedup for driver execution, use PyUnicode_InternFromString() for variable names, cache hash and string -> unicode conversion for driver variables. 2010-01-05 10:54:54 +00:00
d16ea70f51 * Modifications to node editor 'make links' tool, after some requests by Soenke
Now it automatically decides how to connect the nodes up, based on the node positions. This lets you do fun stuff like in this video: http://www.vimeo.com/8548698
2010-01-05 06:49:29 +00:00
6e6560d924 Macro: insert macro properties into sub operator properties when run (this enables you to set a parameter on the macro itself and have the operator it runs use it). Note that macro properties are not initialized from its operators yet, you have to add them manually. Also, this isn't really nice if two operators in the macro have the same property. 2010-01-05 03:31:57 +00:00
22c32973e7 IDGroup utility function to copy a group inside another one 2010-01-05 03:29:41 +00:00
8f3db6bb24 Rename extrude macro "Extrude and Move" (less confusion with the Extrude operator that just creates geometry and doesn't move it) 2010-01-05 03:26:11 +00:00
3398dd032b Added render layer 'enable' toggles for render layer list view 2010-01-05 03:09:11 +00:00
5838c80038 More "Window" terminology corrections 2010-01-05 03:06:02 +00:00
02cf88464d Macro used wrong length for idname (also use OP_MAX_TYPENAME more often so it doesn't blow up if changed) 2010-01-05 03:01:04 +00:00
0b4627c5d6 More specific notifiers for preview render jobs 2010-01-05 01:59:37 +00:00
665011e410 Fix for some confusing terminology: Window type -> Editor type
Correct hierarchy of terminology should be:
* Window (OS level window with borders)
* Area (top level subdivision in Blender UI), containing an
* Editor (actual UI functionality such as 3D View, Properties)
* Region (subdivision of an area, i.e. a header, a properties panel or toolbar)
2010-01-05 00:45:05 +00:00
e90b6eefb1 patch from Benoit Bolsee (ben2610) for 4 bugs in report [#20527] Several bugs in RNA
from the report...


# bug 1. UV properties are not raw editable but are reported 
#        as RAW_TYPE_INT by RNA causing wrong conversion 
#        internally (bpy_rna.c line 2205)
# bug 2. raw update of UV coordinates crash blender (rna_access.c line 252)
mtfaces.foreach_set("uv", rawuvs)
# workaround:
#for i in range(int(len(faces)/4)):
#   mtfaces[i].uv = uvs[i]

# bug 3. raw update of non-array property fails (rna_access.c line 2270)
mfaces.foreach_set("material_index", mats)
# workaround:
# for i in range(int(len(mfaces))):
#    mfaces[i].material_index = mats[i]

# bug 4. It is not possible to add a vertex color layer using mesh API.
me.add_vertex_color()
# no workaround...
2010-01-04 22:30:09 +00:00
7f03297fc8 grease pencil 'Only Endpoints' option wasnt working when the entire zbuffer was filled. 2010-01-04 21:37:09 +00:00
a9861e3381 Durian Request: Drivers Recode
Highlights:
* Support for Multi-Target Variables
This was the main reason for this recode. Previously, variables could only be used to give some RNA property used as an input source to the driver a name. However, this meant that effects such as Rotational Difference couldn't be used in conjunction with other effects and/or settings to achieve the powerful results. Now, a variable can take several input targets, perform some interesting operations on them, and spit out a representative value based on that.

* New Variable Types
With the introduction of multi-target variables, there are now 3 types of variable that can be used: single property (i.e. the only type previously), Rotational Difference (angle between two bones), and Distance (distance between two objects or bones).

* New Driver Types
In addition to the existing 'Average', 'Sum', and 'Expression' types, there is now the additional options of 'Minimum' and 'Maximum'. These take the smallest/largest value that one of the variables evaluates to.

* Fix for Driver F-Curve colouring bug 
Newly added drivers did not get automatically coloured in the Graph Editor properly. Was caused by inappropriate notifiers being used.


Notes:
* This commit breaks existing 2.5 files with drivers (in other words, they are lost forever). 
* Rigify has been corrected to work with the new system. The PyAPI for accessing targets used for the variables could still be made nicer (using subclassing to directly access?), but that is left for later.
* Version patching for 2.49 files still needs to be put back in place.
2010-01-04 21:15:45 +00:00
bed3c5254f pyrna array slice assignment
- accept any sequence
- disallow deleting & resizing via slices
2010-01-04 20:53:52 +00:00
0525829735 transform:
Rotation operator now saves axis of rotation (when not using a constraint). Better for operator redo and tweak (would use a Z axis because of matrix init)

Also fix crash in Translation operator redo and tweak (rv3d is not always available).
2010-01-04 20:49:42 +00:00
a325b8b3b9 bugfix: macro redo could crash because of not nulled freed pointer. 2010-01-04 20:18:13 +00:00
29f90af19c Fix: curve reset for brushes now gives proper smooth curve as default,
also moved brush curve presets code into curvemapping code.
2010-01-04 17:28:37 +00:00
8af456313a dupli faces inherit scale wasnt using the right flag internally.
renamed...
 dupli_frames_no_speed --> use_dupli_frames_speed
 dupli_verts_rotation --> use_dupli_verts_rotation
 dupli_faces_inherit_scale --> use_dupli_faces_scale
2010-01-04 17:27:23 +00:00
0e37b49a2c Sculpt: fix, disable border/circle/mouse select operators in sculpt mode. 2010-01-04 17:03:44 +00:00
5dd7b4d490 Sculpt:
* Fix #20482: grab brush + size pressure sensitivity don't work
  together, disabled the pressure sensitivty for that case now.
* Fix for smooth brush messing up mesh sometimes, smooth factor
  is now clamped to reasonable range.
* Fix #20449: smooth brush + mirror modifier could crash.
2010-01-04 16:53:32 +00:00
4faf36e3ad Added OpenGL debugging function to print state information, was using this as
a patch here for a while but might as well commit it.
2010-01-04 16:28:59 +00:00
d92a6f140d copy modifiers, as "Link Modifiers" - in Ctrl+L menu. difference between copy and link is vague especially since particle systems are ID data. 2010-01-04 16:26:07 +00:00
589b2b4ca8 object.group_users, object.scene_users
utility functions to find the groups and scenes this object is used in.

button to set the group location from the cursor (UI is horrible but not any nice place to add?)

smarp project would fail if there were linked meshes in the scene, made ID.tag ignore the library, so you can tag linked data since its only for tools to use.

normalize the vertex normal before setting and use inline vector functions.
2010-01-04 15:37:22 +00:00
61a8f370f5 patch from Guillaume Bouchard for setting vertex normals, (lost when existing editmode but still useful in some cases) 2010-01-04 15:25:21 +00:00
d077ea6c6c use a smaller threshold for mesh mirror, workaround for sintels face.
Better solutions could be...
- use a tool to set mirror locations (did a script for this in 2.4x), then run this if locations get messed up..
- find the closest mirror vertex, would be slower
- have a configurable threshold.
2010-01-04 14:59:53 +00:00
addd07582b check if newlibadr returns a valid pointer when running do-versions on animviz data 2010-01-04 14:22:22 +00:00
d1da5cb99a support for rna functions returning mathutils types - so object.rat_cast() returns Mathutils vectors rather then tuples 2010-01-04 13:29:55 +00:00