blender.git
5 years agoCycles: remove disabled kernel_volume_get_final_homogeneous_extinction code. soc-2013-dingto
Brecht Van Lommel [Thu, 26 Dec 2013 15:11:02 +0000 (16:11 +0100)]
Cycles: remove disabled kernel_volume_get_final_homogeneous_extinction code.

I'm not quite sure why this would be needed. It gives per color channel sigma,
which we should have so we can compute per channel attentuation without noise
instead of the single float now.

However I think this should be handled at a deeper level by making sigma a
float3 everywhere instead of doing some kind of correction for this afterwards.

5 years agoCycles Volume: add appropriate shader contexts for OSL.
Brecht Van Lommel [Thu, 26 Dec 2013 14:54:44 +0000 (15:54 +0100)]
Cycles Volume: add appropriate shader contexts for OSL.

This is needed to avoid using same memory block twice when the closures from
a shader evaluation are in use at the same time as the closures from another
evaluation.

5 years agoCycles Volume: remove some unnecessary rngs from shadow computation.
Brecht Van Lommel [Thu, 26 Dec 2013 14:39:46 +0000 (15:39 +0100)]
Cycles Volume: remove some unnecessary rngs from shadow computation.

5 years ago* New Volume Absorption node was missing in Node Editor menu.
Thomas Dinges [Thu, 26 Dec 2013 14:25:23 +0000 (15:25 +0100)]
* New Volume Absorption node was missing in Node Editor menu.

5 years agoCycles Volume: implement volume absorption node.
Brecht Van Lommel [Thu, 26 Dec 2013 13:40:09 +0000 (14:40 +0100)]
Cycles Volume: implement volume absorption node.

This is the transparent volume node renamed, currently it is basically the
same as a scatter volume node with anisotropy 1, so it scatters light perfectly
forward.

This also does some tweaks to the henyey-greenstein closure code to avoid
division by zero and to make eval/sample consistent in some corner cases, and
some other code cleanup related to volume shaders.

5 years agoMerge branch 'master' into soc-2013-dingto
Brecht Van Lommel [Thu, 26 Dec 2013 10:18:52 +0000 (11:18 +0100)]
Merge branch 'master' into soc-2013-dingto

5 years agocorrection to last commit
Campbell Barton [Wed, 25 Dec 2013 21:37:28 +0000 (08:37 +1100)]
correction to last commit

5 years agoBGE: Add missing NULL check from recent LOD updates
Campbell Barton [Wed, 25 Dec 2013 21:28:00 +0000 (08:28 +1100)]
BGE: Add missing NULL check from recent LOD updates

5 years agoCode Cleanup: remove object arg to CDDM_from_mesh mesh_create_derived
Campbell Barton [Wed, 25 Dec 2013 21:26:41 +0000 (08:26 +1100)]
Code Cleanup: remove object arg to CDDM_from_mesh mesh_create_derived

5 years agoMissed this in last commit
Sergej Reich [Wed, 25 Dec 2013 18:25:46 +0000 (19:25 +0100)]
Missed this in last commit

5 years ago3D View: Draw rigid body collision shapes.
Sergej Reich [Wed, 25 Dec 2013 18:05:55 +0000 (19:05 +0100)]
3D View: Draw rigid body collision shapes.

5 years ago3D View: Fix drawing bounds for game engine
Sergej Reich [Wed, 25 Dec 2013 18:01:42 +0000 (19:01 +0100)]
3D View: Fix drawing bounds for game engine

Needs to be drawn around the origin to accurately represent collision
shapes.

5 years agoCode cleanup: no need to switch to threaded alloc, it's done by task pool
Sergey Sharybin [Wed, 25 Dec 2013 14:34:58 +0000 (20:34 +0600)]
Code cleanup: no need to switch to threaded alloc, it's done by task pool

5 years agoUse generic task scheduler for threaded image processor
Sergey Sharybin [Wed, 25 Dec 2013 14:32:13 +0000 (20:32 +0600)]
Use generic task scheduler for threaded image processor

It allows to schedule tasks of smaller size without having
threads overhead or extra worry about splitting tasks into
smaller pieces.

This simplifies code in color management which was manually
splitting task into smaller chunks to keep memory usage low.

Further optimization is possible by avoid malloc called from
threads, but that's how it used to work for ages already
and would be optimized as a separate patch.

5 years agoMotion tracking curves: correct some operator's poll functions
Sergey Sharybin [Wed, 25 Dec 2013 13:35:29 +0000 (19:35 +0600)]
Motion tracking curves: correct some operator's poll functions

Curve selection and transform were allowed in cases track's motion
curve wasn't visible.

5 years agoImplement per-frame track reprojection error visualization
Sergey Sharybin [Sun, 13 Oct 2013 20:26:29 +0000 (22:26 +0200)]
Implement per-frame track reprojection error visualization

It is now possible to display per-frame track reprojection
error in curve view of clip editor. Simply enable corresponding
option in filter buttons.

Currently displayed using blue color which might confuse with
average reprojection error, further color tweaks are possible
and easy.

Also changed icon track x/y curves. Better icons here are
really appreciated.

5 years agoFix T37709: Memory corruption when freeing custom bone shape objects
Sergey Sharybin [Wed, 25 Dec 2013 10:43:26 +0000 (16:43 +0600)]
Fix T37709: Memory corruption when freeing custom bone shape objects

Summary:
Issue was caused by access to pchan->custom object from channel free
function when freeing all objects from main. Order of objects free
is not defined and such an access might easily end up with access
to freed memory.

We don't need to do user counter stuff when freeing main, so added
an _ex functions with do_id_user flag which is used when freeing main.

We had the same issue with other datablocks, so now it should be
easier to support relevant user counter.

This issue was caused by the fix for T36391, so perhaps that's indeed
high time to do real user counter.

Reviewers: brecht, campbellbarton

Reviewed By: campbellbarton

Maniphest Tasks: T37709

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

5 years agoCycles / OpenCL: Let the OpenCL runtime determine its optimal work-group size automat...
Thomas Dinges [Tue, 24 Dec 2013 19:20:35 +0000 (20:20 +0100)]
Cycles / OpenCL: Let the OpenCL runtime determine its optimal work-group size automatically, by passing a NULL pointer here.

This is recommended in the Intel OpenCL optimization docs (http://software.intel.com/en-us/vcsource/samples/optimizing-opencl) and I can confirm a small performance increase here (1-2% on nVidia OpenCL, up to 8% on Intel OpenCL).

5 years agoUse HTTPS protocol for arc
Sergey Sharybin [Tue, 24 Dec 2013 16:52:05 +0000 (22:52 +0600)]
Use HTTPS protocol for arc

5 years agoString API: BLI_ascii_strtolower/upper now check NULL terminator
Campbell Barton [Tue, 24 Dec 2013 14:20:46 +0000 (01:20 +1100)]
String API: BLI_ascii_strtolower/upper now check NULL terminator

This wasn't needed before now, but since recent change to bUnit_ReplaceString,
it uses in a context where NULL terminator is expected - best add.
(spotted by Sergey)

5 years agofind_package(OPENAL) does not play nice with our current library naming nonvention
Martijn Berger [Tue, 24 Dec 2013 12:21:56 +0000 (13:21 +0100)]
find_package(OPENAL) does not play nice with our current library naming nonvention

5 years agoFix for own recent commit
Campbell Barton [Tue, 24 Dec 2013 07:56:07 +0000 (18:56 +1100)]
Fix for own recent commit

5 years agoUI: Display alpha checkers in image info's color swatch.
Campbell Barton [Tue, 24 Dec 2013 06:20:37 +0000 (17:20 +1100)]
UI: Display alpha checkers in image info's color swatch.

5 years agoUI: fix for slight glitch drawing image info
Campbell Barton [Tue, 24 Dec 2013 04:06:38 +0000 (15:06 +1100)]
UI: fix for slight glitch drawing image info

Using sub-pixel position made the text clip badly sometimes.

5 years agoFix T37914: Mask modifier behaves differently until painted
Campbell Barton [Tue, 24 Dec 2013 03:26:31 +0000 (14:26 +1100)]
Fix T37914: Mask modifier behaves differently until painted

5 years agoCycles / Hair: No need to calculate curvepoint() when we use Ribbon curves.
Thomas Dinges [Tue, 24 Dec 2013 03:00:27 +0000 (04:00 +0100)]
Cycles / Hair: No need to calculate curvepoint() when we use Ribbon curves.

Also some style cleanup.

5 years agoBMesh optimize face splitting by taking loops rather then verts
Campbell Barton [Tue, 24 Dec 2013 00:04:03 +0000 (11:04 +1100)]
BMesh optimize face splitting by taking loops rather then verts

- add BM_vert_pair_share_face
- add BM_loop_is_adjacent
- remove BM_verts_connect

5 years agoStyle cleanup: BGE
HG1 [Mon, 23 Dec 2013 18:44:54 +0000 (05:44 +1100)]
Style cleanup: BGE

5 years agoCode Cleanup: style
Campbell Barton [Mon, 23 Dec 2013 18:04:29 +0000 (05:04 +1100)]
Code Cleanup: style

5 years agoUI: communicate external data autopack better in the UI.
Simon Repp [Mon, 23 Dec 2013 17:35:32 +0000 (18:35 +0100)]
UI: communicate external data autopack better in the UI.

Previously there was no way to see if autopack was enabled. Now the external
data menu has 3 entries instead of 2:

* Automatically Pack Into .blend (with checkbox to indicate autopack on/off)
* Pack All Into .blend
* Unpack All Into Files

Fixes T37608, includes modifications by Brecht from the original patch.

Reviewed By: brecht

Differential Revision: http://developer.blender.org/D118

5 years agoMove python threading stuff to own file in bf_python_ext
Sergey Sharybin [Mon, 23 Dec 2013 16:48:20 +0000 (22:48 +0600)]
Move python threading stuff to own file in bf_python_ext

This way blender player can easily use BPY_thread_save/restore.
Not so much important for master branch, but crucial to solve
linking issues in threaded depsgraph branch.

5 years agoCMake: attempt to fix Boost detection on Fedora 20, which omits -mt.
Brecht Van Lommel [Mon, 23 Dec 2013 15:52:34 +0000 (16:52 +0100)]
CMake: attempt to fix Boost detection on Fedora 20, which omits -mt.

5 years agoMake makesdna capable of detecting 32bit alignment issues on 64bit platform
Sergey Sharybin [Mon, 23 Dec 2013 15:37:39 +0000 (21:37 +0600)]
Make makesdna capable of detecting 32bit alignment issues on 64bit platform

Summary: Just some extra comparison between native and 32bit structure length was needed.

Reviewers: brecht, campbellbarton

Reviewed By: brecht

Differential Revision: http://developer.blender.org/D131

5 years agoFix T37929: inherit scale for dupli faces was not shown greyed out when it should be.
Brecht Van Lommel [Mon, 23 Dec 2013 15:27:43 +0000 (16:27 +0100)]
Fix T37929: inherit scale for dupli faces was not shown greyed out when it should be.

5 years agoFix compile error on 32 bits linux / windows, wireframe modifier needs padding.
Brecht Van Lommel [Mon, 23 Dec 2013 14:47:24 +0000 (15:47 +0100)]
Fix compile error on 32 bits linux / windows, wireframe modifier needs padding.

Thanks to Scott Petrovic and Jia Wang for submitting fixes.

Differential Revision: http://developer.blender.org/D126
Differential Revision: http://developer.blender.org/D130

5 years agoSyntax correction for gpu docs, D124
Campbell Barton [Mon, 23 Dec 2013 06:24:23 +0000 (17:24 +1100)]
Syntax correction for gpu docs, D124

5 years agoBMesh API: optimize BM_edge_exists().
Campbell Barton [Mon, 23 Dec 2013 05:52:43 +0000 (16:52 +1100)]
BMesh API: optimize BM_edge_exists().

5 years agoBMesh API: make simple, low level functions inline
Campbell Barton [Mon, 23 Dec 2013 05:03:07 +0000 (16:03 +1100)]
BMesh API: make simple, low level functions inline

5 years agoFix for crash when no args where given with -o, -x command line args
Campbell Barton [Mon, 23 Dec 2013 02:08:32 +0000 (13:08 +1100)]
Fix for crash when no args where given with -o, -x command line args

Patch D123 from djnz (Masakazu Ito)

5 years agoUI: Resolve T37917, disable tooltip scaling (zoomout only)
Campbell Barton [Mon, 23 Dec 2013 01:46:50 +0000 (12:46 +1100)]
UI: Resolve T37917, disable tooltip scaling (zoomout only)

5 years agoFix for tooltip right side having zero offset
Campbell Barton [Mon, 23 Dec 2013 01:42:46 +0000 (12:42 +1100)]
Fix for tooltip right side having zero offset

5 years agoFix for converting unfilled 3d text into a mesh
Campbell Barton [Mon, 23 Dec 2013 01:12:40 +0000 (12:12 +1100)]
Fix for converting unfilled 3d text into a mesh

5 years agoDupliverts: avoid calculating normals if not used
Campbell Barton [Sun, 22 Dec 2013 23:53:46 +0000 (10:53 +1100)]
Dupliverts: avoid calculating normals if not used

5 years agoMore CMakeLists.txt changes
Martijn Berger [Sun, 22 Dec 2013 22:24:47 +0000 (23:24 +0100)]
More CMakeLists.txt changes

Summary:
I added a function that adds all libdir/* to  CMAKE_PREFIX_PATH :

further there where two places where if(MSVC) else (mingq) where defined after each other. I moved those into one place.
The things common to MSVC and mingw are now blow the special code as we set libdir and such things depending on compiler.

Besides find_package() working and some cleanups there should be no functional changes

Reviewers: dingto

Reviewed By: dingto

Differential Revision: http://developer.blender.org/D127

5 years agoCode cleanup / Cycles: Remove CUDA check (we don't support sm_1x anymore) and unused...
Thomas Dinges [Sun, 22 Dec 2013 13:43:37 +0000 (14:43 +0100)]
Code cleanup / Cycles: Remove CUDA check (we don't support sm_1x anymore) and unused hair flag.

5 years agoCode cleanup / Cycles: Remove unused interpolation code for hair triangles, we only...
Thomas Dinges [Sun, 22 Dec 2013 13:13:49 +0000 (14:13 +0100)]
Code cleanup / Cycles: Remove unused interpolation code for hair triangles, we only support cardinal curves.

5 years agoFix T37898: blenderplayer painfully slow in recent builds
Sergey Sharybin [Sun, 22 Dec 2013 09:26:59 +0000 (15:26 +0600)]
Fix T37898: blenderplayer painfully slow in recent builds

Issue was caused by recent image cache rewrite and root of
the issue goes to the fact that blender player doesn't
initialize cache limiter and it uses 32meg of memory only.

This leads to infinite image loading/freeing.

For now disabled cache limiter in game engine, this brings
back old behavior.

In theory we might be smarter here, but better caching
policy is to be discussed.

5 years agoAdd ItemDestroyable to the cache limitor
Sergey Sharybin [Tue, 10 Dec 2013 08:40:09 +0000 (14:40 +0600)]
Add ItemDestroyable to the cache limitor

This callback is used when cache limiter needs to remove
some cached objects when running out of limit.

From blender side it's used to keep painted images always
in memory.

This fixes issue when painted images were removing from
the memory after image cache rewrite.

5 years agoCode Cleanup: de-duplicate constraint checks with armature join
Campbell Barton [Sun, 22 Dec 2013 05:05:09 +0000 (16:05 +1100)]
Code Cleanup: de-duplicate constraint checks with armature join

5 years agoStyle Cleanup: remove preprocessor indentation (updated wiki style guide too)
Campbell Barton [Sun, 22 Dec 2013 03:11:10 +0000 (14:11 +1100)]
Style Cleanup: remove preprocessor indentation (updated wiki style guide too)

5 years agoFix T37910: maya key configuration not working after recent changes.
Brecht Van Lommel [Sat, 21 Dec 2013 22:27:35 +0000 (23:27 +0100)]
Fix T37910: maya key configuration not working after recent changes.

5 years agoFix for extrude poll functions not checking active object
Campbell Barton [Sat, 21 Dec 2013 20:59:24 +0000 (07:59 +1100)]
Fix for extrude poll functions not checking active object

5 years agoerror in recent commit (this is getting ridiculous),
Campbell Barton [Sat, 21 Dec 2013 20:27:07 +0000 (07:27 +1100)]
error in recent commit (this is getting ridiculous),
faces were flipping the wrong way

5 years agoerror in last commit, missing normal update.
Campbell Barton [Sat, 21 Dec 2013 20:19:48 +0000 (07:19 +1100)]
error in last commit, missing normal update.

5 years agoerror in last commit, flag names.
Campbell Barton [Sat, 21 Dec 2013 20:16:41 +0000 (07:16 +1100)]
error in last commit, flag names.

5 years agoModifier: New Wireframe Modifier
Campbell Barton [Sat, 21 Dec 2013 20:08:35 +0000 (07:08 +1100)]
Modifier: New Wireframe Modifier

Based on patch originally by Thomas Beck,
uses options similar to solidify.

5 years agoEditMesh: wireframe tool, add offset and vgroup support (not used yet)
Campbell Barton [Sat, 21 Dec 2013 19:54:37 +0000 (06:54 +1100)]
EditMesh: wireframe tool, add offset and vgroup support (not used yet)

5 years agoFix for mesh deform modifier missing copy for flag.
Campbell Barton [Sat, 21 Dec 2013 17:45:00 +0000 (04:45 +1100)]
Fix for mesh deform modifier missing copy for flag.

5 years agoMesh Modifiers: refactor copying using a generic function
Campbell Barton [Sat, 21 Dec 2013 17:35:52 +0000 (04:35 +1100)]
Mesh Modifiers: refactor copying using a generic function

5 years agoSupport units in modal numinput
Bastien Montagne [Sat, 21 Dec 2013 16:11:43 +0000 (17:11 +0100)]
Support units in modal numinput

Summary:
This completly changes the way modal numinput is handled. Now, edited expression is a string, which then gets unit- and py-evaluated to get a float value.

We gain many power and flexibility, but lose a few "shortcuts" like '-' to negate, or '/' to inverse (if they are really needed, we still can add them with modifiers, like e.g. ctrl-/ or so).

Features:
- units (cm, ", deg, etc.).
- basic operations from python/BKE_unit (+, *, **, etc.), and math constants and functions (pi, sin, etc.).
- you can navigate in edited value (left/right key, ctrl to move by block) and insert/delete chars, e.g. to fix a typo without having to rewrite everything.
- you can go to next/previous value with (ctrl-)TAB key.
- As before, hitting backspace after having deleted all leading chars will first reset the edited value to init state, and on second press, the whole "modal numinput" editing will be cancelled, going back to usual transform with mouse.

Notes:
- Did not touch to how values are shown in header when modal numinput is not enabled (would do that in another commit), so this is still quite inconsistent.
- Added back radian support in BKE_unit.
- Added arcminute/arcsecond to BKE_unit.
(those unit changes affect all angle UI controls, btw, so you can now enter radians or longitude/latitude values when in degrees units).

Related to T37600.

Reviewers: brecht, campbellbarton, carter2422

Reviewed By: brecht, campbellbarton, carter2422
Thanks everybody!

Differential Revision: http://developer.blender.org/D61

5 years agoFix T37906: Adding force field settings to boids gives hard crash
Sergey Sharybin [Sat, 21 Dec 2013 14:35:47 +0000 (20:35 +0600)]
Fix T37906: Adding force field settings to boids gives hard crash

Was a regression since fix for another bug T37189.

5 years agoFix T37907: Crash when change screen layout to "Motion Tracking"
Sergey Sharybin [Sat, 21 Dec 2013 14:26:23 +0000 (20:26 +0600)]
Fix T37907: Crash when change screen layout to "Motion Tracking"

Was a bug in recent change from my own.

Also fixed cache line being displayed twice.

5 years agoCleanup: Code and style cleanup for Cycles curve export code.
Thomas Dinges [Fri, 20 Dec 2013 23:20:16 +0000 (00:20 +0100)]
Cleanup: Code and style cleanup for Cycles curve export code.

5 years agoFix T37903: Operator log serialization broken for sets.
Bastien Montagne [Fri, 20 Dec 2013 22:35:28 +0000 (23:35 +0100)]
Fix T37903: Operator log serialization broken for sets.

Was a mistake in rB9d6f05ed style edits (TRUE became false ;) ).

5 years agoFix bookmarks not appearing in file browser after "copy previous settings".
Brecht Van Lommel [Fri, 20 Dec 2013 16:39:22 +0000 (17:39 +0100)]
Fix bookmarks not appearing in file browser after "copy previous settings".

5 years agoFix wrong display of movie clip cache with mask overlay enabled
Sergey Sharybin [Fri, 20 Dec 2013 16:16:53 +0000 (22:16 +0600)]
Fix wrong display of movie clip cache with mask overlay enabled

5 years agoSlightly improve undo performance in dyntopo when last operator was mask
Antony Riakiotakis [Fri, 20 Dec 2013 11:41:38 +0000 (13:41 +0200)]
Slightly improve undo performance in dyntopo when last operator was mask
modification. In that case no pbvh needs to be freed and recreated and
we can get away just with draw buffer update (all of them for now. When
pbvh nodes get logged for undo we will be able to only update the
affected ones).

5 years agoMSVC 2013 cmake changes
Martijn Berger [Fri, 20 Dec 2013 13:32:51 +0000 (14:32 +0100)]
MSVC 2013 cmake changes

Summary:
I think we should try to use find_package more over just setting the variables it would set.
I added find_package with old behavior as a feedback for boost and openexr

@dingto can you test it in msvc2008 setup ?

Reviewers: dingto

Reviewed By: dingto

CC: dingto, brecht
Differential Revision: http://developer.blender.org/D104

5 years agoFix T37883: Dope Sheet - Selecting object channels in AnimEditors doesn't make them...
Joshua Leung [Fri, 20 Dec 2013 02:30:00 +0000 (15:30 +1300)]
Fix T37883: Dope Sheet - Selecting object channels in AnimEditors doesn't make them active

There was probably a reason in the past why this wasn't desirable, but since we allow
bones to be properly selected when clicking on corresponding channels here, we may as
well allow this case too.

5 years agoCode Cleanup: style
Campbell Barton [Fri, 20 Dec 2013 10:43:42 +0000 (21:43 +1100)]
Code Cleanup: style

5 years agoDon't use with_resol suffix for functions which doesn't get resolution
Sergey Sharybin [Fri, 20 Dec 2013 10:00:05 +0000 (16:00 +0600)]
Don't use with_resol suffix for functions which doesn't get resolution

5 years agoCode cleanup: remove unused functions from mask module
Sergey Sharybin [Fri, 20 Dec 2013 09:47:19 +0000 (15:47 +0600)]
Code cleanup: remove unused functions from mask module

This functions doesn't seem to be used even from a commented code.

5 years agoFix for border select doesn't work with normalization enabled
Sergey Sharybin [Fri, 20 Dec 2013 08:46:50 +0000 (14:46 +0600)]
Fix for border select doesn't work with normalization enabled

Some lazy developer named Sergey typed zero instead of actual
mapping flag in unit mapping function in the original f-curve
normalization commit.

5 years agoUI: restore confirmation popups for delete operators.
Brecht Van Lommel [Fri, 20 Dec 2013 00:38:07 +0000 (01:38 +0100)]
UI: restore confirmation popups for delete operators.

It turned out this was leading to accidental deleting in some cases when the
info message was missed by users. Fixes T37801.

5 years agoFix T37890: compositor did not take number of thread setting into account.
Brecht Van Lommel [Thu, 19 Dec 2013 23:43:26 +0000 (00:43 +0100)]
Fix T37890: compositor did not take number of thread setting into account.

5 years agoFix T37884: cycles hair rendering crash with UV coordinates.
Brecht Van Lommel [Thu, 19 Dec 2013 23:05:54 +0000 (00:05 +0100)]
Fix T37884: cycles hair rendering crash with UV coordinates.

This was broken in a recent bugfix for zero length hairs.

5 years agoRaise Python version to 3.3.3.
Bastien Montagne [Thu, 19 Dec 2013 21:44:51 +0000 (22:44 +0100)]
Raise Python version to 3.3.3.

5 years agoFix T37861: remove unnecessary error print when viewport rendering a curve that gives...
Brecht Van Lommel [Thu, 19 Dec 2013 18:19:31 +0000 (19:19 +0100)]
Fix T37861: remove unnecessary error print when viewport rendering a curve that gives an empty mesh.

5 years agoFix T37869: vertex paint + wireframe draw mode + smoke domain did not draw correct.
Brecht Van Lommel [Thu, 19 Dec 2013 17:52:26 +0000 (18:52 +0100)]
Fix T37869: vertex paint + wireframe draw mode + smoke domain did not draw correct.

5 years agoFix T37003, Fix T37859: smoke modifier taking deforming modifiers into account
Brecht Van Lommel [Thu, 19 Dec 2013 17:25:14 +0000 (18:25 +0100)]
Fix T37003, Fix T37859: smoke modifier taking deforming modifiers into account
in some cases.

The smoke modifier now ignores the modifier evaluation for generated texture
coordinates, which would previously cause the undeformed mesh to be cached for
flow objects. Dynamic paint has a similar exception, and other physics systems
avoid it by not being a constructive modifier.

5 years agoChange recent fix for T37864, now only check if the file is readonly
Campbell Barton [Thu, 19 Dec 2013 15:23:21 +0000 (02:23 +1100)]
Change recent fix for T37864, now only check if the file is readonly

Other error cases are already handled elsewhere

5 years agoFix T37795: Resetting a button to the default value could crash
Campbell Barton [Thu, 19 Dec 2013 14:04:01 +0000 (01:04 +1100)]
Fix T37795: Resetting a button to the default value could crash

Added ui_handle_afterfunc_add_operator so a button can queue an operator
to run without executing it immediately.

5 years agoFix missing F-Curve Generator modifier updates from the Python API.
Peter Staples [Thu, 19 Dec 2013 13:48:57 +0000 (14:48 +0100)]
Fix missing F-Curve Generator modifier updates from the Python API.

The poly_order and mode properties were missing update and range, now they
match the UI code.

Reviewed By: brecht

Differential Revision: http://developer.blender.org/D116

5 years agoSculpting:
Antony Riakiotakis [Thu, 19 Dec 2013 12:39:54 +0000 (14:39 +0200)]
Sculpting:

* Support for symmetry in lasso masking
* Optimize away symmetry multiplication of gravity vector if no gravity
active
* Move flip_v3_v3 to paint_utils (used in masking as well)
* Use OpenMP for mask flood fill too.

5 years agoPatch T19235: bmesh comments (with updates)
Campbell Barton [Thu, 19 Dec 2013 11:40:25 +0000 (22:40 +1100)]
Patch T19235: bmesh comments (with updates)

5 years agoCode Cleanup: remove duplicate errorstack
Campbell Barton [Thu, 19 Dec 2013 11:38:01 +0000 (22:38 +1100)]
Code Cleanup: remove duplicate errorstack

5 years agoFollowup for fix T37718: image was not saving with proper settings second time
Sergey Sharybin [Thu, 19 Dec 2013 11:17:40 +0000 (17:17 +0600)]
Followup for fix T37718: image was not saving with proper settings second time

This was actually a regression after color management re-implementation, need
to copy settings from saved image buffer to an original one since they might
be modified during save.

Also noticed image format planes detection didn't work properly from an image
buffer. Made it so save operator works fine now, but also marked a TODO in
BKE_imbuf_to_image_format() which needs to be investigated further.

5 years agoFix for T37864, save/save_as blend now refuses to save and report an error, when...
Thomas Dinges [Thu, 19 Dec 2013 08:54:02 +0000 (09:54 +0100)]
Fix for T37864, save/save_as blend now refuses to save and report an error, when filepath is not writeable.

5 years agoFix T37830: UILists text now right align.
Bastien Montagne [Thu, 19 Dec 2013 08:34:53 +0000 (09:34 +0100)]
Fix T37830: UILists text now right align.

Simply check for non-embossed TEX buttons inside uiList items, and align their text like labels do.

5 years agoFix T37387 VIEW3D_OT_view_selected in sculpt mode zooms far from
Antony Riakiotakis [Thu, 19 Dec 2013 03:09:42 +0000 (05:09 +0200)]
Fix T37387 VIEW3D_OT_view_selected in sculpt mode zooms far from
sculpted object if last sculpt stroke ends outside the mesh.

Code here used the last true location which is invalid in that case,
just reuse the average stroke location instead.

5 years agoSupport for symmetry in gravity.
Antony Riakiotakis [Thu, 19 Dec 2013 00:14:25 +0000 (02:14 +0200)]
Support for symmetry in gravity.

Also fix previous commit original coordinate change for proxy calculation
(broke all non-anchored brushes -facepalm-) and cache the gravity support
result.

5 years agoFix T37812, anchored sculpting on a flat plane created artifacts.
Antony Riakiotakis [Wed, 18 Dec 2013 23:48:30 +0000 (01:48 +0200)]
Fix T37812, anchored sculpting on a flat plane created artifacts.

This must be an ancient bug, almost as old as anchored brushes
themselves. Code did not do sphere node intersection against original
bounding boxes if an anchored brush required it. In practice this was
not easy to see because vertices were displaced inside brush radius most
of the time. However in the provided report file, displacement was far
away from the brush sphere, making the issue apparent.

Also added original check in proxy combination code (might cause issues
with dyntopo but quick test did not show any) and did some style int ->
bool style changes.

5 years agoFix T37807 gravity causes crashes when using shif-smoothing.
Antony Riakiotakis [Wed, 18 Dec 2013 22:48:26 +0000 (00:48 +0200)]
Fix T37807 gravity causes crashes when using shif-smoothing.

Turns out we didn't properly free node proxies that gravity did use and
strokes ended up accessing previous data. Also deactivated gravity when
a smooth brush is used. It is kind of distracting to get the mesh
gravitated while smoothing.

5 years agoFix T37691: Screw modifier created zero length normals
Campbell Barton [Wed, 18 Dec 2013 20:53:20 +0000 (07:53 +1100)]
Fix T37691: Screw modifier created zero length normals

5 years agoFix T37847: some buttons displayed too wide in multi-column menus.
Brecht Van Lommel [Wed, 18 Dec 2013 18:33:54 +0000 (19:33 +0100)]
Fix T37847: some buttons displayed too wide in multi-column menus.

5 years agoRevert svn r55587, fix for T34698 (Disable snap when transform axis is constrained)
Campbell Barton [Wed, 18 Dec 2013 17:54:11 +0000 (04:54 +1100)]
Revert svn r55587, fix for T34698 (Disable snap when transform axis is constrained)

Currently we don't properly support snapping + axis-constraints, but
there are cases where its handy to project-snap for eg, and constraint
to an axis so re-enable this.

5 years agoUI: avoid using AT define for malloc id's
Campbell Barton [Wed, 18 Dec 2013 16:08:48 +0000 (03:08 +1100)]
UI: avoid using AT define for malloc id's

They're very verbose and while useful for debugging leaks - a unique
string is normally enough to track down the problem.

5 years agoVertex/weight paint: remove "Use All Faces" option.
Brecht Van Lommel [Wed, 18 Dec 2013 16:49:01 +0000 (17:49 +0100)]
Vertex/weight paint: remove "Use All Faces" option.

This is now always enabled, when you want to paint on a individual faces you
can use face selection masking instead.

Fixes T37855.

5 years agoComment fix to previous commit
Antony Riakiotakis [Wed, 18 Dec 2013 16:36:07 +0000 (18:36 +0200)]
Comment fix to previous commit

5 years agoFix T37177, sculpting can act on opposite side of mesh in orthographic camera.
Antony Riakiotakis [Wed, 18 Dec 2013 16:34:02 +0000 (18:34 +0200)]
Fix T37177, sculpting can act on opposite side of mesh in orthographic camera.

Summary:
Issue here most probably is that the start point in ray-casting is too
far away from the mesh. As a result the triangle intersection code can
sometimes miss the ray intersection. To solve this, we project the ray
segment to the boundary of the root node.

Reviewers: brecht, sergey, campbellbarton

Reviewed By: brecht

Maniphest Tasks: T37177

Differential Revision: http://developer.blender.org/D115