Commit Graph

17386 Commits

Author SHA1 Message Date
Joshua Leung
20c424730e Spline IK: Rolling Control
Recoded the way that Spline-IK computes the x+z axes of the bones so that flipping artifacts are minimised, and the rotation of individual bones can be used to affect the results of the solution, as per requests from Cessen. 

The bone matrices are now computed normally, and then made to conform to the orientation + scaling imposed by the splines, using the Damped-Track method. Previously, the axes of the bones were calculated without regarding the prior orientation of other bones in the chain, which lead to "z-twists". 

Notes for further investigation:
- There appears to be some shearing that gets introduced now. Unforunately, I can't seem to isolate the cause of this, but I hope it's not going to become too much of a problem in general.
- Maybe inverse corrections for rotation will now be necessary when using transform tools?
2009-11-04 11:30:48 +00:00
Campbell Barton
46c8bfe151 Make Links (Ctrl+L) back
- split into 2 operators: object.make_links_data() & object.make_links_scene since they are quite different.
- added reusable functions RNA_group_itemf & RNA_scene_itemf which can be used for any operator that takes ID data (easy to add more types Mesh, Text etc)
- DummyRNA_NULL_items for dynamic items so each operator need not define its own empty enum.
2009-11-04 10:25:57 +00:00
Joshua Leung
b221e57fd2 Second try at fixing this... the props were still not getting initialised in many cases, but this time because those were using the exec() callbacks which didn't set this. This fix ain't that nice, but at least the old functionality works again like 2.4x. 2009-11-04 09:55:24 +00:00
Joshua Leung
de7da7c779 Bugfixes for Adding Objects:
* Auto enter EditMode for adding Armatures was broken
* Adding a camera no longer tries to enter editmode, even though that's invalid...
2009-11-04 09:45:37 +00:00
Brecht Van Lommel
7fad20eff8 Fix #19533: Autoupdate check box not working for UV/Image Editor. 2009-11-04 09:22:16 +00:00
Brecht Van Lommel
ae37d92dbf Fix #19742: shape key crashes for curve & lattice. 2009-11-04 09:20:31 +00:00
Brecht Van Lommel
834e8aa868 Fix bug #19749: browsing path in user preferences would crash. 2009-11-04 08:59:01 +00:00
Brecht Van Lommel
e9ce90c238 Fix bug #19699: point density texture doesn't save particle system.
Non-ID pointers in DNA can only point to data from own ID block, so
now instead it uses an index into the particle system list, but still
exposed as a pointer through RNA.
2009-11-04 08:44:42 +00:00
Matt Ebb
a799b6ee06 Fix for [#19745] displacement modifier is messing up texture coordinates when using an object for texture coordinates
Modifier was resetting object's imat to worldspace during render process, where it is assumed to be in camera space.
2009-11-04 05:31:42 +00:00
Matt Ebb
7699dcaab8 Fix for [#19460] (+) widgets to expand UI elements overlap other windows 2009-11-04 04:13:30 +00:00
Matt Ebb
183e698af8 Fix for [#19752] I cant get the particles to render as an object 2009-11-04 03:01:39 +00:00
Jens Ole Wund
2a8ef208b2 Soft bodies care for real time 2009-11-04 00:21:25 +00:00
Matt Ebb
c8ee492e7a Changed hand-generated RNA paths to quote strings used as collection indexes.
Previous method worked fine for Blender animation system, but this is more convenient for Python.
2009-11-03 22:07:15 +00:00
Campbell Barton
65f92c893e - remove UV mapping operator, call a header menu directly (so python can add items there)
- forgot to move bpy_sys.py last commit
2009-11-03 18:20:03 +00:00
Campbell Barton
6680dcd24a renamed bpy.sys to bpy.utils, since it used to be a attempt to replace pythons sys which is bundled now 2009-11-03 18:08:25 +00:00
Campbell Barton
e4f90d9379 quick port of smart project to 2.5x, no operator options yet 2009-11-03 17:51:22 +00:00
Martin Poirier
11c36d0ea5 Patch [#19799] Add trackball loop to rotate manipulator
by Adrian Winchell (slightly modified)

This adds a center circle (like translation and resize) to the rotation manipulator that triggers trackball rotation.
2009-11-03 17:44:12 +00:00
Campbell Barton
2a61c7fd89 error in last commit (wasnt writing NULL when no active property exists)
added id.tag so you can tag any library data - materials, meshes etc
2009-11-03 17:00:38 +00:00
Campbell Barton
b8b89d5ae4 active property for collections for things like scene.objects.active
will add more properties later
2009-11-03 16:07:29 +00:00
Campbell Barton
b3c8935b06 - Shift+F1 is append in 2.4x (not link). Lee asked it to be made the same.
- use OBJECT_OT_mode_set rather then OBJECT_OT_*_toggle, better for using report output for script input. OBJECT_OT_posemode_toggle and OBJECT_OT_editmode_toggle are called by OBJECT_OT_mode_set.
2009-11-03 11:00:10 +00:00
Matt Ebb
8cbad63c22 Fix [#19759] Point Density Texture
Use derivedmesh functions to get object vertices, rather than objectren verts (which can not exist if object is non-renderable)
2009-11-03 06:04:42 +00:00
Matt Ebb
918d07dd5d * Fix for bug [#19726] Cannot add FCurve to any option under the physics panel except cloth
I had to add some ugly RNA path finding code here, checking for all places these structs can possibly be reused. Can't think of a better way to go about this though with the path stored in the RNA type...?
2009-11-03 02:49:36 +00:00
Jens Ole Wund
5ff7cbd2f9 fixing minor issues
such as ignoring forward timing rule
2009-11-02 23:42:08 +00:00
Martin Poirier
eafd94e1bd Make transform axis constraint projection more robust (less flip).
It will still flip, but it now has a small buffer region before it does that which returns a really large positive or negative value. This still only happens in perspective cases, when moving along an axis that is nearly aligned with the view.
2009-11-02 19:37:18 +00:00
Campbell Barton
6bfcd5a811 how embarrassing! 2009-11-02 17:25:15 +00:00
Campbell Barton
072a39004e - "selected_pchans" is now at screen level context (not just view3d) so can use for adding bones to a group.
- separate assign to Y key rather then Ctrl+4
2009-11-02 17:24:06 +00:00
William Reynish
67fd40f54c Enabled theme editing in user preferences. There's still no way to Load/Save/Add/Delete though.
Code could be optimized greatly, but found it hard to get it to work nicely with auto-generated code.
2009-11-02 17:18:17 +00:00
Campbell Barton
54d7ca9e3b armatures didnt allocate enough memort for make_trans_verts
result in blender crash when pressing numpad del.
2009-11-02 17:15:14 +00:00
Campbell Barton
bd88c3e944 moving nodes would crash because it ran object update functions 2009-11-02 16:55:06 +00:00
Campbell Barton
8557f617f0 Pose bone menu (Ctrl+G) wasnt working, replace with a reference to python menu. 2009-11-02 16:39:45 +00:00
Campbell Barton
1d9f90ed42 - all add object operators now take view_align as an argument, and enter_editmode where its used. Makes running the operator from python pradictable without having to know the user prefs.
- missing return in function
- python error in view3d (assumed active object exists)
2009-11-02 16:07:49 +00:00
Damien Plisson
9ea97203ae Mac :
- Updated CMake files for building with openCollada

Update of the 10.5 libs including openCollada is coming in next commit
2009-11-02 14:03:13 +00:00
William Reynish
9e9ab1a227 *Added subdivide to armature toolbar, and gave it a hotkey (W)
*Fixed some remaining icon issue in the shape key properties
2009-11-02 13:20:14 +00:00
Matt Ebb
a87c16947d * Set some custom empty draw types on adding force fields, where relevant 2009-11-02 11:37:35 +00:00
Matt Ebb
4b8c64246e * Added a new 'bone constraint' property editor icon and panel titles to distinguish bone constraints from object constraints
It was a bit too confusing and people were easily getting them mixed up.
2009-11-02 11:36:45 +00:00
Damien Plisson
3b43a5228e Mac / COCOA :
- revert tiff load/save to use standard libtiff (to ensure 100% colorimetry & alpha interpretation across platforms)
- include patch #18720 to fix load of libtiff dynlib (if present on system)
2009-11-02 11:20:31 +00:00
Campbell Barton
da1765765b many operators uses Bases, for the python to set operators context python too needs to be able to access bases.
- added scene.bases (like scene.objects)
- renamed group create operator.

Example
 scene = bpy.data.scenes[0]
 C = {}
 C["scene"] = scene
 C["selected_editable_bases"] = [scene.bases[2], scene.bases[3]]
 
 bpy.ops.group.create(C)


Also made operator fake modules not return __call__ (reported by Stani, fixes autocomp. bug)
2009-11-02 11:14:22 +00:00
Matt Ebb
da6081f266 Fix for bug [#19668] Blender freezes if step size 0 is used for a volumetric material -- limit the minimum step size 2009-11-02 10:30:51 +00:00
Matt Ebb
3b910a7809 Fixed typo in key display code, was making the shortcuts for [ and ] (used in bone selection) inverted in the menu shortcut hint 2009-11-02 10:20:06 +00:00
Joshua Leung
334a80a4f8 Spline IK Experimental Features:
1) "Even Divisions" - This option ignores the length of bones when considering how they should fit along the curve. This is useful for getting a smoother curve fit without having to worry about getting the bone lengths spot on. By default, this is disabled.

2) "Keep Max Length" - This option prevents the bone chain from extending past its natural length when the spline is stretched beyond that length. When the spline length is substatially shorter though, this bones get scaled to zero; making this option possibly useful for doing "growing tips". 
This is essentially a 'no scale' option, although the behaviour when the curve is shorter is really a compromise since the curve cannot be accurately satisfied + left intact without some scaling being applied due to the way this works.

3) "Radius to Thickness" - The average radius of the spline between at the head+tail of each bone determines the x+z scaling of the bone.
2009-11-02 10:04:37 +00:00
Matt Ebb
27580daf27 Added back texture filter/minimum settings to image texture properties 2009-11-02 09:31:55 +00:00
Campbell Barton
dd130350d5 make python operator instances subclasses of the wmOperator when called.
was subclassing the operator's type before.

Removes the need for passing self.__operator__, can pass self directly.
2009-11-02 08:32:00 +00:00
Campbell Barton
c90db8d270 last commit broke running python operators
note that you can still set rna properties like this.
 bpy.data.__dict__["var"] = 1
 print(bpy.data.var)

but this is only stored for the python objects lifetime and not actually attached to blenders data
2009-11-02 00:20:07 +00:00
Joshua Leung
e8b5effdff Spline IK Bugfixes 1:
* Fixed crash when reloading a file with Spline IK and/or Damped Track constraints. The targets for these constraints weren't getting relinked.
* Fixed problems with removing Spline IK making some bones unable to be manipulated.
* Jotted down some comments in the Spline IK code noting places where additional tweaks will be added.
2009-11-01 22:30:47 +00:00
Campbell Barton
a99157b20d rna structs would not raise an error when assigning invalid properties
netrender needed updating for this.
 hint, bpy.data is not a module
2009-11-01 21:53:45 +00:00
Martin Poirier
94209d58aa Simplify gimbal axis code and make gimbal orientation work correctly with parents (objects or pose bones). Works for all euler orders too, obviously. 2009-11-01 21:10:54 +00:00
Martin Poirier
7bb6e18f20 Fix view3d rna to work with new number of orientations (use constant instead of value, safer for future). 2009-11-01 20:17:30 +00:00
Martin Poirier
39021ac4ea after transform update didn't run because of stupid typo 2009-11-01 20:09:03 +00:00
William Reynish
29aea786cb Added proper icon for full screen mode. Would be nice to have this button eventually be right-aligned. 2009-11-01 18:05:01 +00:00
Martin Poirier
9cf155d012 Compile fix for too many arguments to uiItemO 2009-11-01 14:19:35 +00:00