Commit Graph

28291 Commits

Author SHA1 Message Date
Sergey Sharybin
f9fb95b9c1 Made some function from DerivedMesh.c be avaliable from other modules.
Some naming changes to make naming more uniform. No functional changes.

It's necessery for further crazyspace changes and improvenments.
2011-02-11 15:15:35 +00:00
Janne Karhu
dcf7642f76 Bug fix for problem 2 in [#25973] Bake End Frame Not Configurable
* External caches didn't load for smoke straight away. Smoke caches store all necessary info in every file, so no need to try to look for an info file.
2011-02-11 14:59:19 +00:00
Campbell Barton
c50bf404d2 patch [#25978] mathutils fixes for bpy_types.py and vertexpaint_dirt.py
from Filiciss Muhgue (filiciss)
2011-02-11 12:30:17 +00:00
Campbell Barton
875f554cff patch [#26030] Debian spec fix (Patch for #26028)
from Shinsuke Irie (irie)
2011-02-11 10:29:47 +00:00
Lukas Toenne
69e72ea427 Removed the internal_select parameter from ntreeCopyTree. This was used just in one place when duplicating nodes, which is not an actual copying of the tree. The node duplicate operator now copies selected nodes itself. 2011-02-11 09:37:58 +00:00
Campbell Barton
a3d142fce0 update pacman spec for newer python and match naming convention to debian spec.
also pre-compile python modiles.
2011-02-11 09:28:11 +00:00
Lukas Toenne
9fea58ca91 Made group label callback function static. 2011-02-11 07:46:06 +00:00
Campbell Barton
7f6946d4f7 add torus script wasnt registering. 2011-02-11 03:42:36 +00:00
Campbell Barton
65b922ad88 cls.is_registered() class method for python subclasses of internal types.
Synonymous with ('bl_rna' in cls.__dict__)
2011-02-11 02:40:14 +00:00
Campbell Barton
17efeb310d bpy.utils.register_module() generator could go into eternal loop. 2011-02-11 01:27:00 +00:00
Campbell Barton
2f4f046b6f UI functions added to existing UI classes (operators adding their own menus for eg),
would stop the entire menu from drawing if they raised an exception.

now print the exception and continue.

Also added a verbose argument for bpy.utils.(un)register_module() to help test whats being registered.
2011-02-11 01:12:01 +00:00
Campbell Barton
b1cdf5c344 use weak references for the internal metaclass typemap,
this should help with blender leaking memory with python classes though the bug is still not fixed.
2011-02-11 00:39:07 +00:00
Campbell Barton
fb8c135584 minor python register changes.
- KeyingSetInfo classes are now collected like Panels, Operators etc so bpy.utils.register_module() can be used.
- move bpy.types.register() to bpy.utils.register_class
2011-02-11 00:11:17 +00:00
Dalai Felinto
8fd81ab9e6 BGE: frame start/end in action/fcurves/shapekey to support floats
after discussion over the mailing-list it seems that it really makes no sense to restrict that. Specially since we have the "Property" playback mode that usually will be a float.

Since there is no need for do_version or whatoever I don't see a problem. Any Thoughts? Maube to allow it only through the Python API?
2011-02-11 00:03:26 +00:00
Campbell Barton
4612034cf4 patch [#25809] Auto-Registration as utility function.
This removes auto-registration, committed by Martin r30961.
Realize this is a contentious topic but Brecht and myself both would rather opt-in registration.

TODO:
- addons need updating.
- class list will be modified to use weakrefs (should have been done for existing system too).
- will move bpy.types.(un)register functions into bpy.utils.(un)register_class, currently including these functions in a type list is internally ugly, scripts which loop over types also need to check for these.
2011-02-10 23:48:22 +00:00
Lukas Toenne
46bb5643b7 Different method for blur node aspect correction. Now the user can still set different sizes for x/y blurring in relative mode, but choose to use aspect correction on either of the axes. 2011-02-10 20:54:02 +00:00
Lukas Toenne
cbe53cc48d More options for the blur node filter size. This can now be pixel based or relative to both axes or just either width or height. 2011-02-10 18:54:49 +00:00
Ton Roosendaal
f7595e9882 Bugfix #26013
Good discovery this one. 
It appeared that "pose mode" changes were not registered in our undo system.
That way the first operator you try to redo after exit posemode fails.
2011-02-10 17:23:00 +00:00
Ton Roosendaal
d505b745fc Bugfix #26001
Adding a byte rect to float ImBuf was always freeing the mipmap levels.
Removed this convention since it crashes renders + image texture draw.

Proper ownership handling of ImBuf is high on the wish list :)
2011-02-10 15:47:55 +00:00
Campbell Barton
d240206c88 fix for crash with GLSL material when image couldn't be loaded.
also quiet pep8 warnings.
2011-02-10 14:59:17 +00:00
Campbell Barton
1817a045b4 mesh validation remove duplicate faces didn't always work, now it _should_ all work correctly. 2011-02-10 14:13:13 +00:00
Campbell Barton
7daabec534 mesh validation: bugfix for removing doubles, another fix coming... 2011-02-10 12:34:52 +00:00
Joshua Leung
763e8d0bec Bugfix [#26004] compositor: backdrop zoom factor too small
The backdrop zoom factor for new node-editor instances was not set
(i.e. was default initialised to 0). Now, this gets set to 1.0.

Also, set the property default in RNA to match this.
2011-02-10 10:24:05 +00:00
Joshua Leung
5dffb64675 Bugfix [#26002] Outliner Visible layers + Single object & data = broke
conections

It seems that some of the Outliner hacks used while building the tree
was causing problems, as Make Single User (and potentially other code
working with ID-data, specifically with the "newid" value there) was
making use of the variable used there for other purposes, leading to
memory corruption.

This bug also occurred in 2.4x, though when I tested there, it crashed
immediately.

Ton, you may want to double-check this bug!
2011-02-10 10:14:12 +00:00
Joshua Leung
fc3b29b637 Small consistency fixups 2011-02-10 09:39:55 +00:00
Campbell Barton
264c8c2162 mesh.validate() now returns True if any corrections were made.
tested that correcting invalid meshes works by generating random meshes and checking that only the first call to mesh.validate() makes changes.

found 2 bugs in mesh validation.
- face sorting array wasn't assigned correct indices.
- removing invalid edges used wrong comparison.
2011-02-10 09:29:31 +00:00
Campbell Barton
0356e3b69f script to build debian packages directly from svn, using blender version and svn rev for package name. 2011-02-10 07:22:56 +00:00
Campbell Barton
1eb7d3bd9e debian package spec [#26007] Debian spec
by Dan Eicher (dna)
2011-02-10 06:11:16 +00:00
Joshua Leung
c397e8b4e0 Bugfix [#25831] Sorting channels broken
Recoded animation channel sorting code. In particular, the old code
didn't handle "islands" of selected items well (i.e. a chain of
several connected items in a row), with some of these cases having
unpredictable results.

There were also some bugs in the way some of the rearranging methods
worked, allowing some invalid operations to be performed. Some of
these probably triggered errors such as some channels getting stuck,
and so on.
2011-02-10 05:15:05 +00:00
Campbell Barton
30ada8fdd3 fix [#26003] Twice applied modifier with Convert to mesh with several multi-user objects
convert_exec could do with a re-write, getting quite confusing.

update md5's for ctest results and some renaming in mesh_validate code.
2011-02-10 04:48:49 +00:00
Michael Fox
0ebf448bee small fix so older files are loaded with merge on in the mirror modifiers 2011-02-10 00:44:26 +00:00
Daniel Salazar
cbe544fb6c Set default for merge mirror to ON 2011-02-10 00:25:00 +00:00
Michael Fox
446299db1c small feature request from zanqdo, merging in the mirror modifier is now optional, simply turning town the merge limit just simply do anything, and merging is off by default as this seems more logical behaviour 2011-02-10 00:05:03 +00:00
Sergey Sharybin
ea50e5f587 Update mesh normals when undoing sculpt stroke to prevent shading
artifacts in some cases (enter edit mode/disabling modifiers after undo)
2011-02-09 15:38:49 +00:00
Campbell Barton
97c57abfa3 fix [#25994] Meshes with no vertices gets NaN location on setting origin to geometry 2011-02-09 15:32:39 +00:00
Campbell Barton
5aa72b8726 BKE_mesh_validate() now corrects invalid meshes (optionally), added access for python so it can correct for bad imported geometry - mesh.validate(). 2011-02-09 15:13:20 +00:00
Janne Karhu
38e5081839 Restoring the old behavior of switching texture context based on active tab:
* Once again switching to texture panel from material, world or lamp data tab sets the texture context automatically to the "parent context".
2011-02-09 11:03:11 +00:00
Campbell Barton
81a00cf2eb use static functions rather then defines for internal matrix__apply_to_copy() and similar.
+ other minor internal changes.
2011-02-09 09:20:17 +00:00
Campbell Barton
0884147698 fix [#25968] Crash on changing merge distance in array modifier with edgesplit modifier in chain 2011-02-09 04:45:53 +00:00
Campbell Barton
f6733d90e5 bugfix [#25523] Face extrude will crash Blender if array and subsurf modifier are added to mesh object
test_index_face() failed to fix indices like (6,0,0,6), making it (0,6,6,0).
2011-02-09 03:49:59 +00:00
Guillermo S. Romero
5e1eb9b4d3 SVN maintenance. 2011-02-09 03:48:40 +00:00
Campbell Barton
3e8ddef8e5 move validation into blender kernel so it can be called by internal modifier funcs more easily. 2011-02-09 02:28:11 +00:00
Campbell Barton
30552f9f46 patch [#25972] blender-thumbnailer.py: GVFS support
from Shinsuke Irie (irie) with some minor edits.

Shinsuke's description from the tracker:
---
I have implemented GVFS framework support of blender-thumbnailer.py which allows some file managers like Nautilus and Thunar to show thumbnails in trash or network directories. If Python's gio module is available, the thumbnailer uses it to access to filesystems mounted via GVFS. This change shouldn't affect desktop environments other than GNOME and XFCE.

A function gvfs_open() in this patch is defined to solve a stupid incompatibility between Python file object and GIO Seekable object.

On Ubuntu 10.10, I confirmed thumbnails can be generated for file://, trash://, sftp://, and smb://.
2011-02-09 02:09:30 +00:00
Joshua Leung
4eb76a1a90 Graph Editor: Added option to turn off AA drawing for performance
gains when using really heavy files
2011-02-09 02:09:25 +00:00
Campbell Barton
fdf60ba4a6 mesh validation function to report errors and help debug bad data generated by modifiers.
detects...
- invalid vertex range for edges/faces
- duplicate indices in edge/face
- duplicate edges/faces in mesh
- missing edges data in faces

At the moment it doesn't correct errors, but eventually it will do this.
2011-02-09 01:27:46 +00:00
Michael Fox
2a67a126e8 Fix for rendering procedual bump maps, mapped in world space, since the new bump map kernel uses direction, this bug became a real issue, with bumps suddenly changing direction
Fix provided due to a long session on IRC with Morten S. Mikkelsen (sparky_)
2011-02-09 01:21:03 +00:00
Joshua Leung
f56d1a5e2c Old animation conversion code cleanups:
- Tidying up some inconsistent formatting
- Names of old IPO blocks are now included in the names used for new
actions. These are included after a "CDA:" prefix, (i.e.  "_C_onverted
_D_ata _A_ction:"), which makes it easier to browse through these
actions later.
2011-02-09 01:16:11 +00:00
Joshua Leung
99c1a9a427 Bugfix [#25987] Duplicated markers naming issue
One-liner fix - a missing "OPERATOR_FINISHED" on the select operator
was causing problems renaming markers and potentially with other
operations too!

To find this bug, I added debug method to dump the list of markers to
console. This has revealed some troublesome things about the way
markers are organised, which IMO need to be addressed.
2011-02-09 01:05:40 +00:00
Joshua Leung
adfbb83cdf Bugfix: When removing the "only insert for active keyingset" option
for Auto-keying from the UserPrefs, I forgot to remove the option from
the UI there.
2011-02-09 00:52:53 +00:00
Joshua Leung
aff23c92cc Bugfix [#25990] backward compatibility with ShapeKey Actions :: 2.49
-> 2.50

Actionified ShapeKey IPO-blocks (i.e. "Shape Key Actions") would have
an action channel with the hardcoded name, "Shape", and this action
would be assigned to Object level (although ShapeKey blocks had their
own IPO-block slot, only Objects could have actions, so actionifying
ShapeKey IPO-blocks would wrap a ShapeKey block's IPO's to an Object-
level action).

Hence, the path conversions code would wrongly interpret this action
channel as referring to a Pose Channel instead, thus creating some
invalid paths with a 'pose.bones["Shape"]' prefix wrongly getting
tacked on. To ensure that the converted animation can work out of the
box, a 'data.shape_keys' prefix is now used instead so that these
actions can still be Object-rooted while still being able to correctly
control the Shape Keys. This is because there's no easy way to
identify and then shift such action from Object-level to ShapeKey-
level within the conversion code. The consequence though is that such
converted ShapeKey actions CAN ONLY BE USED THROUGH OBJECT LEVEL (i.e.
via Action NOT ShapeKey editor).

Secondly, the Action/ShapeKey editor version patching code has been
modified so that if a ShapeKey editor view was active when loading an
old 2.4x file, the action gets cleared from the view. This is because
of this didn't make semantic sense: the ShapeKey editor is for
ShapeKey-rooted actions, while the Action Editor is for Object-rooted
actions. The converted files though let Object-level actions be shown
in either one.
2011-02-09 00:51:30 +00:00