Commit Graph

47594 Commits

Author SHA1 Message Date
Campbell Barton
5eef937436 modify previous api feature to tag functions as permanent, use nicer decorator style, eg:
# --------

import bpy
from bpy.app.handlers import persistent

@persistent
def my_func(scene):
    pass

bpy.app.handlers.frame_change_pre.append(my_func)
2011-11-03 09:13:47 +00:00
Campbell Barton
e2393d1109 ability to have permanent callbacks that stay active when new blend files are loaded.
this works by tagging functions, eg:

  def my_func(scene):
      pass

  bpy.app.handlers.permanent_tag(my_func, True)  # <-- important bit
  bpy.app.handlers.frame_change_pre.append(my_func)
2011-11-03 06:53:52 +00:00
Campbell Barton
7d7977658a fix for warning on osx 2011-11-03 04:58:11 +00:00
Campbell Barton
887e1fed99 fix regression [#29076] 16bit Tiff save broken in Blender 2.60 2011-11-03 03:51:48 +00:00
Campbell Barton
1f291a69c1 correct spelling mistakes 2011-11-03 03:00:45 +00:00
Campbell Barton
5fbf3b813c svn merge -r41458:41480 ^/trunk/blender 2011-11-02 23:16:10 +00:00
Campbell Barton
4293f4738c patch [#28947] Patches for #28943 (Support for XDG Base Directory Specification)
from Cosme
2011-11-02 22:00:22 +00:00
Brecht Van Lommel
723e129252 Depsgraph/Python: callbacks and properties to detect datablock changes
* Adds two new python handlers: scene_update_pre() and scene_update_post()
  These run before and after Blender does a scene update on making modifications
  to the scene.
* Datablocks now have an is_updated property. This will be set to true in the
  above callbacks if the datablock was tagged to be updated. This works for the
  most common datablocks used for rendering: object, material, world, lamsp,
  texture, mesh, curve.
* Datablock collections also have an is_updated property. If this is set, it
  means one datablock of this type was added, removed or modified. It's also
  useful as a quick check to avoid looping over all datablocks.
* RenderEngine.view_update() can also check these properties, for interactive
  viewport rendering.

http://wiki.blender.org/index.php/Dev:2.6/Source/Render/UpdateAPI
2011-11-02 20:56:52 +00:00
Brecht Van Lommel
ac52c79cb1 RenderEngine/Nodes: system to check for shading nodes compatibility
* Scene.use_shading_nodes property to check if RenderEngine is using new shading
  nodes system, and RenderEngine.bl_use_shading_nodes to set this.
* Add mechanism for tagging nodes as being compatible with the old/new system.
2011-11-02 19:24:30 +00:00
Brecht Van Lommel
30f1f28a8a Nodes: add support for shader nodes on world and lamps, in addition to materials.
The internal render engine does not support them, and they are not accesible in
the UI yet, but cycles will use them.
2011-11-02 18:55:32 +00:00
Brecht Van Lommel
97a0ae3e1b RenderEngine api: support for viewport rendering, details here:
http://wiki.blender.org/index.php/Dev:2.6/Source/Render/RenderEngineAPI

* This adds a Rendered draw type in the 3D view, only available when
  the render engine implements the view_draw callback.
* 3D view now stores a pointer to a RenderEngine.

* view_draw() callback will do OpenGL drawing instead of the viewport.
* view_update() callback is called after depsgraph updates.
2011-11-02 18:20:53 +00:00
Brecht Van Lommel
2f453773f6 Cycles: svn merge -r41266:41467 ^/trunk/blender 2011-11-02 16:17:05 +00:00
Nicholas Bishop
42ce1d5943 Sculpt cleanup
Replace a use of bglMats in sculpt with ED_view3d_* functions().
2011-11-02 16:02:01 +00:00
Nicholas Bishop
11d05b379d Small sculpt cleanup
Since frontface() is always called with tex_strength(), moved the call
to frontface() into tex_strength (required a few new normal
parameters.)
2011-11-02 15:35:16 +00:00
Brecht Van Lommel
02fae3440c Cycles: RenderEngine api code tweaks, also ensuring it's backwards compatible. 2011-11-02 15:15:45 +00:00
Thomas Dinges
e1594ebb3c World Mist
* Removed some more unused stuff and marked as deprecated.
2011-11-02 14:36:21 +00:00
Brecht Van Lommel
e07389ccb8 RenderEngine: steps towards implementation of this proposal:
http://wiki.blender.org/index.php/Dev:2.6/Source/Render/RenderEngineAPI

* RenderEngine is now a persistent python object that exists and retains
  properties as long as a frame is being rendered. This is mostly useful now
  that more than one callback will be added.
* Added update() callback that should ideally be used to export the scene,
  leaving only the rendering to the render() callback. This is not required to
  be used at this point, but separating this will make things more thread safe
  later on.
* Added tag_redraw() and tag_update() functions that will be used for viewport
  rendering.
* Internal change: status text is now retained after update_status calls.
2011-11-02 14:33:14 +00:00
Thomas Dinges
aa363800b0 World Stars:
* Remove remaining star color code, was unused. Marked as deprecated in DNA.
2011-11-02 14:28:16 +00:00
Brecht Van Lommel
79a389ee37 RenderEngine: add .is_animation and .is_preview properties to detect if it's
an animation or preview render that is being done.
2011-11-02 13:36:28 +00:00
Brecht Van Lommel
3d35e004d3 Related to #29092: make the working of the Mist Intensity option more clear in
the user interface.
2011-11-02 12:18:51 +00:00
Miika Hamalainen
b3dd11821f Dynamic Paint:
* Some fixes and tweaking for the previous commit.
2011-11-02 11:32:22 +00:00
Campbell Barton
e29aa363f2 new math function: Quaternion.to_axis_angle().
add in safety checks for inf/nan values which could happen in some cases.
2011-11-02 09:13:04 +00:00
Campbell Barton
439f57d361 svn merge ^/trunk/blender/ -r41453:41458 2011-11-02 06:19:04 +00:00
Campbell Barton
5c5bb9276e 2 bmesh todo's:
- sample weight
- weight paint vgroup menu
2011-11-02 00:55:02 +00:00
Campbell Barton
43e297c0c0 minor cleanup for weightpaint fill
- SCE_SELECT_FACE and SCE_SELECT_VERTEX are mutually exclusive, use a macro to get a single value from them.
- was allocating an array for no reason.
2011-11-02 00:51:21 +00:00
Nicholas Bishop
b60f60453b Function convertViewVec() contained some piece of code duplicated four
times, pulled out into separate function and cleaned up a bit. Should
be no functional changes.

Review link: http://codereview.appspot.com/5308073/
2011-11-02 00:17:37 +00:00
Campbell Barton
9a52069524 ctrl+click mesh extrude wasnt re-tesselating the mesh 2011-11-01 23:38:34 +00:00
Campbell Barton
9be43762bc svn merge -r41431:41453 ^/trunk/blender 2011-11-01 23:24:51 +00:00
Campbell Barton
d7de4d28dd quiet some warnings. 2011-11-01 22:51:10 +00:00
Thomas Dinges
27ffb5556a Bugfix for [#29055] node editor / texture node / scale node
* Node Vector sockets, don't have a PROP_FACTOR any longer.
2011-11-01 22:21:21 +00:00
Thomas Dinges
32b34d631a Space types:
* Some cleanup, removed references to already deleted *_header.c files.
* Marked SpaceScript as deprecated and removed header. Will keep space for now though, as some script operators are there and Campbell might want to re-use the space later.
2011-11-01 20:14:58 +00:00
Thomas Dinges
ea2f7c907c == Removal of SpaceSound ==
* Removed old, unused Space Sound space
* Removed data struct and Theme settings
* Old files with an open Audio window will be loaded as Info Space
2011-11-01 19:48:45 +00:00
Andrea Weikert
785de4cbfc == Cleanup of SpaceImasel ==
* removed struct for SpaceType and all usages
* SPACE_IMASEL in enum nees to be kept to identify it in old files
* it is replaces with SPACE_EMPTY on load, which is overridden by SPACE_INFO which has same struct members
* also removed theme settings
2011-11-01 18:27:09 +00:00
Sergey Sharybin
c70cde6f94 Fix #29124: Modifying mesh with mirror and solidify modifiers crashes blender
It is corrected fix for #29089 (svn rev 41409). That fix wasn't correct because
it used to set face number from derived mesh on which solidify is applying which
isn't correct for case of constructive modifiers applied on base mesh before
solidify modifier.

Actually nothing special should be performed here to set needed original index
because of ORIGINDEX layer is getting copyed automatically when when copying faces.
2011-11-01 17:43:30 +00:00
Andrew Wiggin
2241eaddf5 Reverting r41409 (broken fix for #29089)
r41409 can cause a crash if you delete a face of a mesh that has subsurf & solidify modifiers active
2011-11-01 17:06:10 +00:00
Brecht Van Lommel
d55298ee3c Fix #29109: bpy.ops.render.render() with scene parameter missed compositing,
previous bugfix needed a bit more refining.
2011-11-01 14:51:44 +00:00
Campbell Barton
85e0609c54 use char for BMHeader type and flag (saves 2 bytes per edge/loop/vertex/face)
also found mouse_mesh_shortest_path was casting edit selecton to the wrong type.
2011-11-01 14:36:23 +00:00
Campbell Barton
a1e95e2e18 replace as many uses of BM_Get/SetIndex as possible with tagging with a temp flag, some uses need index values to be set, so this will need more effort to replace (crazy space and solidify for eg). 2011-11-01 12:51:38 +00:00
Brecht Van Lommel
4b48a5a497 Fix #29101: 2D Tilt on Bezier Curve Bug?
Changing tilt for 2D curves doesn't really hurt, just makes things not so
clear tosee what's going on because you're changing value which isn't used
at all for 2D curves. Disallwo to run TRANSFORM_OT_tilt operator for 2D curves.

Also made a correct fix for incorrect shortcut for tilt in 3D viewport toolbar,
it was really confusing to have almost the same operators (TRANSFORM_OT_tilt and
TRANSFORM_OT_transform with mode=tilt) in keymap. Better to use tilt operator
in toolbar.
2011-11-01 11:00:08 +00:00
Tamito Kajiyama
c72376fc04 Sorted modifier menu items in the alphabetical order in the Parameter Editor mode. 2011-11-01 09:53:30 +00:00
Campbell Barton
63eb94e504 rename BM_FLIPPED --> BM_TMP_TAG to use as a temp tag anywhere. 2011-11-01 09:48:20 +00:00
Tamito Kajiyama
ac6bdfb653 Added two stroke geometry modifiers: Parameterization and Guiding Lines. 2011-11-01 09:47:41 +00:00
Campbell Barton
dd8a575c22 correct header, for some reason gcc doesnt warn about this 2011-11-01 09:47:19 +00:00
Campbell Barton
c529631c1e uncommented particle mirror, tested and it works fine. 2011-11-01 09:21:23 +00:00
Campbell Barton
9aa901cccc svn merge -r41422:41431 ^/trunk/blender 2011-11-01 09:05:38 +00:00
Campbell Barton
2ad80bf3bb vertex group mirror
- now works in vertex select + weight paint mode.
- added option not to mirror all vertex groups.
2011-11-01 08:11:55 +00:00
Campbell Barton
bcdcbb65c1 macro to check if an object type supports vgroups 2011-11-01 06:45:36 +00:00
Campbell Barton
e3f03d72b6 added path traversal flag - BPATH_TRAVERSE_SKIP_MULTIFILE,
so path manipulation functions dont run multiple times on the same path in the case of sequence strips where the one directory is used as the base for many images.
2011-11-01 06:26:55 +00:00
Campbell Barton
b6e445a61f BMesh todo - mirror vertex groups back. 2011-11-01 05:43:35 +00:00
Campbell Barton
d4f1275585 subdivide smooth now works as in trunk.
- r35832 joeedh removed this with comment "removed the "smoothness" parameter (which never worked, anyway, even in trunk)", not sure I agree here... just because its not perfect doesnt mean its not working, anyway, to support in bmesh at the same level as trunk is not much effort.
- calculating the coordinates was being done on every shape key, I can see this could be useful to subdiv worked on all shape keys BUT the existing code didnt do this properly, for it to work right the normals would need to be updated for each shape key too when calculating smoothing, so now just calculate the new subdivided location and apply the difference to all other shape keys.
2011-11-01 05:17:46 +00:00