8 years agoCycles:
Thomas Dinges [Fri, 14 Jun 2013 14:29:00 +0000 (14:29 +0000)]
* Style cleanup for M_PI constants.
* Move Wireframe node into __EXTRA_NODES__ define

8 years agoFix for
Jeroen Bakker [Fri, 14 Jun 2013 13:56:00 +0000 (13:56 +0000)]
Fix for
 * [#35724] Backdrop zoom can be set to a very small value, making the backdrop disapear.

There were checks in the drawnode that needed to be placed in the readfile.
The checks checked if the zoomlevel was 0.0, then it was defaulted to 1.0, but the zoomvalue had a minimum limit of 0.01, hence it did not work.
Moved the check to the readfile and checked for all values smaller then 0.02. These values are then reset to 1.0

Jeroen & Monique
 - At Mind -

8 years agoexpose smooth group calculation to python as Mesh.calc_smooth_groups()
Campbell Barton [Fri, 14 Jun 2013 09:59:09 +0000 (09:59 +0000)]
expose smooth group calculation to python as Mesh.calc_smooth_groups()

8 years agoAdded a read-only dimensions property for Nodes. This returns the actual node size...
Lukas Toenne [Fri, 14 Jun 2013 08:59:21 +0000 (08:59 +0000)]
Added a read-only dimensions property for Nodes. This returns the actual node size as calculated in the node_update functions. It can be useful for node layout scripts, since the width/height properties
are not an accurate representation of the actual node size which is determined by the uiLayout.

Please note that the dimensions calculation depends on the drawing of nodes, so it may not get updated if nodes are not visible in any editor. Also the node height in particular can change dramatically
based on previews, visible sockets, etc.

8 years agoutility function for calculating smooth groups from sharp edges: BKE_mesh_calc_smooth...
Campbell Barton [Fri, 14 Jun 2013 08:28:27 +0000 (08:28 +0000)]
utility function for calculating smooth groups from sharp edges: BKE_mesh_calc_smoothgroups

8 years agoutility function BKE_mesh_edge_poly_map_create(), currently unused.
Campbell Barton [Fri, 14 Jun 2013 07:15:38 +0000 (07:15 +0000)]
utility function BKE_mesh_edge_poly_map_create(), currently unused.

8 years agocode cleanup: reduce pointer indirection for mesh-map creation functions.
Campbell Barton [Fri, 14 Jun 2013 06:34:37 +0000 (06:34 +0000)]
code cleanup: reduce pointer indirection for mesh-map creation functions.

8 years agocode cleanup: make_edges_mdata() reduce some sign conversion, pointer indirection.
Campbell Barton [Fri, 14 Jun 2013 06:15:30 +0000 (06:15 +0000)]
code cleanup: make_edges_mdata() reduce some sign conversion, pointer indirection.

8 years agoremove 'dissolve_edge_loop' bmesh operator, edgeloop dissolve replaces this now.
Campbell Barton [Fri, 14 Jun 2013 04:04:35 +0000 (04:04 +0000)]
remove 'dissolve_edge_loop' bmesh operator, edgeloop dissolve replaces this now.

8 years agoChange edgeloop delete to use dissolve, fixes bug [#35738].
Campbell Barton [Fri, 14 Jun 2013 03:04:36 +0000 (03:04 +0000)]
Change edgeloop delete to use dissolve, fixes bug [#35738].

Was using edge-slide & remove-doubles but this was error prone since remove doubles could fail in some cases or find doubles where it shouldn't (with very small scale objects).

This gives more predictable behavior when the edges of a loop wouldnt slide (in that case they would just drag over to one of the sides with no user control)
and multiple edge loops work better too. eg:

8 years agobmesh edge dissolve: add option use_face_split (matching vertex dissolve option),
Campbell Barton [Fri, 14 Jun 2013 02:30:40 +0000 (02:30 +0000)]
bmesh edge dissolve: add option use_face_split (matching vertex dissolve option),
useful to avoid odd shaped ngons surrounding dissolved edges.

8 years agoBGE: Fixing a bug that caused KX_GameObject.localTransform to give incorrect results.
Mitchell Stokes [Thu, 13 Jun 2013 22:15:44 +0000 (22:15 +0000)]
BGE: Fixing a bug that caused KX_GameObject.localTransform to give incorrect results.

8 years agoFix blender internal showing SSS preprocessing status message even if there isn't
Brecht Van Lommel [Thu, 13 Jun 2013 18:29:56 +0000 (18:29 +0000)]
Fix blender internal showing SSS preprocessing status message even if there isn't
any SSS material in the scene.

8 years agoFix #35634: weight paint did not do z-buffer culling anymore on Windows after recent...
Brecht Van Lommel [Thu, 13 Jun 2013 17:11:09 +0000 (17:11 +0000)]
Fix #35634: weight paint did not do z-buffer culling anymore on Windows after recent change to size of bool.

8 years agofixes for using scaled cameras
Campbell Barton [Thu, 13 Jun 2013 15:09:32 +0000 (15:09 +0000)]
fixes for using scaled cameras
- ED_view3d_from_m4() got incorrect rotation from scaled cameras, was noticable with smoothview transitions.
- when you lock the camera to the view, any view edits would reset the cameras scale to 1.
- another problem with view locking if the camera was scaled and had a parent, the parent would be transformed incorrectly.
- fly mode was chaning object scale a little over time, now restore after applying scale so it never changes.

8 years agoFix #35664: blender internal material index pass + ztransp + multiple materials
Brecht Van Lommel [Thu, 13 Jun 2013 15:02:42 +0000 (15:02 +0000)]
Fix #35664: blender internal material index pass + ztransp + multiple materials
assigned to a mesh did not work correct.

8 years agoFix #35735: blender internal viewport rendering was missing SSS update when
Brecht Van Lommel [Thu, 13 Jun 2013 14:40:22 +0000 (14:40 +0000)]
Fix #35735: blender internal viewport rendering was missing SSS update when
changing angle of view.

8 years agoFix #35730: cycles not rendering dupliverted metaball, needs another special
Brecht Van Lommel [Thu, 13 Jun 2013 14:33:18 +0000 (14:33 +0000)]
Fix #35730: cycles not rendering dupliverted metaball, needs another special

8 years agoRephrased error message for clarity
Gaia Clary [Thu, 13 Jun 2013 14:17:02 +0000 (14:17 +0000)]
Rephrased error message for clarity

8 years agominor edits to world_to_camera() utility function, include Z so you can tell if the...
Campbell Barton [Thu, 13 Jun 2013 14:07:36 +0000 (14:07 +0000)]
minor edits to world_to_camera() utility function, include Z so you can tell if the points in font of the camera and avoid divide by zero.

8 years agoFix #35729: cycles normal maps not showing properly in preview render.
Brecht Van Lommel [Thu, 13 Jun 2013 13:55:05 +0000 (13:55 +0000)]
Fix #35729: cycles normal maps not showing properly in preview render.

8 years agohandy function for getting the 2d camera coords for a worldspace location.
Campbell Barton [Thu, 13 Jun 2013 13:51:01 +0000 (13:51 +0000)]
handy function for getting the 2d camera coords for a worldspace location.

 bpy_extras.object_utils.world_to_camera(scene, obj, coord)

8 years agoFix #35733: lamps on render layers that are both excluded and used for masking
Brecht Van Lommel [Thu, 13 Jun 2013 13:09:32 +0000 (13:09 +0000)]
Fix #35733: lamps on render layers that are both excluded and used for masking
should not be used, same as emissive meshes.

8 years agocode cleanup: also fix crash in GPU_state_print(). and confine to debug mode builds.
Campbell Barton [Thu, 13 Jun 2013 11:59:28 +0000 (11:59 +0000)]
code cleanup: also fix crash in GPU_state_print(). and confine to debug mode builds.

8 years agoAdded NULL check for socket type make_socket_interface
Sergey Sharybin [Thu, 13 Jun 2013 11:49:22 +0000 (11:49 +0000)]
Added NULL check for socket type make_socket_interface

Without this check it's easy to crash blender by passing
non-existing socket type to function.

8 years agofix for pythons __dir__ returning registrable functions on class instances (which...
Campbell Barton [Thu, 13 Jun 2013 11:35:25 +0000 (11:35 +0000)]
fix for pythons __dir__ returning registrable functions on class instances (which may not have the functions defined).
gave odd behavior of including members in __dir__ that couldn't getattr()

8 years agoRemoved the Material Boundary option from the edge detection options in
Tamito Kajiyama [Thu, 13 Jun 2013 11:10:18 +0000 (11:10 +0000)]
Removed the Material Boundary option from the edge detection options in
the Parameter Editor mode.  The Material Boundary toggle button takes
effect only in the Python Scripting mode.  Instead the Parameter Editor
mode automatically determines which edge types need to be computed on the
basis of user-specified line selection criteria in terms of edge types.

Problem report from Light BWK through personal communications, thanks!

8 years agoFix crash in movie clip node when ibuf fails to load.
Sergey Sharybin [Thu, 13 Jun 2013 10:25:41 +0000 (10:25 +0000)]
Fix crash in movie clip node when ibuf fails to load.

Was a stupid mistake in another fix here :(

8 years agoSafety check for function: Added NEVER_NULL flags to from_socket...
Lukas Toenne [Thu, 13 Jun 2013 09:52:14 +0000 (09:52 +0000)]
Safety check for function: Added NEVER_NULL flags to from_socket/to_socket arguments to make sure the function doesn't crash when passing None/NULL.

8 years agofix [#35346] Python: still UI issue with popup and dropdown list
Campbell Barton [Thu, 13 Jun 2013 09:12:53 +0000 (09:12 +0000)]
fix [#35346] Python: still UI issue with popup and dropdown list

8 years agofix [#35713] Set Origin not waiting for user input.
Campbell Barton [Thu, 13 Jun 2013 01:39:07 +0000 (01:39 +0000)]
fix [#35713] Set Origin not waiting for user input.

Only activate search-box items on mouse-release,
Otherwise this gives odd behavior when using the operator-search popup since some tools expect the mouse buttons not to be held when activating which includes operators that have their own popup menus.

8 years agointernal change to searchbox: store the active search index rather then index + 1...
Campbell Barton [Thu, 13 Jun 2013 01:13:26 +0000 (01:13 +0000)]
internal change to searchbox: store the active search index rather then index + 1, simplifies checks.

8 years agofix for problem with creating weight-paint preview.
Campbell Barton [Thu, 13 Jun 2013 00:33:48 +0000 (00:33 +0000)]
fix for problem with creating weight-paint preview.

In the case where the modifier stack didnt need deform-verts to calculate,
they would not be available for the preview either.

This fixes a bug caused by r57206 which set mirror to preview so the mirrored
weights would be displayed, but it only worked when there was an armature after it, see [#35545].

8 years agoFix #35723: cycles motion blur rendering issue after recent optimizations to skip
Brecht Van Lommel [Wed, 12 Jun 2013 20:47:48 +0000 (20:47 +0000)]
Fix #35723: cycles motion blur rendering issue after recent optimizations to skip
some unneeded object syncing.

8 years agoFix #35715: incorrect shortcut shown for some menus after recent code refactoring.
Brecht Van Lommel [Wed, 12 Jun 2013 20:47:46 +0000 (20:47 +0000)]
Fix #35715: incorrect shortcut shown for some menus after recent code refactoring.

8 years agoFix #35353: Freestyle + Compositor + Auto-render renders freestyle lines in the wrong...
Tamito Kajiyama [Wed, 12 Jun 2013 17:59:03 +0000 (17:59 +0000)]
Fix #35353: Freestyle + Compositor + Auto-render renders freestyle lines in the wrong place.

8 years agoTrack Position node now could output absolute position of track at a given frame
Sergey Sharybin [Wed, 12 Jun 2013 14:28:36 +0000 (14:28 +0000)]
Track Position node now could output absolute position of track at a given frame

8 years agoRemove magic constants from Track Position node RNA code.
Sergey Sharybin [Wed, 12 Jun 2013 12:55:44 +0000 (12:55 +0000)]
Remove magic constants from Track Position node RNA code.

8 years agoCleaned code a bit around 2D stabilization
Sergey Sharybin [Wed, 12 Jun 2013 12:34:10 +0000 (12:34 +0000)]
Cleaned code a bit around 2D stabilization

Hopefully it's more readable now. Took me a while to remmeber
all the stuff going on here while was looking into possibility
of implementing some feature here.

8 years agoBugfix [#35668] Tooltip for Euler Discontinuity Filter was misleading
Joshua Leung [Wed, 12 Jun 2013 12:32:07 +0000 (12:32 +0000)]
Bugfix [#35668] Tooltip for Euler Discontinuity Filter was misleading

The tooltip seemed to hint that this tool is able to resolve all manner of
gimble-lock situations by untangling the curves (i.e. performing some kind of
equivalent-angles resolution, keeping in mind the nearest situations nearby).
However, this tool currently only performs corrections for the most basic case
when large jump+flip discontinuity artifacts appear in euler rotation curves as
a result of rotation values getting clipped to +/- 180 degrees, which arises
when these rotation curves are the result of baking some physics sim or so.

(Also, fixed an unrelated "replace-all" typo in a comment)

8 years agoFix #35703, Viewer node doesn't updates image sometimes. The viewer node was not...
Lukas Toenne [Wed, 12 Jun 2013 11:26:44 +0000 (11:26 +0000)]
Fix #35703, Viewer node doesn't updates image sometimes. The viewer node was not getting correctly initialized node->id pointer to the Viewer image (thanks to Sergey for figuring that out). The original
proposal was to add another special init hack for the viewer node->id, but rather would do it right and so moved all the special init hacks for constant ID backpointers (Scene for RenderLayer, Composite,
Defocus, FileOutput and MovieClip for MovieClip, MovieDistortion and Stabilization nodes). These are now part of the local init callbacks functions of the appropriate nodes, using the new initfunc_api
callback which takes a Context pointer, so they have access to Scene.

8 years agoVertex weight panel now uses same sort order as Vertex Group list
Gaia Clary [Wed, 12 Jun 2013 10:39:27 +0000 (10:39 +0000)]
Vertex weight panel now uses same sort order as Vertex Group list

8 years agoifdef bugfix since its a little strange.
Campbell Barton [Wed, 12 Jun 2013 10:03:13 +0000 (10:03 +0000)]
ifdef bugfix since its a little strange.

8 years agoprepared local vgroup selection function for more general usage
Gaia Clary [Wed, 12 Jun 2013 09:52:37 +0000 (09:52 +0000)]
prepared local vgroup selection function for more general usage

8 years agosolidify: dont add poly-normal layer to the derived mesh, since this is no longer...
Campbell Barton [Wed, 12 Jun 2013 09:35:02 +0000 (09:35 +0000)]
solidify: dont add poly-normal layer to the derived mesh, since this is no longer a convention.

8 years agofix [#35710] Mesh explodes while using solidify modifier with tubular non-manifold...
Campbell Barton [Wed, 12 Jun 2013 08:24:31 +0000 (08:24 +0000)]
fix [#35710] Mesh explodes while using solidify modifier with tubular non-manifold base mesh.

8 years agochange to solidify modifiers own normal calculation function, dont attempt to calcula...
Campbell Barton [Wed, 12 Jun 2013 07:53:54 +0000 (07:53 +0000)]
change to solidify modifiers own normal calculation function, dont attempt to calculate normals for edges with 3+ face users.

8 years agooptimize solidify, no need to do edgehash lookups, the edges are known.
Campbell Barton [Wed, 12 Jun 2013 07:16:13 +0000 (07:16 +0000)]
optimize solidify, no need to do edgehash lookups, the edges are known.

8 years agoSupplementary fix for #35640, internal node group trees (inside material, lamp, world...
Lukas Toenne [Wed, 12 Jun 2013 07:02:52 +0000 (07:02 +0000)]
Supplementary fix for #35640, internal node group trees (inside material, lamp, world, texture and scene) still keep their original library pointer when appending, making them uneditable. Clearing the
lib pointer now has been moved inside the id_clear_lib_data function, with an ugly switch statement to handle integrated node trees.

8 years agosolidify: reduce sign conversions.
Campbell Barton [Wed, 12 Jun 2013 06:51:02 +0000 (06:51 +0000)]
solidify: reduce sign conversions.

8 years agosolidify: remove BLI_array realloc's.
Campbell Barton [Wed, 12 Jun 2013 06:20:24 +0000 (06:20 +0000)]
solidify: remove BLI_array realloc's.

8 years agocorrect solidify normal calculation logic
Campbell Barton [Wed, 12 Jun 2013 06:06:19 +0000 (06:06 +0000)]
correct solidify normal calculation logic
- always calculate vertex normals since they are used as fallbacks.
- only calculate rim normals if the normals are not already flagged as dirty.

8 years agominor changes to the script auto-execution based on Brecht's suggestions.
Campbell Barton [Wed, 12 Jun 2013 00:10:56 +0000 (00:10 +0000)]
minor changes to the script auto-execution based on Brecht's suggestions.

8 years agoFix #35665: more CUDA issues with recent kernel changes, tested on sm_20, sm_21
Brecht Van Lommel [Tue, 11 Jun 2013 21:58:48 +0000 (21:58 +0000)]
Fix #35665: more CUDA issues with recent kernel changes, tested on sm_20, sm_21
and sm_30 cards, so hopefully it should all work now.

Also includes some warnings fixes related to nvcc compiler arguments, should make
no difference otherwise.

8 years agoFix lamp size allowing negative values.
Brecht Van Lommel [Tue, 11 Jun 2013 21:58:43 +0000 (21:58 +0000)]
Fix lamp size allowing negative values.

8 years agofix [#35574] Export Key Map issue
Campbell Barton [Tue, 11 Jun 2013 15:11:55 +0000 (15:11 +0000)]
fix [#35574] Export Key Map issue

problem was the keymap failed to import but didnt give any feedback, now it displays error message.

8 years agoFix #35711: cycles border render issue after recent changes.
Brecht Van Lommel [Tue, 11 Jun 2013 14:15:46 +0000 (14:15 +0000)]
Fix #35711: cycles border render issue after recent changes.

8 years agoFix #35251: cycles crash rendering with a particular user preferences configuration.
Brecht Van Lommel [Tue, 11 Jun 2013 12:52:02 +0000 (12:52 +0000)]
Fix #35251: cycles crash rendering with a particular user preferences configuration.

8 years agoFix #35405: properties editor preview render restarted unnecessarily after F12 render.
Brecht Van Lommel [Tue, 11 Jun 2013 12:37:56 +0000 (12:37 +0000)]
Fix #35405: properties editor preview render restarted unnecessarily after F12 render.

8 years agoFix #35704: Simplify on scene with dupli recursion crashes
Sergey Sharybin [Tue, 11 Jun 2013 11:21:16 +0000 (11:21 +0000)]
Fix #35704: Simplify on scene with dupli recursion crashes

Couple of issues here:

- User shouldn't be able to run into dupligroup recursion.
  It was checking already when setting a group for dupli.
  Added check to operator which adds object to group.

- It's still possible files with recursion are hanging around,
  so made simplify function robust to such kind of crap.

8 years agoUse OpenMP threads in bm_loop_interp_mdisps
Sergey Sharybin [Tue, 11 Jun 2013 09:14:39 +0000 (09:14 +0000)]
Use OpenMP threads in bm_loop_interp_mdisps

Gives approx 2x speedup on my laptop on such operations
as mesh subdivision in edit mode. Desktops with fancier
CPUs could benefit even more.

Thanks Campbell for review!

8 years agoFix compilation error caused by recent wavelength node commit
Sergey Sharybin [Tue, 11 Jun 2013 08:07:05 +0000 (08:07 +0000)]
Fix compilation error caused by recent wavelength node commit

Apparently, it's bad idea to rely on compiler to cast NULL
which is (void*)0 to int -- and in fact if i was a compiler
would also generate an error.

Further, couldn't see why we need to pass NULL or 0 th add_node,
argument value is defautl to 0 already.

8 years agoFix for distortion happens when flipping mesh normals
Sergey Sharybin [Tue, 11 Jun 2013 08:06:59 +0000 (08:06 +0000)]
Fix for distortion happens when flipping mesh normals

Issue was caused by missing X/Y displacement components
flip when flipping the normals (flipping the normals changes
the tangent space apparently and displacement vectors need
to be modified to correspond to new space).

Reported by Jonathan Williamson in IRC.

8 years agoanother case that should have been in r57371, also reduce type conversions in compassion.
Campbell Barton [Tue, 11 Jun 2013 05:56:02 +0000 (05:56 +0000)]
another case that should have been in r57371, also reduce type conversions in compassion.

8 years agofix for problem where curve handles in editmode could be obscured by other selected...
Campbell Barton [Tue, 11 Jun 2013 05:21:36 +0000 (05:21 +0000)]
fix for problem where curve handles in editmode could be obscured by other selected objects (referred to in [#35669])

8 years agofix [#35656] Crash on File Browser
Campbell Barton [Tue, 11 Jun 2013 05:09:12 +0000 (05:09 +0000)]
fix [#35656] Crash on File Browser

8 years agoFix #35561: freestyle + read full sample layers = crash.
Tamito Kajiyama [Tue, 11 Jun 2013 02:32:01 +0000 (02:32 +0000)]
Fix #35561: freestyle + read full sample layers = crash.

Now add_freestyle() in pipeline.c takes a second argument to enable/disable
stroke rendering.  When stroke rendering is disabled, the function allocates
data structures but does not perform stroke rendering.  The allocated data
structures (mostly left unpopulated with data elements) are intended to allow
for the Read Full Sample Layers (Shift-R) command in the compositor.

8 years agoCycles / Wavelength to RGB node:
Thomas Dinges [Mon, 10 Jun 2013 21:55:41 +0000 (21:55 +0000)]
Cycles / Wavelength to RGB node:
* Added a node to convert wavelength (in nanometers, from 380nm to 780nm) to RGB values. This can be useful to match real world colors easier.

* Code cleanup:
** Moved color functions (xyz and hsv) into dedicated utility files.
** Remove svm_lerp(), use interp() instead.


Example render:

This is part of my GSoC 2013. (revisions 57322, 57326, 57335 and 57367 from soc-2013-dingto).

8 years agoFix msvc compile error with subdivide use_smooth_even option.
Brecht Van Lommel [Mon, 10 Jun 2013 20:54:08 +0000 (20:54 +0000)]
Fix msvc compile error with subdivide use_smooth_even option.

8 years agoFix cycles OSL node sockets not preserving values when updating with new code.
Brecht Van Lommel [Mon, 10 Jun 2013 20:47:58 +0000 (20:47 +0000)]
Fix cycles OSL node sockets not preserving values when updating with new code.

8 years agoCycles: ray visibility panel is now also available for the world, works same as
Brecht Van Lommel [Mon, 10 Jun 2013 20:34:34 +0000 (20:34 +0000)]
Cycles: ray visibility panel is now also available for the world, works same as
meshes and lamps. The light path node already made this possible but it's a bit
faster to render this way and convenient.

8 years agoFix cycles backwards compatibility for specular_toon shader this actually needs
Brecht Van Lommel [Mon, 10 Jun 2013 20:10:03 +0000 (20:10 +0000)]
Fix cycles backwards compatibility for specular_toon shader this actually needs
to be done in cycles itself to keep compatibility for bytecode too.

Also fix broken button to compile OSL from the text editors, this got broken after
recent change to disable editing of library linked nodes.

8 years agoCycles lamp specials menu now includes separate X/Y size for area lamps
Brecht Van Lommel [Mon, 10 Jun 2013 19:01:40 +0000 (19:01 +0000)]
Cycles lamp specials menu now includes separate X/Y size for area lamps
and strength (for the basic default node setup, this can't work with with
arbitrary nodes).

8 years agoAttempt to fix #35665: disable correlated multi jitter sampling on the GPU for now,
Brecht Van Lommel [Mon, 10 Jun 2013 19:01:37 +0000 (19:01 +0000)]
Attempt to fix #35665: disable correlated multi jitter sampling on the GPU for now,
seems to be giving issues with CUDA 4.2 but I can't figure out why exactly.

8 years agoFollow up to r57354: WeightVG and Wave modifiers too need to handle tex id refcount ;)
Bastien Montagne [Mon, 10 Jun 2013 18:12:07 +0000 (18:12 +0000)]
Follow up to r57354: WeightVG and Wave modifiers too need to handle tex id refcount ;)

8 years agoFix for crash when assigning NULL pointer to node group node_tree property. This...
Lukas Toenne [Mon, 10 Jun 2013 17:48:41 +0000 (17:48 +0000)]
Fix for crash when assigning NULL pointer to node group node_tree property. This is generally allowed (though operators usually would prevent it).

8 years agoFix #35678: Duplicating an object with Displace modifier does not increase the refere...
Sergey Sharybin [Mon, 10 Jun 2013 14:04:03 +0000 (14:04 +0000)]
Fix #35678: Duplicating an object with Displace modifier does not increase the reference count of the texture

8 years agoFix #35658: OpenEXR (from Maya) - missing passes
Sergey Sharybin [Mon, 10 Jun 2013 13:54:09 +0000 (13:54 +0000)]
Fix #35658: OpenEXR (from Maya) - missing passes

Added some special case for two-component channels name.

Maybe magic could be simplified to just use last char of
channel name as an id, but extra paranoid check never hurts.

8 years agoFix #35681: cycles excluded layers still got evaluated before and after
Brecht Van Lommel [Mon, 10 Jun 2013 13:53:38 +0000 (13:53 +0000)]
Fix #35681: cycles excluded layers still got evaluated before and after
rendering even if they were not used on any render layers.

8 years agoChanges to mask evaluation
Sergey Sharybin [Mon, 10 Jun 2013 13:07:02 +0000 (13:07 +0000)]
Changes to mask evaluation

- BKE_mask_update_scene was only used with do_newframe=FALSE,
  removed this argument.

- Made it so BKE_mask_update_scene is able to handle LIB_ID_RECALC_DATA
  case. Namely, if mask ID is tagged for data update it means shapekeys
  will be re-evaluated (as if do_newframe=true).

  If mask id only tagged for LIB_ID_RECALC, then no shapekey evaluation
  happens (same as it used to behave before).

  This means, doing DAG_id_tag_update(&mask->id, OB_RECALC_DATA) will
  lead to shapekeys re-evaluation which is really needed in such
  operators as clearing shapekeys (and cleaning shapekeys which is
  in tomato branch yet).

  This is a bit silly to use OB_RECALC_DATA sine mask is not an OB,
  but could not see better way to do it now.

This fixes missing mask re-evaluation after clearing shapekey,
would expect no other functional changes.

8 years agoFix cycles OSL backwards compatibility for specular_toon, it got renamed to glossy_toon
Brecht Van Lommel [Mon, 10 Jun 2013 13:06:10 +0000 (13:06 +0000)]
Fix cycles OSL backwards compatibility for specular_toon, it got renamed to glossy_toon
but we can keep the old name working too.

8 years agoFix #35653: manual texture space location and size not working in cycles viewport.
Brecht Van Lommel [Mon, 10 Jun 2013 13:01:41 +0000 (13:01 +0000)]
Fix #35653: manual texture space location and size not working in cycles viewport.

8 years agoCustom Group Node type for extending existing nodes from python scripts. This is...
Lukas Toenne [Mon, 10 Jun 2013 12:19:39 +0000 (12:19 +0000)]
Custom Group Node type for extending existing nodes from python scripts. This is a sort of workaround for the lack of APIs in our existing node systems (compositor, cycles, BI, textures). These systems
don't have any way to deal with scripted node types yet, which could in principle by added with pynodes. The NodeCustomGroup type adds a way of scripting nodes by automating node groups which the
hardcoded system can then interpret like regular groups.

The new NodeCustomGroup type has the basic node_tree pointer property like the regular group node types and also uses the same socket interface system as regular groups. This means that input/output
sockets can be mapped to internal nodes in the same way as regular node groups in renderers and the compositor. On top of that, however, the NodeCustomGroup type can be subclassed in python scripts to flesh out
scripted node types with own draw functions, properties, updates and so on.

NB: Only cycles currently supports this node type and its derivatives, other systems may follow later.

8 years agofix [#35691] Context Override replaces instead of overrides
Campbell Barton [Mon, 10 Jun 2013 12:17:36 +0000 (12:17 +0000)]
fix [#35691] Context Override replaces instead of overrides

8 years agoBugfix [#35382] NLA "Multiply" Blend Mode calculated incorrectly
Joshua Leung [Mon, 10 Jun 2013 11:58:57 +0000 (11:58 +0000)]
Bugfix [#35382] NLA "Multiply" Blend Mode calculated incorrectly

The "Multiply" blending mode for NLA strips worked incorrectly. Instead of
modulating the influence of the current strip, it was in fact scaling the result
of the entire stack (with the strip applied). This caused problems when
influence = 0, as it was in fact muting everything instead of just controlling
the strip we are interested in.

8 years agoFix bug in vertex group code after recent changes, did not do proper NULL
Brecht Van Lommel [Mon, 10 Jun 2013 11:08:39 +0000 (11:08 +0000)]
Fix bug in vertex group code after recent changes, did not do proper NULL
pointer check.

8 years agoRNA: simplify space type items code, no need to have this duplicated.
Brecht Van Lommel [Mon, 10 Jun 2013 11:08:37 +0000 (11:08 +0000)]
RNA: simplify space type items code, no need to have this duplicated.

8 years agoReplaced a hard-coded array length with MAX_ID_NAME.
Tamito Kajiyama [Mon, 10 Jun 2013 10:58:49 +0000 (10:58 +0000)]
Replaced a hard-coded array length with MAX_ID_NAME.

8 years agocorrection to typo in r57327, ui-load wasnt working on splash screen.
Campbell Barton [Mon, 10 Jun 2013 10:55:57 +0000 (10:55 +0000)]
correction to typo in r57327, ui-load wasnt working on splash screen.

also minor changes:
- update the load-UI flag when changing in the preferences.
- remove unused initialization values for subdivide.

8 years agoCorrection to previous maya keymap commit
Sergey Sharybin [Mon, 10 Jun 2013 10:45:25 +0000 (10:45 +0000)]
Correction to previous maya keymap commit

Added UNDOflag to the wrong operator..

8 years agoFix for r57316: SPACE_EMPTY *is* needed in RNA enum for now, exported keymaps abuse...
Bastien Montagne [Mon, 10 Jun 2013 10:37:24 +0000 (10:37 +0000)]
Fix for r57316: SPACE_EMPTY *is* needed in RNA enum for now, exported keymaps abuse it...

So for now, static enum is back to its previous form, and the menu one is dynamically generated by a callback. Not nice, but works.

8 years agoFix #35661: Maya key config - select operations are skipped by "undo"
Sergey Sharybin [Mon, 10 Jun 2013 09:57:10 +0000 (09:57 +0000)]
Fix #35661: Maya key config - select operations are skipped by "undo"

8 years agoMade blender compilable with strict flags again.
Sergey Sharybin [Mon, 10 Jun 2013 09:45:55 +0000 (09:45 +0000)]
Made blender compilable with strict flags again.

Maybe Joshua would want to check on arguments for nlaevalchan_verify.

8 years agoFix #35683: Addon working fine in console. But crashed when click GUI button.
Sergey Sharybin [Mon, 10 Jun 2013 09:45:51 +0000 (09:45 +0000)]
Fix #35683: Addon working fine in console. But crashed when click GUI button.

Crash happened in ED_view3d_calc_zfac and happend in cases operator was invoked
from a region different from RGN_TYPE_WINDOW.

For a transformation zfac is only used in convertViewVec in cases region is
RGN_TYPE_WINDOW, so solved by just adding extra check in calculateCenter
for this particular case.

8 years agooptimize customdata lookups for subdivision.
Campbell Barton [Mon, 10 Jun 2013 05:18:45 +0000 (05:18 +0000)]
optimize customdata lookups for subdivision.

8 years agoBugfixes [#35263], [#35382] NLA Animated Influence is ignored if strips below
Joshua Leung [Mon, 10 Jun 2013 05:10:58 +0000 (05:10 +0000)]
Bugfixes [#35263], [#35382] NLA Animated Influence is ignored if strips below
have zero total influence

Previously, when evaluating the NLA stack at a particular point in time, if a
channel hadn't been encountered before, influence values were simply ignored
when accumulating the values contributed by each strip to the overall stack.

This behaviour simplified the handling of the problem of what "baseline" to
blend relative to (i.e. influence basically scales the magnitude of a scalar
around 0, but we may not exactly want a property to get it's value set to 0 as
baseline). However, the problem was that this meant that you'd get popping
artifacts when the a lower strip finally reaches influence=0 but your upper
strips haven't fully reached maximum yet ([#35382]). Another problem was that
you'd end up with less ability to scale the influence of all strips (as in

So, as a stop-gap fix now, we will allow influence scaling to work on these
strips too. This still doesn't fix some of the other problems regarding
baselines/rest-poses and deterministic behaviour when some channels are only
keyed in one strip which isn't set to extend it's influence... Fixing those
issues is a bit more involved, and would require a bit of refactoring of how we
keep track of accumulation channels.

8 years agoBugfix [#35643] Animated textures are invisible in Graph Editor if it is not
Joshua Leung [Mon, 10 Jun 2013 04:39:05 +0000 (04:39 +0000)]
Bugfix [#35643] Animated textures are invisible in Graph Editor if it is not
linked via material

Textures linked to modifiers are now shown in the AnimEditor channel hierarchy
under object level now (i.e. on same level as ob-data, shapekeys, and object's
action). This makes it possible to edit such animation data without having to
ensure that these textures are also linked to the object's material so that they
will appear.

As a side-effect of how this is implemented, if playback is slower on scenes
following this commit, disable the "modifier" filter under the filtering
settings in the relevant animation editor header. In particular, it may be
beneficial to disable this when you've got scenes with meshes that have many
modifiers (but none of these have any linked data with settings which can be
animated), as Blender will still try to go through all those modifiers checking
for anything to show.

8 years agofix [#35648] Loop cut, smoothness showing wrong symmetrical
Campbell Barton [Mon, 10 Jun 2013 04:33:05 +0000 (04:33 +0000)]
fix [#35648] Loop cut, smoothness showing wrong symmetrical

this is more of a feature request then a bug, but nicer to use even smoothing offset for loopcut smoothing.

8 years agofix [#35669] Snap curvepoints dont work correct when another object is selected
Campbell Barton [Mon, 10 Jun 2013 03:56:50 +0000 (03:56 +0000)]
fix [#35669] Snap curvepoints dont work correct when another object is selected

Ctrl+Click extrude curves now supports snapping to faces as with meshes.

8 years agofix [#35670] Selectionmode LMB dont change the controlling for putting curve points...
Campbell Barton [Mon, 10 Jun 2013 02:28:19 +0000 (02:28 +0000)]
fix [#35670] Selectionmode LMB dont change the controlling for putting curve points with strg+lmb