Commit Graph

54734 Commits

Author SHA1 Message Date
Sergey Sharybin
da64e8ae05 Fix T40800: Crash when editing material nodes
it was caused by ee5f432. Not sure why exactly blender runs into
threading conflicts here since material preview works.

Let's keep it simple for now and disable material nodes preview,
because it's not supported by the interface anyway.

This is to be included to the final release.
2014-06-25 15:38:40 +06:00
Campbell Barton
0529766f32 Use api function for flipping button list & rename to BLI_listbase_reverse 2014-06-25 19:33:35 +10:00
Campbell Barton
833c03791f Use fill function for setting origindex 2014-06-25 19:29:06 +10:00
Campbell Barton
92733179ae Speedup for skin modifier, avoid calculating normals many times 2014-06-25 19:02:49 +10:00
Campbell Barton
72f77dd69a Fix T40786: Crash setting negative sound offset 2014-06-25 16:45:03 +10:00
Campbell Barton
d411e1548c Correction to last commit 2014-06-25 04:22:14 +10:00
Campbell Barton
df1c400420 Use gnu-libc arg order for BLI_sort_r
When building on gnu-libc don't use our own implementation.
2014-06-25 04:04:52 +10:00
Sergey Sharybin
04648767fa Make main library safe(er) for the threaded usage
Added a lock to the Main which is getting acquired and released
when modifying it's lists.

Should not be any functional changes now, it just means Main is
now considered safe without worrying about locks in the callee.
2014-06-24 23:35:17 +06:00
Campbell Barton
fc1040cc47 Fix example 2014-06-25 03:04:53 +10:00
Campbell Barton
1731d47976 Fix own error in recent tooltip commit 2014-06-25 02:40:53 +10:00
Tamito Kajiyama
9563bde9a5 Freestyle: use mathutils_array_parse() instead of its own helper functions.
Patch contribution by flokkievids (Folkert de Vries).  Thanks!
2014-06-24 23:13:56 +09:00
Tamito Kajiyama
252eaed483 Freestyle: use bool instead of int.
Patch contribution by flokkievids (Folkert de Vries).  Thanks!
2014-06-24 23:13:55 +09:00
Campbell Barton
c5ccbacdaa move STACK_* macros into BLI_stackdefines.h 2014-06-25 00:01:33 +10:00
Campbell Barton
d19d1b5497 Add MEMCPY_STRUCT_OFS macro for copying values after a struct member
use for DM_to_mesh to avoid clobbering the ListBase
2014-06-24 23:50:12 +10:00
Campbell Barton
77616cbe11 add STACK_REMOVE macro 2014-06-24 22:14:22 +10:00
Joshua Leung
0bc94f8c7d Code Cleanup - Using the enum types in more API signatures instead of relying on coders to do the right thing 2014-06-24 22:01:06 +12:00
Joshua Leung
95b39acdb1 Code Cleanup - Replacing shorts with bools and enum types 2014-06-24 22:01:05 +12:00
4b209f063c Fix T40695: world surface shader incorrectly visible with world volume. 2014-06-24 11:35:48 +02:00
Campbell Barton
16baa8c273 Update the design of tooltips
- left aligned
- higher contrast between tip text and py-text
- use monospace for py-text

D611 by Severin, design by Plyczkowski, with own minor changes.
2014-06-24 19:07:41 +10:00
Tamito Kajiyama
e7c92f1145 Freestyle: Progress bar updates during mesh loading. 2014-06-24 17:25:04 +09:00
Tamito Kajiyama
dd96be356d Freestyle: Fix for a couple of missing names in freestyle.chainingiterators.__all__. 2014-06-24 17:25:02 +09:00
Sergey Sharybin
4f0e42489f Followup for the previous commit
Need to do the same for render exec() because it doesn't
use the job system.
2014-06-24 14:23:33 +06:00
Sergey Sharybin
cc0c94d535 Switch allocator to thread-safe when rendering from the command line
This is needed because render threads would do some allocations like
part buffer allocation and so. This is likely harmless with the lock
free allocator (not on Windows tho), but when using guarded allocator
we need to be sure access to the list of MemHead is safe.
2014-06-24 14:15:21 +06:00
Bastien Montagne
65bb121401 Fix compilation on OSX after own rB414c70435dcd...
Sigh, why can't all unix have same includes? :/
2014-06-24 08:31:29 +02:00
Joshua Leung
9ca0c7eea3 Ctrl-F now activates the filter-by-name functionality for Animation Editors 2014-06-24 17:53:13 +12:00
Joshua Leung
afaf6e8d71 Improve doxygen comment to include some type info to make it more useful 2014-06-24 17:53:12 +12:00
Campbell Barton
a64e9ba83f Polyfill2d: Correct boundbox check (Fix T40777) 2014-06-24 15:32:49 +10:00
Tamito Kajiyama
ce729677db D319: Freestyle Python scripts update.
This revision is meant to update Freestyle's Python scripts to make full usage
of the new features of Python and Freestyle's Python API.

Freestyle's Python scripts are pretty old already, and were never given much
attention. With the 2.7x generation of Blender coming up, this is an excellent
time to update Freestyle's Python scripts, hopefully adding some new features
and achieving some speed improvements on the way.

Main goals:
* use for loops where possible
* general cleanup, making use of more recent python features (generators,
  ternary operator, ect.)
* update the documentation on the way (it's lacking atm)


Differential revision: https://developer.blender.org/D319

Author: flokkievids (Folkert de Vries)

Reviewed by: kjym3 (Tamito Kajiyama)
2014-06-24 13:53:14 +09:00
Jens Verwiebe
f37ec65f80 OSX: Fix T40749, own mistake for m_lionStyleFullScreen condition 2014-06-23 21:27:38 +02:00
Bastien Montagne
7e7a85f907 Fix own typo in temp_data patch, (windows-only)
Don't know when this sneaked in, I did wrote that part of the patch on win VM with MSVC2013... :/

Note: letting asside warnings for now, then should not prevent building anyway.
2014-06-23 16:56:35 +02:00
Lukas Tönne
647870bc6a Use toolbar tabs for node categories instead of just a long list of
panels.

Patch by @Severin (with minor modifications by me). As discussed in
{D535} the node editor does not have real modal operator tools like the
3D view or image editors for instance, so it makes sense to utilise it
this way. Tabs really help in this area due to the large amount of node
types and categories. Further tweaks could be made later if the need
arises.
2014-06-23 16:37:41 +02:00
Bastien Montagne
b82e84f179 BMesh: we actually can set loop indices too while converting from Mesh to BMesh... 2014-06-23 16:21:53 +02:00
Campbell Barton
7df2717727 Add ED_paint.h, split out ED_sculpt.h
also rename some functions to match our convention
2014-06-23 22:00:44 +10:00
Bastien Montagne
414c70435d T39690: Modifications to Blender's 'temp dir' system.
Current temporary data of Blender suffers one major issue - default 'temp' dir on Windows is never
automatically cleaned up, and can end being quite big when used by Blender, especially when we have
to store per-process data (using getpid() in file names).

To address this, this patch:
* Divides tempdir paths in two, one for 'base' temp dir (the same as previous unique tempdir path),
  the other is a mkdtemp-generated sub-dir, specific to each Blender instance.
* Only uses base tempdir when we need some shallow persistance accross Blender sessions - and we always
  reuse the same filename (quit.blend...) or generate small file (crash reports...).
* Uses temp sub-dir for heavy files like pointcache or renderEXRs (Save Buffer option).
* Erases temp sub-dir on quit or crash.

To get this working it also adds a working 'recursive delete' to BLI_delete() under Windows.

Note that, as in current code, the 'recover render result' hack-feature that was possible
with SaveBuffer option is still removed. A real renderresult cache feature will be added
soon, though.

Reviewers: campbellbarton, brecht, sergey

Reviewed By: campbellbarton, sergey

CC: sergey

Differential Revision: https://developer.blender.org/D531
2014-06-23 13:42:54 +02:00
Sergey Sharybin
9b987103f6 Use specified exception mask for buildinfo
This way we only catch exceptions which we're intended to
and if something bad happens (like missing import due to
refactor or so) we'll see them instantly.
2014-06-23 15:46:41 +06:00
Sergey Sharybin
3bd965bc03 Fix T40764: Keyframed Render Layers Don't Work as Intended 2014-06-23 14:33:58 +06:00
Lukas Tönne
8cea610e74 Fix compiler error in Cycles Beckmann sampling precomputation: strict
compiler flags don't allow implicit double -> float casting.

Code was added in rB8fbd71e.
2014-06-23 09:47:52 +02:00
Lukas Tönne
95d6c01478 Fix T40756 Select Linked by Particle System matches ignores selected
psys.

This is inconsistent with other comparable cases like materials, where
the active slot is used to define matching objects.
2014-06-23 08:22:42 +02:00
Tamito Kajiyama
77f357728f D605: Fixes for proper handling of wchar_t paths in MinGW.
* Fixed different not-in-sync #ifdef blocks for struct stat variants under Windows.

Comments have been left to indicate the portions of BLI_fileops.h and
BLI_fileops_types.h that need to stay in sync.

* Added BLI_wstat() to de-duplicate #ifdef blocks for stat() variants on Windows.

* Fix for opendir() and associate functions in MinGW not working properly with
non-ASCII, MBCS-compatible paths.

MinGW (FREE_WINDOWS) has opendir() and _wopendir(), and only the
latter accepts a path name of wchar_t type. Rather than messing up with
extra #ifdef's here and there, Blender's own implementations of opendir()
and related functions are used to properly support paths with non-ASCII,
MBCS-compatible characters.

Tested with MSVC 2013 Express, MinGW32 (gcc 4.6.2) and MinGW-w64 (gcc 4.7.1).


Differential Revision: https://developer.blender.org/D605

Reviewed By: campbellbarton
2014-06-23 10:07:06 +09:00
Campbell Barton
489937e1e7 GTest now works without buildinfo 2014-06-23 01:16:49 +10:00
Antony Riakiotakis
95da8ba64b add brush icons from paint branch to make diff more manageable for arcanist 2014-06-22 17:48:08 +03:00
Campbell Barton
3a75381505 Apply fix for T40745 to extrude_face_region too 2014-06-23 00:12:06 +10:00
Campbell Barton
3e2d8d2233 Spelling 2014-06-22 23:55:00 +10:00
Campbell Barton
728041019e Editmesh: extruding end-point verts now maintains edge-direction
Resolves T40745, where faces from extruded edges had flipped normals.
2014-06-22 18:41:07 +10:00
Campbell Barton
7bc2f54867 Code cleanup: style 2014-06-22 15:02:27 +10:00
Campbell Barton
2762432052 Code cleanup: de-duplicate widget_num_tria, widget_scroll_circle 2014-06-22 15:01:54 +10:00
Campbell Barton
f69d5cc4b8 Remove unused function 2014-06-22 13:05:48 +10:00
Campbell Barton
9a7bfca448 WM: set circle select minimum radius to 1 2014-06-22 13:03:20 +10:00
8fbd71e5f2 Cycles: improved Beckmann sampling using precomputed data
It turns out that the new Beckmann sampling function doesn't work well with
Quasi Monte Carlo sampling, mainly near normal incidence where it can be worse
than the previous sampler. In the new sampler the random number pattern gets
split in two, warped and overlapped, which hurts the stratification, see the
visualization in the differential revision.

Now we use a precomputed table, which is much better behaved. GGX does not seem
to benefit from using a precomputed table.

Disadvantage is that this table adds 1MB of memory usage and 0.03s startup time
to every render (on my quad core CPU).

Differential Revision: https://developer.blender.org/D614
2014-06-21 22:31:44 +02:00
88d8358f91 Fix T40703: cycles viewport smoke not updating when changing frame. 2014-06-21 22:21:04 +02:00