6 years agocleanup: shebang lines
Campbell Barton [Thu, 29 Jan 2015 04:56:23 +0000 (15:56 +1100)]
cleanup: shebang lines

D888 by @sambler

6 years agoBone calculate roll (pos/neg options in menu)
Campbell Barton [Thu, 29 Jan 2015 04:40:29 +0000 (15:40 +1100)]
Bone calculate roll (pos/neg options in menu)

This change means you can see the option to do +/- aligned axis when calculating roll
(in that case the flip-axis option is ignored).

This is added since you mostly don't want to set the option in the toolbar each time.

6 years agocleanup: pep8
Campbell Barton [Thu, 29 Jan 2015 04:35:06 +0000 (15:35 +1100)]
cleanup: pep8

also remove empty class parenthesis

6 years agoAudaspace: Fix typo in speed of sound initialization value by lordloki (Jorge Bernal)
Jörg Müller [Wed, 28 Jan 2015 23:20:01 +0000 (12:20 +1300)]
Audaspace: Fix typo in speed of sound initialization value by lordloki (Jorge Bernal)

6 years agoFile Browser: Remove unused fileselect event value
julianeisel [Wed, 28 Jan 2015 22:35:46 +0000 (23:35 +0100)]
File Browser: Remove unused fileselect event value

This was initially added for a later support of making the automatic File
Browser fullscreen optional. As this idea was rejected for now (D1037) it
doesn't really make sense to leave these things in.

6 years agoBGE: draw contact points + normals in yellow
Sybren A. Stüvel [Tue, 27 Jan 2015 18:06:44 +0000 (19:06 +0100)]
BGE: draw contact points + normals in yellow

Red was used with different semantics in the physics visualisation,
switching to yellow to prevent confusion.

A screenshot can be found at -- it's
the yellow balls + lines.

Reviewers: brita_, lordloki, campbellbarton

Reviewed By: lordloki, campbellbarton

Subscribers: lordloki

Projects: #game_physics

Differential Revision:

6 years agoBGE: draw contact points as sphere + line indicating the surface normal.
Sybren A. Stüvel [Tue, 27 Jan 2015 18:05:43 +0000 (19:05 +0100)]
BGE: draw contact points as sphere + line indicating the surface normal.

A screenshot can be found at -- it's the yellow balls + lines.

Reviewers: brita_, lordloki, campbellbarton

Reviewed By: lordloki, campbellbarton

Subscribers: lordloki

Projects: #game_physics

Differential Revision:

6 years agoBased on Sergey's suggestion, use spinlocks for threaded loading of
Antony Riakiotakis [Wed, 28 Jan 2015 18:45:16 +0000 (19:45 +0100)]
Based on Sergey's suggestion, use spinlocks for threaded loading of

6 years agoUpdate scons build documentation
Sergey Sharybin [Wed, 28 Jan 2015 18:37:45 +0000 (23:37 +0500)]
Update scons build documentation

  - fix dead link (build dependencies)
  - rewrite $BLENDERHOME/{config,tools}/* to $BLENDERHOME/build_files/scons/{config,tools}/*

Patch by David Creswick, thanks!

Reviewers: jesterking

Differential Revision:

6 years agoAdded default install location from to FindOpenEXR.cmake
Sergey Sharybin [Wed, 28 Jan 2015 18:36:09 +0000 (23:36 +0500)]
Added default install location from to FindOpenEXR.cmake

Patch by Oliver Weissbarth, thanks!

Differential Revision:

6 years agoFix clicking into texpaint slots not changing active image in blender
Antony Riakiotakis [Wed, 28 Jan 2015 14:34:11 +0000 (15:34 +0100)]
Fix clicking into texpaint slots not changing active image in blender
internal when using nodes.

Using nodes in blender internal is not well supported, but there's no
harm in allowing this and it will help manu do his texturing better :)

6 years agoFix warning from previous commit:
Antony Riakiotakis [Wed, 28 Jan 2015 14:24:21 +0000 (15:24 +0100)]
Fix warning from previous commit:

Set slot to NULL when no active slot is found.

6 years agoCode cleanup: break up project_paint_begin() into smaller functions
Nicholas Bishop [Mon, 26 Jan 2015 16:01:25 +0000 (17:01 +0100)]
Code cleanup: break up project_paint_begin() into smaller functions

This initialization function was massive with lots of local variables,
quite hard to follow. Splitting up doesn't make it perfectly clear,
but a bit better.

The changes are mostly quite mechanical splitting apart code, plus a
few new temporary structs for passing data without too many confusing
args. No intentional changes to functionality.

Reviewed By: psy-fi

Differential Revision:

6 years agoTexture painting, support cycles UV Map nodes:
Antony Riakiotakis [Wed, 28 Jan 2015 13:42:47 +0000 (14:42 +0100)]
Texture painting, support cycles UV Map nodes:

Support UV Map nodes for determining active UV layer. Now when an image
node is enocuntered, the system will recursively search the node's input
sockets for any UV Map nodes. Obviously this won't fetch any coordinate
transforms into painting, and it will only choose the first UV Map node
encountered if more than one UV Map nodes are combined.

However it should allow custom UV setups per materials and tweaking of
the UV Map node's UV layer from the Slots panel.

6 years agoSequencer: Option to skip strip proxy generation if they already exists
Sergey Sharybin [Wed, 28 Jan 2015 12:30:15 +0000 (17:30 +0500)]
Sequencer: Option to skip strip proxy generation if they already exists

This is a per-strip option next to the build proxy size which tells blender
whether to skip building proxy size if the file for it already exists or not.
The option is called "Overwrite" for simplicity.

This option is enabled by default to avoid changes in the file behavior.

TODO: Would be nice to do something like that for movie clips as well.

6 years agoAdd theme option for cliping border
Antony Riakiotakis [Wed, 28 Jan 2015 12:03:42 +0000 (13:03 +0100)]
Add theme option for cliping border

6 years agoFix dreaded black screen for missing proxies - if requested proxy size
Antony Riakiotakis [Wed, 28 Jan 2015 10:48:22 +0000 (11:48 +0100)]
Fix dreaded black screen for missing proxies - if requested proxy size
is not found, use the original footage instead

6 years agoProperly decrease users of images when deleting a paint slot.
Antony Riakiotakis [Wed, 28 Jan 2015 10:09:19 +0000 (11:09 +0100)]
Properly decrease users of images when deleting a paint slot.

6 years agoSwitch windows MSVC builds to OpenAL-soft
Martijn Berger [Wed, 28 Jan 2015 09:36:19 +0000 (10:36 +0100)]
Switch windows MSVC builds to OpenAL-soft

6 years agocleanup: py imports
Campbell Barton [Tue, 27 Jan 2015 06:46:07 +0000 (17:46 +1100)]
cleanup: py imports

6 years agoStacked fullscreen area support (proper implemenation)
julianeisel [Wed, 28 Jan 2015 01:32:52 +0000 (02:32 +0100)]
Stacked fullscreen area support (proper implemenation)

Adds support for stacked fullscreens. This basically means, if a user opens a
temporary fullscreen mode, such as the File Browser or the Image Editor render
view, from a different fullscreen, the "Back to Previous" function or the other
ways to escape those temporary fullscreens don't return to the split screen
layout but to the previous fullscreen he has been in.

I already committed something similar (f7e844570fea862) but that was only
supposed as a fix, it didn't work for the "Back to Previous" operator and the
implementation wasn't really reusable. This one looks a bit nicer + makes some
older hacks unnecessary :)

6 years agoOSL: Updates for OSL 1.5 API changes.
Thomas Dinges [Wed, 28 Jan 2015 00:07:59 +0000 (01:07 +0100)]
OSL: Updates for OSL 1.5 API changes.

* create() and destroy() are deprecated since OSL 1.5, use regular constructors / destructors.

6 years agoFix T43388 Cycles Baking gives different results than Cycles Render
Dalai Felinto [Tue, 27 Jan 2015 15:02:55 +0000 (13:02 -0200)]
Fix T43388 Cycles Baking gives different results than Cycles Render

Reported and nailed down by Michale (MeshLogic).
The code that fixes this was commented out, but Brecht gave the go ahead to use it even if it is not the real solution

6 years agoInterface get rid of some quadstrips in favor of trianglestrips
Martijn Berger [Tue, 27 Jan 2015 19:18:39 +0000 (20:18 +0100)]
Interface get rid of some quadstrips in favor of trianglestrips

If we ever want OpenGL 3.2 core context quadstrips need to go anyway and while there is much more things that need to be done this is something that can be tackled without any mayor surgery.
And without losing any kind of compatibility with ancient GL.

Reviewers: psy-fi

Reviewed By: psy-fi

Subscribers: psy-fi

Projects: #bf_blender

Differential Revision:

6 years agoCorrection to tooltip, object texture space is supported by both SVM and OSL
Sergey Sharybin [Tue, 27 Jan 2015 18:53:50 +0000 (23:53 +0500)]
Correction to tooltip, object texture space is supported by both SVM and OSL

6 years agoFix T43398: Viewport "Renderend" ist not updated when a material is assigned to a...
Sergey Sharybin [Tue, 27 Jan 2015 17:40:55 +0000 (22:40 +0500)]
Fix T43398: Viewport "Renderend" ist not updated when a material is assigned to a face

The issues goes back to eb016eb and now it becomes clear object could be tagged for
update from the edit mode as well.

6 years agoFix T43309 saving takes longer.
Antony Riakiotakis [Tue, 27 Jan 2015 16:58:29 +0000 (17:58 +0100)]
Fix T43309 saving takes longer.

Issue is that world shader compilation and loading may take long so we
just draw file previews with premultiplied background. Should create the
old familiar transparent background files.

Thanks to Sergey for figuring out the issue.

6 years agoFollowup fix for T43394: Reconnect feature was using identity matrix for
Lukas Tönne [Tue, 27 Jan 2015 16:49:34 +0000 (17:49 +0100)]
Followup fix for T43394: Reconnect feature was using identity matrix for
transforming hair into world space, but this is already happining due to
the global flag.

Still is a horrible mess, legacy code headache as always ...

6 years agoFix T43346: Window mapping is wrong in preview render
Sergey Sharybin [Tue, 27 Jan 2015 16:36:14 +0000 (21:36 +0500)]
Fix T43346: Window mapping is wrong in preview render

The issue was caused by the whole viewplane used for mapping calculation
which would for sure lead to differences between final camera render and
viewport render from the camera view.

This commit makes it so window texture mapping is the same as final render
when viewing from the camera in viewport render.

It's not totally clear what's the right thing to do when viewport is not
in the camera view mode and that part is left unchanged.

6 years agoFix T43250, lamp node did not use energy when used with nodes in blender
Antony Riakiotakis [Tue, 27 Jan 2015 15:34:27 +0000 (16:34 +0100)]
Fix T43250, lamp node did not use energy when used with nodes in blender

Similar to fix for T42074 we need to multiply with energy -after-
texture application.

6 years agoAnd one more infamous BPlayer Fix (tm).
Bastien Montagne [Tue, 27 Jan 2015 15:28:54 +0000 (16:28 +0100)]
And one more infamous BPlayer Fix (tm).

Seriously, please build complete Blender when you change some public func signature...

6 years agoFix T43367: Non-wacom tablets broken on Blender in linux?
Bastien Montagne [Tue, 27 Jan 2015 15:17:27 +0000 (16:17 +0100)]
Fix T43367: Non-wacom tablets broken on Blender in linux?

Looks like with some versions of Xlib (at least the 1.6.2 currently used on Debian testing)
and/or evdev generic driver (2.9.0 currently on Debian testing), you have to also 'select'
DeviceButton1Motion with the extended tablet's motion event, otherwise you won't get any
tablet motion event once pen is pressed, leading to no pressure (each stroke keeping its
init pressure until the end). Crap!

6 years agoFix T43371 lamps not updated on appenidng. Remove GPU materials on
Antony Riakiotakis [Tue, 27 Jan 2015 14:37:49 +0000 (15:37 +0100)]
Fix T43371 lamps not updated on appenidng. Remove GPU materials on

6 years agoCorrect path to mingw64 libs so some minimal blender subset is possible to be compile...
Sergey Sharybin [Tue, 27 Jan 2015 14:29:22 +0000 (19:29 +0500)]
Correct path to mingw64 libs so some minimal blender subset is possible to be compiled with older gcc

6 years agoFix T43429: bpy.ops.render.render() not working with scene in VSE
Sergey Sharybin [Tue, 27 Jan 2015 12:13:21 +0000 (17:13 +0500)]
Fix T43429: bpy.ops.render.render() not working with scene in VSE

Was a mistake in threading conflict prevention condition.

6 years agoProxy job: make user cancelling actually matter
Antony Riakiotakis [Tue, 27 Jan 2015 11:29:45 +0000 (12:29 +0100)]
Proxy job: make user cancelling actually matter

6 years agoFix T43427: Particle system children sometimes not generated on reload
Sergey Sharybin [Tue, 27 Jan 2015 11:14:53 +0000 (16:14 +0500)]
Fix T43427: Particle system children sometimes not generated on reload

The issue was caused by the conflict between preview render which would set
R_NO_IMAGE_LOAD flag on the renderer and texture samplers called outside of
the render pipeline trying to use this flag.

Now the sampler functions accepts extra argument so render pipeline can
still skip image load, but calls outside of the pipeline will nicely load
all the images.

Not cleanest change in the world but good enough to unlock gooseberry team,
and assuming we already had pool passed all over the place it should be all

Will need to reshuffle arguments into SamplerOptions structure later.

6 years agoCycles: Support texture coordinate from another object
Sergey Sharybin [Wed, 21 Jan 2015 17:19:31 +0000 (22:19 +0500)]
Cycles: Support texture coordinate from another object

This is the same as blender internal's texture mapping from another object,
so this way it's possible to control texture space of one object by another.

Quite straightforward change apart from the workaround for the stupidness of
the dependency graph. Now shader has flag telling that it depends on object
transform. This is the simplest way to know which shaders needs to be tagged
for update when object changes. This might give some false-positive tags now
but reducing them should not be priority for Cycles and rather be a priority
to bring new dependency graph.

Also GLSL preview does not support using other object for mapping.

This is actually correct for BI shading as well and to be addressed as
a part of general GLSL viewport improvements since it's not really clear
how to support this in GLSL.

Reviewers: brecht, juicyfruit

Subscribers: eyecandy, venomgfx

Differential Revision:

6 years agoFix T43408: Putting steps and keys properties into an inactive sublayout
Lukas Tönne [Tue, 27 Jan 2015 08:06:45 +0000 (09:06 +0100)]
Fix T43408: Putting steps and keys properties into an inactive sublayout
based on the interpolate property does not make any sense at all.

These settings are still totally confusing - this code has not been
touched since 2009 at least! Go figure ...

6 years agomissed last commit
Campbell Barton [Mon, 26 Jan 2015 16:41:05 +0000 (03:41 +1100)]
missed last commit

6 years agoBGE: remove Py3.1 workaround
Campbell Barton [Mon, 26 Jan 2015 15:17:56 +0000 (02:17 +1100)]
BGE: remove Py3.1 workaround

6 years agoCleanup: current/parent paths: add helpers in BLI_path_utils.
Bastien Montagne [Mon, 26 Jan 2015 15:58:02 +0000 (16:58 +0100)]
Cleanup: current/parent paths: add helpers in BLI_path_utils.

Also, avoid calling ugly strcmp with '.' or '..', making direct char checks is
much cheaper here!

6 years agoCleanup: strcmp/strncmp -> STREQ/STREQLEN (in boolean usage).
Bastien Montagne [Mon, 26 Jan 2015 15:03:11 +0000 (16:03 +0100)]
Cleanup: strcmp/strncmp -> STREQ/STREQLEN (in boolean usage).

Makes usage of those funcs much more clear, we even had mixed '!strcmp(foo, bar)'
and 'strcmp(foo, bar) == 0' in several places...

6 years agoCode cleanup: de-duplicate codegen texid assignment
Nicholas Bishop [Sat, 24 Jan 2015 16:07:38 +0000 (17:07 +0100)]
Code cleanup: de-duplicate codegen texid assignment

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: use GPUDynamicType instead of int
Nicholas Bishop [Sat, 24 Jan 2015 14:50:03 +0000 (15:50 +0100)]
Code cleanup: use GPUDynamicType instead of int

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: use GPUDataSource enum instead of int
Nicholas Bishop [Sat, 24 Jan 2015 14:33:34 +0000 (15:33 +0100)]
Code cleanup: use GPUDataSource enum instead of int

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: use bool instead of int
Nicholas Bishop [Sat, 24 Jan 2015 14:20:26 +0000 (15:20 +0100)]
Code cleanup: use bool instead of int

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: use an enum for GPUNodeLink.image
Nicholas Bishop [Sat, 24 Jan 2015 14:09:18 +0000 (15:09 +0100)]
Code cleanup: use an enum for GPUNodeLink.image

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: use enums instead of defines
Nicholas Bishop [Sat, 24 Jan 2015 14:02:54 +0000 (15:02 +0100)]
Code cleanup: use enums instead of defines

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: move struct GPUFunction and related code out of header
Nicholas Bishop [Sat, 24 Jan 2015 14:01:13 +0000 (15:01 +0100)]
Code cleanup: move struct GPUFunction and related code out of header

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: use lowercase "gpu" prefix for static functions
Nicholas Bishop [Sat, 24 Jan 2015 13:51:00 +0000 (14:51 +0100)]
Code cleanup: use lowercase "gpu" prefix for static functions

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: remove do-nothing function `GPU_node_end`
Nicholas Bishop [Sat, 24 Jan 2015 13:48:19 +0000 (14:48 +0100)]
Code cleanup: remove do-nothing function `GPU_node_end`

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: remove some `UNUSED` parameters from static functions
Nicholas Bishop [Sat, 24 Jan 2015 13:47:32 +0000 (14:47 +0100)]
Code cleanup: remove some `UNUSED` parameters from static functions

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: retype various fields/parameters from int to GPUType
Nicholas Bishop [Sat, 24 Jan 2015 12:58:19 +0000 (13:58 +0100)]
Code cleanup: retype various fields/parameters from int to GPUType

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: remove parameter from GPU_node_link_create()
Nicholas Bishop [Sat, 24 Jan 2015 13:10:03 +0000 (14:10 +0100)]
Code cleanup: remove parameter from GPU_node_link_create()

In all but one call the value 0 (aka GPU_NONE) was passed in. Clearer
to just default to GPU_NONE and change the one caller that sets a real
type to do it explicitly.

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: minor comment improvements
Nicholas Bishop [Sat, 24 Jan 2015 12:43:57 +0000 (13:43 +0100)]
Code cleanup: minor comment improvements

Reviewed By: campbellbarton

Differential Revision:

6 years agoCode cleanup: give anomymous enum used for CustomData.type a name
Nicholas Bishop [Sat, 24 Jan 2015 12:25:49 +0000 (13:25 +0100)]
Code cleanup: give anomymous enum used for CustomData.type a name

Used this in GPU module to clarify what some "ints" really are.

Reviewed By: campbellbarton

Differential Revision:

6 years agoUV Unwrap: Correct aspect was inverted
Campbell Barton [Mon, 26 Jan 2015 14:05:09 +0000 (01:05 +1100)]
UV Unwrap: Correct aspect was inverted

6 years agoFix T43409: Particle instancing on hair sometimes doesn't have a path
Lukas Tönne [Mon, 26 Jan 2015 13:57:01 +0000 (14:57 +0100)]
Fix T43409: Particle instancing on hair sometimes doesn't have a path
cache available.

6 years agoTimeline: Draw keyframe lines at 60% height
Sybren A. Stüvel [Mon, 26 Jan 2015 13:48:51 +0000 (14:48 +0100)]
Timeline: Draw keyframe lines at 60% height

This patch updates the timeline editor. Ordinarily, it draws the
yellow keyframe lines at 100% of the available height. This becomes an
issue when there are keyframes for every frame, which can happen when
importing motion capture data or recording animations from the BGE. In
such cases, the green "current frame" indicator becomes very hard to

This patch restricts the drawing to the bottom 60% of the available
space, thereby making the "current frame" indicator more visible.

Reviewers: aligorith

Reviewed By: aligorith

Subscribers: Severin

Projects: #bf_blender

Differential Revision:

6 years agoFix T43394: hair remapping needs to handle "global" hair correctly.
Lukas Tönne [Mon, 26 Jan 2015 13:37:13 +0000 (14:37 +0100)]
Fix T43394: hair remapping needs to handle "global" hair correctly.

The function was checking the psys flag for this, but since for
disconnect/connect the same psys is used as source and target, the flag
must be passed explicitly.

6 years agoFix T38619: Confusing logic for Keying Set keyframing Settings
Joshua Leung [Mon, 26 Jan 2015 13:09:50 +0000 (02:09 +1300)]
Fix T38619: Confusing logic for Keying Set keyframing Settings

The logic used for determining whether certain keyframing settings (i.e. visual,
only needed, xyz -> rgb) got applied was wonky. The original intention here was
that the Keying Set settings would override the global settings, and the path
settings would override what was used for the Keying Set. However, that was not
happening in all cases previously, as it was only possible to add flags and not
to turn them off.

This commit fixes that by introducing separate toggles to control whether the
Keying Set/Path's settings override the settings inherited from its parent
(i.e. the Keying Set for the Path, and the User Prefs for the Keying Set).
The icons used for these toggles could get revised a bit (we need something
which communicates "override this"; the current one is the closest I could find)

WARNING: If you have old keying sets, this may cause some breakage!

6 years agoFix T43345: Dirty Vertex Colors - odd behavior
Campbell Barton [Mon, 26 Jan 2015 11:38:59 +0000 (22:38 +1100)]
Fix T43345: Dirty Vertex Colors - odd behavior

was cancelling when the dynamic range was zero, but gave odd behavior,
using the last value, not the values from the UI.

6 years agoFix T41834: Ctrl+LMB, Extrude Curves 2+ splines
Campbell Barton [Mon, 26 Jan 2015 09:55:41 +0000 (20:55 +1100)]
Fix T41834: Ctrl+LMB, Extrude Curves 2+ splines

Extrude and Ctrl+LMB now support multiple selected vertices.
Also maintain active vertices.

D964 by Tyler Sliwkanich with own modifications

6 years agoChange exception syntax to be more modern and hopefully fix buildbot issue in the...
Martijn Berger [Mon, 26 Jan 2015 07:48:55 +0000 (08:48 +0100)]
Change exception syntax to be more modern and hopefully fix buildbot issue in the process

6 years agoCurves: BKE_nurb_copy left duplicate arrays
Campbell Barton [Mon, 26 Jan 2015 07:21:44 +0000 (18:21 +1100)]
Curves: BKE_nurb_copy left duplicate arrays

While callers accounted for this, its quite error prone. Just NULL instead.

6 years agoBugfix T43343: Buttons for Keyframing Settings are Mutually Exclusive
Joshua Leung [Mon, 26 Jan 2015 06:15:46 +0000 (19:15 +1300)]
Bugfix T43343: Buttons for Keyframing Settings are Mutually Exclusive

Since 1c3f2354f83b3e79dee31d837ca4d7c08d2c3f26 the keyframing settings on
Keying Sets have been incorrectly displayed as a clump of toggle buttons,
which are usually only used when only one of the options apply.

Reverting this back to how it was, while leaving bl_options in place still for
the one case where it makes sense to do it that way (i.e. for KeyingSetInfo)

6 years agoUI: macro for checking modifiers
julianeisel [Mon, 26 Jan 2015 01:51:09 +0000 (02:51 +0100)]
UI: macro for checking modifiers

Useful for UI handling where its common to check multiple modifiers at once.

6 years agoCorrection to c792e546991bd9: OS-Key should be checked as well
julianeisel [Mon, 26 Jan 2015 01:51:09 +0000 (02:51 +0100)]
Correction to c792e546991bd9: OS-Key should be checked as well

6 years agoCleanup: Remove ugly ELEM checks in modifier key handling
julianeisel [Mon, 26 Jan 2015 01:38:39 +0000 (02:38 +0100)]
Cleanup: Remove ugly ELEM checks in modifier key handling

Campbell once told me such checks can cause warnings on some compilers, so
let's try to avoid them.

From the theoretical view, this check works quite different than the old
one, but in this case everything should work just like previousely.

6 years agoIf a modifier key is held, don't open context menu
julianeisel [Mon, 26 Jan 2015 00:57:58 +0000 (01:57 +0100)]
If a modifier key is held, don't open context menu

D1019 by @gregzaal (minor edits by me).

Thanks for the patch!

6 years agocleanup: warnings, spelling
Campbell Barton [Sun, 25 Jan 2015 10:15:27 +0000 (21:15 +1100)]
cleanup: warnings, spelling

6 years agoCrash when deleting NlaTrack
Romanov Alexander [Thu, 22 Jan 2015 13:37:04 +0000 (02:37 +1300)]
Crash when deleting  NlaTrack

Steps to reproduce:
1) Create an object, animated with shape keys
2) Copy it with Alt-D
3) Push action down to nla track
4) Select that track and delete it

In attached file 1-3 steps are completed.

Alexander (Blend4Web Team)

Reviewers: aligorith

Subscribers: yurikovelenov, Evgeny_Rodygin, valentin_b4w, AlexKowel

Differential Revision:

6 years agoFix T43315: Minor Conflict in Maya Key Configs
julianeisel [Sun, 25 Jan 2015 02:25:25 +0000 (03:25 +0100)]
Fix T43315: Minor Conflict in Maya Key Configs

Alt+Mousewheel was used for frame scrubbing which isn't really good as users
may often use this by accident while using Alt for Viewport navigation.

Frame scrubbing/frame_offset() is now called by Ctrl+Alt+Mousewheel (shift +
Mousewheel was already used for scrolling up/down)

6 years agoFix T43399: VSE - don't show fps info when stopping animation with ALT+A
julianeisel [Sun, 25 Jan 2015 01:43:57 +0000 (02:43 +0100)]
Fix T43399: VSE - don't show fps info when stopping animation with ALT+A

Caused by a missing notifier on the animation_play operator.

6 years agoFix T43335: Node Editor: name doesn't update
julianeisel [Sun, 25 Jan 2015 00:59:49 +0000 (01:59 +0100)]
Fix T43335: Node Editor: name doesn't update

Update Node Editor info (drawn on the bottom left) on redraw if needed

6 years agoCleanup: Ugly typo (retore->restore)
julianeisel [Sat, 24 Jan 2015 22:39:06 +0000 (23:39 +0100)]
Cleanup: Ugly typo (retore->restore)

6 years agoFix T43008: Support stacked fullscreen areas
julianeisel [Sat, 24 Jan 2015 21:53:22 +0000 (22:53 +0100)]
Fix T43008: Support stacked fullscreen areas

6 years agoFix BGE compilation after recent renames in BKE_image (tsst...).
Bastien Montagne [Sat, 24 Jan 2015 13:57:57 +0000 (14:57 +0100)]
Fix BGE compilation after recent renames in BKE_image (tsst...).

6 years agoBKE_image: use BKE_image_*** prefix
Campbell Barton [Sat, 24 Jan 2015 05:48:23 +0000 (16:48 +1100)]
BKE_image: use BKE_image_*** prefix

use bools for return values and some api naming consistency.

6 years agoCleanup: style
Campbell Barton [Fri, 23 Jan 2015 16:10:23 +0000 (03:10 +1100)]
Cleanup: style

6 years agoDon't add Cycles tests if tests folder does not exist
Sergey Sharybin [Fri, 23 Jan 2015 15:56:03 +0000 (20:56 +0500)]
Don't add Cycles tests if tests folder does not exist

Also print message about those tests being disabled.

6 years agoRevert "New cycles tests require buildbot to checkout tests of have test succeed...
Sergey Sharybin [Fri, 23 Jan 2015 15:48:28 +0000 (20:48 +0500)]
Revert "New cycles tests require buildbot to checkout tests of have test succeed if we test 0 files."

This reverts commit d390e24c49ba8543b56948402622563cae6e860f.

Forcing tests to success is really bad idea. It'll only lead to cases when
you see PASSED and will think everything is OK.

Long story short: never force tests to pass!

6 years agoNew cycles tests require buildbot to checkout tests of have test succeed if we test...
Martijn Berger [Fri, 23 Jan 2015 15:28:59 +0000 (16:28 +0100)]
New cycles tests require buildbot to checkout tests of have test succeed if we test 0 files.

6 years agocleanup: style
Campbell Barton [Fri, 23 Jan 2015 14:59:09 +0000 (01:59 +1100)]
cleanup: style

6 years agoKeep proper bone active group after removing first one
Sergey Sharybin [Fri, 23 Jan 2015 11:59:16 +0000 (16:59 +0500)]
Keep proper bone active group after removing first one

Previously active bone group would be set to NONE after removing the first
one even if there are more groups in the armature.

6 years agoPyAPI: don't adjust prefs when an fails to load
Campbell Barton [Fri, 23 Jan 2015 10:09:31 +0000 (21:09 +1100)]
PyAPI: don't adjust prefs when an fails to load

Recent addons commit meant that addons would be enabled even if they weren't found.
This would give an error (which is fine), but also remove from preferences.

6 years agoCycles: Don't re-generate blackbody/beckmann tables on every shaders update
Sergey Sharybin [Fri, 23 Jan 2015 09:00:48 +0000 (14:00 +0500)]
Cycles: Don't re-generate blackbody/beckmann tables on every shaders update

This commit makes it so blackbody and beckmann lookup tables are stored on CPU
after being generated and then only being copied to the device if needed.

This solves lag of viewport update when tweaking shader tree by using 266KB of
CPU memory.

6 years agoPyAPI: avoid scanning all addons on startup
Campbell Barton [Fri, 23 Jan 2015 05:20:37 +0000 (16:20 +1100)]
PyAPI: avoid scanning all addons on startup

Gives small speedup

6 years agoPyAPI: use set.discard instead of set-subtraction
Campbell Barton [Fri, 23 Jan 2015 05:37:00 +0000 (16:37 +1100)]
PyAPI: use set.discard instead of set-subtraction

6 years agoPyAPI: Replace importlib.reload, not 'imp'
Campbell Barton [Fri, 23 Jan 2015 05:34:08 +0000 (16:34 +1100)]
PyAPI: Replace importlib.reload, not 'imp'

6 years agoCleanup: replace deprecated imp -> importlib
Campbell Barton [Fri, 23 Jan 2015 01:37:58 +0000 (12:37 +1100)]
Cleanup: replace deprecated imp -> importlib

6 years agoSet bAction.chanbase to deprecated
Campbell Barton [Thu, 22 Jan 2015 23:52:20 +0000 (10:52 +1100)]
Set bAction.chanbase to deprecated

6 years agoTheme Flatty Light
Pablo Vazquez [Thu, 22 Jan 2015 22:49:49 +0000 (23:49 +0100)]
Theme Flatty Light

As discussed, welcome flatty light to master!

6 years agoFix: Joining armatures fixes up the drivers accordingly
Joshua Leung [Thu, 22 Jan 2015 13:33:01 +0000 (02:33 +1300)]
Fix: Joining armatures fixes up the drivers accordingly

Finally! At long last, I've gotten this working! This ended up being far trickier
to get right than anticipated; the normal remapping API's cannot be used as-is
as they will just clobber over subtleties whenever datablock changes are involved.
So, for now, we have to duplicate the logic a bit.

6 years agoWIP: Attempt to get driver links remapped correctly when joining armatures
Joshua Leung [Thu, 22 Jan 2015 09:04:16 +0000 (22:04 +1300)]
WIP: Attempt to get driver links remapped correctly when joining armatures

Now, RNA Paths and driver targets get corrected, but at the expense of this
always happening (i.e. even for those affecting drivers which existed before).

6 years agoFix: Joining armatures wasn't updating Action Constraints properly
Joshua Leung [Wed, 21 Jan 2015 13:29:18 +0000 (02:29 +1300)]
Fix: Joining armatures wasn't updating Action Constraints properly

The code here was still trying to access ancient 2.4x "action channels" to rename
them. Now, this renames the relevant FCurves instead.

6 years agoCycles: Fix compilation error with some compilers
Sergey Sharybin [Thu, 22 Jan 2015 12:04:01 +0000 (17:04 +0500)]
Cycles: Fix compilation error with some compilers

Not sure why this was not visible previously, but the change is
logical anyway.

6 years agoCTests: Add render tests for Cycles
Sergey Sharybin [Thu, 22 Jan 2015 10:53:49 +0000 (15:53 +0500)]
CTests: Add render tests for Cycles

The idea is to use the set of really small images from the lib folder
and run Cycles render on them comparing render output to reference
images in the tests repository.

For sure same thing could become more generic for BI or Freestyle
render engines.

Thanks Campbell for review and code tweaks!

6 years agoCMake: Auto-detect path to idiff application in FindOpenImageIO.cmake
Sergey Sharybin [Thu, 22 Jan 2015 10:52:50 +0000 (15:52 +0500)]
CMake: Auto-detect path to idiff application in FindOpenImageIO.cmake

Not used at this moment, but will be real soon with new ctests.