blender.git
6 years agoFix T39895: Displaying the armature layers popup in edit mode always fails.
Bastien Montagne [Fri, 25 Apr 2014 15:07:30 +0000 (17:07 +0200)]
Fix T39895: Displaying the armature layers popup in edit mode always fails.

In fact, armature layers operators (set layers, and show all) were kind of messy and broken
in Edit mode (Select layers had two different operators for Pose and Edit modes, both
using the same funcs that could only work in Pose mode, Show All was supposed to be
used in both modes but again, its exec code could only work in Pose one).

Fixed that by:
* Using only one op for each task, for both modes (with adapted poll func).
* Replacing 'object from context' access by an helper that returns the right Armature
object in both Edit and Pose modes.

6 years agoBoxPack: replace macros with functions
Campbell Barton [Fri, 25 Apr 2014 14:07:51 +0000 (00:07 +1000)]
BoxPack: replace macros with functions

also correct error merging vertices

6 years agoFix T39843: cycles memory leak rendering with high transparent depth.
Brecht Van Lommel [Fri, 25 Apr 2014 13:25:34 +0000 (15:25 +0200)]
Fix T39843: cycles memory leak rendering with high transparent depth.

6 years agoAdd message for constraint poll
Campbell Barton [Fri, 25 Apr 2014 12:04:03 +0000 (22:04 +1000)]
Add message for constraint poll

Was confusing for Python devs when these fail silently

6 years agoRevert previous change after discussion with Campbell
Sergey Sharybin [Fri, 25 Apr 2014 11:16:06 +0000 (17:16 +0600)]
Revert previous change after discussion with Campbell

Let's just be really verbose and it some compiler gives
issues tell him NOT to do this.

We shouldn't really workaround compiles' idiocy..

6 years agoFix strict flags compilation error in box pack
Sergey Sharybin [Fri, 25 Apr 2014 11:02:18 +0000 (17:02 +0600)]
Fix strict flags compilation error in box pack

No need to check q >= 0 in quad_flag() since q is
an unsigned int argument.

6 years agoFix T39799: Backdrop (compositor) ignores alpha.
Lukas Tönne [Fri, 25 Apr 2014 10:00:35 +0000 (12:00 +0200)]
Fix T39799: Backdrop (compositor) ignores alpha.

This issue is because of a somewhat "special" behavior in old code, which got lost during rB09874df:

There was a variant of the `relinkConnections` function which would leave the socket completely unconnected. This is not a valid state really (given that each unconnected input must otherwise connected to a constant `Set` type node), but was used as a way to distinguish connected alpha/depth sockets in composite and viewer output nodes.
https://developer.blender.org/diffusion/B/browse/master/source/blender/compositor/intern/COM_InputSocket.cpp;28a829893c702918afc5ac1945a06eaefa611594$69

After the large cleanup patch ({D309}) every socket is now automatically connected to a constant, such that `getInputSocketReader` will never return a NULL pointer. This breaks the previous test method, which needs to be replaced by more explicit flags. Luckily this was done only for very few output nodes (Composite, Viewer, Output-File). These now use the regular SetValueOperation default in case "use alpha" is disabled, but set this to an explicit 1.0 value instead of mapping to the node socket.

6 years agoFix T38924: wm.link_append() could fail to append
Campbell Barton [Fri, 25 Apr 2014 08:34:47 +0000 (18:34 +1000)]
Fix T38924: wm.link_append() could fail to append

When the library path was changed by BLI_cleanup_path
appending would fail.

6 years agoFix T39886: Transformed parents of Rigid Bodies cause problems with Bake To Keyframes
Sergej Reich [Fri, 25 Apr 2014 03:26:48 +0000 (05:26 +0200)]
Fix T39886: Transformed parents of Rigid Bodies cause problems with Bake To Keyframes

Need to convert transforms to parent space for objects with parents.

6 years agoFix T39880: Cancelling transforms in Graph Editor does not restore F-Curves to origin...
Joshua Leung [Fri, 25 Apr 2014 01:32:27 +0000 (13:32 +1200)]
Fix T39880: Cancelling transforms in Graph Editor does not restore F-Curves to original state

Since autosnap was being applied during the flushing step for various practical reasons,
it wasn't possible to restore keyframes and handles to their original values, as these
would always get overwritten before getting a chance to be written back to the keyframes.

6 years agoSpelling error fixes
Joshua Leung [Fri, 25 Apr 2014 01:19:21 +0000 (13:19 +1200)]
Spelling error fixes

6 years agoFreestyle: Fix typos in a tool tip.
Tamito Kajiyama [Fri, 25 Apr 2014 00:21:52 +0000 (09:21 +0900)]
Freestyle: Fix typos in a tool tip.

6 years agoCode cleanup: unused python vars & imports
Campbell Barton [Thu, 24 Apr 2014 19:31:20 +0000 (05:31 +1000)]
Code cleanup: unused python vars & imports

Use frosted rather then pyflakes

6 years agoFix T39874: Bone roll resets if bones are moved in edit mode
Bastien Montagne [Thu, 24 Apr 2014 19:15:43 +0000 (21:15 +0200)]
Fix T39874: Bone roll resets if bones are moved in edit mode

Own stupid typo in rBee387c6addb2, sigh...

6 years agoQuiet warnings
Campbell Barton [Thu, 24 Apr 2014 17:18:19 +0000 (03:18 +1000)]
Quiet warnings

6 years agoBoxPack: add bias, fixes erratic placement with identical boxes
Campbell Barton [Thu, 24 Apr 2014 17:03:58 +0000 (03:03 +1000)]
BoxPack: add bias, fixes erratic placement with identical boxes

6 years agoBoxPack: remove unusable vertices while packing
Campbell Barton [Thu, 24 Apr 2014 16:50:56 +0000 (02:50 +1000)]
BoxPack: remove unusable vertices while packing

avoids having to check placing boxes there.

6 years agoBoxPack: add support for merging verts as they are packed in
Campbell Barton [Thu, 24 Apr 2014 16:46:34 +0000 (02:46 +1000)]
BoxPack: add support for merging verts as they are packed in

Reduces the number of vertices to pack boxes into.

6 years agoBoxPack: flag verts used in packed boxes
Campbell Barton [Thu, 24 Apr 2014 15:31:52 +0000 (01:31 +1000)]
BoxPack: flag verts used in packed boxes

6 years agoBoxPack: remove quad_flags array, replace with inline bit-shift
Campbell Barton [Thu, 24 Apr 2014 15:19:06 +0000 (01:19 +1000)]
BoxPack: remove quad_flags array, replace with inline bit-shift

6 years agoBox Pack: Improve when packing boxes of the same size
Campbell Barton [Thu, 24 Apr 2014 15:02:51 +0000 (01:02 +1000)]
Box Pack: Improve when packing boxes of the same size

6 years agoSmart UV Project: don't rotate islands which are almost square
Campbell Barton [Thu, 24 Apr 2014 14:43:15 +0000 (00:43 +1000)]
Smart UV Project: don't rotate islands which are almost square

6 years agoFix T39861: UI destroys float precision.
Bastien Montagne [Thu, 24 Apr 2014 15:17:55 +0000 (17:17 +0200)]
Fix T39861: UI destroys float precision.

Note this is only a workaround in fact, adding some precision in radians case.
Validating the field will still generate a precision loss (doing otherwise is
doable-ish, but likely to backfire and/or add too much complexity in an already
complex area).

6 years agoAutoSnap Bugfixes: NLA Frame/Second Step didn't work
Joshua Leung [Thu, 24 Apr 2014 15:01:55 +0000 (03:01 +1200)]
AutoSnap Bugfixes: NLA Frame/Second Step didn't work

Since the NLA was also using the standard transform mode by default, this meant that
no frame/second step-snapping was happening here (i.e. like for the Graph Editor).
The actual differences between doing true stepping vs nearest here are quite small
(and don't really make much sense with NLA Strips), so for now, it should be fine that
these are the same.

6 years agoAutoSnap Bugfixes: NLA Editor - Nearest Second behaviour tweak
Joshua Leung [Thu, 24 Apr 2014 14:52:27 +0000 (02:52 +1200)]
AutoSnap Bugfixes: NLA Editor - Nearest Second behaviour tweak

The previous behaviour for nearest second meant that transforming the strips often
caused their lengths to change (sometimes drastically), since strip lengths aren't
always uniformly x-seconds long. Now, it only snaps the start frame value, and adjusts
the end of the strip to follow.

This works well for most cases, apart from negatively scaling the strip, where it will
get "stuck" as a 0.001 frame long strip (and the viewport drawing will be a bit weird
during this time). Nevertheless, negative scaling of strips isn't something that's exactly
recommended.

6 years agoAutoSnap Bugfixes: NLA Editor - Nearest Frame/Second
Joshua Leung [Thu, 24 Apr 2014 14:37:26 +0000 (02:37 +1200)]
AutoSnap Bugfixes: NLA Editor - Nearest Frame/Second

Split off handling for nearest second from nearest frame

6 years agoMore AutoSnap Bugfixes: Time Stepping in Graph Editor
Joshua Leung [Thu, 24 Apr 2014 14:17:12 +0000 (02:17 +1200)]
More AutoSnap Bugfixes: Time Stepping in Graph Editor

* Frame Step now works correctly and as expected
* Second Step kindof works, but the handles are not well behaved.

6 years agoFix T39819: Decouple autosnap behaviour from time display
Joshua Leung [Thu, 24 Apr 2014 12:40:51 +0000 (00:40 +1200)]
Fix T39819: Decouple autosnap behaviour from time display

This commit cleans up and fixes some problems related to how the auto-snapping
behaviour in the animation editors works, resolving the issues mentioned in T39819.

1) "Nearest Frame" no longer snaps to the nearest second when time is displayed in seconds.
    Instead, there is now also a "Nearest Second" option, so that either can be used
    as needed instead of only when a certain time display is used.
2) A similar change has been made for "Time Step" - This is now "Frame Step" and "Second Step"
    respectively.

Notes:
* Removed the unneeded getAnimEdit_DrawTime()
* Time Step/Frame Step don't work for Graph Editor yet (and seem to not have worked at all)
* NLA Editor also seems to be showing some weirdness now. Will be checked on.
* Cancelling nearest-second snapping doesn't work nicely, due to another bug with GraphEdit transforms.

6 years agoCode Cleanup: short -> bool
Joshua Leung [Thu, 24 Apr 2014 04:58:37 +0000 (16:58 +1200)]
Code Cleanup: short -> bool

6 years agoFix T39867: Hotkey is not displayed in the node editor's menu.
Bastien Montagne [Thu, 24 Apr 2014 14:46:54 +0000 (16:46 +0200)]
Fix T39867: Hotkey is not displayed in the node editor's menu.

Making both keymap and menu values the same, and adding a (debug only) check in
IDP_EqualsProperties_ex() warning when comparing two floats with nearly the same value.

6 years agoFollow-up to the previous fix for T37452: More descriptive tooltips for freestyles...
Tamito Kajiyama [Thu, 24 Apr 2014 14:42:05 +0000 (23:42 +0900)]
Follow-up to the previous fix for T37452: More descriptive tooltips for freestyles settings

Made additional tool tips revisions suggested by a comment to T37452.

6 years agoFreestyle: minor UI improvements.
Tamito Kajiyama [Thu, 24 Apr 2014 14:27:58 +0000 (23:27 +0900)]
Freestyle: minor UI improvements.

* The button icon for jumping to the Render Layers tab of the Properties context is
now RENDERLAYERS.  Previous icon BUTS was too general.

* Thickness position options are grayed out if not applicable.  These options are applied
only when plain chaining is used with the Same Object option enabled.

6 years agoFix T37452: More descriptive tooltips for freestyles settings.
Tamito Kajiyama [Thu, 24 Apr 2014 14:22:21 +0000 (23:22 +0900)]
Fix T37452: More descriptive tooltips for freestyles settings.

Tool tips of some Freestyle parameters were revised so that parameter descriptions
are easier to understand for artists.

6 years agoQuiet warning
Campbell Barton [Thu, 24 Apr 2014 09:07:52 +0000 (19:07 +1000)]
Quiet warning

6 years agoFix T39830: Viewer node update error in the compositor when using the seperate/combin...
Sergey Sharybin [Thu, 24 Apr 2014 09:17:14 +0000 (15:17 +0600)]
Fix T39830: Viewer node update error in the compositor when using the seperate/combine YCbCr nodes

Mode of the YCC<->RGB was never set..

6 years agoFix T39785: Video Sequencer, Aspect Ratio issue
Sergey Sharybin [Thu, 24 Apr 2014 08:28:18 +0000 (14:28 +0600)]
Fix T39785: Video Sequencer, Aspect Ratio issue

Sequencer preview was rendering all scenes with the context
resolution, which doesn't give proper result. Now made it so
sequencer scene preview uses scene's resolution.

6 years agoFix T39786: Transform node gives bad result.
Kevin Dietrich [Thu, 24 Apr 2014 07:30:39 +0000 (09:30 +0200)]
Fix T39786: Transform node gives bad result.

Error caused by rB09874df1.

6 years agoCOmpilation error fix after recent cleanup in BGE
Sergey Sharybin [Thu, 24 Apr 2014 07:03:41 +0000 (13:03 +0600)]
COmpilation error fix after recent cleanup in BGE

6 years agoFreestyle: quiet BMESH validator warnings of zero normals.
Tamito Kajiyama [Thu, 24 Apr 2014 04:57:10 +0000 (13:57 +0900)]
Freestyle: quiet BMESH validator warnings of zero normals.

6 years agoBGE Cleanup: Moving reinstancing physics shapes from KX_ConvertPhysicsObject to PHY_I...
Mitchell Stokes [Thu, 24 Apr 2014 02:37:54 +0000 (19:37 -0700)]
BGE Cleanup: Moving reinstancing physics shapes from KX_ConvertPhysicsObject to PHY_IPhysicsController

This was the last item in KX_ConvertPhysicsObject. Therefore,
KX_ConvertPhysicsObject.h and KX_ConvertPhysicsObjects.cpp have been
removed.

6 years agoFix the classification + ordering of a few of the easing types
Joshua Leung [Thu, 24 Apr 2014 02:28:30 +0000 (14:28 +1200)]
Fix the classification + ordering of a few of the easing types

After recently reading through Robert Penner's original descriptions of these
easing equations for some other work I've been doing, I realised that the
ordering I introduced earlier was slightly off (with regards to sine and circular
types). This commit recitifies these issues.

6 years agoFix T39851: F-curve noise modifier on a bone: change selection when modifying value
Joshua Leung [Thu, 24 Apr 2014 02:26:53 +0000 (14:26 +1200)]
Fix T39851: F-curve noise modifier on a bone: change selection when modifying value

When the dopesheet was open, "keyframe edited" events from the graph editor
(i.e. fired whenever any properties on keyframes or FModifiers are changed)
would trigger the dopesheet to synchronise selection states of anim channels
and ensure that FCurve autocolours are initialised correctly.

This however was undesired when editing properties in the graph editor. Now,
made it so that keyframe adding/removing operators use different notifier flags
to specify that the channels might have changed + need colour syncing, and
adjusted the dopesheet updating logic to fit

6 years agoBGE Cleanup: Physics conversion is now handled by PHY_IPhysicsEnvironment
Mitchell Stokes [Thu, 24 Apr 2014 01:39:33 +0000 (18:39 -0700)]
BGE Cleanup: Physics conversion is now handled by PHY_IPhysicsEnvironment

The current physics conversion code was moved from
KX_ConvertPhysicsObjects to CcdPhysicsEnvironment.

6 years agoBGE Cleanup: Reducing KX_BlenderSceneConverter's dependence on Bullet.
Mitchell Stokes [Thu, 24 Apr 2014 00:53:25 +0000 (17:53 -0700)]
BGE Cleanup: Reducing KX_BlenderSceneConverter's dependence on Bullet.

  * Moving the BlenderDebugDraw (derived from btIDebugDraw) from
    KX_BlenderSceneConverter to CcdPhysicsEnvironment
  * Moving CcdPhysicsEnvironment initialization to CcdPhysicsEnvironment
    (this could probably be cleaned up some more with some sort of
    factory, or at least moving code to CcdPhysicsEnvironment's
    constructor)
  * Simplifying physics environment initialization (went from two
    switches to one)

6 years agoBGE Cleanup: Reducing KX_Scene's dependence on Bullet.
Mitchell Stokes [Wed, 23 Apr 2014 21:08:49 +0000 (14:08 -0700)]
BGE Cleanup: Reducing KX_Scene's dependence on Bullet.

Instead, it now relies more on our physics abstractions (e.g.,
PHY_IPhysicsEnvironment).

6 years agoBGE Cleanup: Removing the empty KX_ClearBulletSharedShapes() function
Mitchell Stokes [Wed, 23 Apr 2014 20:59:04 +0000 (13:59 -0700)]
BGE Cleanup: Removing the empty KX_ClearBulletSharedShapes() function

6 years agoFix T39839: Applying the subsurf modifier deletes the freestyle edge marks
Campbell Barton [Wed, 23 Apr 2014 19:20:45 +0000 (05:20 +1000)]
Fix T39839: Applying the subsurf modifier deletes the freestyle edge marks

6 years agoSubsurf: minor optimization setting edge origindex
Campbell Barton [Wed, 23 Apr 2014 19:14:35 +0000 (05:14 +1000)]
Subsurf: minor optimization setting edge origindex

6 years agoFix T39852: Crash (Blender internal) large objects
Campbell Barton [Wed, 23 Apr 2014 17:06:02 +0000 (03:06 +1000)]
Fix T39852: Crash (Blender internal) large objects

Add check when bounds reached inf

6 years agoQuiet warnings
Campbell Barton [Wed, 23 Apr 2014 16:34:34 +0000 (02:34 +1000)]
Quiet warnings

6 years agoAdd asserts to raytrace get/set_cut functions
Campbell Barton [Wed, 23 Apr 2014 16:29:40 +0000 (02:29 +1000)]
Add asserts to raytrace get/set_cut functions

6 years agoFix T39847: Followup to rB6babb4d12b8b.
Bastien Montagne [Wed, 23 Apr 2014 15:59:35 +0000 (17:59 +0200)]
Fix T39847: Followup to rB6babb4d12b8b.

As suggested by Campbell, bump subversion and reset all ui_previews data (so that any file that could
have been corrupted in past two weeks because of this bug is fixed and valid again).

6 years agoFix T39848: Reroute nodes were not handled properly after compositor
Lukas Tönne [Wed, 23 Apr 2014 15:00:04 +0000 (17:00 +0200)]
Fix T39848: Reroute nodes were not handled properly after compositor
cleanup patch.

These simply need a proxy node, which will be replaced by direct
operation links afterward.

6 years agoFix T39828: Incorrect render layer visibility display for animated render layers.
Bastien Montagne [Wed, 23 Apr 2014 13:58:46 +0000 (15:58 +0200)]
Fix T39828: Incorrect render layer visibility display for animated render layers.

More like a workaround, current depsgraph does not really allow for animated layers,
esp. when we alwys expect at least one to be enabled (same issue as with basic Scene layers).

6 years agoFix T39781: Autosmooth feature: erroneously showing hidden vertices' normals too...
Bastien Montagne [Wed, 23 Apr 2014 13:18:11 +0000 (15:18 +0200)]
Fix T39781: Autosmooth feature: erroneously showing hidden vertices' normals too when in "vertex per face" display

So, turned out after all we need a foreachmapped helper for loops as well... :/

CDDM and EBDM were reasonably simple, but I fought hours with CCGDM (subsurf) to find only a
bad working solution (see D478). So I fallback to a code similar to CDDM one.
Probably not nice for performances, but loops and subsurf are not matching well...

Reviewers: campbellbarton

CC: brecht
Differential Revision: https://developer.blender.org/D478

6 years agoFix compilation on OSX after previous commit
Sergey Sharybin [Wed, 23 Apr 2014 13:19:02 +0000 (19:19 +0600)]
Fix compilation on OSX after previous commit

EXPECT_EQ wasn't defined in the scope.

6 years agoUpdate ffmpeg in install_deps.sh to 2.1.4.
Bastien Montagne [Wed, 23 Apr 2014 09:06:58 +0000 (11:06 +0200)]
Update ffmpeg in install_deps.sh to 2.1.4.

6 years agoCleanup in modifier stack evaluation: deduplicate final tessellation handling code...
Bastien Montagne [Tue, 22 Apr 2014 09:00:13 +0000 (11:00 +0200)]
Cleanup in modifier stack evaluation: deduplicate final tessellation handling code between
editmode and objectmode functions. No behavioral change expected!

6 years agoFix T39849: Adding links directly between node group input/output
Lukas Tönne [Wed, 23 Apr 2014 10:00:28 +0000 (12:00 +0200)]
Fix T39849: Adding links directly between node group input/output
extension sockets would create additional extension sockets instead of
simply ignoring them.

6 years agoLibmv cleanup: move aligned malloc implementation into own file
Sergey Sharybin [Wed, 23 Apr 2014 10:02:30 +0000 (16:02 +0600)]
Libmv cleanup: move aligned malloc implementation into own file

It was rather stupid having it in brute region tracker,
now it is in own file in base library.

6 years agoCode cleanup: style and use switch () for (un)pack
Campbell Barton [Wed, 23 Apr 2014 09:22:03 +0000 (19:22 +1000)]
Code cleanup: style and use switch () for (un)pack

6 years agoFix T39847: uiPreview not being copied with areas
Campbell Barton [Wed, 23 Apr 2014 07:13:28 +0000 (17:13 +1000)]
Fix T39847: uiPreview not being copied with areas

6 years agoQuiet warning
Campbell Barton [Wed, 23 Apr 2014 07:01:17 +0000 (17:01 +1000)]
Quiet warning

6 years agoBlender Internal: Add material property "Cast" which can disable both ray and buffer...
IRIE Shinsuke [Wed, 23 Apr 2014 06:02:06 +0000 (15:02 +0900)]
Blender Internal: Add material property "Cast" which can disable both ray and buffer shadows.

Also refactor:
- Material property UI related to shadows
- Preparation of OR-ed mode flags (ma->mode_l) of render materials

Reviewers: brecht

Reviewed By: brecht

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

6 years agoAdded missing bpy.data.linestyles.is_updated property.
Tamito Kajiyama [Wed, 23 Apr 2014 05:54:43 +0000 (14:54 +0900)]
Added missing bpy.data.linestyles.is_updated property.

Reference: http://wiki.blender.org/index.php/Dev:2.6/Source/Render/UpdateAPI

6 years agoWhitespace
Joshua Leung [Wed, 23 Apr 2014 04:46:13 +0000 (16:46 +1200)]
Whitespace

6 years agoApplying same fix for snapping keyframes in Graph Editor
Joshua Leung [Wed, 23 Apr 2014 04:41:30 +0000 (16:41 +1200)]
Applying same fix for snapping keyframes in Graph Editor

6 years agoFix T39850: Graph Editor - 'Mirror Over First Selected Marker' mirrors over frame...
Joshua Leung [Wed, 23 Apr 2014 04:38:09 +0000 (16:38 +1200)]
Fix T39850: Graph Editor - 'Mirror Over First Selected Marker' mirrors over frame 0 instead

Problem was introduced back in 2.70 during Project Pampa when the FCurve Normalisation
feature was introduced. The cause was that the normalised cursor value was always getting
passed to the KeyframeEditData context, even when it wasn't needed.

6 years agoBGE Cleanup: Removing all of the my_* functions in KX_ConvertPhysicsObjects.cpp that...
Mitchell Stokes [Wed, 23 Apr 2014 03:36:36 +0000 (20:36 -0700)]
BGE Cleanup: Removing all of the my_* functions in KX_ConvertPhysicsObjects.cpp that were used to get bounds information

Now we just use BKE_object_boundbox_get().

6 years agoBGE Cleanup: Removing KX_ObjectProperties, KX_BoundBoxClass, KX_BoxBounds, and KX_CBounds
Mitchell Stokes [Wed, 23 Apr 2014 03:12:22 +0000 (20:12 -0700)]
BGE Cleanup: Removing KX_ObjectProperties, KX_BoundBoxClass, KX_BoxBounds, and KX_CBounds

These were used in BL_CreatePhysicsObjectNew() in the converter. However, all
of the data put into KX_ObjectProperties was then copied again in
KX_ConvertBulletObject(). So, instead KX_ConvertBulletObject() now gathers the
information it needs itself, which avoid this odd double conversion step for
physics.

As a side-effect, the old code would result in static non-mesh objects with no bounds
set to still have triangle mesh bounds. This would result in no bounds for these objects.
If a bounds was set that required a mesh, non-mesh objects would become sphere bounds.
This is now true regardless of whether user bounds were set. In other words, static
non-mesh objects now use sphere bounds by default instead of mesh bounds. This might
slightly alter some games, but these objects should generally be set to No Collision
anyways.

6 years agoFix T39458: Switching physics type from Character to Dynamic enables ghost flag silently
Mitchell Stokes [Tue, 22 Apr 2014 23:38:34 +0000 (16:38 -0700)]
Fix T39458: Switching physics type from Character to Dynamic enables ghost flag silently

Enabling ghost for Sensors and Characters is now done in conversion
rather than when setting the RNA.

6 years agoCycles: some tiny hair intersection optimizations that help maybe 2%.
Brecht Van Lommel [Tue, 22 Apr 2014 23:10:26 +0000 (01:10 +0200)]
Cycles: some tiny hair intersection optimizations that help maybe 2%.

6 years agoFix occasional wrong normal for curves with minimum width.
Brecht Van Lommel [Tue, 22 Apr 2014 21:47:19 +0000 (23:47 +0200)]
Fix occasional wrong normal for curves with minimum width.

This caused a couple of fireflies in koro_final.blend. The wrong normal would
cause the shading point to be set as backfacing, which triggered another bug
with hair BSDFs on the backface of hair curves. That one is not fixed yet but
there's a comment in the code about it now.

6 years agoFix T39429: Project paint error with UV bleed
Campbell Barton [Tue, 22 Apr 2014 18:23:54 +0000 (04:23 +1000)]
Fix T39429: Project paint error with UV bleed

6 years agoApparently msvc doesn't have #warning
Sergey Sharybin [Tue, 22 Apr 2014 18:25:19 +0000 (00:25 +0600)]
Apparently msvc doesn't have #warning

It's unclear how to deal with symlinks on windows as well..

6 years agoMath Lib: move barycentric_weights_v2_persp to into math_geom
Campbell Barton [Tue, 22 Apr 2014 16:09:50 +0000 (02:09 +1000)]
Math Lib: move barycentric_weights_v2_persp to into math_geom

6 years agoCycles: optimization for hair BVH build, allow max 2 hair curves per leaf.
Brecht Van Lommel [Tue, 22 Apr 2014 14:54:02 +0000 (16:54 +0200)]
Cycles: optimization for hair BVH build, allow max 2 hair curves per leaf.

This gives me 14% reduction in render time for koro_final.blend.

6 years agoBMesh: minor optimizations for shapekey lookups on conversion
Campbell Barton [Tue, 22 Apr 2014 14:49:28 +0000 (00:49 +1000)]
BMesh: minor optimizations for shapekey lookups on conversion

6 years agoAdd type checks for Python context overrides
Campbell Barton [Tue, 22 Apr 2014 13:05:58 +0000 (23:05 +1000)]
Add type checks for Python context overrides

it was too easy to use invalid types which would crash or fail silently.

6 years agoCode cleanup: use const for rna
Campbell Barton [Tue, 22 Apr 2014 12:55:10 +0000 (22:55 +1000)]
Code cleanup: use const for rna

6 years agoView3d: api naming, for setting the view matrix.
Campbell Barton [Tue, 22 Apr 2014 11:59:43 +0000 (21:59 +1000)]
View3d: api naming, for setting the view matrix.

6 years agoOSX: tentative fix for D472, ditto creates dirs when needed automatically, also thin...
Jens Verwiebe [Tue, 22 Apr 2014 10:27:35 +0000 (12:27 +0200)]
OSX: tentative fix for D472, ditto creates dirs when needed automatically, also thin out lib. Todo: rather not build the intermediate bins with openmp dependency anyway

6 years agoCorrection to O_NOFOLLOW commit to make it more portable
Sergey Sharybin [Tue, 22 Apr 2014 08:19:54 +0000 (14:19 +0600)]
Correction to O_NOFOLLOW commit to make it more portable

6 years agoinstall_deps: update to py3.4 and numpy1.8.
Bastien Montagne [Tue, 22 Apr 2014 08:08:39 +0000 (10:08 +0200)]
install_deps: update to py3.4 and numpy1.8.

6 years agoDon't follow symlinks when writing autosave or quit.blend
Campbell Barton [Tue, 22 Apr 2014 06:56:53 +0000 (16:56 +1000)]
Don't follow symlinks when writing autosave or quit.blend

D253 from Lawrence D'Oliveiro

6 years agoCorrected the comment
Sergey Sharybin [Tue, 22 Apr 2014 07:02:39 +0000 (13:02 +0600)]
Corrected the comment

6 years agoSwitch buildbot to Python-3.4.0
Sergey Sharybin [Tue, 22 Apr 2014 07:00:35 +0000 (13:00 +0600)]
Switch buildbot to Python-3.4.0

6 years agoBLI_open: check returned value for `-1` instead of `< 0`
Campbell Barton [Tue, 22 Apr 2014 06:40:17 +0000 (16:40 +1000)]
BLI_open: check returned value for `-1` instead of `< 0`

6 years agoCode cleanup: replace int with boolean.
Tamito Kajiyama [Tue, 22 Apr 2014 00:39:21 +0000 (09:39 +0900)]
Code cleanup: replace int with boolean.

6 years agoFix T39833: Nurbs Crash
Bastien Montagne [Mon, 21 Apr 2014 21:41:39 +0000 (23:41 +0200)]
Fix T39833: Nurbs Crash

Converting empty object to mesh can generate a 'Null' BL:Mesh, we have to check against it.

6 years agoFollow up to previous commit: tweak RE_RAYTRACE_EPSILON (correction value used
Bastien Montagne [Mon, 21 Apr 2014 18:17:10 +0000 (20:17 +0200)]
Follow up to previous commit: tweak RE_RAYTRACE_EPSILON (correction value used
when checking neighbor faces against shadowing).

6 years agoFix T39735: New auto smooth creates artifacts with flat shaded faces(BI)
Bastien Montagne [Mon, 21 Apr 2014 18:09:20 +0000 (20:09 +0200)]
Fix T39735: New auto smooth creates artifacts with flat shaded faces(BI)

This actually had nothing specific to new split normals, it was an internal limitation
of BI raytracer, which would check against neighbor face shadowing only when they shared
a common vertex, now it also performs checks when both faces have a vertex with a common
"ancestor" (org index).

Note this allows to also fix same issue when using SplitEdges modifier (and potentially
others?), but only when AutoSmooth is enabled (due to some compute/mem overhead, we
do not want to enable this code systematically).

Thanks to Brecht for advices and review!

6 years agoOSX: always create a window in normal state, not fullscreen or iconized …
Jens Verwiebe [Mon, 21 Apr 2014 17:43:10 +0000 (19:43 +0200)]
OSX: always create a window in normal state, not fullscreen or iconized …

6 years agoCycles: shadow function optimization for transparent shadows (CPU only).
Brecht Van Lommel [Sat, 19 Apr 2014 15:02:30 +0000 (17:02 +0200)]
Cycles: shadow function optimization for transparent shadows (CPU only).

Old algorithm:

Raytrace from one transparent surface to the next step by step. To minimize
overhead in cases where we don't need transparent shadows, we first trace a
regular shadow ray. We check if the hit primitive was potentially transparent,
and only in that case start marching. this gives extra ray cast for the cases
were we do want transparency.

New algorithm:

We trace a single ray. If it hits any opaque surface, or more than a given
number of transparent surfaces is hit, then we consider the geometry to be
entirely blocked. If not, all transparent surfaces will be recorded and we
will shade them one by one to determine how much light is blocked. This all
happens in one scene intersection function.

Recording all hits works well in some cases but may be slower in others. If
we have many semi-transparent hairs, one intersection may be faster because
you'd be reinteresecting the same hairs a lot with each step otherwise. If
however there is mostly binary transparency then we may be recording many
unnecessary intersections when one of the first surfaces blocks all light.

We found that this helps quite nicely in some scenes, on koro.blend this can
give a 50% reduction in render time, on the pabellon barcelona scene and a
forest scene with transparent leaves it was 30%. Some other files rendered
maybe 1% or 2% slower, but this seems a reasonable tradeoff.

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

6 years agoCleanup: Remove OpenCL __MULTI_CLOSURE__ sanity check, not needed anymore after 04a10...
Thomas Dinges [Mon, 21 Apr 2014 16:07:43 +0000 (18:07 +0200)]
Cleanup: Remove OpenCL __MULTI_CLOSURE__ sanity check, not needed anymore after 04a10907dc41.

6 years agoFix another shading issue with new split normals (deform modifier after a subsurf...
Bastien Montagne [Mon, 21 Apr 2014 15:56:05 +0000 (17:56 +0200)]
Fix another shading issue with new split normals (deform modifier after a subsurf one).

Just always tag tessellated CDlayers as dirty when we recompute split normals!

Also simplified a bit end of mesh_calc_modifiers.

6 years agoCleanup: Pass PathState as a whole, instead of individual members.
Thomas Dinges [Mon, 21 Apr 2014 15:51:51 +0000 (17:51 +0200)]
Cleanup: Pass PathState as a whole, instead of individual members.

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

6 years agoBMesh Inset: remove hack to store coords in normals
Campbell Barton [Mon, 21 Apr 2014 15:21:54 +0000 (01:21 +1000)]
BMesh Inset: remove hack to store coords in normals

6 years agoGHash, Edgehash: add lookup_default() funcs.
Campbell Barton [Mon, 21 Apr 2014 14:55:30 +0000 (00:55 +1000)]
GHash, Edgehash: add lookup_default() funcs.

Returns a fallback argument when the key isn't found.

6 years agoPBVH: replace ghash with gset for storing unique faces
Campbell Barton [Mon, 21 Apr 2014 14:54:36 +0000 (00:54 +1000)]
PBVH: replace ghash with gset for storing unique faces