7 years agoissue warning when WITH_RAYOPTIMIZATION is used with MinGW-w32, since this is known...
Campbell Barton [Wed, 5 Jun 2013 19:33:19 +0000 (19:33 +0000)]
issue warning when WITH_RAYOPTIMIZATION is used with MinGW-w32, since this is known to give crashes.

7 years agoRemoved the "Make Local?" popup from group node edit operator on linked node groups...
Lukas Toenne [Wed, 5 Jun 2013 19:28:59 +0000 (19:28 +0000)]
Removed the "Make Local?" popup from group node edit operator on linked node groups. This is no longer necessary since we can now quite safely display linked node trees in general (this check was already
meaningless for material node trees and the like as demonstrated by bug #35640, so rather pointless).

7 years agoFix for own mistake in r57252, needs to unset id.lib of the newly copied tree instead...
Lukas Toenne [Wed, 5 Jun 2013 19:28:58 +0000 (19:28 +0000)]
Fix for own mistake in r57252, needs to unset id.lib of the newly copied tree instead of the old one.

7 years agofix [#35628] Dynamic paint waves over ocean modifier doesn't work
Campbell Barton [Wed, 5 Jun 2013 19:22:12 +0000 (19:22 +0000)]
fix [#35628] Dynamic paint waves over ocean modifier doesn't work

Caused by my recent normal calculation changes, added dependsOnNormals callback which was missing for ocean modifier (it assumed input normals were set).

7 years agoFix #35640, part 2. Check id.lib in poll functions for operators which do critical...
Lukas Toenne [Wed, 5 Jun 2013 19:06:33 +0000 (19:06 +0000)]
Fix #35640, part 2. Check id.lib in poll functions for operators which do critical modification of node trees (create nodes, link, etc.). Transform operators and hide/show type operators are still
allowed, this does not modify actual behavior of the nodes and can be useful for inspecting linked nodes.

7 years agoFix #35640, part 1. Set the id.lib pointer for nested bNodeTree data blocks inside...
Lukas Toenne [Wed, 5 Jun 2013 19:06:27 +0000 (19:06 +0000)]
Fix #35640, part 1. Set the id.lib pointer for nested bNodeTree data blocks inside material, scene, etc. on lib_link, so that the UI buttons get disabled when editing linked node trees. Thanks to Brecht
van Lommel for suggesting this fix.

7 years agoFix textured draw mode + dyntopo crash fix to cover more cases.
Brecht Van Lommel [Wed, 5 Jun 2013 15:54:41 +0000 (15:54 +0000)]
Fix textured draw mode + dyntopo crash fix to cover more cases.

7 years agoCycles: GLSL materials now can use multiple UV maps with the attribute node.
Brecht Van Lommel [Wed, 5 Jun 2013 15:54:39 +0000 (15:54 +0000)]
Cycles: GLSL materials now can use multiple UV maps with the attribute node.

7 years agoFix #35633, Cannot Add Group Node In Blender 2.67a. The menu entry for the "make...
Lukas Toenne [Wed, 5 Jun 2013 09:21:17 +0000 (09:21 +0000)]
Fix #35633, Cannot Add Group Node In Blender 2.67a. The menu entry for the "make group" operator was missing in the new categories system. Added an alternative NodeItemCustom to the standard NodeItem to
allow custom draw functions such as this operator. Used in the group items callback to generate the basic group_make operator call.

7 years agoObsessive Null Checking Compulsion case:
Antony Riakiotakis [Wed, 5 Jun 2013 09:10:56 +0000 (09:10 +0000)]
Obsessive Null Checking Compulsion case:
Textured draw mode + DynTopo crashed after recent specularity tweak.

7 years agoFix #35625, crash with NULL pointer after node render. Happens when node group node_t...
Lukas Toenne [Wed, 5 Jun 2013 08:23:44 +0000 (08:23 +0000)]
Fix #35625, crash with NULL pointer after node render. Happens when node group node_tree pointer is NULL, then the group node doesn not produce any execdata and needs to check this accordingly in the
freeexec callback.

7 years agoadd option to remove all shape keys at once (access from shape key menu on panel).
Campbell Barton [Wed, 5 Jun 2013 06:34:18 +0000 (06:34 +0000)]
add option to remove all shape keys at once (access from shape key menu on panel).

Without this there was no easy way to get a WYSIWYG copy of a mesh that had shape keys,
since removing them would adjust the mesh.

7 years agochanges to mirror tools
Campbell Barton [Wed, 5 Jun 2013 05:58:51 +0000 (05:58 +0000)]
changes to mirror tools

- give feedback on how many mirror verts succeed/fail (for select mirror, shape key mirror, weight mirror)
... when a mirror failed it was confusing and not obvious what was going on.

- slight change to select mirror, now center vertices will remain selected.

- speedup to EDBM_verts_mirror_cache_begin, cache customdata layer offset.

7 years agofix [#35453] "copy mirrored uv coords" doesn't work
Campbell Barton [Wed, 5 Jun 2013 03:10:29 +0000 (03:10 +0000)]
fix [#35453] "copy mirrored uv coords" doesn't work

- made precision configurable.
- report a warning when doubles are found since they cause problems.

added attribute to avoid calculating in python.

7 years agoAdded 'clear active group' to object data properties -> Vertex Groups -> pulldown...
Gaia Clary [Tue, 4 Jun 2013 22:30:41 +0000 (22:30 +0000)]
Added 'clear active group' to object data properties -> Vertex Groups -> pulldown menu

7 years agoyet another check for missing vertex groups needed (for 'Select/Deselect')
Campbell Barton [Tue, 4 Jun 2013 21:54:16 +0000 (21:54 +0000)]
yet another check for missing vertex groups needed (for 'Select/Deselect')

7 years agofix [#35629] Incorrect Rendered Viewport Horizontal Splitting
Campbell Barton [Tue, 4 Jun 2013 21:23:32 +0000 (21:23 +0000)]
fix [#35629] Incorrect Rendered Viewport Horizontal Splitting

previously the order didnt matter but with viewport render, its noticable.

7 years agofix [#35613] Dopesheet, Graph Editor Trouble Selecting Channels
Campbell Barton [Tue, 4 Jun 2013 20:26:58 +0000 (20:26 +0000)]
fix [#35613] Dopesheet, Graph Editor Trouble Selecting Channels

7 years agofix own error with removing vertex weights not checking for non-existing weights.
Campbell Barton [Tue, 4 Jun 2013 19:37:18 +0000 (19:37 +0000)]
fix own error with removing vertex weights not checking for non-existing weights.
however this exposed some other odd behavior.

removing a vertex group would add one if not found but only for meshes, not lattices.

now just skip removal if not found.

7 years agofix for own error in recent bridge changes, make sure normals are calculated before...
Campbell Barton [Tue, 4 Jun 2013 17:46:19 +0000 (17:46 +0000)]
fix for own error in recent bridge changes, make sure normals are calculated before use.

7 years agoCycles:
Thomas Dinges [Tue, 4 Jun 2013 17:20:00 +0000 (17:20 +0000)]
* Revert r57203 (len() renaming)
There seems to be a problem with nVidia OpenCL after this and I haven't figured out the real cause yet.
Better to selectively enable native length() later, after figuring out what's wrong.

This fixes [#35612].

7 years agoFix #35602: VBO + dynamic topology sculpt did not show specularity.
Brecht Van Lommel [Tue, 4 Jun 2013 17:10:57 +0000 (17:10 +0000)]
Fix #35602: VBO + dynamic topology sculpt did not show specularity.

7 years agoFix #35622: applying modifiers did not give correct smooth shading normals
Brecht Van Lommel [Tue, 4 Jun 2013 16:02:54 +0000 (16:02 +0000)]
Fix #35622: applying modifiers did not give correct smooth shading normals
after recent changes to avoid computing unneeded normals.

7 years agoFix #35623: separate mesh operator did not redraw the outliner.
Brecht Van Lommel [Tue, 4 Jun 2013 15:56:14 +0000 (15:56 +0000)]
Fix #35623: separate mesh operator did not redraw the outliner.

7 years agoFix #35617: cycles GLSL object texture coordinates were wrong.
Brecht Van Lommel [Tue, 4 Jun 2013 15:49:34 +0000 (15:49 +0000)]
Fix #35617: cycles GLSL object texture coordinates were wrong.

7 years agoFix #35614: cycles objects on mask layer in render layers were writing passes
Brecht Van Lommel [Tue, 4 Jun 2013 15:41:45 +0000 (15:41 +0000)]
Fix #35614: cycles objects on mask layer in render layers were writing passes
such as motion/uv/normal but they should have been excluded from them.

7 years agoFix #35624: rendering to a new window, then switching scene in the main window,
Brecht Van Lommel [Tue, 4 Jun 2013 15:36:00 +0000 (15:36 +0000)]
Fix #35624: rendering to a new window, then switching scene in the main window,
would still continue to render the previous scene in the render window on F12.

7 years agoFix build error on non-x86 architectures as pointed out by Jochen Schmitt.
Brecht Van Lommel [Tue, 4 Jun 2013 11:21:13 +0000 (11:21 +0000)]
Fix build error on non-x86 architectures as pointed out by Jochen Schmitt.

7 years agouse vla's if supported as replacement to BLI_array in subsurf code.
Campbell Barton [Tue, 4 Jun 2013 07:41:21 +0000 (07:41 +0000)]
use vla's if supported as replacement to BLI_array in subsurf code.

7 years agoreduce signed/unsigned conversion in subsurf.
Campbell Barton [Tue, 4 Jun 2013 06:40:35 +0000 (06:40 +0000)]
reduce signed/unsigned conversion in subsurf.

7 years agocorrect error getting the selection from recent change.
Campbell Barton [Tue, 4 Jun 2013 05:03:36 +0000 (05:03 +0000)]
correct error getting the selection from recent change.

7 years agoedit-mesh improvements to select shortest path
Campbell Barton [Tue, 4 Jun 2013 01:23:51 +0000 (01:23 +0000)]
edit-mesh improvements to select shortest path
- Ctrl+RMB only worked for edges & faces
- Menu item 'Select Shortest Path' only worked for vertices.

Now Ctrl+RMB works for vertices and the menu item works for verts/edges/faces (depending on the current selection).

7 years agofix for missing undo push for drag-toggle.
Campbell Barton [Mon, 3 Jun 2013 19:52:53 +0000 (19:52 +0000)]
fix for missing undo push for drag-toggle.

7 years agoquiet compiler warning building with internationalization enabled.
Campbell Barton [Mon, 3 Jun 2013 19:20:45 +0000 (19:20 +0000)]
quiet compiler warning building with internationalization enabled.

7 years agoFix #35378: Shape Key Animation Data still linked when creating full copy of scene
Sergey Sharybin [Mon, 3 Jun 2013 12:28:46 +0000 (12:28 +0000)]
Fix #35378: Shape Key Animation Data still linked when creating full copy of scene

Two issues were found:

- Mesh/Curve/Lattice kay blocks weren't copying their actions
  when making object data local. This lead to object data using
  diffrent AnimData structures which were using the same action.

- Copying actions shall happen after object object data was
  localized. This is so because otherwise we'll copy actions
  for original AnimData, not for copied one.

Reviewed by Joshua, thanks!

7 years agoFix #35610: Multiresolution Modifier Complains About Sculpt Mode
Sergey Sharybin [Mon, 3 Jun 2013 08:26:12 +0000 (08:26 +0000)]
Fix #35610: Multiresolution Modifier Complains About Sculpt Mode

If multires has got zero subdivisions in sculpt mode, no need
of displaying warning message. It was rather strange decision
which confused artists.

Now multires with zero subdivisions will be ignored silently
when in sculpt mode.

7 years agoFix compilation on MinGW32 scons. The compiled library there is already static, rever...
Antony Riakiotakis [Mon, 3 Jun 2013 06:40:25 +0000 (06:40 +0000)]
Fix compilation on MinGW32 scons. The compiled library there is already static, revert renaming of linked library

7 years agofix [#35311] Planar Decimate / Limited Dissolve fails to merge some adjacent faces
Campbell Barton [Mon, 3 Jun 2013 05:07:16 +0000 (05:07 +0000)]
fix [#35311] Planar Decimate / Limited Dissolve fails to merge some adjacent faces
optionally limit by face flipping, also added support to delimit by material and edge crease.

7 years agofix [#35468] screen list shows temp layout
Campbell Barton [Mon, 3 Jun 2013 04:06:54 +0000 (04:06 +0000)]
fix [#35468] screen list shows temp layout

7 years agofix [#35477] Clicking "Connect Hair" button translates a mesh by it's object location.
Campbell Barton [Mon, 3 Jun 2013 03:47:41 +0000 (03:47 +0000)]
fix [#35477] Clicking "Connect Hair" button translates a mesh by it's object location.

7 years agofix [#35501] Operator log: some property changes log as [...].(null) = ...
Campbell Barton [Mon, 3 Jun 2013 00:46:20 +0000 (00:46 +0000)]
fix [#35501] Operator log: some property changes log as [...].(null) = ...

7 years agofix [#35603] Crash with "Tag Freestyle Edge Mark"
Campbell Barton [Sun, 2 Jun 2013 23:58:53 +0000 (23:58 +0000)]
fix [#35603] Crash with "Tag Freestyle Edge Mark"

7 years agofix [#35592] Collada (DAE) exporter messes up vertex colors
Campbell Barton [Sun, 2 Jun 2013 23:53:03 +0000 (23:53 +0000)]
fix [#35592] Collada (DAE) exporter messes up vertex colors

7 years agofix [#35555] Collada: export destroys mesh in some cases
Campbell Barton [Sun, 2 Jun 2013 23:20:49 +0000 (23:20 +0000)]
fix [#35555] Collada: export destroys mesh in some cases

add arguments to calculate normals when converting to bmesh:
  BM_mesh_bm_from_me, DM_to_bmesh

This gives some speedup to undo (which didnt need to re-calculate vertex normals), and array modifier which doesnt need to calculate face normals at all

7 years agoadd asserts when scanfilling or triangulating with zero length normal.
Campbell Barton [Sun, 2 Jun 2013 22:54:00 +0000 (22:54 +0000)]
add asserts when scanfilling or triangulating with zero length normal.

7 years agofix [#35545] Weight paint with mirror modifier does not accurate represent bone influence
Campbell Barton [Sun, 2 Jun 2013 22:40:45 +0000 (22:40 +0000)]
fix [#35545] Weight paint with mirror modifier does not accurate represent bone influence

7 years agofix [#35489] mode_set() not working in background mode, Scene change doesn't change...
Campbell Barton [Sun, 2 Jun 2013 22:21:45 +0000 (22:21 +0000)]
fix [#35489] mode_set() not working in background mode, Scene change doesn't change mode either

7 years agofix [#35434] Segmentation fault switching screen layout from python
Campbell Barton [Sun, 2 Jun 2013 20:59:00 +0000 (20:59 +0000)]
fix [#35434] Segmentation fault switching screen layout from python
(take 2), only free popup handlers.

7 years agoCycles / Math functions:
Thomas Dinges [Sun, 2 Jun 2013 20:39:32 +0000 (20:39 +0000)]
Cycles / Math functions:
* Rename some math functions:
len -> length
len_squared -> length_squared
normalize_len -> normalize_length

* This way OpenCL uses its inbuilt length() function, rather than our own. The other two functions have been renamed for consistency.
* Tested CPU, CUDA and OpenCL compile, should be no functional changes.

7 years agoFix #35599: MovieClip node crashes when using multilayer exr
Sergey Sharybin [Sun, 2 Jun 2013 19:55:57 +0000 (19:55 +0000)]
Fix #35599: MovieClip node crashes when using multilayer exr

Multilayer EXR is not supported as a source for movie clip yet,
but there's no excuse to crash!

7 years agoBetter API design for making text datablocks after loading.
Tamito Kajiyama [Sun, 2 Jun 2013 17:52:06 +0000 (17:52 +0000)]
Better API design for making text datablocks after loading.

An optional 'internal' argument was added to the operator.
The changes in revision 57153 were reverted, so that the is_in_memory and is_dirty
properties of text datablocks are not editable again.

In the C API layer, BKE_text_load_ex() was introduced to allow for optionally
making text datablocks internal after loading.

7 years agoadd vertex slide to mesh edit toolbar. also expose merge as a menu (rather then butto...
Campbell Barton [Sun, 2 Jun 2013 17:32:45 +0000 (17:32 +0000)]
add vertex slide to mesh edit toolbar. also expose merge as a menu (rather then button causing popup)

7 years agofix for crash in edgering subd when 3+ disconnected edge rings were found.
Campbell Barton [Sun, 2 Jun 2013 17:02:56 +0000 (17:02 +0000)]
fix for crash in edgering subd when 3+ disconnected edge rings were found.

7 years agotweak to recent commit, don't show keymap in menu tooltips.
Campbell Barton [Sun, 2 Jun 2013 15:58:43 +0000 (15:58 +0000)]
tweak to recent commit, don't show keymap in menu tooltips.

7 years agoFix #35587: Cycles: image movie to single image crashing
Sergey Sharybin [Sun, 2 Jun 2013 15:02:17 +0000 (15:02 +0000)]
Fix #35587: Cycles: image movie to single image crashing

Crash was happening on windows platforms only and was caused
by some specifics about how CRT works.

Basically, blender and all of the .dll are compiled with /MT
flag, which means blender.exe and all .dll are using separate
environments. This makes it impossible to pass file descriptors
from blender to other dll, because it becomes invalid in the dll.

And this is exactly what was happening: OIIO was trying to open
movie file with all known plugins and one of them was zlib. And
the way OIIO was using zlib API is opening the file using Boost
and passing a file descriptor to zlib. And since zlib was a
dynamic library this lead to general issues using this descriptor
in zlib code.

Solved by linking to zlib statically. This allows to safely pass
file descriptor to zlib API. Alternative would be to compile all
the stuff with /MD flag, but that's much bigger and less robust
way to fix the issue.

Tested on windows using msvc2008, scons plus cmake both 32 and 64
bit versions. Seems to be working fine.

Further tweaks for mingw and msvc2012 could be needed tho.

7 years agoCode cleanup / Cycles:
Thomas Dinges [Sun, 2 Jun 2013 14:52:29 +0000 (14:52 +0000)]
Code cleanup / Cycles:
* Avoid 2 int castings in hair code and fix some comments.

7 years agoFix for potential division by zero during Freestyle stroke rendering.
Tamito Kajiyama [Sun, 2 Jun 2013 11:42:04 +0000 (11:42 +0000)]
Fix for potential division by zero during Freestyle stroke rendering.
Problem report by Light BWK through personal communications with a
sample .blend file for reproducing the problem.  Thanks!

7 years agocorrections to modifiers from recent normal handling changes
Campbell Barton [Sun, 2 Jun 2013 04:09:29 +0000 (04:09 +0000)]
corrections to modifiers from recent normal handling changes
- solidify didn't define a dependsOnNormals callback (which it should have)
- build wasn't passing on dirty normals.
- decimate wasnt setting dirty normals.

7 years agouse booleans for modifiers and api callbacks.
Campbell Barton [Sun, 2 Jun 2013 03:59:19 +0000 (03:59 +0000)]
use booleans for modifiers and api callbacks.

7 years agocode cleanup: remove unused struct
Campbell Barton [Sun, 2 Jun 2013 02:25:40 +0000 (02:25 +0000)]
code cleanup: remove unused struct

7 years agoremove duplicate operator,
Campbell Barton [Sun, 2 Jun 2013 00:29:30 +0000 (00:29 +0000)]
remove duplicate operator,
select-split and unlink-selection did the same thing,
keep select split since it fits closer to mesh editmode and single key access (Ykey).

7 years agofix regression in reducing normal recalculation [#35595],
Campbell Barton [Sun, 2 Jun 2013 00:20:26 +0000 (00:20 +0000)]
fix regression in reducing normal recalculation [#35595],
pass the dirty-normal-state from the input dm to the output.

7 years agoAdded a short-cut button in the Freestyle Python Scripting mode for loading
Tamito Kajiyama [Sat, 1 Jun 2013 22:37:15 +0000 (22:37 +0000)]
Added a short-cut button in the Freestyle Python Scripting mode for loading
a style module file as a text datablock and appending it to the style module

7 years agoBug fix, own collection while testing
Ton Roosendaal [Sat, 1 Jun 2013 15:24:15 +0000 (15:24 +0000)]
Bug fix, own collection while testing

New OSX "Life resize" was also being called during opening of windows - when things are
not initialized yet. Crashed on opening full-screen window (which is animated in OSX).

7 years agoDon't hide sockets in the node properties panel. This feature is only useful to reduc...
Lukas Toenne [Sat, 1 Jun 2013 12:45:45 +0000 (12:45 +0000)]
Don't hide sockets in the node properties panel. This feature is only useful to reduce the size and clutter of actual nodes, in the panel it's better to show all meaningful inputs.

7 years agoExtended max size for group node types from 200 to 400, in case users need long socke...
Lukas Toenne [Sat, 1 Jun 2013 12:45:42 +0000 (12:45 +0000)]
Extended max size for group node types from 200 to 400, in case users need long socket names visible.

7 years agoFix for #35591:
Thomas Dinges [Sat, 1 Jun 2013 12:23:49 +0000 (12:23 +0000)]
Fix for #35591:
* Cycles Mix closure could render strange effects, when the user entered a value out of the 0...1 range. This was already clamped for OSL, clamp for SVM as well.

7 years agoUpdate libmv from own branch
Sergey Sharybin [Sat, 1 Jun 2013 10:30:46 +0000 (10:30 +0000)]
Update libmv from own branch

Fixes compilation error on win32 and shall give few
cpu ticks boost by passing vectors by reference rather
than by value.

7 years agoUpdtae buildbot's master.vfg
Sergey Sharybin [Sat, 1 Jun 2013 10:18:47 +0000 (10:18 +0000)]
Updtae buildbot's master.vfg

7 years agofix stubs for blenderplayer linking
Dalai Felinto [Sat, 1 Jun 2013 08:59:52 +0000 (08:59 +0000)]
fix stubs for blenderplayer linking

7 years agorna small fixes (bad copy-pasting)
Dalai Felinto [Sat, 1 Jun 2013 08:49:51 +0000 (08:49 +0000)]
rna small fixes (bad copy-pasting)

7 years agodisplay menu items key shortcuts in the button tooltips.
Campbell Barton [Sat, 1 Jun 2013 05:53:44 +0000 (05:53 +0000)]
display menu items key shortcuts in the button tooltips.

7 years agominor changes to toolbar
Campbell Barton [Sat, 1 Jun 2013 05:26:37 +0000 (05:26 +0000)]
minor changes to toolbar
- expose unwrap as a menu (rather then a regular button that pops up a menu)
- move 2 extrude buttons into one menu button, also do the same for the mesh menu.

7 years agoadd popup menu to allow python scripts to show popups without having to define a...
Campbell Barton [Sat, 1 Jun 2013 04:06:38 +0000 (04:06 +0000)]
add popup menu to allow python scripts to show popups without having to define a menu class first.

7 years agoFix another windows / msvc build error.
Brecht Van Lommel [Sat, 1 Jun 2013 02:39:34 +0000 (02:39 +0000)]
Fix another windows / msvc build error.

7 years agoFix windows / msvc build error.
Brecht Van Lommel [Sat, 1 Jun 2013 02:28:57 +0000 (02:28 +0000)]
Fix windows / msvc build error.

7 years agoFix for r56965 by Tamito:
Thomas Dinges [Sat, 1 Jun 2013 02:14:07 +0000 (02:14 +0000)]
Fix for r56965 by Tamito:
* Panorama Camera was not working for Blender Internal and Cycles anymore.

Code checked for Freestyle render layer flag, but as the flag is enabled per default, it broke Panorama camera in all cases. It made no sense to check this on a render layer basis anyway... check if Freestyle is enabled in general now instead.

7 years agoeditmesh display user request, keep the edge lengths within the view bounds (so you...
Campbell Barton [Fri, 31 May 2013 23:52:39 +0000 (23:52 +0000)]
editmesh display user request, keep the edge lengths within the view bounds (so you can see edge length even when zoomed in)

7 years agostyle cleanup
Campbell Barton [Fri, 31 May 2013 22:35:25 +0000 (22:35 +0000)]
style cleanup

7 years agoprevious fix for #35578 didnt work right, check direction of the open edge loop too.
Campbell Barton [Fri, 31 May 2013 18:58:32 +0000 (18:58 +0000)]
previous fix for #35578 didnt work right, check direction of the open edge loop too.

7 years agoStupid typo, reported by Eugenio Pignataro on ML, thx.
Bastien Montagne [Fri, 31 May 2013 17:39:43 +0000 (17:39 +0000)]
Stupid typo, reported by Eugenio Pignataro on ML, thx.

7 years agoCycles OpenCL: keep the opencl context and program around for quicker rendering
Brecht Van Lommel [Fri, 31 May 2013 16:19:03 +0000 (16:19 +0000)]
Cycles OpenCL: keep the opencl context and program around for quicker rendering
the second time, as for example Intel CPU startup time is 9 seconds.

* Adds an cache for contexts and programs for each platform and device pair,
  which also ensure now no two threads try to compile and write the binary cache
  file at the same time.
* Change clFinish to clFlush so we don't block until the result is done, instead
  it will block at the moment we copy back memory.
* Fix error in Cycles time_sleep implementation, does not affect any active code
* Adds some (disabled) debugging code in the task scheduler.

Patch #35559 by Doug Gale.

7 years agofix [#35578] New bridge tool; bowtie crossing when destination edges form one half...
Campbell Barton [Fri, 31 May 2013 15:48:42 +0000 (15:48 +0000)]
fix [#35578] New bridge tool; bowtie crossing when destination edges form one half of an 'X'

7 years agoFix to actually disable DEBUG_BACKTRACE by default.
Brecht Van Lommel [Fri, 31 May 2013 12:36:35 +0000 (12:36 +0000)]
Fix to actually disable DEBUG_BACKTRACE by default.

7 years agoFix #35497: rendering preview range gives wrong duration
Sergey Sharybin [Fri, 31 May 2013 10:31:44 +0000 (10:31 +0000)]
Fix #35497: rendering preview range gives wrong duration

Was a mistake in PTS calculation when using opengl animation render.

7 years agoFix #35581: Crash when using Track Refine
Sergey Sharybin [Fri, 31 May 2013 10:17:29 +0000 (10:17 +0000)]
Fix #35581: Crash when using Track Refine

7 years agoFollow up to previous commit
Sergey Sharybin [Fri, 31 May 2013 09:55:34 +0000 (09:55 +0000)]
Follow up to previous commit

Made Ctrl-LMB clear selection from the object.

7 years agoFix #35567: Shift+LMB doesn't toggle selection when using the Maya preset
Sergey Sharybin [Fri, 31 May 2013 09:49:52 +0000 (09:49 +0000)]
Fix #35567: Shift+LMB doesn't toggle selection when using the Maya preset

Also added back RMB to set 3d cursor position.

7 years agoMade text datablock properties 'is_in_memory' and 'is_dirty' editable in Python.
Tamito Kajiyama [Fri, 31 May 2013 07:40:03 +0000 (07:40 +0000)]
Made text datablock properties 'is_in_memory' and 'is_dirty' editable in Python.

The rationale of this revision is to provide an easy way to make text datablocks internal
from within Python (i.e., by setting these properties to True and the 'filepath' property
to empty string).

7 years agoimprove edgering subdivide curvature calculations (calculate length projected onto...
Campbell Barton [Fri, 31 May 2013 06:28:11 +0000 (06:28 +0000)]
improve edgering subdivide curvature calculations (calculate length projected onto the normal plane).
also correct recely added asserts.

7 years agocorrect cast to uintptr_t for smallhash use.
Campbell Barton [Fri, 31 May 2013 00:19:38 +0000 (00:19 +0000)]
correct cast to uintptr_t for smallhash use.

7 years agotweak to edge-loop select, so loop selecting a side of a subdivided triangle selects...
Campbell Barton [Thu, 30 May 2013 21:39:12 +0000 (21:39 +0000)]
tweak to edge-loop select, so loop selecting a side of a subdivided triangle selects all edges along one side.

7 years agounits: display 0.5mm rather then 500um, nicer when dealing with very small sizes...
Campbell Barton [Thu, 30 May 2013 21:17:50 +0000 (21:17 +0000)]
units: display 0.5mm rather then 500um, nicer when dealing with very small sizes but not microscopic.

7 years agoremove null checks for list functions, all hard asserts so we would have noticed...
Campbell Barton [Thu, 30 May 2013 19:05:46 +0000 (19:05 +0000)]
remove null checks for list functions, all hard asserts so we would have noticed problems already.

7 years agofix for incorrect use of strncat in uiItemMenuEnumO
Campbell Barton [Thu, 30 May 2013 18:42:32 +0000 (18:42 +0000)]
fix for incorrect use of strncat in uiItemMenuEnumO

7 years agoremove CD_MASK_NORMAL from CD_MASK_DERIVEDMESH, bmesh merge included this but its...
Campbell Barton [Thu, 30 May 2013 18:09:19 +0000 (18:09 +0000)]
remove CD_MASK_NORMAL from CD_MASK_DERIVEDMESH, bmesh merge included this but its not needed.

Now add asserts to make sure this layer is only added once the modifier stack has been calculated.
this saves normal layer being calculated whenver vertex normals need updating.

7 years agomodifier stack: lazy initialize normals
Campbell Barton [Thu, 30 May 2013 17:36:43 +0000 (17:36 +0000)]
modifier stack: lazy initialize normals

many modifiers were calculating normals, when those normals were ignored by the next modifier.
now flag normals as dirty and recalculate for modifiers that set use `dependsOnNormals()` callback.

Quick test on mesh with 12 modifiers (mostly build type), calculated normals 6 times, now it only runs once - so this will give some speedup too.

7 years agoBacktrace for unfreed memory blocks
Sergey Sharybin [Thu, 30 May 2013 14:27:24 +0000 (14:27 +0000)]
Backtrace for unfreed memory blocks

Added an option to show backtrace from where
non-freed datablock was allocated from.

To enable this feature, simply enable DEBUG_BACKTRACE
in mallocn.c file and all unfreed datablocks will
be followed up by a backtrace.

Currently works on linux and osx only,
windows support is on TODO.

This feature is for sure disabled by default,
so does not affect any builds which don't
explicitly define DEBUG_BACKTRACE.

7 years agofix debug derived mesh print function, layers in the customdata that were NULL were...
Campbell Barton [Thu, 30 May 2013 13:13:43 +0000 (13:13 +0000)]
fix debug derived mesh print function, layers in the customdata that were NULL were not printed.

7 years agoFixed compilation error after recent keyframes commit.
Sergey Sharybin [Thu, 30 May 2013 12:05:28 +0000 (12:05 +0000)]
Fixed compilation error after recent keyframes commit.