blender.git
23 months agoMath Lib: clamped rounding utility functions
Campbell Barton [Mon, 18 Sep 2017 11:03:10 +0000 (21:03 +1000)]
Math Lib: clamped rounding utility functions

23 months agoColor management: When look is applied, we can not consider spaces to match
Sergey Sharybin [Mon, 18 Sep 2017 13:09:53 +0000 (18:09 +0500)]
Color management: When look is applied, we can not consider spaces to match

This should fix T52812 after merge to blender2.8.

23 months agoFix T52800: fix UI flickering with Mesa on Linux.
Brecht Van Lommel [Mon, 18 Sep 2017 11:12:36 +0000 (13:12 +0200)]
Fix T52800: fix UI flickering with Mesa on Linux.

Use triple buffer by default now on all platforms, remaing ones where:
* Mesa: seems to have been working well for a long time now, and not using
  it gives issues with the latest Mesa 17.2.0.
* Windows software OpenGL: no longer supported since OpenGL 2.1 requirement
  was introduced.
* OS X with thousands of colors: this option was removed in OS X 10.6, and
  that's our minimum requirement.

23 months agoFix Cycles adaptive compile without volumes broken after recent changes.
Carlo Andreacchio [Mon, 18 Sep 2017 10:31:17 +0000 (12:31 +0200)]
Fix Cycles adaptive compile without volumes broken after recent changes.

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

23 months agoFix T52801: reload scripts causes Cycles viewport render crash.
Brecht Van Lommel [Mon, 18 Sep 2017 01:36:39 +0000 (03:36 +0200)]
Fix T52801: reload scripts causes Cycles viewport render crash.

23 months agoFix T52432: Blender crashes while using Ghost (new depsgraph)
Sergey Sharybin [Mon, 18 Sep 2017 10:50:27 +0000 (15:50 +0500)]
Fix T52432: Blender crashes while using Ghost (new depsgraph)

23 months agoBMesh: move bridge tools stepping logic into macro
Campbell Barton [Sun, 17 Sep 2017 14:06:29 +0000 (00:06 +1000)]
BMesh: move bridge tools stepping logic into macro

Also use floor division since regular division was giving a bias
on negative error values.

23 months agoMath Lib: add divide_floor_i
Campbell Barton [Mon, 18 Sep 2017 03:14:58 +0000 (13:14 +1000)]
Math Lib: add divide_floor_i

Integer division that floors on negative output (like Python's).

23 months agoUI: avoid int cast before clamping number input
Campbell Barton [Sun, 17 Sep 2017 07:56:23 +0000 (17:56 +1000)]
UI: avoid int cast before clamping number input

Values outside int range would overflow.

23 months agoCleanup: SGI format, remove unused struct members
Campbell Barton [Sun, 17 Sep 2017 07:55:04 +0000 (17:55 +1000)]
Cleanup: SGI format, remove unused struct members

23 months agoFix SGI foramt reader CVE-2017-2901
Campbell Barton [Sun, 17 Sep 2017 06:22:56 +0000 (16:22 +1000)]
Fix SGI foramt reader CVE-2017-2901

Integer Overflow Code Execution Vulnerability.

Reader no longer crashes on corrupt images (from own fuzz testing).

23 months agoCleanup: SGI format, avoid overflow
Campbell Barton [Sun, 17 Sep 2017 06:19:07 +0000 (16:19 +1000)]
Cleanup: SGI format, avoid overflow

Harmless but causes warnings

23 months agoCleanup: SGI format, use uint/short/char types
Campbell Barton [Sun, 17 Sep 2017 06:14:59 +0000 (16:14 +1000)]
Cleanup: SGI format, use uint/short/char types

23 months agoCycles: Fix compilation error with OpenCL split kernel
Hristo Gueorguiev [Sat, 16 Sep 2017 10:33:03 +0000 (12:33 +0200)]
Cycles: Fix compilation error with OpenCL split kernel

23 months agoFix T51074: Boolean modifier inverts operation
Campbell Barton [Sat, 16 Sep 2017 08:10:25 +0000 (18:10 +1000)]
Fix T51074: Boolean modifier inverts operation

Support for negative scaled objects.

23 months agoFix writing Iris images w/ invalid header
Campbell Barton [Sat, 16 Sep 2017 06:07:27 +0000 (16:07 +1000)]
Fix writing Iris images w/ invalid header

Regression in e142ae77cadf

23 months agoFix T52384: Bridge pair result depends on other loops
Campbell Barton [Fri, 15 Sep 2017 19:06:19 +0000 (05:06 +1000)]
Fix T52384: Bridge pair result depends on other loops

When 2x loops have different number of vertices,
the distribution for vertices fan-fill depended on the loop order
and was often lop-sided.

This caused noticeable inconstancies depending on the input
since edge-loops are flipped to match each others winding order.

23 months agoRNA: expose RegionView3D clip planes
mano-wii [Fri, 15 Sep 2017 16:55:52 +0000 (13:55 -0300)]
RNA: expose RegionView3D clip planes

23 months agoDocs: only show versions in changelog side-bar
Campbell Barton [Fri, 15 Sep 2017 12:20:14 +0000 (22:20 +1000)]
Docs: only show versions in changelog side-bar

23 months agoDocs: update API changelog to 2.79
Campbell Barton [Fri, 15 Sep 2017 12:05:31 +0000 (22:05 +1000)]
Docs: update API changelog to 2.79

23 months agoFix T52763: Boolean problem with vertex group
Sergey Sharybin [Fri, 15 Sep 2017 11:33:37 +0000 (16:33 +0500)]
Fix T52763: Boolean problem with vertex group

23 months agoBMesh: use less involved check for edge rotation
Campbell Barton [Fri, 15 Sep 2017 08:19:04 +0000 (18:19 +1000)]
BMesh: use less involved check for edge rotation

Was using function for edge rotation which was doing unnecessary checks
Use the face normal and BLI_polyfill_beautify_quad_rotate_calc directly.

23 months agoPolyfill Beautify: option to rotate out of degenerate state
Campbell Barton [Fri, 15 Sep 2017 08:14:17 +0000 (18:14 +1000)]
Polyfill Beautify: option to rotate out of degenerate state

Needed for 3D iterative edge-rotation to avoid flipping when projected
from different angles,
but could keep zero area faces in 2D polygons.

23 months agoFix error in recent boolean changes w/ quad split
Campbell Barton [Fri, 15 Sep 2017 08:07:00 +0000 (18:07 +1000)]
Fix error in recent boolean changes w/ quad split

23 months agoTransform: Enable recursion dependency check for new depsgraph
Sergey Sharybin [Fri, 15 Sep 2017 07:25:57 +0000 (12:25 +0500)]
Transform: Enable recursion dependency check for new depsgraph

23 months agoFix copy-paste error in recent particles fix
Sergey Sharybin [Fri, 15 Sep 2017 06:35:00 +0000 (11:35 +0500)]
Fix copy-paste error in recent particles fix

Was intersecting same triangle twice.

23 months agoFix T52442: bl_app_templates_system not working
Campbell Barton [Thu, 14 Sep 2017 19:46:43 +0000 (05:46 +1000)]
Fix T52442: bl_app_templates_system not working

Portable builds LOCAL files need to be
treated as system instead of using as a fallback to USER templates.

23 months agoFix bpy.utils.resource_path('SYSTEM') output
Campbell Barton [Thu, 14 Sep 2017 19:46:30 +0000 (05:46 +1000)]
Fix bpy.utils.resource_path('SYSTEM') output

Would return the test path for developer builds:
{blender-dirname/release}

Now return an empty string when no path is found.

23 months agoFix T52732: Particle system volume grid particles out of volume
Sergey Sharybin [Thu, 14 Sep 2017 14:43:00 +0000 (19:43 +0500)]
Fix T52732: Particle system volume grid particles out of volume

Use more watertight and robust intersection test.

It uses now ray to triangle intersection, but it's all fine because segment was
covering the whole bounding box anyway.

23 months agoFix T52729: Decimals not showing over 100m or 100 feet
Bastien Montagne [Thu, 14 Sep 2017 14:34:05 +0000 (16:34 +0200)]
Fix T52729: Decimals not showing over 100m or 100 feet

Use same 5 digits precision as we already use for e.g. Object's
location, for Object's dimensions too.

To be backported to 2.79a, should we do it.

23 months agoFix T52537: Dyntopo "detail flood fill" doesn't work in some cases
Sergey Sharybin [Thu, 14 Sep 2017 13:55:08 +0000 (18:55 +0500)]
Fix T52537: Dyntopo "detail flood fill" doesn't work in some cases

Mainly when object origin is not at the geometry bounding box center.

Seems to be straightforward to fix, hopefully it doesn't break some obscure case
where this was a desired behavior.

23 months agoCorrect error in last commit
Campbell Barton [Thu, 14 Sep 2017 13:04:01 +0000 (23:04 +1000)]
Correct error in last commit

23 months agoFix T52748: Select shortest face path fails
Campbell Barton [Thu, 14 Sep 2017 12:56:48 +0000 (22:56 +1000)]
Fix T52748: Select shortest face path fails

23 months agoFix T51416: Blender Crashes while moving Sliders
Sergey Sharybin [Wed, 13 Sep 2017 15:12:19 +0000 (20:12 +0500)]
Fix T51416: Blender Crashes while moving Sliders

The issue here was that removing datablock from main database will poke editors
update, which includes buttons context to free users of texture. Since Cycles
will free datablocks from job thread, it might crash Blender since main thread
might be in the middle of drawing.

Solved by exposing extra arguments to bpy.data.foo.remove() which indicates
whether we want to perform ID user count and interface updates. While scripts
shouldn't be using those normally, this is the only way to allow Cycles to skip
interface update when removing datablock.

Reviewers: mont29

Reviewed By: mont29

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

23 months agoFix T52653: Render output of linked scenes conflicts with other scenes with the same...
Sergey Sharybin [Tue, 12 Sep 2017 06:27:22 +0000 (11:27 +0500)]
Fix T52653: Render output of linked scenes conflicts with other scenes with the same name

The issue was caused by render result identifier only consist of scene name,
which could indeed cause conflicts.

On the one hand, there are quite some areas in Blender where we need identifier
to be unique to properly address things. Usually this is required for sub-data
of IDs, like bones. On another hand, it's not that hard to support this
particular case and avoid possible frustration.

The idea is, we add library name to render identifier for linked scenes. We use
library name and not pointer so we preserve render results through undo stack.

Reviewers: campbellbarton, mont29, brecht

Reviewed By: mont29

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

23 months agoFix T52749: New Depsgraph - Render View Mask is not initialized correctly
Sergey Sharybin [Thu, 14 Sep 2017 11:12:01 +0000 (16:12 +0500)]
Fix T52749: New Depsgraph - Render View Mask is not initialized correctly

23 months agoMasks: Split layer evaluation into separate function
Sergey Sharybin [Thu, 14 Sep 2017 11:09:06 +0000 (16:09 +0500)]
Masks: Split layer evaluation into separate function

This way we can easily re-use bits of code for new dependency graph.

Currently should be no functional changes.

23 months agoFix T52739: Crash loading corrupted video files
Sergey Sharybin [Thu, 14 Sep 2017 09:55:35 +0000 (14:55 +0500)]
Fix T52739: Crash loading corrupted video files

Affects both "normal" open as a video file and thumbnail generation.

23 months agoFix failure in our UI code that could allow search button without search callbacks...
Bastien Montagne [Thu, 14 Sep 2017 08:58:47 +0000 (10:58 +0200)]
Fix failure in our UI code that could allow search button without search callbacks, leading to crash.

Related to (exposed by) T52735, fixes the reported crash but not the
underlying issue.

To be backported to 2.79a should we do one.

23 months agoFix T52723: Reset UV layers failed
Campbell Barton [Thu, 14 Sep 2017 07:45:17 +0000 (17:45 +1000)]
Fix T52723: Reset UV layers failed

23 months agoFix T52741: Follow track with depth object crashes Blender with new depsgraph
Sergey Sharybin [Thu, 14 Sep 2017 07:31:54 +0000 (12:31 +0500)]
Fix T52741: Follow track with depth object crashes Blender with new depsgraph

23 months agoRecent action-bake used Py3.6 syntax
Campbell Barton [Thu, 14 Sep 2017 07:03:40 +0000 (17:03 +1000)]
Recent action-bake used Py3.6 syntax

23 months agoFix T52291: Boolean fails w/ co-linear edged ngons
Campbell Barton [Thu, 14 Sep 2017 06:00:27 +0000 (16:00 +1000)]
Fix T52291: Boolean fails w/ co-linear edged ngons

This means boolean tessellation wont match viewport tessellation
however it's needed to avoid zero area triangles causing problems.

23 months agoFix T52299: X resolution of 4 causes nodes to collapse
Sergey Sharybin [Wed, 13 Sep 2017 13:29:37 +0000 (18:29 +0500)]
Fix T52299: X resolution of 4 causes nodes to collapse

Was caused by numeric overflow when calculating preview dimensions.
Now we try to avoid really insance preview resolutions by fitting
aspect into square.

23 months agoCode cleanup: store branch factor in PathState.
Brecht Van Lommel [Sun, 10 Sep 2017 12:09:12 +0000 (14:09 +0200)]
Code cleanup: store branch factor in PathState.

23 months agoCode cleanup: avoid used of uninitialized value in case of precision issue.
Brecht Van Lommel [Fri, 8 Sep 2017 01:21:50 +0000 (03:21 +0200)]
Code cleanup: avoid used of uninitialized value in case of precision issue.

23 months agoCode cleanup: abstract shadow catcher logic more into accumulation code.
Brecht Van Lommel [Mon, 28 Aug 2017 11:33:37 +0000 (13:33 +0200)]
Code cleanup: abstract shadow catcher logic more into accumulation code.

23 months agoCode cleanup: deduplicate some branched and split kernel code.
Brecht Van Lommel [Wed, 13 Sep 2017 00:10:24 +0000 (02:10 +0200)]
Code cleanup: deduplicate some branched and split kernel code.

Benchmarks peformance on GTX 1080 and RX 480 on Linux is the same for
bmw27, classroom, pabellon, and about 2% faster on fishy_cat and koro.

23 months agoCode cleanup: tweak inlining for 2% better CUDA performance with hair.
Brecht Van Lommel [Tue, 12 Sep 2017 22:12:51 +0000 (00:12 +0200)]
Code cleanup: tweak inlining for 2% better CUDA performance with hair.

23 months agoFix T52140: Align objects centers using origin for text
Sergey Sharybin [Wed, 13 Sep 2017 12:38:20 +0000 (17:38 +0500)]
Fix T52140: Align objects centers using origin for text

The issue was caused by operator redo which frees all object's evaluated data,
including bounding box. This bounding box can not be reconstructed properly
without full curve evaluation (need to at least convert font to nurbs, which is
not cheap already).

23 months agoCleanup: avoid right-shifted args in RNA register
Campbell Barton [Wed, 13 Sep 2017 11:52:57 +0000 (21:52 +1000)]
Cleanup: avoid right-shifted args in RNA register

23 months agoNode UI: scale cross by pixelsize
Campbell Barton [Wed, 13 Sep 2017 11:46:43 +0000 (21:46 +1000)]
Node UI: scale cross by pixelsize

Draws a little smaller to fit with 2.8x manipulator.

23 months agoFix T52113: Compositor doesnt mix unrendered render layers well
Sergey Sharybin [Wed, 13 Sep 2017 10:37:01 +0000 (15:37 +0500)]
Fix T52113: Compositor doesnt mix unrendered render layers well

Compositor was always defaulting to all-zero s output for missing passes.

This was broken in 4cf7fc3.

23 months agoCompositor: Cleanup, get rid of nested ternary operators
Sergey Sharybin [Wed, 13 Sep 2017 10:00:14 +0000 (15:00 +0500)]
Compositor: Cleanup, get rid of nested ternary operators

Having single switch statement is much more readable.

23 months agoCompositor: Cleanup, de-duplicate some code
Sergey Sharybin [Wed, 13 Sep 2017 09:57:57 +0000 (14:57 +0500)]
Compositor: Cleanup, de-duplicate some code

23 months agoCompositor: Cleanup, reduce indentation level in render layer node
Sergey Sharybin [Wed, 13 Sep 2017 09:52:24 +0000 (14:52 +0500)]
Compositor: Cleanup, reduce indentation level in render layer node

There is absolute no reason to have such an indentation level, it only causes
readability and maintainability issues. It is really simple to make code more
"streamlined".

23 months agoCycles: change AO bounces approximation to do more glossy and transmission.
Mathieu Menuet [Tue, 12 Sep 2017 13:13:55 +0000 (15:13 +0200)]
Cycles: change AO bounces approximation to do more glossy and transmission.

Rather than treating all ray types equally, we now always render 1 glossy
bounce and unlimited transmission bounces. This makes it possible to get
good looking results with low AO bounces settings, making it useful to
speed up interior renders for example.

Reviewed By: brecht

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

23 months agoT50354: Action length calculation added unnecessary padding if some F-Curves
Joshua Leung [Tue, 12 Sep 2017 00:35:04 +0000 (12:35 +1200)]
T50354: Action length calculation added unnecessary padding if some F-Curves
only contained a single key (on the last real frame of the action).

23 months agoAdding some verbose documentation
Joshua Leung [Mon, 11 Sep 2017 11:42:31 +0000 (23:42 +1200)]
Adding some verbose documentation

I thought this was already clear enough, but apparently not.

23 months agoFix T52573: Cycles baking artifacts
Sergey Sharybin [Tue, 12 Sep 2017 11:33:42 +0000 (16:33 +0500)]
Fix T52573: Cycles baking artifacts

Synchronize condition for faces split between Cycles itself and baking API.

23 months agoCycles tests: Add baking features tests
Sergey Sharybin [Tue, 12 Sep 2017 11:22:02 +0000 (16:22 +0500)]
Cycles tests: Add baking features tests

23 months agoFix T52679: Hole in bake normal
Sergey Sharybin [Tue, 12 Sep 2017 09:14:34 +0000 (14:14 +0500)]
Fix T52679: Hole in bake normal

In fact, any type of baking might have caused holes in mesh.

The issue was caused by zspan_scanconvert() attempting to get order of traversal
'a-priori', which might have failed if check happens at the "tip" of span where
`zspan->span1[sn1] == zspan->span2[sn1]`.

Didn't see anything bad on making it a check when iterating over scanlines and
pick minimal span based on current scanline. It's slower, but unlikely to cause
measurable difference. Quality should stay the same unless i'm missing something.

Reviewers: brecht, dfelinto

Reviewed By: brecht

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

23 months agoFix rare firefly in volume equiangular sampling when sampling short distance.
Brecht Van Lommel [Fri, 8 Sep 2017 23:37:54 +0000 (01:37 +0200)]
Fix rare firefly in volume equiangular sampling when sampling short distance.

23 months agoCycles tests: add environment variable to update references renders.
Brecht Van Lommel [Sat, 2 Sep 2017 22:15:14 +0000 (00:15 +0200)]
Cycles tests: add environment variable to update references renders.

This will copy new renders over references renders:
CYCLESTEST_UPDATE=1 ctest -R cycles

23 months agoCycles: improve sample stratification on area lights for path tracing.
Brecht Van Lommel [Thu, 7 Sep 2017 23:42:14 +0000 (01:42 +0200)]
Cycles: improve sample stratification on area lights for path tracing.

Previously we used a 1D sequence to select a light, and another 2D sequence
to sample a point on the light. For multiple lights this meant each light
would get a random subset of a 2D stratified sequence, which is not
guaranteed to be stratified anymore.

Now we use only a 2D sequence, split into segments along the X axis, one for
each light. The samples that fall within a segment then each are a stratified
sequence, at least in the limit. So for example for two lights, we split up
the unit square into two segments [0,0.5[ x [0,1[ and [0.5,1[ x [0,1[.

This doesn't make much difference in most scenes, mainly helps if you have a
few large area lights or some types of HDR backgrounds.

23 months agoFix Cycles bug in RR termination, probability should never be > 1.0.
Brecht Van Lommel [Tue, 12 Sep 2017 00:27:02 +0000 (02:27 +0200)]
Fix Cycles bug in RR termination, probability should never be > 1.0.

This causes render differences in some scenes, for example fishy_cat
and pabellon scenes render brighter in a few spots. This is an old
bug, not due to recent RR changes.

23 months agoCycles: Tweaks to avoid compilation error of megakernel
Sergey Sharybin [Tue, 12 Sep 2017 08:33:46 +0000 (13:33 +0500)]
Cycles: Tweaks to avoid compilation error of megakernel

Also moved code out of deep-inside ifdef block, otherwise it was quite confusing.

23 months agoUpdate tgz script, remove deprecated `GZIP` use
Campbell Barton [Tue, 12 Sep 2017 06:23:10 +0000 (16:23 +1000)]
Update tgz script, remove deprecated `GZIP` use

23 months agoFix T52682: When hair number=faces number, particles/face = 1 , actually some hair...
Bastien Montagne [Mon, 11 Sep 2017 10:31:33 +0000 (12:31 +0200)]
Fix T52682: When hair number=faces number, particles/face = 1 , actually some hair is overlap.

Just using same code for distribution for face/volume as the one
changed/used for vertices since some months.

Note that this change is breacking compatibility, in that distribution
of particles over faces/volume may not be exactly the same as
previously.

23 months agoFix T52701: Mesh shortest path fails at boundaries
Campbell Barton [Mon, 11 Sep 2017 06:45:19 +0000 (16:45 +1000)]
Fix T52701: Mesh shortest path fails at boundaries

23 months agoFix T52696: Sculpt - Brush spacing pressure artifacts
Joshua Leung [Mon, 11 Sep 2017 06:24:39 +0000 (18:24 +1200)]
Fix T52696: Sculpt - Brush spacing pressure artifacts

Was caused by divide-by-zero in paint_stroke_integrate_overlap()
in paint_stroke.c, as identified by Bob Smith (uvwxyz).

Thanks for the report!

23 months agoBake Action: operate on selected objects
Campbell Barton [Sun, 10 Sep 2017 06:58:04 +0000 (16:58 +1000)]
Bake Action: operate on selected objects

Previously only the active object was used.

Use coroutines to support baking frames for multiple objects at once,
without having to playback the animation multiple times.

23 months agoPyAPI: Add object argument to bake_action
Campbell Barton [Sun, 10 Sep 2017 04:30:03 +0000 (14:30 +1000)]
PyAPI: Add object argument to bake_action

Avoids having to set the scene's active object first.

23 months agoResolve T52687: Add node label shows as 'Unknown'
Campbell Barton [Sat, 9 Sep 2017 12:35:33 +0000 (22:35 +1000)]
Resolve T52687: Add node label shows as 'Unknown'

Add type access method, need to extend to other types
for now just get node UI working properly again.

23 months agoPyAPI: Fix mathutils freeze allowing owned data
Campbell Barton [Sat, 9 Sep 2017 01:08:38 +0000 (11:08 +1000)]
PyAPI: Fix mathutils freeze allowing owned data

23 months agoDocs: mathutils docstrings
Campbell Barton [Sat, 9 Sep 2017 01:02:26 +0000 (11:02 +1000)]
Docs: mathutils docstrings

23 months agoCleanup: mathutils vector comments
Campbell Barton [Sat, 9 Sep 2017 00:47:57 +0000 (10:47 +1000)]
Cleanup: mathutils vector comments

Use doxy markup & correct outdated info.

23 months agoCorrect last commit
Campbell Barton [Sat, 9 Sep 2017 00:14:53 +0000 (10:14 +1000)]
Correct last commit

23 months agoCleanup: Simplify SWIZZLE macro
Campbell Barton [Fri, 8 Sep 2017 23:58:19 +0000 (09:58 +1000)]
Cleanup: Simplify SWIZZLE macro

- Use indices instead of character args.
- Use numbered macros instead of variadic args.

Parsing using rtags used over 11gb of memory. While this should be
resolved upstream (report as #1053), the extra complexity didn't give
any real advantage.

23 months ago[msvc/make.bat] mention the msvc-2017 option in the make.bat help text.
Ray Molenkamp [Fri, 8 Sep 2017 20:24:02 +0000 (14:24 -0600)]
[msvc/make.bat] mention the msvc-2017 option in the make.bat help text.

23 months agoCycles: Attempt to work around compilation of sm_20 and sm_21
Sergey Sharybin [Fri, 8 Sep 2017 16:37:54 +0000 (18:37 +0200)]
Cycles: Attempt to work around compilation of sm_20 and sm_21

Disabled forceinline for those architectures, which seems to be compiling
successfully more often.

There might be ~3% slowdown based on quick tests, but better be rendering
something rather than failing to compile kernels again and again.

Those architectures will be doomed for abandon once we'll switch to toolkit 9.

23 months agoFix T52628: own error in string duplication
Campbell Barton [Fri, 8 Sep 2017 15:59:07 +0000 (01:59 +1000)]
Fix T52628: own error in string duplication

Error in 636baa598a56

23 months agoCycles: disable fast math flags, only use a subset.
Brecht Van Lommel [Thu, 7 Sep 2017 00:33:50 +0000 (02:33 +0200)]
Cycles: disable fast math flags, only use a subset.

Empty BVH nodes are set to NaN which must be preserved all the way to the
tnear <= tfar test which can then give false for empty nodes. This needs
strict semantices and careful argument ordering for min() and max(), so
the second argument is used if either of the arguments is NaN.

Fixes T52635: crash in BVH traversal with SSE4.1.

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

23 months agoFix: Grease Pencil pie menu keymaps were broken after the menus got renamed
Joshua Leung [Fri, 8 Sep 2017 13:02:32 +0000 (01:02 +1200)]
Fix: Grease Pencil pie menu keymaps were broken after the menus got renamed

23 months agoFix T52650:Grease pencil selection its not automatically updating in Clip Editor
Antonio Vazquez [Fri, 8 Sep 2017 09:21:49 +0000 (11:21 +0200)]
Fix T52650:Grease pencil selection its not automatically updating in Clip Editor

23 months agoFix T52678: Crash editing gpencil w/ frame-lock
Campbell Barton [Fri, 8 Sep 2017 08:51:47 +0000 (18:51 +1000)]
Fix T52678: Crash editing gpencil w/ frame-lock

23 months agoCorrect function name in argument parsing
Campbell Barton [Thu, 7 Sep 2017 14:59:27 +0000 (00:59 +1000)]
Correct function name in argument parsing

23 months agoPyAPI: use bl_rna_get_subclass for node API
Campbell Barton [Thu, 7 Sep 2017 14:03:01 +0000 (00:03 +1000)]
PyAPI: use bl_rna_get_subclass for node API

Returns a default value instead of an error when the type isn't defined.

23 months agoPyAPI: add function to get an RNA subclass
Campbell Barton [Thu, 7 Sep 2017 13:53:02 +0000 (23:53 +1000)]
PyAPI: add function to get an RNA subclass

This is inconvenient in regular Python, add a class-method
to perform the operation, eg:

bpy.types.Node.bl_rna_find_subclass("CustomNodeType")

23 months agoCleanup: remove goto's
Campbell Barton [Thu, 7 Sep 2017 12:53:46 +0000 (22:53 +1000)]
Cleanup: remove goto's

23 months agoUI: fix memory leak when copy-to-selected failed
Campbell Barton [Thu, 7 Sep 2017 12:13:28 +0000 (22:13 +1000)]
UI: fix memory leak when copy-to-selected failed

23 months agoWeight Smooth: remove source option
Campbell Barton [Thu, 7 Sep 2017 04:12:11 +0000 (14:12 +1000)]
Weight Smooth: remove source option

Use current selection mode instead of an operator option.

23 months agoFix T52639: Weight paint smooth tool crash
Campbell Barton [Thu, 7 Sep 2017 03:20:39 +0000 (13:20 +1000)]
Fix T52639: Weight paint smooth tool crash

23 months agoCleanup: custom nodes template
Campbell Barton [Wed, 6 Sep 2017 19:18:44 +0000 (05:18 +1000)]
Cleanup: custom nodes template

- Use conventional (pep8) prop names
- Simplify class registration

23 months agoWorkaround node types not being exposed
Campbell Barton [Wed, 6 Sep 2017 19:17:02 +0000 (05:17 +1000)]
Workaround node types not being exposed

We might want to have a utility function for this,
for now just keep it working.

23 months agoNode UI: Add square and diamond socked draw styles
Campbell Barton [Wed, 6 Sep 2017 18:45:38 +0000 (04:45 +1000)]
Node UI: Add square and diamond socked draw styles

Currently not used by Blender's node trees

D2814 by @charlie

23 months agoFix T52660: CUDA volume texture rendering not working on Fermi GPUs.
Brecht Van Lommel [Wed, 6 Sep 2017 16:12:45 +0000 (18:12 +0200)]
Fix T52660: CUDA volume texture rendering not working on Fermi GPUs.

23 months agoFix mistake in previous fix for T52640.
Brecht Van Lommel [Wed, 6 Sep 2017 15:21:58 +0000 (17:21 +0200)]
Fix mistake in previous fix for T52640.

23 months agoUse normalized project functions
Campbell Barton [Wed, 6 Sep 2017 15:19:37 +0000 (01:19 +1000)]
Use normalized project functions

23 months agoFix T52640: crash when opening image file browser in some cases.
Brecht Van Lommel [Wed, 6 Sep 2017 13:56:01 +0000 (15:56 +0200)]
Fix T52640: crash when opening image file browser in some cases.

There was some invalid state in the screen here, some areas had
sa->full set even though no screen was maximized, which then caused
a restore from the wrong (empty) area, which then led to spacedata
being empty and a crash.

This fix properly clears the sa->full after restore, and also fixes
existing .blend files in such an invalid state.