4 years agoMath Lib: pseudoinverse_m4_m4 changed input matrix
Campbell Barton [Thu, 30 Oct 2014 13:49:57 +0000 (14:49 +0100)]
Math Lib: pseudoinverse_m4_m4 changed input matrix

4 years agoTransform: snapping: normal-align: Cleanup!
Bastien Montagne [Thu, 30 Oct 2014 11:54:05 +0000 (12:54 +0100)]
Transform: snapping: normal-align: Cleanup!

Use BLI's `rotation_between_vecs_to_mat3` helper instead of own custom code,
both simplifies the code and fixes wrong handling when snapped normal was exactly
opposed to org one (i.e. 180° rot case).

4 years agoMath Lib: add transpose_m3_m3, m3_m4, m4_m4
Campbell Barton [Thu, 30 Oct 2014 11:13:00 +0000 (12:13 +0100)]
Math Lib: add transpose_m3_m3, m3_m4, m4_m4

4 years agoCycles / CUDA: Better fix for missing sm_52 kernel, in case user compiles himself.
Thomas Dinges [Thu, 30 Oct 2014 10:42:59 +0000 (11:42 +0100)]
Cycles / CUDA: Better fix for missing sm_52 kernel, in case user compiles himself.

4 years agoCycles / OSL: Support microfacet() closure color function from OSL 1.5
Thomas Dinges [Thu, 30 Oct 2014 10:33:27 +0000 (11:33 +0100)]
Cycles / OSL: Support microfacet() closure color function from OSL 1.5

This is basically just a wrapper class, which maps the generic call from the OSL spec to our closures.

Example usage:

shader microfacet_osl(
    color Color = color(0.8),
    int Distribution = 0,
    normal Normal = N,
    vector Tangent = normalize(dPdu),
    float RoughnessU = 0.0,
    float RoughnessV = 0.0,
    float IOR = 1.4,
    int Refract = 0,
    output closure color BSDF = 0)
    if (Distribution == 0)
        BSDF = Color * microfacet("ggx", Normal, Tangent, RoughnessU, RoughnessV, IOR, Refract);
        BSDF = Color * microfacet("beckmann", Normal, Tangent, RoughnessU, RoughnessV, IOR, Refract);

4 years agoFix for mat3_to_rot_size modifying input matrix
Campbell Barton [Thu, 30 Oct 2014 09:37:27 +0000 (10:37 +0100)]
Fix for mat3_to_rot_size modifying input matrix

4 years agoFix negate_m3 (taking 4x4 matrix)
Campbell Barton [Thu, 30 Oct 2014 09:26:22 +0000 (10:26 +0100)]
Fix negate_m3 (taking 4x4 matrix)

Cycles bake used incorrectly.

4 years agoDeduplicate some code by using a function pointer to the real kernel
Martijn Berger [Thu, 30 Oct 2014 09:17:42 +0000 (10:17 +0100)]
Deduplicate some code by using a function pointer to the real kernel
This has no performance impact what so ever and is already used in the adaptive sampling patch

4 years agoFix T42444: Neg scale rotated object flips 2x axis
Campbell Barton [Thu, 30 Oct 2014 09:15:43 +0000 (10:15 +0100)]
Fix T42444: Neg scale rotated object flips 2x axis

This is a very old bug and a few attempts have been made to fix it before,
Old code was checking worldspace axis flipping, instead of axis flipping WRT the axis-alignment of the object.

4 years agoFix T42441: Smoke doesn't render in 3DView if domain object's maximum draw type is...
Bastien Montagne [Thu, 30 Oct 2014 08:34:17 +0000 (09:34 +0100)]
Fix T42441: Smoke doesn't render in 3DView if domain object's maximum draw type is set to "wire"

Added an exception in convertblender.c's is_object_hidden(), so that an object with active
smoke modifier is never considered hidden.

4 years agoUI: Fix tooltip text color not resetting correctly
julianeisel [Thu, 30 Oct 2014 00:50:48 +0000 (01:50 +0100)]
UI: Fix tooltip text color not resetting correctly

The "Reset to Default Theme" operator didn't reset the tooltip text color correctly.

4 years agoUI: let multi-num-drag change different ID values
Campbell Barton [Wed, 29 Oct 2014 21:35:09 +0000 (22:35 +0100)]
UI: let multi-num-drag change different ID values

Handy for property-chart addon.

4 years agoFix T42395: Stored "render data" in particles mismatches the particle
Lukas Tönne [Wed, 29 Oct 2014 17:47:11 +0000 (18:47 +0100)]
Fix T42395: Stored "render data" in particles mismatches the particle
amount and crashes after Cycles render.

This is a hack to fix this, but at this point the system is hopelessly
broken anyway and no good fix other than total rewriting is possible.

4 years agoCorrect stub
Campbell Barton [Wed, 29 Oct 2014 16:27:01 +0000 (17:27 +0100)]
Correct stub

4 years agoFix T42294: Bullet rigidbody point cache reading was using uninitialized
Lukas Tönne [Wed, 29 Oct 2014 13:59:29 +0000 (14:59 +0100)]
Fix T42294: Bullet rigidbody point cache reading was using uninitialized
key values for velocity.

4 years agoCleanup: warnings, typos
Campbell Barton [Wed, 29 Oct 2014 13:11:19 +0000 (14:11 +0100)]
Cleanup: warnings, typos

4 years agoFix for Ctrl+Del/Backspace not setting text dirty
Campbell Barton [Wed, 29 Oct 2014 12:51:27 +0000 (13:51 +0100)]
Fix for Ctrl+Del/Backspace not setting text dirty

4 years agoFix T42394: Copy Rigid Body Tools would not work as expected if dest ob had no rigidb...
Bastien Montagne [Wed, 29 Oct 2014 12:06:08 +0000 (13:06 +0100)]
Fix T42394: Copy Rigid Body Tools would not work as expected if dest ob had no rigidbody yet.

Adding new object to RigidBodyWorld obgroup is not a good way to do that, since it only
takes effect (create rigid_body for new objects) when you change current frame.

Better to use rigidbody.object_add() operator here!

4 years agoFix T42389: Removed outdated comment from example script.
Lukas Tönne [Wed, 29 Oct 2014 12:05:21 +0000 (13:05 +0100)]
Fix T42389: Removed outdated comment from example script.

There was some confusion about the bl_icon attribute being optional. In
fact the functionality for hiding a tree type in the editor header is
now controlled by writing a poll function for the tree type instead,
which is more flexible and clean.

4 years agoCycles: Optimize math node without links to a single value node
Sergey Sharybin [Sun, 26 Oct 2014 14:40:04 +0000 (19:40 +0500)]
Cycles: Optimize math node without links to a single value node

Pretty straightforward implementation. Just needed to move some functions
around to make them available at shader compile time.

4 years agoCycles: Add a soft min/max UI value for volume step size, usually a range from 0...
Thomas Dinges [Wed, 29 Oct 2014 11:15:29 +0000 (12:15 +0100)]
Cycles: Add a soft min/max UI value for volume step size, usually a range from 0.01 to 1.0 is fine.

4 years agoRevert "Fix T42222"
Campbell Barton [Wed, 29 Oct 2014 10:10:07 +0000 (11:10 +0100)]
Revert "Fix T42222"

This reverts commit 507712db3fd7aa7bb903f6860f5a4eb29aa2be02.

Error was quite an old compiler, which had further warnings/errors.

Old compilers can just have this defined in BLI_math

4 years agoCleanup: Style fixes for closures, mainly bitflags and conditions.
Thomas Dinges [Wed, 29 Oct 2014 08:56:21 +0000 (09:56 +0100)]
Cleanup: Style fixes for closures, mainly bitflags and conditions.

4 years agoCleanup: Remove unused function in Translucent BSDF.
Thomas Dinges [Wed, 29 Oct 2014 08:42:19 +0000 (09:42 +0100)]
Cleanup: Remove unused function in Translucent BSDF.

4 years agoPlayer: fix conflicting type introduced in 2f0bdcb306999
Jens Verwiebe [Tue, 28 Oct 2014 20:39:54 +0000 (21:39 +0100)]
Player: fix conflicting type introduced in 2f0bdcb306999

4 years agoOSX/GHOST: fix T42305, appswitching not reliable, proposed by Fabio Arnold
Jens Verwiebe [Tue, 28 Oct 2014 19:43:52 +0000 (20:43 +0100)]
OSX/GHOST: fix T42305, appswitching not reliable, proposed by Fabio Arnold

4 years agoMarkers: optimize drawing
Campbell Barton [Tue, 28 Oct 2014 19:02:44 +0000 (20:02 +0100)]
Markers: optimize drawing

- avoid 2x glScalef per marker
- skip markers outside the view
- merge drawing into a single loop

4 years agoCleanup: rename draw_markers_time -> ED_markers_draw
Campbell Barton [Tue, 28 Oct 2014 18:03:13 +0000 (19:03 +0100)]
Cleanup: rename draw_markers_time -> ED_markers_draw

4 years agoMarkers: show the area that handles marker events
Campbell Barton [Tue, 28 Oct 2014 17:51:28 +0000 (18:51 +0100)]
Markers: show the area that handles marker events

4 years agoCleanup: remove redundant 'object' parent class
Campbell Barton [Tue, 28 Oct 2014 17:42:06 +0000 (18:42 +0100)]
Cleanup: remove redundant 'object' parent class

4 years agoCleanup: use SELECT flag
Campbell Barton [Tue, 28 Oct 2014 17:39:43 +0000 (18:39 +0100)]
Cleanup: use SELECT flag

4 years agoFix T41041: 'Delete keyframe' removes markers too
Campbell Barton [Tue, 28 Oct 2014 16:51:06 +0000 (17:51 +0100)]
Fix T41041: 'Delete keyframe' removes markers too

Operators that trigger UI events (but nothing else)
were using 'CANCELLED' making it impossible to tell if an invoke
function failed, or opened a menu.

4 years agoLattice: add-object radius should never scale data
Campbell Barton [Tue, 28 Oct 2014 14:53:31 +0000 (15:53 +0100)]
Lattice: add-object radius should never scale data

own error, lattice assumes rest state is unscaled data,
scaling needs to be done in object mode.

4 years agoWM: clear operator memory on file load
Campbell Barton [Tue, 28 Oct 2014 14:47:51 +0000 (15:47 +0100)]
WM: clear operator memory on file load

Was causing problems when opening scenes with different scale set.

4 years agoWM: unneeded alloc the operator-type iterator
Campbell Barton [Tue, 28 Oct 2014 14:41:05 +0000 (15:41 +0100)]
WM: unneeded alloc the operator-type iterator

4 years agoKeymap: PKey only runs BGE when engine is set
Campbell Barton [Tue, 28 Oct 2014 12:34:11 +0000 (13:34 +0100)]
Keymap: PKey only runs BGE when engine is set

4 years agoCleanup: de-duplicate engine-id's
Campbell Barton [Tue, 28 Oct 2014 11:49:04 +0000 (12:49 +0100)]
Cleanup: de-duplicate engine-id's

4 years agoRemove redundant BLI_exists call
Campbell Barton [Tue, 28 Oct 2014 10:33:05 +0000 (11:33 +0100)]
Remove redundant BLI_exists call

4 years agoBMesh Py API: Fast index lookups for vert/edge/faces
Campbell Barton [Tue, 28 Oct 2014 08:49:02 +0000 (09:49 +0100)]
BMesh Py API: Fast index lookups for vert/edge/faces

This changes the Py API to use array lookup table.
Previously this could be very slow since it would loop over all elements.

Now the python script is responsible for creating the internal lookup table (as with C code).

This will break some scripts.

4 years agoAdd Theme Option for UI Emboss
Jonathan Williamson [Mon, 27 Oct 2014 17:11:55 +0000 (18:11 +0100)]
Add Theme Option for UI Emboss

This adds a theme option for the embossing of UI widgets. By doing this users have much greater flexibility for creating nice themes. Previously many themes (particularly dark ones) looked quite bad due to the very obvious emboss. This made simpler, flat-style themes very challenging.

Closes T42228

Reviewed by @campbellbarton

4 years agoFix assert's, remove uiEndBlock calls
Campbell Barton [Mon, 27 Oct 2014 14:37:09 +0000 (15:37 +0100)]
Fix assert's, remove uiEndBlock calls

4 years agoFix T42393 crash in texture paint sampling in image mode when mesh did
Antony Riakiotakis [Mon, 27 Oct 2014 09:42:59 +0000 (10:42 +0100)]
Fix T42393 crash in texture paint sampling in image mode when mesh did
not have a material

4 years agoFix T42372: demo addon in doc was not handling keymaps correctly during (un)registration.
Bastien Montagne [Sun, 26 Oct 2014 09:01:03 +0000 (10:01 +0100)]
Fix T42372: demo addon in doc was not handling keymaps correctly during (un)registration.

First, you should unregister in reverse order you registered your operators, keymaps, etc.
Second, when registering keymaps you have to check keyconfigs are actually available (they are not in background mode).

4 years agoOSX/CLEW: silence hundreds of warnings: 'weak_import' attribute only applies to varia...
Jens Verwiebe [Fri, 24 Oct 2014 12:25:02 +0000 (14:25 +0200)]
OSX/CLEW: silence hundreds of warnings: 'weak_import' attribute only applies to variables and functions

4 years agoScons/funstuff: notify when the binaries are compiled
Jens Verwiebe [Thu, 23 Oct 2014 17:19:02 +0000 (19:19 +0200)]
Scons/funstuff: notify when the binaries are compiled

4 years agoTerminology Trim -> Slip tool. It's how it's mostly called in other
Antony Riakiotakis [Thu, 23 Oct 2014 14:48:34 +0000 (16:48 +0200)]
Terminology Trim -> Slip tool. It's how it's mostly called in other

4 years agoFix T42367: Spline-ik offset evaluating curve
Campbell Barton [Thu, 23 Oct 2014 14:29:40 +0000 (16:29 +0200)]
Fix T42367: Spline-ik offset evaluating curve

4 years agoSpline IK: use malloc, arrays are filled instantly
Campbell Barton [Thu, 23 Oct 2014 14:12:47 +0000 (16:12 +0200)]
Spline IK: use malloc, arrays are filled instantly

4 years agoFix T42351: Freestyle will not render edges selected by Edge Type: Material Boundary...
Tamito Kajiyama [Thu, 23 Oct 2014 11:26:39 +0000 (20:26 +0900)]
Fix T42351: Freestyle will not render edges selected by Edge Type: Material Boundary, if the materials are different, but look identical.

4 years agoOSX/GHOST: more little cleanups
Jens Verwiebe [Thu, 23 Oct 2014 12:40:56 +0000 (14:40 +0200)]
OSX/GHOST: more little cleanups

4 years agoOSX/GHOST: some cleanups
Jens Verwiebe [Thu, 23 Oct 2014 12:34:56 +0000 (14:34 +0200)]
OSX/GHOST: some cleanups

4 years agoOSX: move notification into its own function
Jens Verwiebe [Thu, 23 Oct 2014 12:20:06 +0000 (14:20 +0200)]
OSX: move notification into its own function

4 years agoFix T42354 modal transform map not cycling through local/global
Antony Riakiotakis [Thu, 23 Oct 2014 12:16:36 +0000 (14:16 +0200)]
Fix T42354 modal transform map not cycling through local/global
orientation properly

Patch by Phillip Oeser, thanks!

4 years agoFix T42330 game engine does not allow texture slots generation.
Antony Riakiotakis [Thu, 23 Oct 2014 11:39:45 +0000 (13:39 +0200)]
Fix T42330 game engine does not allow texture slots generation.

4 years agoCleanup: spelling
Campbell Barton [Thu, 23 Oct 2014 08:38:14 +0000 (10:38 +0200)]
Cleanup: spelling

4 years agoChecked each of my (jwilkins) XXX notes.
Jason Wilkins [Thu, 23 Oct 2014 01:03:25 +0000 (20:03 -0500)]
Checked each of my (jwilkins) XXX notes.

The ones in extern/glew-es have been changed to NOTE instead of XXX

GHOST_ContextEGL.cpp: It really does seem that it is not possible to query the swap interval using EGL

GHOST_WidnowCocoa.h: The comment referring to Carbon is clearly out of date, so I removed it.

math_geom.c: The node about not using tmax again is correct, but the code is kept for a future maintainer who will need to know how to compute it if they modify that code.

paint_image_proj.c (2698): The question about integer truncation does not appear to have been resolved.  It still seems to be an incorrectly implementation of rounding (I'd suggest using the round function instead of this hack).

4 years agoFix T42352.
Jonathan Williamson [Wed, 22 Oct 2014 21:25:31 +0000 (23:25 +0200)]
Fix T42352.

Add Recalcuate Normals to the Faces menu, next to other shading options.

Differential revision:
Signed-off-by: Thomas Dinges
4 years agoUsual UI messages fixes.
Bastien Montagne [Wed, 22 Oct 2014 20:26:45 +0000 (22:26 +0200)]
Usual UI messages fixes.

4 years agoOSX: as we cannot be sure to have ARC, better release allocated notification
Jens Verwiebe [Wed, 22 Oct 2014 18:17:04 +0000 (20:17 +0200)]
OSX: as we cannot be sure to have ARC, better release allocated notification

4 years agoOSX/GHOST: use notifications to inform user about a progress reached 100%
Jens Verwiebe [Wed, 22 Oct 2014 17:59:00 +0000 (19:59 +0200)]
OSX/GHOST: use notifications to inform user about a progress reached 100%
The occurance can be controlled in NotificationCenter, todo: move to own function ?

4 years agoRevert "Cycles: Implement Mitchell-Netravali pixel filter"
Sergey Sharybin [Wed, 22 Oct 2014 16:52:04 +0000 (22:52 +0600)]
Revert "Cycles: Implement Mitchell-Netravali pixel filter"

As it appears we can't really use mitchell filter together with the
current filter importance sampling,

This reverts commit 742911314322e5dae3a07469d0ca53b61427f978.

4 years agoCycles: Implement Mitchell-Netravali pixel filter
Sergey Sharybin [Wed, 22 Oct 2014 16:08:17 +0000 (18:08 +0200)]
Cycles: Implement Mitchell-Netravali pixel filter

It's the same filter which is used by default by Blender Internal renderer
and it gives crispier edges than gaussian filter.

Default filter for Cycles is unchanged because it's unclear if new filter
gives more noise or not. After some further real production tests we can
consider making Mitchell filter default for Cycles as well.

4 years agoCycles: Code cleanup -- use bitshifts instead of hardcoded constants
Sergey Sharybin [Wed, 22 Oct 2014 14:51:40 +0000 (20:51 +0600)]
Cycles: Code cleanup -- use bitshifts instead of hardcoded constants

This way it's easier to extend bitfields and see when we start running
out of free bits.

Plus added brief description of what SD_VOLUME_CUBIC flag means.

4 years agoCycles: Get rid of hardcoded enum values in the code
Sergey Sharybin [Wed, 22 Oct 2014 14:17:03 +0000 (16:17 +0200)]
Cycles: Get rid of hardcoded enum values in the code

Still need to keep enum definition in sync with the python code,
but the code itself is a bit more clear to understand now.

4 years agoCycles: Expose volume voxel data interpolation to the interface
Sergey Sharybin [Wed, 22 Oct 2014 13:23:45 +0000 (19:23 +0600)]
Cycles: Expose volume voxel data interpolation to the interface

It is per-material setting which could be found under the Volume settings
in the material and world context buttons.

There could still be some code-wise improvements, like using variable-size
macro for interp3d instead of having interp3d_ex to which you can pass the
interpolation method.

4 years agoCycles: Implement tricubic b-spline interpolation for CPU texture_image
Sergey Sharybin [Wed, 22 Oct 2014 11:43:33 +0000 (17:43 +0600)]
Cycles: Implement tricubic b-spline interpolation for CPU texture_image

This is the first step towards supporting cubic interpolation for voxel
data (such as smoke and fire). It is not epxosed to the interface at all
yet, this is to be done soon after this change.

4 years agoMeshdeform: Use SSE intrinsics in meshdeform_dynamic_bind()
Sergey Sharybin [Tue, 21 Oct 2014 09:37:29 +0000 (11:37 +0200)]
Meshdeform: Use SSE intrinsics in meshdeform_dynamic_bind()

Quite straightforward change, don't think some extra explanation is needed.

This gives about 15% speedup of the modifier evaluation on my laptop.

Reviewers: campbellbarton

Differential Revision:

4 years agoMeshdeform modifier: Use threaded evaluation
Sergey Sharybin [Wed, 22 Oct 2014 09:56:52 +0000 (11:56 +0200)]
Meshdeform modifier: Use threaded evaluation

This commit switches meshdeform modifier to use threads to evaluate
the vertices positions using the central task scheduler.

SO now we've got an utility function to help splitting the for loop
into tasks using BLI_task module which is pretty straightforward to
use: it gets range (which is an integer lower and higher bounds) and
the function and userdata to be invoked for each of the iterations.

The only weak point for now is the passing the data to the callback,
this isn't so trivial to improve in pure C.

Reviewers: campbellbarton

Differential Revision:

4 years agoOSX: fix T42325 by not letting .vob handled by qt, avoids a doublefree
Jens Verwiebe [Wed, 22 Oct 2014 09:59:54 +0000 (11:59 +0200)]
OSX: fix T42325 by not letting .vob handled by qt, avoids a doublefree

4 years agoCleanup: avoid loop-in-loop when mirror isn't used
Campbell Barton [Wed, 22 Oct 2014 09:53:10 +0000 (11:53 +0200)]
Cleanup: avoid loop-in-loop when mirror isn't used

Also name 'children' is normally used for a list

4 years agoFix T42334: x-mirror fails in armature with a partially mirrored chain.
Lukas Tönne [Wed, 22 Oct 2014 09:11:52 +0000 (11:11 +0200)]
Fix T42334: x-mirror fails in armature with a partially mirrored chain.

When resetting edit bones on cancel, they also have to reset connected
parent and child bone tips and heads respectively, since these can be
modified during the transform.

4 years agoCleanup: style
Campbell Barton [Tue, 21 Oct 2014 17:02:05 +0000 (19:02 +0200)]
Cleanup: style

4 years agoLinux/scons: fix compile, BF_BOOST_LIB_STATIC string was miising a space
Jens Verwiebe [Tue, 21 Oct 2014 16:47:52 +0000 (18:47 +0200)]
Linux/scons: fix compile, BF_BOOST_LIB_STATIC string was miising a space

4 years agoFix T42260: By repeatedly joining meshes, you could end up with thousands of UVLayers
Bastien Montagne [Tue, 21 Oct 2014 15:01:56 +0000 (17:01 +0200)]
Fix T42260: By repeatedly joining meshes, you could end up with thousands of UVLayers

This is only an indirect fix, in fact: this commit adds a public API to check
the maximum number of a given layer type (`CustomData_layertype_layers_max()`),
and uses it to forbid too much layer creation in `CustomData_merge()`.

This only affects UVs/VCol data though, but merge behavior in itself is not a bug
actually, how user managed to get thousands of different UV layer names remain
rather mysterious...

4 years agoFix T42278: Grease Pencil in Movie Clip Editor can not be erased in Track > Cursor...
Sergey Sharybin [Tue, 21 Oct 2014 14:09:25 +0000 (16:09 +0200)]
Fix T42278: Grease Pencil in Movie Clip Editor can not be erased in Track > Cursor mode

Eraser was not aware of possible transform matrix for the strokes.

4 years agoFix T42324: Curve deform modifier from mesh edge doesnt work properly
Sergey Sharybin [Tue, 21 Oct 2014 13:16:29 +0000 (19:16 +0600)]
Fix T42324: Curve deform modifier from mesh edge doesnt work properly

Curve parent requires valid path to exist for curve. If the path is disabled in
the curve settings, displist evaluation will check the dependency graph whether
the path is needed for parenting.

The issue was that changing relations in the scene chagned need of the curve path
but nothing tagged the curve to update it's path.

For now use direct call of DAG_id_tag_update from set_parent(). In the bright
future we might detect such a need in flush automatically in the depsgraph.

4 years agoSimplify GLSL in bump mapping, use gl_NormalMatrix where appropriate.
Antony Riakiotakis [Tue, 21 Oct 2014 13:00:12 +0000 (15:00 +0200)]
Simplify GLSL in bump mapping, use gl_NormalMatrix where appropriate.
tangents are directions and should be transformed like directions.

4 years agoFix T42257: Curve vertex parent not working with animation
Sergey Sharybin [Tue, 21 Oct 2014 12:44:08 +0000 (14:44 +0200)]
Fix T42257: Curve vertex parent not working with animation

Vertex parent was using original non-modified nurbs list, simply because
it didn't have something else to operate with.

Now we've got deformed by pre-tessellation modifiers nurbs in the curve
cache which might be used y the vertex parent.

4 years agoFix T42178: Cycles Film Exposure not triggering Viewport update
Sergey Sharybin [Tue, 21 Oct 2014 12:08:05 +0000 (14:08 +0200)]
Fix T42178: Cycles Film Exposure not triggering Viewport update

4 years agoListBase: use BLI_listbase_ for new api calls
Campbell Barton [Tue, 21 Oct 2014 12:06:16 +0000 (14:06 +0200)]
ListBase: use BLI_listbase_ for new api calls

4 years agoFix tgz script, addons_contrib was in release
Campbell Barton [Tue, 21 Oct 2014 11:57:03 +0000 (13:57 +0200)]
Fix tgz script, addons_contrib was in release

4 years agoShapeKeys: rework 'move skey' code, and add options to move to first/last position.
Bastien Montagne [Tue, 21 Oct 2014 09:59:14 +0000 (11:59 +0200)]
ShapeKeys: rework 'move skey' code, and add options to move to first/last position.

Main moving logic is moved to new `BKE_keyblock_move()`, which makes it available from anywhere.
In addition, move code was reworked so that it only loops once on whole keyblocks list,
and it accepts arbitrary org and dest indices, not only neighbor ones.

Partly based on work by revzin (Grigory Revzin) in his soc-2014-shapekey GSoC branch, thanks!

4 years agoBLI_listbase: add `BLI_swaplinks` which swaps given links' positions in given list.
Bastien Montagne [Tue, 21 Oct 2014 09:56:46 +0000 (11:56 +0200)]
BLI_listbase: add `BLI_swaplinks` which swaps given links' positions in given list.

Can be much simpler and quicker than using remlink/insert functions.

4 years agoUI Icons: add 'triangle-bar' left/right/up/down icons.
Bastien Montagne [Tue, 21 Oct 2014 09:55:36 +0000 (11:55 +0200)]
UI Icons: add 'triangle-bar' left/right/up/down icons.

4 years agoFix sequencer clipboard with meta's containing ID references
Campbell Barton [Tue, 21 Oct 2014 09:36:11 +0000 (11:36 +0200)]
Fix sequencer clipboard with meta's containing ID references

4 years agoFix sequencer duplicate with only handle selected
Campbell Barton [Tue, 21 Oct 2014 09:10:45 +0000 (11:10 +0200)]
Fix sequencer duplicate with only handle selected

4 years agoFix T42326 trim operator not cancelled by the escape key.
Antony Riakiotakis [Tue, 21 Oct 2014 09:03:46 +0000 (11:03 +0200)]
Fix T42326 trim operator not cancelled by the escape key.

4 years agoDon't change global compiler flags when FFmpeg is enabled
Sergey Sharybin [Mon, 20 Oct 2014 21:21:09 +0000 (03:21 +0600)]
Don't change global compiler flags when FFmpeg is enabled

It should no be longer needed. If it causes the issues please let me know
to find a more cleaner solution.

4 years agoFix T42311, too many paint slots added.
Antony Riakiotakis [Mon, 20 Oct 2014 18:08:22 +0000 (20:08 +0200)]
Fix T42311, too many paint slots added.

Don't allow the add paint slot operator to redo. Also guard better against
excessive slot addition

4 years agoTrim tool:
Antony Riakiotakis [Mon, 20 Oct 2014 16:51:46 +0000 (18:51 +0200)]
Trim tool:

Effects strips in metastrips could be erratic.

4 years agoBetter fix for previous trim fix.
Antony Riakiotakis [Mon, 20 Oct 2014 16:29:16 +0000 (18:29 +0200)]
Better fix for previous trim fix.

4 years agoFix T42313: Ruler always measures 0.0
Campbell Barton [Mon, 20 Oct 2014 15:06:49 +0000 (17:06 +0200)]
Fix T42313: Ruler always measures 0.0

Passing 'ar' to snapObjectsRayEx would apply a ray-offset.

4 years agoFix trim tools metastrip borders not getting updated correctly.
Antony Riakiotakis [Mon, 20 Oct 2014 15:37:13 +0000 (17:37 +0200)]
Fix trim tools metastrip borders not getting updated correctly.

4 years agoMerge trim tool from terrible_consequencer
Antony Riakiotakis [Mon, 20 Oct 2014 13:40:06 +0000 (15:40 +0200)]
Merge trim tool from terrible_consequencer

The trim tool (T key) allows users to change the position of the
contents of a strip without moving the strip itself.

4 years agoOptimization for mesh deform: use BLI_INLINE specifiers
Sergey Sharybin [Mon, 20 Oct 2014 10:40:41 +0000 (16:40 +0600)]
Optimization for mesh deform: use BLI_INLINE specifiers

This helps compiler to do detect stuff which might be inlined,
gives around 30% speedup on my laptop with test files from ZanQdo.

4 years agoFix T42189
Antony Riakiotakis [Mon, 20 Oct 2014 10:35:35 +0000 (12:35 +0200)]
Fix T42189

Own mistake - not copying enough data.

4 years agoFix T42264: Negative scale & clipped-select fails
Campbell Barton [Mon, 20 Oct 2014 09:14:02 +0000 (11:14 +0200)]
Fix T42264: Negative scale & clipped-select fails

Thanks to mont29 for finding the cause.

4 years agoFix T42304: blender 2.72a 3D view object selected color wrong in 2.4x theme.
Bastien Montagne [Sun, 19 Oct 2014 18:50:13 +0000 (20:50 +0200)]
Fix T42304: blender 2.72a 3D view object selected color wrong in 2.4x theme.

I would not have endured such a critical and monstruous bug one more femtosecond!

And even worse - active color was awfully wrong too! Shocking!

4 years agoFix T42303 Icons lost after loading window
Antony Riakiotakis [Sun, 19 Oct 2014 18:50:43 +0000 (20:50 +0200)]
Fix T42303 Icons lost after loading window

The issue here is that if no matching winid is found, we destroy all
windows and their context with them. This will also delete the OpenGL
textures associated with the initial context, thus we lose the icons.
This patch makes sure a window is always kept for later so the initial
context does not get lost.

Thanks to Campbell and Ton for the discussion on the issue.

4 years agoFix typo in calculateCenterMedian that could give computed median point wrong values.
Grigory Revzin [Sun, 19 Oct 2014 18:13:05 +0000 (20:13 +0200)]
Fix typo in calculateCenterMedian that could give computed median point wrong values.

From soc-2014-shapekey branch, with minor edits by mont29 (Bastien Montagne).