Campbell Barton [Sat, 27 Feb 2016 18:10:00 +0000 (05:10 +1100)]
Cleanup split creator.c
creator.c was getting hard to follow.
- Split off argument and signal handling into own files.
- Move docstrings next to functions (to keep docs grouped with code).
Campbell Barton [Sat, 27 Feb 2016 18:03:49 +0000 (05:03 +1100)]
Fix T47592: Wrong line width w/ custom-bones
Campbell Barton [Sat, 27 Feb 2016 17:24:22 +0000 (04:24 +1100)]
Docs: early exist build process on error
Don't attempt to build docs when generation fails.
Campbell Barton [Sat, 27 Feb 2016 17:23:58 +0000 (04:23 +1100)]
Docs: Add missing context members
Sergey Sharybin [Sat, 27 Feb 2016 13:05:40 +0000 (14:05 +0100)]
Buildbot: Rename i386 to i686, we don't support pre-i686 CPUs anyway
Bastien Montagne [Sat, 27 Feb 2016 12:17:38 +0000 (13:17 +0100)]
Fix T47596: Bone motion path - confusing UI in 3DView tools.
Now using same UI as in object/armature properties, also save one line in 3DView panesl. ;)
Nothing crucial there, but nice & safe to backport to 2.77 imho.
Sergey Sharybin [Sat, 27 Feb 2016 12:09:12 +0000 (13:09 +0100)]
Buildbot: Support build in a newer chroot
Thomas Dinges [Sat, 27 Feb 2016 12:07:32 +0000 (13:07 +0100)]
Cleanup: Update Cycles standalone copyright info.
Thomas Dinges [Sat, 27 Feb 2016 12:06:31 +0000 (13:06 +0100)]
Release Cycle: BCon1 again, alpha stage.
Bastien Montagne [Sat, 27 Feb 2016 10:30:23 +0000 (11:30 +0100)]
Fix T47593: 'Move to layer' will be crash in blender 2.77rc1.
To be backported to 2.77.
Joshua Leung [Fri, 26 Feb 2016 12:11:37 +0000 (01:11 +1300)]
Fix: "Twist" GP Sculpt brush in 2D Editors was unusable... now mostly usable, if still slightly offset
Joshua Leung [Fri, 26 Feb 2016 11:26:17 +0000 (00:26 +1300)]
Fix: "Twist" GP Sculpt brush didn't work well in 3D View
Campbell Barton [Fri, 26 Feb 2016 11:40:22 +0000 (22:40 +1100)]
2.77 splash
by Pokedstudio
Sergey Sharybin [Fri, 26 Feb 2016 10:15:23 +0000 (11:15 +0100)]
Blender 2.77 release: Bump subversion and go into RC cycle now
Splash and RC1 AHOY are incoming.
Joshua Leung [Fri, 26 Feb 2016 02:39:02 +0000 (15:39 +1300)]
Code reshuffling to prevent problems like the previous commit happening again
Joshua Leung [Fri, 26 Feb 2016 02:34:32 +0000 (15:34 +1300)]
Fix T47503 - My previous fix for T47472 accidentally reused an unrelated flag
ked->iterflags actually already had an enum defined, but at the time of the previous
fix, I'd forgotten that it was defined. As a result, "f1 needs NLA remap" got given
the same flag as "include handles when doing keyframe selection checks".
Joshua Leung [Fri, 26 Feb 2016 01:39:50 +0000 (14:39 +1300)]
Code Cleanup - Fix comments
Joshua Leung [Thu, 25 Feb 2016 12:07:26 +0000 (01:07 +1300)]
Restore ability to clear motionpaths from selected objects/bones only
In response to user feedback, this commit brings back the ability to
limit motionpath clearing to only happening for those on selected
objects/bones.
By default, the "Clear" operator will clear from all objects/bones,
unless the Shift key is held.
Campbell Barton [Fri, 26 Feb 2016 02:42:56 +0000 (13:42 +1100)]
CMake: show error on missing LIBDIR early on
Previously CMake would show many messages about missing libs before checking for a missing LIBDIR.
Now show the error immediately and exit.
Also allow for custom LIBDIR on OSX.
Campbell Barton [Fri, 26 Feb 2016 00:57:35 +0000 (11:57 +1100)]
UI: Add 'Copy Python Command' to menu
This feature wasn't exposed anywhere in the interface.
Campbell Barton [Fri, 26 Feb 2016 00:13:32 +0000 (11:13 +1100)]
UI: improve cursor mapping for int buttons
With continuous grab disabled, non-linear mapping for int buttons
wasn't working usefully with small mouse movements.
Now 2x pixels motion adjusts by at least 1 w/ int buttons.
Campbell Barton [Thu, 25 Feb 2016 22:12:13 +0000 (09:12 +1100)]
Fix T47015: BGE, objects vanish aligning to vector
1811 by @mangostaniko
Fixes regression since moving to floats.
Kévin Dietrich [Thu, 25 Feb 2016 21:44:16 +0000 (22:44 +0100)]
Fix T47559: Crash when scrubbing in time on a OpenVDB Smoke.
Cache reading was not using the right simulation flags (outdated), which
made it lookup non-existent grids, and crash on de-referencing null
pointers.
Campbell Barton [Thu, 25 Feb 2016 21:20:56 +0000 (08:20 +1100)]
Fix for object align not using local view cursor
Sergey Sharybin [Thu, 25 Feb 2016 19:01:31 +0000 (20:01 +0100)]
Fix T47565: Crash when adding texture node in compositor
Campbell Barton [Thu, 25 Feb 2016 09:36:06 +0000 (20:36 +1100)]
3D View: correct menu for moving out of local-view
Also name more clearly
Campbell Barton [Thu, 25 Feb 2016 00:54:30 +0000 (11:54 +1100)]
Cleanup: de-duplicate curve menu
Campbell Barton [Thu, 25 Feb 2016 00:02:46 +0000 (11:02 +1100)]
Cleanup: const args for curve handle calculation
Campbell Barton [Wed, 24 Feb 2016 23:44:34 +0000 (10:44 +1100)]
Cleanup: use defines for handles
Copied from original function.
Campbell Barton [Wed, 24 Feb 2016 23:37:22 +0000 (10:37 +1100)]
Correct comments
Campbell Barton [Wed, 24 Feb 2016 20:31:44 +0000 (07:31 +1100)]
CMake: check for minimum MSVC version
Needed since older versions are unsupported (giving cryptic errors).
Campbell Barton [Wed, 24 Feb 2016 18:47:59 +0000 (05:47 +1100)]
Remove paste-from-file from menu
Operator no longer exists.
Campbell Barton [Wed, 24 Feb 2016 18:49:25 +0000 (05:49 +1100)]
UI: Use zoom in/out icons for curves
Was confusing since zoom icons were used for add/remove elsewhere (color-ramp & presets).
Sergey Sharybin [Wed, 24 Feb 2016 14:50:08 +0000 (15:50 +0100)]
Link windows builds against Blosc when OpenVDB is enabled
OpenVDB is compiled with Blosc support, meaning we should pass Blosc to
a linker now.
Unfortunately, the Blosc has compiled-in crt and pthread library, which
still screws up linking.
Sergey Sharybin [Wed, 24 Feb 2016 13:28:35 +0000 (14:28 +0100)]
Fix race condition in point density texture min/max code
Sergey Sharybin [Wed, 24 Feb 2016 13:23:45 +0000 (14:23 +0100)]
Cycles: Fix bug in CMJ pattern when number of samples is 1
It was wrongly considering 1 is a power of 2. While it is a correct thing
(1 == 2^0) it's not what the math in some later formulas expects.
Kévin Dietrich [Tue, 23 Feb 2016 18:48:33 +0000 (05:48 +1100)]
Fix memory leak in panel category update
Campbell Barton [Tue, 23 Feb 2016 15:53:11 +0000 (02:53 +1100)]
UI: expose soft limits to custom-property editor
Internally custom-id-properties used soft-limits, but there was no way to edit these.
Bastien Montagne [Tue, 23 Feb 2016 15:19:59 +0000 (16:19 +0100)]
Fix (unreported) crash when opening a file from splash screen when 'load UI' option is disabled.
Took me some time to figure out what was going on here... Was again that delayed button
callback stuff (`ui_apply_but_funcs_after()`), first calling button op, and then
its callback func.
Issue was that 'open file' op (through call to `WM_file_read()`) would clear
the splash screen (as more or less the entire 'dynamic' UI), but callback func of that splash
(`wm_block_splash_refreshmenu()`) would still try to access that freed menu's region.
So, root of the issue seems to be that setting context's wm/win/etc. would not clear
context's menu pointer (while clearing all other 'sub' pointers). I could not find
nor imagine any case where this behavior could be desired, so simply added nullification
of that pointer when setting context's wm/win/etc.
Note that crash was due to read-after-free, infuriating debug builds with asan,
but seems like release builds never actually crashed on it.
Sergey Sharybin [Tue, 23 Feb 2016 14:26:05 +0000 (15:26 +0100)]
Fix T47444: Texture node in compositing nodes does not update
Bastien Montagne [Tue, 23 Feb 2016 13:48:27 +0000 (14:48 +0100)]
bplayer compile fix (c)
Campbell Barton [Tue, 23 Feb 2016 13:31:46 +0000 (00:31 +1100)]
Fix memory leak running project-paint from Python
Sergey Sharybin [Tue, 23 Feb 2016 13:33:15 +0000 (14:33 +0100)]
Point density: Removed wrong line in previous commit
Thanks Bastien for finding this out!
Sergey Sharybin [Tue, 23 Feb 2016 13:32:28 +0000 (14:32 +0100)]
Remove unused "Free Unused" option from compositor
It was basically doing nothing, for ages.
Campbell Barton [Tue, 23 Feb 2016 12:47:30 +0000 (23:47 +1100)]
Fix T47534: Crash w/ project-paint from Python
Sergey Sharybin [Tue, 23 Feb 2016 11:19:56 +0000 (12:19 +0100)]
Make point density sampling threaded
It should be all fine to sample same point density from multiple threads,
this is something what Blender Internal is doing actually.
Sergey Sharybin [Tue, 23 Feb 2016 10:58:27 +0000 (11:58 +0100)]
Fix memory leak in point density
The issue was happening when having unconnected point density which
will cache data but will not free it because there's no actual call
to the actual sampling.
Now the idea is to make sure cache is zeroed on file load and undo
and then caching via RNA will free the data if any exists. This could
leave us with a single copy of cache in the node if it's not used,
but it's quite small amount of memory and it's not leaking.
Campbell Barton [Tue, 23 Feb 2016 09:58:09 +0000 (20:58 +1100)]
UI: disable undo for cycling render slot
This wasn't working and used extra undo steps.
Sergey Sharybin [Tue, 23 Feb 2016 08:48:47 +0000 (09:48 +0100)]
CMake: Enable BLOSC for OpenVDB for the full config
This will respect the official build configuration where we should
have BLOSC enabled.
We can't really detect if OpenVDB was compiled with BLOSC or not,
so seems we can't really avoid this extra flag.
Sergey Sharybin [Tue, 23 Feb 2016 08:44:54 +0000 (09:44 +0100)]
Fix warnings reported by MSVC
Mainly it's related on a bad practice in SDL to force-define __SSE__
and __SSE2__ flags which generates quite some warnings and causes too
much noise.
There are some other warnings fixed. Should be no functional changes.
NeXyon, please check the changes in audaspace :)
Campbell Barton [Tue, 23 Feb 2016 03:50:30 +0000 (14:50 +1100)]
Fix white balance sequencer modifier
- division often visibly clipped channels.
- division by zero caused NAN pixel values.
Brecht Van Lommel [Tue, 23 Feb 2016 03:22:13 +0000 (04:22 +0100)]
Fix T47531: crash with particle roughness curve mapping, after fix for T46382.
Campbell Barton [Mon, 22 Feb 2016 22:55:16 +0000 (09:55 +1100)]
Fix button display clamping values
Displaying a button would clamp the value if the button was outside the range.
This could be OK in some cases,
however it's problematic with object dimensions which would re-scale objects on showing the panel.
Add `ui_but_update_edited` when its OK to modify the value.
Campbell Barton [Mon, 22 Feb 2016 19:37:01 +0000 (06:37 +1100)]
Fix T47529: Selecting paths makes them relative
When selecting file-paths from the interface, initialize the 'Relative' setting from existing paths.
Campbell Barton [Mon, 22 Feb 2016 19:16:53 +0000 (06:16 +1100)]
Sculpt: use Ctrl to set grab/sculpt normal-weight
Having to change this with the slider each time isn't so convenient
and invert in this case does nothing.
Campbell Barton [Mon, 22 Feb 2016 19:04:23 +0000 (06:04 +1100)]
Sculpt: apply grab normal-weight to snake-hook
Campbell Barton [Mon, 22 Feb 2016 18:23:47 +0000 (05:23 +1100)]
Sculpt: Enable original-normal for grab brush
Without this, grabbing with normal weight will continually select new normals
based on where you move the cursor,
causing the normal location to flicker in a way which isn't controllable in any useful way.
Campbell Barton [Mon, 22 Feb 2016 18:04:32 +0000 (05:04 +1100)]
Sculpt brush can now grab inwards w/ normal weight
Previously the grab brush could only move ourwards when normal aligned.
Campbell Barton [Mon, 22 Feb 2016 16:24:30 +0000 (03:24 +1100)]
Don't draw object center when outside the view
Campbell Barton [Mon, 22 Feb 2016 15:53:22 +0000 (02:53 +1100)]
Fix line-width (drawing hair at wrong width)
Campbell Barton [Mon, 22 Feb 2016 14:22:32 +0000 (01:22 +1100)]
Fix T47517: "Show Weights" edit-mode fails
Don't use materials when showing weight colors.
Campbell Barton [Mon, 22 Feb 2016 12:20:18 +0000 (23:20 +1100)]
Fix memory leak in DM_to_mesh
Bastien Montagne [Mon, 22 Feb 2016 11:09:36 +0000 (12:09 +0100)]
Fix T47482: take II, restore 2.76 behavior regarding groups when deleting an object.
Also re-reported through IRC by Thomas Beck (@plasmasolutions), thanks.
Though it's not ideal in theory, we have quite poor handling of object datablock currently
from user PoV - before this commit, it was not easily possible to get fully rid of an object
anymore if you did not removed it from all its groups before deleting it.
So for now, restore 2.76 behavior (namely, unlink an object from avaerything in Blender
once it is no more used by any scene).
Better handling of all this is TODO for later (also related to much more heavy changes
done in id-remap branch regarding sanitizing our ID deletion process).
Kévin Dietrich [Mon, 22 Feb 2016 09:58:49 +0000 (10:58 +0100)]
Compositor: fix memory leak in filter node operation.
Avoid allocating the (tiny) array on the heap in the first place.
Reviewers: sergey, lukastoenne
Differential Revision: https://developer.blender.org/D1815
Lukas Stockner [Sun, 21 Feb 2016 13:14:52 +0000 (14:14 +0100)]
Fix T43388, fix T40369: Cycles baking not antialiasing textures.
This re-enables the AA jittering, but with proper clamping so that u >= 0,
v >= 0 and u+v <= 1.
Differential Revision: https://developer.blender.org/D1254
Brecht Van Lommel [Sun, 21 Feb 2016 13:30:37 +0000 (14:30 +0100)]
Bake API: add assert to verify we have valid UVs.
Brecht Van Lommel [Sun, 21 Feb 2016 13:37:47 +0000 (14:37 +0100)]
Fix crash baking selected to active after recent fix for uninitialized variables.
Sergey Sharybin [Sun, 21 Feb 2016 12:40:22 +0000 (13:40 +0100)]
Attempt to fix GLog compilaton on FreeBSD
Copied some config variables from an original config file.
Sergey Sharybin [Sun, 21 Feb 2016 12:16:00 +0000 (13:16 +0100)]
Fix compositor using edge repeat policy when it shouldn't
Was easy to notice when alpha-overing smaller image with blur on
the bigger frame.
Campbell Barton [Sun, 21 Feb 2016 05:19:10 +0000 (16:19 +1100)]
Fix uninitialized var use initializing bake data
Julian Eisel [Sun, 21 Feb 2016 00:24:17 +0000 (01:24 +0100)]
Correct incomplete doxgen file paths in WM
Gaia Clary [Sat, 20 Feb 2016 22:26:33 +0000 (23:26 +0100)]
fix T47484: Added fallback solution (copy exported file when rename is not supported)
Gaia Clary [Sat, 20 Feb 2016 20:42:12 +0000 (21:42 +0100)]
fix T47484: Added proper error reporting for Collada Exporter
Gaia Clary [Sat, 20 Feb 2016 19:33:29 +0000 (20:33 +0100)]
fix T47484: Added final status of exported file to Blender console
Brecht Van Lommel [Sat, 20 Feb 2016 19:18:58 +0000 (20:18 +0100)]
Fix unnecessary separators in image editor Image menu.
Brecht Van Lommel [Sat, 20 Feb 2016 16:43:31 +0000 (17:43 +0100)]
Fix crash enabling Use Multiview on images with an empty filepath.
Brecht Van Lommel [Sat, 20 Feb 2016 14:48:15 +0000 (15:48 +0100)]
Fix memory leak when saving OpenEXR half file fails.
Bastien Montagne [Sat, 20 Feb 2016 15:47:43 +0000 (16:47 +0100)]
Fix T47482: Own mistake in new handling of 'userone' ID usages when decrementing usercount.
Ended up not handling at all 'userone' case, now it increments usercount correctly when needed.
Sergey Sharybin [Sat, 20 Feb 2016 15:43:46 +0000 (16:43 +0100)]
Make Blender ready for C++11
Did a full compile of debug build with C++11 enabled, it all passed compilation
apart from some deprecated type used in GE's Video Texture. Solved it inside of
ifdef block now.
In the future we should uncomment the MSVC part of it, it should all be safe and
correct (MSVC2013 does not define new C++ version but supports C++11). The reason
it is commented is to have absolutely no effect on the upcoming release.
Bastien Montagne [Sat, 20 Feb 2016 14:17:40 +0000 (15:17 +0100)]
Add GHash/GSet pop() feature.
Behavior is similar to python's set.pop(), it removes and returns a 'random' entry from the hash.
Notes:
* Popping will return items in same order as ghash/gset iterators (i.e. increasing
order in internal buckets-based storage), unless ghash/gset is modified in between.
* We are keeping a track of the latest bucket we popped out (through a 'state' parameter),
this allows for similar performances to iterators when iteratively popping a whole hash
(without it, we are roughly O(n!), with it we are roughly O(n)...).
Reviewers: campbellbarton
Differential Revision: https://developer.blender.org/D1808
Campbell Barton [Sat, 20 Feb 2016 12:46:53 +0000 (13:46 +0100)]
Userpreferences Panel (for the 3DView)
This is an attempt to improve the User preferences panel for the 3DView. I made 2 changes:
- I reordered the sequence of properties by grouping them into more logical groups as it made sense to me. Please indicate where to rearrange the order if necessary.
- Then i added some changes in the code to get the groups better arranged visually. I am pretty sure that this can be done much better, more clever, more generic, whatever. This is just what i could figure out on my own so far.
Reviewers: aligorith, sergey, gaiaclary
Subscribers: sergey
Projects: #user_interface
Maniphest Tasks: T47295
Differential Revision: https://developer.blender.org/D1757
Sergey Sharybin [Sat, 20 Feb 2016 08:45:01 +0000 (13:45 +0500)]
OCIO: Disable the warnings related on C4251
Those warnings are trigerred by stl classes in OCIO's public interface.
To quote MSDN: "C4251 can be ignored if you are deriving from a type in
the Standard C++ Library"
This is the only instance where those warnings hunts us, so for now we
can keep it all local in intern/opencolorio but this might be changed
in the future.
Sergey Sharybin [Sat, 20 Feb 2016 08:18:01 +0000 (13:18 +0500)]
GHost: Avoid macro re-definition by undefining the macro first
Should b totally harmless since the define was overriten anyway.
Sergey Sharybin [Sat, 20 Feb 2016 08:15:51 +0000 (13:15 +0500)]
Carve: Silence 32/64 bit shit warning
There's no need to mix ints and size_t here at all
because all the values fits into integer.
It's unlikely we'll be re-bundling Carve, so didn't
bother with the patchset.
Sergey Sharybin [Sat, 20 Feb 2016 07:45:29 +0000 (12:45 +0500)]
CMake: Ignore paranoid MSVC linker warnings
Sergey Sharybin [Sat, 20 Feb 2016 06:50:58 +0000 (11:50 +0500)]
Fix for NULL used instead of false
Sergey Sharybin [Sat, 20 Feb 2016 06:47:51 +0000 (11:47 +0500)]
Cleanup, avoid passing const pointer to MEM_freeN()
This generates warnings with MSVC. Similar typecast was
already done in other cases, so think it's all fine.
Sergey Sharybin [Sat, 20 Feb 2016 06:42:16 +0000 (11:42 +0500)]
ImBuf: Cleanup, don't use `using namespace`, it's a bad practice
Sergey Sharybin [Sat, 20 Feb 2016 06:40:25 +0000 (11:40 +0500)]
ImBuf: Solve re-definition warnings
The idea now is to have FFmpeg/OIIO headers listed after
the system ones. This is because FFmpeg/OIIO might define
some constants with the same name as the ones from math.h.
FFmpeg/OIIO has ifdef around defines, but math.h doesn't
check whether constants were already defined or not, which
causes some noisy warnings.
Sergey Sharybin [Sat, 20 Feb 2016 06:37:24 +0000 (11:37 +0500)]
Cycles: Avoid re-definition of math cnstants with MSVC
Sergey Sharybin [Sat, 20 Feb 2016 06:31:58 +0000 (11:31 +0500)]
Fix some warnings in GLog/GFlags when buildingwith MSVC2013
Those warnings were only addressed for MSVC2015 so far.
Sergey Sharybin [Sat, 20 Feb 2016 05:51:27 +0000 (10:51 +0500)]
CMake: Don't pass SSE2 flags in compositor for 64bit MSVC
ALl 64 bit platforms supports SSE2, hence the flag is ignored
and warning was generated.
Bastien Montagne [Sat, 20 Feb 2016 12:15:40 +0000 (13:15 +0100)]
Fix (unreported) crash when ungrouping a nodegroup with some animated node.
Was accessing already freed action in temp nodegroup animation data...
Joshua Leung [Sat, 20 Feb 2016 04:53:32 +0000 (17:53 +1300)]
Fix T44453: Exporting Keying Sets referencing node tree properties generates invalid Python code/paths
The problem is that node trees (such as the Material, Lamp, and Compositor node trees)
are stored as "nested node trees" on the affected datablocks. They are particularly
troublesome to deal with, as the are not easily identified, and also cannot be easily
mapped back to the ID's which actually own them. As a result, the usual automated
methods do not work when dealing with these!
Joshua Leung [Sat, 20 Feb 2016 04:25:04 +0000 (17:25 +1300)]
Fix T47433: Driven shapekey values (from 2.4x) are not indicated as having drivers
Only Driver FCurves with named shapekeys (instead of shapekey indices) was
getting picked up by the UI code for testing whether a property had drivers
or not. So, while this version patching code worked when it was initially
written for the 2.4x -> 2.5 transition, some subsequent changes ended up
breaking this. As this stuff is not used often, the breakage wasn't noticed.
Joshua Leung [Sat, 20 Feb 2016 04:01:27 +0000 (17:01 +1300)]
Fix T47492: Name is not displayed for newly renamed FCurve, when the path was broken
Thanks Alexander Romanov (a.romanov) for the fix!
Campbell Barton [Sat, 20 Feb 2016 02:44:17 +0000 (13:44 +1100)]
Only use outlines around faces for surface objects
Was drawing wire when mixed with non-wire nurbs.
Campbell Barton [Sat, 20 Feb 2016 02:39:33 +0000 (13:39 +1100)]
Fix nurbs surface drawing using material for lines
Also reduce context switching
Julian Eisel [Fri, 19 Feb 2016 23:42:07 +0000 (00:42 +0100)]
Minor adjustments to keymap editor layouts
* Remove unnecessary big margins after triangle icons (esp. for keymap items they where waaay to big)
* Remove ugly margin after "Foo (Global)" entries
* Add little margin after expanded key maps
Julian Eisel [Fri, 19 Feb 2016 23:10:28 +0000 (00:10 +0100)]
Fix wrong indentation of items in keymap editor
Actually, 3 issues here:
* Keymap items of "Foo (Global)" maps weren't indented enough
* Items after a opened "Foo (Global)" map were indented too much (col was overridden then).