3 years agoFix Cycles emission node being unnecessarily tagged as spatially varying.
Brecht Van Lommel [Sun, 1 May 2016 22:37:42 +0000 (00:37 +0200)]
Fix Cycles emission node being unnecessarily tagged as spatially varying.

3 years agoFix OS X build error after SSE changes, BLI_math_base.h conflicts with EXR headers.
Brecht Van Lommel [Thu, 5 May 2016 19:39:10 +0000 (21:39 +0200)]
Fix OS X build error after SSE changes, BLI_math_base.h conflicts with EXR headers.

3 years agoFix for fix, sorry for the noise
Campbell Barton [Thu, 5 May 2016 19:46:07 +0000 (05:46 +1000)]
Fix for fix, sorry for the noise

3 years agoMissed last commit
Campbell Barton [Thu, 5 May 2016 19:42:00 +0000 (05:42 +1000)]
Missed last commit

3 years agoCorrect own mistake int recent transform API edits
Campbell Barton [Thu, 5 May 2016 19:40:07 +0000 (05:40 +1000)]
Correct own mistake int recent transform API edits

Need to return number of enabled elements.

3 years agoFix error not using the cached BVH tree
Campbell Barton [Thu, 5 May 2016 19:17:34 +0000 (05:17 +1000)]
Fix error not using the cached BVH tree

3 years agoTransform/Snap: EditMesh/BKE_bvhutils API improvements
Germano Cavalcante [Thu, 5 May 2016 18:49:21 +0000 (04:49 +1000)]
Transform/Snap: EditMesh/BKE_bvhutils API improvements

Separate the creation of trees from EditMesh from the creation of trees from DerivedMesh.
This was meant to simplify the API, but didn't work out so well.

`bvhtree_from_mesh_*` actually is working as `bvhtree_from_derivedmesh_*`.
This is inconsistent with the trees created from EditMesh. Since for create them does not use the DerivedMesh.

In such cases the dm is being used only to cache the tree in the struct DerivedMesh. What is immediately released once
bvhtree is being used in functions that change(tag) the DM cleaning the cache.

- Use a filter function so users of SnapObjectContext can define how edit-mesh elements are handled.
- Remove em_evil.
- bvhtree of EditMesh is now really cached in the snap functions.
- Code becomes organized and easier to maintain.

This is an important patch for future improvements in snapping functions.

3 years agoOptimize linear<->sRGB conversion for SSE2 processors
Sergey Sharybin [Thu, 5 May 2016 17:25:08 +0000 (19:25 +0200)]
Optimize linear<->sRGB conversion for SSE2 processors

Using SSE2 intrinsics when available for this kind of conversions.

It's not totally accurate, but accurate enough for the purposes where
we're using direct colorspace conversion by-passing OCIO.

Partially based on code from Cycles, partially based on other online

Makes projection painting on hi-res float textures smoother.

This commit also enables global SSE2 in Blender. It shouldn't
bring any regressions in supported hardware (we require SSE2 since
2.64 now), but should keep an eye on because compilers might have
some bugs with that (unlikely, but possible).

3 years agoDocs: scanfill.c purpose
Campbell Barton [Thu, 5 May 2016 14:37:31 +0000 (00:37 +1000)]
Docs: scanfill.c purpose

3 years agoFix T48320: Freestyle renders wrong edges of objects which in the other RenderLayer.
Tamito Kajiyama [Thu, 5 May 2016 14:09:22 +0000 (23:09 +0900)]
Fix T48320: Freestyle renders wrong edges of objects which in the other RenderLayer.

FSAA sample files in EXR format are no longer always updated (after some
changes between 2.73 and 2.74 releases), and the reported bug was caused
by old samples from a previous frame that were being merged by mistake.

The present revision addresses the documented issue by entirely skipping
the rendering of auto-generated scenes when there are no Freestyle strokes
to render, which suppresses sample merging of the render layers that were
not rendered.

3 years agoOptimize projection painting with big brushes
Sergey Sharybin [Thu, 5 May 2016 12:45:00 +0000 (14:45 +0200)]
Optimize projection painting with big brushes

Multi-threaded partial buffer update, gives about 2x speedup with
big brushes.

Thanks Campbell for testing and benchmarking!

3 years agoOptimize threaded scanline processor
Sergey Sharybin [Thu, 5 May 2016 12:18:11 +0000 (14:18 +0200)]
Optimize threaded scanline processor

Avoid memory allocation for task data.

3 years agoSimplify scanline threaded processor used by GPU_verify_image
Sergey Sharybin [Thu, 5 May 2016 11:15:51 +0000 (13:15 +0200)]
Simplify scanline threaded processor used by GPU_verify_image

Just avoid some unneeded initialization functions when the threaded
processor is simple enough to only depend on current chunk start
scanline and number of scanlines.

3 years agoFix project paint using uninitialized edit-region
Campbell Barton [Thu, 5 May 2016 10:57:54 +0000 (20:57 +1000)]
Fix project paint using uninitialized edit-region

First stroke always had the minimum rectangle set to 0,0 which could cause a largre region of pixels to be
unnecessarily updated.

3 years agoCurve Fitting: avoid clamping fallback handles.
Campbell Barton [Thu, 5 May 2016 10:30:08 +0000 (20:30 +1000)]
Curve Fitting: avoid clamping fallback handles.

3 years agoOptimize Blank and Color Grid generated images
Sergey Sharybin [Thu, 5 May 2016 10:02:40 +0000 (12:02 +0200)]
Optimize Blank and Color Grid generated images

Avoid unnecessary pixels linearization gives nice speedup.

3 years agoCorrect error in recent smoothview edits
Campbell Barton [Thu, 5 May 2016 09:58:03 +0000 (19:58 +1000)]
Correct error in recent smoothview edits

3 years agoFix typo in previous commit
Sergey Sharybin [Thu, 5 May 2016 09:33:13 +0000 (11:33 +0200)]
Fix typo in previous commit

Thanks Julian Eisel (Severin) for the heads up!

3 years agoOptimization for initial display of high res textures in viewport
Sergey Sharybin [Thu, 5 May 2016 09:25:31 +0000 (11:25 +0200)]
Optimization for initial display of high res textures in viewport

Multi-thread all the color space conversion operations.

Gives speedup from 0.8 to 0.1 seconds on a model with 4k etxture on it.

3 years agoImage Paint: fix for calls to GPU_free_image while painting
Campbell Barton [Thu, 5 May 2016 08:52:11 +0000 (18:52 +1000)]
Image Paint: fix for calls to GPU_free_image while painting

The width and height of of the region to update are often zero,
skip calling GPU_paint_update_image in this case.

3 years agoFix T48210: Editing all selected buttons fails to auto-key
Campbell Barton [Wed, 4 May 2016 16:37:46 +0000 (02:37 +1000)]
Fix T48210: Editing all selected buttons fails to auto-key

3 years agoUI: avoid getting the active button when its already known
Campbell Barton [Wed, 4 May 2016 16:21:29 +0000 (02:21 +1000)]
UI: avoid getting the active button when its already known

3 years agoView3D: apply smoothview before modal view operations
Campbell Barton [Wed, 4 May 2016 16:01:18 +0000 (02:01 +1000)]
View3D: apply smoothview before modal view operations

3 years agoCleanup: rename ED_view3d_smooth_view_finish (to force_finish)
Campbell Barton [Wed, 4 May 2016 15:51:25 +0000 (01:51 +1000)]
Cleanup: rename ED_view3d_smooth_view_finish (to force_finish)

3 years agoFix error in BM_face_exists_overlap_subset
Campbell Barton [Wed, 4 May 2016 15:26:39 +0000 (01:26 +1000)]
Fix error in BM_face_exists_overlap_subset

Was re-using loop index, thanks to @bzztploink for spotting!

3 years agoCycles: Fix hair minimal size doesn't work on GPU and SSE2 only CPUs
Sergey Sharybin [Wed, 4 May 2016 15:14:14 +0000 (17:14 +0200)]
Cycles: Fix hair minimal size doesn't work on GPU and SSE2 only CPUs

3 years agoCompositor: negative color support for ASC-CDL offset
Campbell Barton [Wed, 4 May 2016 13:56:38 +0000 (23:56 +1000)]
Compositor: negative color support for ASC-CDL offset

Since the color wheel can't handle negative colors usefully, use a basis value for the initial RGB.

3 years agoFix T48346: Transparent shadows do not work for instanced objects
Sergey Sharybin [Wed, 4 May 2016 12:46:30 +0000 (14:46 +0200)]
Fix T48346: Transparent shadows do not work for instanced objects

3 years agoCurve Draw: option to apply absolute offset
Campbell Barton [Wed, 4 May 2016 05:45:55 +0000 (15:45 +1000)]
Curve Draw: option to apply absolute offset

Offset used curve radius, which isn't useful drawing without any bevel radius.

3 years agoFix T48340: Smooth view cancels previous view action
Campbell Barton [Tue, 3 May 2016 17:38:20 +0000 (03:38 +1000)]
Fix T48340: Smooth view cancels previous view action

Previously users needed to wait for view orbit to finished,
so quickly pressing keys would gave different result.

3 years agoFix 3D View panel header color wrong after theme reset
Julian Eisel [Tue, 3 May 2016 16:26:58 +0000 (18:26 +0200)]
Fix 3D View panel header color wrong after theme reset

Caused by wrong alpha value in rB34b30f847429ac (used 0.01, should've been 0.1). Also made sure all editors initialize same default theme values for panels and cleaned up code a bit.
Works fine with old userpref.blend files.

3 years agoFix broken build without IME and/or I18N (caused by rBcb6307162b4c12).
Bastien Montagne [Tue, 3 May 2016 14:56:52 +0000 (16:56 +0200)]
Fix broken build without IME and/or I18N (caused by rBcb6307162b4c12).

3 years agoFix T48328: Outliner: Armature EditMode: crash when selecting bone of a shared amratu...
Bastien Montagne [Tue, 3 May 2016 13:05:24 +0000 (15:05 +0200)]
Fix T48328: Outliner: Armature EditMode: crash when selecting bone of a shared amrature in another object's bone list.

Basically, issue is that outliner stores editbones for an edited armature, which are only valid during EditMode.

When more than one object use the same armature, selecting ebones from same armature but under non-edited object
would first select that object (and hence switch out of editmode), and then try to select editbone while editdata
no more exist.

Solution for now is to not change active object in this case - it's not totally ideal (not consistent),
but other solutions (like switching edited object without leaving editmode, or rebuilding (part of)
outliner tree in-between) are horribly hackish and most likely prone to epic failure anyway.

3 years agoCache whether current translation language supports IME or not
Sergey Sharybin [Tue, 3 May 2016 10:38:21 +0000 (12:38 +0200)]
Cache whether current translation language supports IME or not

Solves the weak point mentionedi n previous commit.

3 years agoFix T47841: Shift-space doesn't type space in type-in fields on Windows
Sergey Sharybin [Tue, 3 May 2016 10:18:53 +0000 (12:18 +0200)]
Fix T47841: Shift-space doesn't type space in type-in fields on Windows

Shift-space was reserved for IME support, however IME will only
be enabled on certain languages. We can avoid any IME-related
exceptions form other languages without too much trouble.

There's one weak point around ui_ime_is_lang_supported() tho,
which is it might be doing string comparison a bit too much
often now, this we can avoid by handling those checks from BLT.

3 years agoFix T47424: Blender Internal material node 'mapping' not showing results of animation
Sergey Sharybin [Tue, 3 May 2016 09:44:17 +0000 (11:44 +0200)]
Fix T47424: Blender Internal material node 'mapping' not showing results of animation

Not very efficient solution -- it'll update mapping node on init ntree exec and will
not work for viewport GLSL shading perhaps, but it's as good as it could be within
current dependency graph.

The issue here is that manual edit of values will cause cached matrix re-evaluation.
but using animation does not use rna update callbacks hence no matrix update was

3 years agoCleanup: no need to cast for pointer comparison
Campbell Barton [Tue, 3 May 2016 08:16:06 +0000 (18:16 +1000)]
Cleanup: no need to cast for pointer comparison

3 years agoFix T48169: 1 pixel offset painting 2D textures
Campbell Barton [Tue, 3 May 2016 07:49:18 +0000 (17:49 +1000)]
Fix T48169: 1 pixel offset painting 2D textures

Painting at negative locations was using int-rounding.

3 years agoCleanup: use offset macro
Campbell Barton [Tue, 3 May 2016 06:40:14 +0000 (16:40 +1000)]
Cleanup: use offset macro

3 years agoUI: limit listview arrow/wheel bindings
Campbell Barton [Tue, 3 May 2016 06:17:14 +0000 (16:17 +1000)]
UI: limit listview arrow/wheel bindings

Allow Ctrl-Up for eg to be used when in a list view.

3 years agoUI: don't show tips when navigating ui-list
Campbell Barton [Tue, 3 May 2016 04:59:45 +0000 (14:59 +1000)]
UI: don't show tips when navigating ui-list

3 years agoCleanup: use const for units API
Campbell Barton [Tue, 3 May 2016 03:52:07 +0000 (13:52 +1000)]
Cleanup: use const for units API

Also make return args explicit.

3 years agoMath Lib: inline project_plane_v3_v3v3
Campbell Barton [Tue, 3 May 2016 03:30:16 +0000 (13:30 +1000)]
Math Lib: inline project_plane_v3_v3v3

3 years agoMissed setting handles in curve dissolve
Campbell Barton [Mon, 2 May 2016 14:06:12 +0000 (00:06 +1000)]
Missed setting handles in curve dissolve

3 years agoCorrect header (can't use uint here)
Campbell Barton [Mon, 2 May 2016 11:08:02 +0000 (21:08 +1000)]
Correct header (can't use uint here)

3 years agoFix bl_load_py_modules test
Campbell Barton [Mon, 2 May 2016 11:01:10 +0000 (21:01 +1000)]
Fix bl_load_py_modules test

- scripts that execute directly need to include their basedir in the sys.path
- modules which are in a directory without an weren't importing.

3 years agoCurve: new dissolve tool
Campbell Barton [Mon, 2 May 2016 08:11:09 +0000 (18:11 +1000)]
Curve: new dissolve tool

removes vertices, re-fitting the surrounding handles.

3 years agoCurve Fitting: expose function for fitting a single curve
Campbell Barton [Mon, 2 May 2016 08:06:25 +0000 (18:06 +1000)]
Curve Fitting: expose function for fitting a single curve

3 years agoBLI_array_utils: helper for stepping over contiguous ranges
Campbell Barton [Mon, 2 May 2016 08:01:00 +0000 (18:01 +1000)]
BLI_array_utils: helper for stepping over contiguous ranges

3 years agoFix compilation error on Armel architecture
Sergey Sharybin [Mon, 2 May 2016 07:55:08 +0000 (09:55 +0200)]
Fix compilation error on Armel architecture

__GCC_HAVE_SYNC_COMPARE_AND_SWAP_n are not defined on this architecture
for some reason, however those functions are available.

Adding a workaround for newly used __sync_fetch_and_and() function.

3 years agoFix T48325: Data transfer modifier vertex group selector doesn't work with freestyle...
Bastien Montagne [Sun, 1 May 2016 13:36:09 +0000 (15:36 +0200)]
Fix T48325: Data transfer modifier vertex group selector doesn't work with freestyle data.

Freestyle edge/face marks are (afaik) our only actual customdata bitflags... Original work
kinda assumed we had no such things. :P

3 years agoFix Cycles external OSL shader not working with relative file paths.
Brecht Van Lommel [Sat, 30 Apr 2016 22:50:49 +0000 (00:50 +0200)]
Fix Cycles external OSL shader not working with relative file paths.

3 years agoFix T48118: Vertex Groups not masking particle hair emission correctly
Bastien Montagne [Sat, 30 Apr 2016 14:51:06 +0000 (16:51 +0200)]
Fix T48118: Vertex Groups not masking particle hair emission correctly

Own regression from rB019ce363b01bba0af, not totally sure why removing the heading
zero value in element_sum broke binary search distribution in random branch, but...

New code makes thing sooo much simpler, by simply getting rid of all zero-weight
items in element_sum (at the cost of adding a temporary extra index mapping array),
that way neither random nor 'even ordered' distribution code has to wory anymore
about skipping zero-weighted items!

3 years agoSlight adjustment to curve fitting tangents
Campbell Barton [Sat, 30 Apr 2016 06:27:43 +0000 (16:27 +1000)]
Slight adjustment to curve fitting tangents

Don't let the point spacing give bias to a side.

3 years agoFix for typo comparing double events
Campbell Barton [Sat, 30 Apr 2016 06:18:29 +0000 (16:18 +1000)]
Fix for typo comparing double events

Also remove doubles when filling the final array.

3 years agoCleanup: warnings. spelling
Campbell Barton [Fri, 29 Apr 2016 18:04:18 +0000 (04:04 +1000)]
Cleanup: warnings. spelling

3 years agoFix (unreported) bad 'NULL freeing' with placeholder images.
Bastien Montagne [Fri, 29 Apr 2016 16:05:49 +0000 (18:05 +0200)]
Fix (unreported) bad 'NULL freeing' with placeholder images.

Looks like code expects some initialized Image data after all, so do it
for placeholders as well (using default generated UV grid).

3 years agoFix crash (segfault) in node editor.
Bastien Montagne [Fri, 29 Apr 2016 15:37:00 +0000 (17:37 +0200)]
Fix crash (segfault) in node editor.

In some cases, we can have nodegroups without attached nodetree, this case is checked
in top `node_group_has_output()` entry point, but not in recursive `node_group_has_output_dfs()`.

Issue appeared after rB42824f4403db3a35, presumably because check on node flag itself
was skipping that case, which is no more possible when using ID tags.

Reported by sebastian_k over IRC, thanks.

3 years agoFix broken Collada from rBrB6d0cae56e84306ed.
Bastien Montagne [Fri, 29 Apr 2016 14:56:20 +0000 (16:56 +0200)]
Fix broken Collada from rBrB6d0cae56e84306ed.

3 years agoinstall_deps: add support for OpenVDB.
Ejner Fergo [Fri, 29 Apr 2016 14:45:09 +0000 (16:45 +0200)]
install_deps: add support for OpenVDB.

Note that recent DEB-based distro have packages for this, even simpler!

Differential Revision:

3 years agoinstall_deps: add check for glew version, too old ones are not compatible with OSD.
Ejner Fergo [Fri, 29 Apr 2016 14:42:11 +0000 (16:42 +0200)]
install_deps: add check for glew version, too old ones are not compatible with OSD.

In case too old system glew is detected, use the one shipped with blender.

Part of D1933.

3 years agoinstall_deps: bunch of cleanups, tweaks and micro-fixes.
Ejner Fergo [Fri, 29 Apr 2016 14:35:37 +0000 (16:35 +0200)]
install_deps: bunch of cleanups, tweaks and micro-fixes.

This commit mostly:
* removes some (very) old messages or hacks (like those for ubuntu 10.4...).
* Moves lib-specific dependencies installations to upper level
  (simpler to manage, and those are small enough packages).
* Uses new dnf package manager for fedora (sigh, we now have tree different commands for fed/suse/rehl).
* fixes or enhances some options for commandline tools.
* Force anew building of oiio package, due to insane dependencies of this one in recent distro.

Part of D1933.

3 years agoFix T48290: Hook fails after deleting geometry
Campbell Barton [Fri, 29 Apr 2016 12:33:06 +0000 (22:33 +1000)]
Fix T48290: Hook fails after deleting geometry

Now CD_SHAPEKEY_INDEX customdata is stored in edit-mode when hooks and vertex parents are used.

This also fixes a bug where undo would loose key-index data.

Move to structs for BM_mesh_bm_to/from_me to avoid passing many argument, which mostly aren't used.

3 years agoBMesh: when multiple vertices have the same key-index, use the first
Campbell Barton [Fri, 29 Apr 2016 11:47:05 +0000 (21:47 +1000)]
BMesh: when multiple vertices have the same key-index, use the first

Simple error case where many vertices share an original index,
now use the first match instead of the last.

3 years agoFix T48298: Cycles World environment Texture node, movie doesn't update frame
Sergey Sharybin [Fri, 29 Apr 2016 08:54:40 +0000 (10:54 +0200)]
Fix T48298: Cycles World environment Texture node, movie doesn't update frame

3 years agoRemove redundant selection flush call
Campbell Barton [Fri, 29 Apr 2016 07:29:23 +0000 (17:29 +1000)]
Remove redundant selection flush call

3 years agoMinor optimization to bmesh shape key conversion
Campbell Barton [Fri, 29 Apr 2016 05:02:04 +0000 (15:02 +1000)]
Minor optimization to bmesh shape key conversion

Avoid linked linked loop and custom-data lookups per vertex,
use a table of shape-keys with array offsets instead.

3 years agoFix T48301: Cycles incorrect render with CMJ and viewport samples 0.
Brecht Van Lommel [Thu, 28 Apr 2016 21:46:00 +0000 (23:46 +0200)]
Fix T48301: Cycles incorrect render with CMJ and viewport samples 0.

Max samples 2147483647 was causing integer overflow.

3 years agoFix T48300: 3D view tools outside the 3d view crash
Campbell Barton [Thu, 28 Apr 2016 14:00:43 +0000 (00:00 +1000)]
Fix T48300: 3D view tools outside the 3d view crash

3 years agoPython: install pyconfig.h on OSX, needed for PIP
Campbell Barton [Thu, 28 Apr 2016 10:43:14 +0000 (20:43 +1000)]
Python: install pyconfig.h on OSX, needed for PIP

3 years agoFix T47715: EXCEPTION_ACCESS_VIOLATION crash when removing modifiers or rendering
Sergey Sharybin [Thu, 28 Apr 2016 10:29:42 +0000 (12:29 +0200)]
Fix T47715: EXCEPTION_ACCESS_VIOLATION crash when removing modifiers or rendering

The issue was caused by missing indirect dependencies from other scenes in the
current scene depsgraph, which was causing some threading conflicts.

Not sure what would be ideal solution here, for now use stupid but rather robust
approach to solve that. Maybe there's something better to do here tho.

3 years agoDepsgraph optimization: Don't schedule tasks for empty "NOOP" nodes.
Lukas Tönne [Thu, 28 Apr 2016 09:10:54 +0000 (11:10 +0200)]
Depsgraph optimization: Don't schedule tasks for empty "NOOP" nodes.

Currently a lot of the nodes in the new dependency graph are empty placeholders
for organizational purposes. These nodes would, however, still be assigned a task
which gets scheduled and takes up some time for worker threads to pop from the
queue and run. This can be avoided by skipping these nodes during depsgraph
scheduling, and scheduling their childrent right away. Gives a few percent speedup
in BlenRig.

3 years agoFix for O(N^2) runtime tagging in the new depsgraph.
Lukas Tönne [Thu, 28 Apr 2016 10:00:51 +0000 (12:00 +0200)]
Fix for O(N^2) runtime tagging in the new depsgraph.

Some of the tagging functions would be called for every operation, and then
in turn tag their ID nodes with all their operations again. With extensive rigs
we get ID nodes with a lot (10,000+) operation nodes, which leads to millions
of unnecessary tagging calls.

3 years ago3D Text: avoid checking null character's text on path
Campbell Barton [Thu, 28 Apr 2016 05:56:41 +0000 (15:56 +1000)]
3D Text: avoid checking null character's text on path

Redundant and causes complications when improving text code.

3 years agoImage view selected didn't account for region size
Campbell Barton [Thu, 28 Apr 2016 03:25:26 +0000 (13:25 +1000)]
Image view selected didn't account for region size

Now fit the selection with a 1.4x margin (matching 3d view).

Also move border fitting into own function.

3 years agoBMesh: limited-dissolve, add check for wire edges
Campbell Barton [Thu, 28 Apr 2016 02:48:13 +0000 (12:48 +1000)]
BMesh: limited-dissolve, add check for wire edges

Recent degenerate check crashed on chains of wire edges

3 years agoMinor code simplification in previous commit.
Brecht Van Lommel [Wed, 27 Apr 2016 20:58:00 +0000 (22:58 +0200)]
Minor code simplification in previous commit.

3 years agoFix compiler warning on OS X / clang.
Brecht Van Lommel [Wed, 27 Apr 2016 19:41:40 +0000 (21:41 +0200)]
Fix compiler warning on OS X / clang.

3 years agoNodes: sort builtin compositor/shader/texture nodes alphabetically in menus
Brecht Van Lommel [Tue, 26 Apr 2016 22:58:25 +0000 (00:58 +0200)]
Nodes: sort builtin compositor/shader/texture nodes alphabetically in menus

Reviewed By: lukastoenne, dingto, Severin, carter2422

Differential Revision:

3 years agoFix artifacts w/ low near clear in bglPolygonOffset
Alexander Romanov [Wed, 27 Apr 2016 09:14:13 +0000 (19:14 +1000)]
Fix artifacts w/ low near clear in bglPolygonOffset

3 years agoSequencer: skip text-effect rendering w/ no alpha
Campbell Barton [Wed, 27 Apr 2016 05:55:50 +0000 (15:55 +1000)]
Sequencer: skip text-effect rendering w/ no alpha

3 years agoSequencer text strip color options
Campbell Barton [Wed, 27 Apr 2016 05:49:13 +0000 (15:49 +1000)]
Sequencer text strip color options

D1930 by @NiKoZLaB

3 years agoFix alpha blending w/ font drawing & byte buffer
Campbell Barton [Wed, 27 Apr 2016 05:47:49 +0000 (15:47 +1000)]
Fix alpha blending w/ font drawing & byte buffer

3 years agoFix mask active-point being lost on load/undo
Campbell Barton [Wed, 27 Apr 2016 04:33:51 +0000 (14:33 +1000)]
Fix mask active-point being lost on load/undo

3 years agoMask: always add a new spline when adding a new vert
Campbell Barton [Wed, 27 Apr 2016 04:09:36 +0000 (14:09 +1000)]
Mask: always add a new spline when adding a new vert

Previously, adding a new vertex with Ctrl-LMB would move an existing
when there was an active spline but no active point.

This function is used as a fallback, extending an existing active point is already handled.

3 years agoNew mask points now compensate parent offset
Campbell Barton [Wed, 27 Apr 2016 03:54:48 +0000 (13:54 +1000)]
New mask points now compensate parent offset

3 years agoFix T48282: Newly added mask points don't follow parent
Campbell Barton [Wed, 27 Apr 2016 03:11:17 +0000 (13:11 +1000)]
Fix T48282: Newly added mask points don't follow parent

3 years agoCleanup: use const, duplicate header
Campbell Barton [Wed, 27 Apr 2016 02:49:37 +0000 (12:49 +1000)]
Cleanup: use const, duplicate header

3 years agoFix Cycles GLSL image texture node not respecting color space property.
Brecht Van Lommel [Tue, 26 Apr 2016 22:23:05 +0000 (00:23 +0200)]
Fix Cycles GLSL image texture node not respecting color space property.

3 years agoCode cleanup: minor cleanups for GPU_link return values, normal map node.
Brecht Van Lommel [Tue, 26 Apr 2016 22:09:44 +0000 (00:09 +0200)]
Code cleanup: minor cleanups for GPU_link return values, normal map node.

3 years agoFix Font filebrowser not showing thumbnails when those are enabled by default in...
Bastien Montagne [Tue, 26 Apr 2016 15:17:01 +0000 (17:17 +0200)]
Fix Font filebrowser not showing thumbnails when those are enabled by default in userpref.

Reported by Leon Cheung over IRC, thanks.

3 years agoFix T47992: Stereo 3D Anaglyph rendered Images saved too light
Sergey Sharybin [Tue, 26 Apr 2016 15:15:33 +0000 (17:15 +0200)]
Fix T47992: Stereo 3D Anaglyph rendered Images saved too light

3 years agoCycles: Improve logging about motion blur a bit
Sergey Sharybin [Tue, 26 Apr 2016 14:17:11 +0000 (16:17 +0200)]
Cycles: Improve logging about motion blur a bit

3 years agoHair edit: Add operator to uniform length of selected hairs
Sergey Sharybin [Tue, 26 Apr 2016 14:05:52 +0000 (16:05 +0200)]
Hair edit: Add operator to uniform length of selected hairs

Request by Andy, should help him a lot doing weird and wonderful hair styles.

A bit experimental yet, details of behavior might be changed after some real
usage feedback.

3 years agoCorrect error in recent snap-context commit
Campbell Barton [Tue, 26 Apr 2016 13:01:11 +0000 (23:01 +1000)]
Correct error in recent snap-context commit

Edges currently don't use a BVH-tree,
but would still create and attempt to free the tree.

3 years agoFix T48176: Shrinkwrap crashes when multiple objects uses same target
Sergey Sharybin [Tue, 26 Apr 2016 12:42:58 +0000 (14:42 +0200)]
Fix T48176: Shrinkwrap crashes when multiple objects uses same target

Annoying bug caused by temp nature of looptri layer for CCGDM.

Fixed in a similar to CCG loops by using lock when allocating and
filling looptri arrays.

Real fix would be to make sure this array is allocated on object
evaluation using DAG's eval_flag, but that's more involved change
which we'll work on later.

3 years agoFix (unreported) possible freed memory usage when reloading a .blend file.
Bastien Montagne [Tue, 26 Apr 2016 12:24:57 +0000 (14:24 +0200)]
Fix (unreported) possible freed memory usage when reloading a .blend file.

Operator would call `WM_file_read()` directly whith G.main->name as filepath, which
gets freed whith main during new reading of file... Now use a local copy instead.

3 years agoFix missing pose bone hash table in stub poses of action constraints.
Lukas Tönne [Tue, 26 Apr 2016 12:11:03 +0000 (14:11 +0200)]
Fix missing pose bone hash table in stub poses of action constraints.

This is a follow-up fix for rBa10b2fe. The Action constraint uses a hackish
stub object and pose, which doesn't have a hash table for fast lookups.
This doesn't seem to be a big issue with the old depsgraph, but in the new
depsgraph it creates a large number of cache misses and significant slowdown,
possibly because of additional threading and less simple bone loops.

3 years agoSupport multiple tangents for BI render & viewport
Alexander Romanov [Tue, 26 Apr 2016 08:43:02 +0000 (18:43 +1000)]
Support multiple tangents for BI render & viewport

Normal Map node support for GLSL mode and the internal render (multiple tangents support).

The Normal Map node is a useful node which is present in the Cycles render.
It makes it possible to use normal mapping without additional material node in a node tree.
This patch implements Normal Map node for GLSL mode and the internal render.

Previously only the active UV layer was used to calculate tangents.

3 years agoFix T48211: Modifying an F-Curve modifier property is not updating the 3D window
Sergey Sharybin [Tue, 26 Apr 2016 10:15:05 +0000 (12:15 +0200)]
Fix T48211: Modifying an F-Curve modifier property is not updating the 3D window