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
Joshua Leung [Wed, 23 Apr 2014 04:46:13 +0000 (16:46 +1200)]
Whitespace
Joshua Leung [Wed, 23 Apr 2014 04:41:30 +0000 (16:41 +1200)]
Applying same fix for snapping keyframes in Graph Editor
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.
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().
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.
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.
Brecht Van Lommel [Tue, 22 Apr 2014 23:10:26 +0000 (01:10 +0200)]
Cycles: some tiny hair intersection optimizations that help maybe 2%.
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.
Campbell Barton [Tue, 22 Apr 2014 18:23:54 +0000 (04:23 +1000)]
Fix T39429: Project paint error with UV bleed
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..
Campbell Barton [Tue, 22 Apr 2014 16:09:50 +0000 (02:09 +1000)]
Math Lib: move barycentric_weights_v2_persp to into math_geom
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.
Campbell Barton [Tue, 22 Apr 2014 14:49:28 +0000 (00:49 +1000)]
BMesh: minor optimizations for shapekey lookups on conversion
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.
Campbell Barton [Tue, 22 Apr 2014 12:55:10 +0000 (22:55 +1000)]
Code cleanup: use const for rna
Campbell Barton [Tue, 22 Apr 2014 11:59:43 +0000 (21:59 +1000)]
View3d: api naming, for setting the view matrix.
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
Sergey Sharybin [Tue, 22 Apr 2014 08:19:54 +0000 (14:19 +0600)]
Correction to O_NOFOLLOW commit to make it more portable
Bastien Montagne [Tue, 22 Apr 2014 08:08:39 +0000 (10:08 +0200)]
install_deps: update to py3.4 and numpy1.8.
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
Sergey Sharybin [Tue, 22 Apr 2014 07:02:39 +0000 (13:02 +0600)]
Corrected the comment
Sergey Sharybin [Tue, 22 Apr 2014 07:00:35 +0000 (13:00 +0600)]
Switch buildbot to Python-3.4.0
Campbell Barton [Tue, 22 Apr 2014 06:40:17 +0000 (16:40 +1000)]
BLI_open: check returned value for `-1` instead of `< 0`
Tamito Kajiyama [Tue, 22 Apr 2014 00:39:21 +0000 (09:39 +0900)]
Code cleanup: replace int with boolean.
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.
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).
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!
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 …
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
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.
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.
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
Campbell Barton [Mon, 21 Apr 2014 15:21:54 +0000 (01:21 +1000)]
BMesh Inset: remove hack to store coords in normals
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.
Campbell Barton [Mon, 21 Apr 2014 14:54:36 +0000 (00:54 +1000)]
PBVH: replace ghash with gset for storing unique faces
Brecht Van Lommel [Mon, 21 Apr 2014 15:17:24 +0000 (17:17 +0200)]
Fix T39793: cycles SVM shading bug with tangled up nodes after recent optimization.
Andrea Weikert [Mon, 21 Apr 2014 14:49:35 +0000 (16:49 +0200)]
Basic support for UNC paths on Windows
Differential Revision: https://developer.blender.org/D298
Allows users on Windows to enter UNC paths in the filebrowser and to link to .blend files on a UNC path. Functionality is limited still, we can't browse the network yet and have no support to check user rights so far.
What works:
- enter an UNC path in the file browser manually or via copy/paste
- navigation within the UNC share subfolders
- link to a file on a UNC share
What does not (yet) work:
- browse the network for computers and shares
- browse to a folder that requires entering user credentials
Contributors:
Rob McKay - original patch
Campbell Barton - style fixes
Reviewers:
Campbell Barton, Brecht van Lommel
Thomas Dinges [Mon, 21 Apr 2014 14:31:46 +0000 (16:31 +0200)]
Fix GLSL after
7765b73f6d20 (Transparent Depth).
Brecht Van Lommel [Mon, 21 Apr 2014 13:53:20 +0000 (15:53 +0200)]
Code cleanup: remove old closure sampling code Cycles.
This was the original code to get things working on old GPUs, but now it is no
longer in use and various features in fact depend on this to work correctly to
the point that enabling this code is too buggy to be useful.
Carlo Andreacchio [Mon, 21 Apr 2014 12:20:29 +0000 (14:20 +0200)]
Cycles: add Transparent Depth output to Light Path node.
This can for example be useful if you want to manually terminate the path at
some point and use a color other than black.
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D454
John Pavel [Mon, 21 Apr 2014 12:06:29 +0000 (14:06 +0200)]
Code cleanup: add some asserts and fix a typo in BVH build.
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D467
Kevin Dietrich [Mon, 21 Apr 2014 11:15:45 +0000 (13:15 +0200)]
Fix new Cycles UV Map node not working correct for bump mapping.
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D475
Campbell Barton [Mon, 21 Apr 2014 09:26:37 +0000 (19:26 +1000)]
Object drawing: test the flag, without comparing the value
Bastien Montagne [Mon, 21 Apr 2014 08:20:44 +0000 (10:20 +0200)]
Split Normals: more fix for EditMode shading and modifiers (subsurf special case, this time).
CCGDM did not generate a valid tessellated loop normals CD layer...
Campbell Barton [Mon, 21 Apr 2014 08:46:52 +0000 (18:46 +1000)]
Code cleanup: view2d api naming
Sergey Sharybin [Mon, 21 Apr 2014 08:26:06 +0000 (14:26 +0600)]
Libmv: optimization of PearsonProductMomentCorrelation
Pass the arrays by reference rather than by value,
should give some percent of speedup.
Also don't pass the dimensions to the function but
get them from the images themselves.
Hopefully this will give some %% of tracker speedup.
Bastien Montagne [Mon, 21 Apr 2014 08:18:51 +0000 (10:18 +0200)]
Fix player build.
Campbell Barton [Mon, 21 Apr 2014 08:11:47 +0000 (18:11 +1000)]
View2d: check UI_view2d_view_to_region_clip succeeds before using the result
Campbell Barton [Mon, 21 Apr 2014 06:47:16 +0000 (16:47 +1000)]
View2d: API Cleanup for view<->region conversion
View2D had some inconsistencies making it error prone in some cases.
- Inconstant checking for NULL x/y args.
Disallow NULL args for x/y destination pointers, instead add:
- UI_view2d_region_to_view_x/y
- UI_view2d_view_to_region_x/y
- '_no_clip' suffix wasn't always used for non-clipping conversion,
switch it around and use a '_clip' suffix for all funcs that clip.
- UI_view2d_text_cache_add now clips before adding cache.
- '_clip' funcs return a bool to quickly check if its in the view.
- add conversion for rectangles, since this is a common task:
- UI_view2d_view_to_region_rcti
- UI_view2d_region_to_view_rctf
Bastien Montagne [Mon, 21 Apr 2014 06:30:20 +0000 (08:30 +0200)]
Fix T39818: Strips from file with long filename broke auto-naming - animation can't be apply on it.
Campbell Barton [Mon, 21 Apr 2014 04:30:13 +0000 (14:30 +1000)]
Fix for UI_view2d_to_region_float (was ignoring x,y args)
use this for grease pencil stroke conversion to avoid float->int->float conversion.
Campbell Barton [Mon, 21 Apr 2014 03:10:38 +0000 (13:10 +1000)]
Skin mark/clear: replace GHash with GSet
Bastien Montagne [Sun, 20 Apr 2014 21:12:18 +0000 (23:12 +0200)]
Fix stupid typo that broke split normal shading in edit mode, when there was some deform modifiers.
Campbell Barton [Sun, 20 Apr 2014 18:00:35 +0000 (04:00 +1000)]
Fix incorrect ghash free
Campbell Barton [Sun, 20 Apr 2014 16:50:07 +0000 (02:50 +1000)]
GHash, EdgeHash: hint on unlikely branch
also avoid searching buckets for empty hashes
Campbell Barton [Sun, 20 Apr 2014 16:48:39 +0000 (02:48 +1000)]
Correct cast from recent bool changes
Campbell Barton [Sun, 20 Apr 2014 15:54:52 +0000 (01:54 +1000)]
Code cleanup: correct abs use
also minor cleanup to rotation code
Campbell Barton [Sun, 20 Apr 2014 12:05:05 +0000 (22:05 +1000)]
Code cleanup: style
Brecht Van Lommel [Sun, 20 Apr 2014 12:36:09 +0000 (14:36 +0200)]
Nodes: make default group nodes slighly wider, to match other node width defaults.
Brecht Van Lommel [Sun, 20 Apr 2014 12:33:27 +0000 (14:33 +0200)]
Fix error making datablock with fake user local, the user count would be wrong afterwards.
Campbell Barton [Sun, 20 Apr 2014 10:56:09 +0000 (20:56 +1000)]
Math Lib: faster version of rotation_between_vecs_to_mat3
Use axis/angle calculation but avoid calls to sin/cos
Mitchell Stokes [Sat, 19 Apr 2014 21:51:29 +0000 (14:51 -0700)]
BGE: Fixing memory leaks when deactivating Sensors, Controllers, or actuators.
Found by Coverity and confirmed with Valgrind.
Campbell Barton [Sat, 19 Apr 2014 12:12:50 +0000 (22:12 +1000)]
Math Lib: add shell_v3v3_normalized_to_dist and v2 version
bypass angle calculation to avoids (asin, sqrt, cos).
Jens Verwiebe [Sat, 19 Apr 2014 12:10:49 +0000 (14:10 +0200)]
Bullet: making bullet friction workaround more furureproof by using the __apple_build_version__ macro, TODO: check if problem persists with newer clang
Campbell Barton [Sat, 19 Apr 2014 09:48:07 +0000 (19:48 +1000)]
Minor change to recent commit (avoid transpose)
Campbell Barton [Sat, 19 Apr 2014 05:50:41 +0000 (15:50 +1000)]
Math Lib: minor optimization to barycentric_transform
replace rotation_between_vecs_to_quat with axis_dominant_v3_to_m3.
Campbell Barton [Sat, 19 Apr 2014 05:36:47 +0000 (15:36 +1000)]
Math Lib: add rotation_between_vecs_to_mat3
- behaves like rotation_between_vecs_to_quat
- avoids calling sin,cos calls (approx 1.6x faster).
Campbell Barton [Sat, 19 Apr 2014 04:09:55 +0000 (14:09 +1000)]
Math Lib: minor optimization for axis_angle_normalized_to_mat3
Campbell Barton [Fri, 18 Apr 2014 13:20:51 +0000 (23:20 +1000)]
Disable quicktime when in cmake's lite configuration
Brecht Van Lommel [Fri, 18 Apr 2014 11:40:30 +0000 (13:40 +0200)]
Cycles: SVM optimization for mix shaders, to skip more code when the mix weight
for one of the input shaders is zero.
This gives about 5% speedup for koro_final.blend. In general this is important
so you can design shaders that run faster for shadows, diffuse bounces, etc, for
example by skipping procedural textures or even using a single fixed color.
Brecht Van Lommel [Thu, 17 Apr 2014 12:49:57 +0000 (14:49 +0200)]
Fix cycles using acosf in panorama render when it should use safe_acosf.
Campbell Barton [Fri, 18 Apr 2014 10:44:50 +0000 (20:44 +1000)]
Change Vector.slerp to accept nonunit vectors
Campbell Barton [Fri, 18 Apr 2014 10:32:50 +0000 (20:32 +1000)]
CMake was missing header
Tamito Kajiyama [Fri, 18 Apr 2014 06:11:20 +0000 (15:11 +0900)]
Freestyle: minor changes to the UI layout of line style options.
Toggle buttons are now placed to the left of those labels separating sets of line style
options, so as to save some space (in line with the new UI elements added in the
commit
f60a66f41784de388a01c4c882c969730d675375).
Tamito Kajiyama [Fri, 18 Apr 2014 06:01:12 +0000 (15:01 +0900)]
Code cleanup: de-duplicated includes.
Tamito Kajiyama [Fri, 18 Apr 2014 05:59:02 +0000 (14:59 +0900)]
Freestyle: New options for sorting to arrange the stacking order of lines.
Line styles now have a set of new options for rearranging the stacking order of lines.
This gives artists more control to determine which lines should be drawn on top of others.
Two available sort keys are the distance from camera and curvilinear 2D length.
Since the distance of a line from camera may vary over vertices, another option called
integration type is used to compute the sort key for a line from the values computed at
individual vertices. Available integration types are MEAN, MIN, MAX, FIRST and LAST
(see the tool tips for more detail).
Tamito Kajiyama [Fri, 18 Apr 2014 04:57:10 +0000 (13:57 +0900)]
Freestyle: Added logical operators for binary predicates for 1D elements.
The implemented operators are:
freestyle.predicates.AndBP1D
freestyle.predicates.NotBP1D
freestyle.predicates.OrBP1D
Tamito Kajiyama [Fri, 18 Apr 2014 00:25:36 +0000 (09:25 +0900)]
Quite compiler warnings.
IRIE Shinsuke [Thu, 17 Apr 2014 23:48:03 +0000 (08:48 +0900)]
Freestyle: Fix ImportError in anisotropic_diffusion.py
Thomas Dinges [Thu, 17 Apr 2014 21:16:12 +0000 (23:16 +0200)]
Cycles Standalone: Use progressive refine in background mode too.
This is only a workaround, with tiled rendering the image output has a wrong aspect ratio. (squashed image)
Antony Riakiotakis [Thu, 17 Apr 2014 21:11:05 +0000 (00:11 +0300)]
Dyntopo: Solve issue with test file by Jens.
Seems like custom data indices can be mangled when many layers are
present in the mesh, so use more strict calculation of offset (copied
over from BM_CD_LAYER_ID).
I was under the impression that all custom data would be deleted on
entering dyntopo, it seems this is not the case though.
Antony Riakiotakis [Thu, 17 Apr 2014 17:53:20 +0000 (20:53 +0300)]
Make sure we invalidate the node ID layer each time the PBVH is reset.
It makes code more tidy (avoids having to call invalidation on a myriad
places). Also makes sure other invalidation cases (some mesh change,
e.g.) work as expected.
Sergey Sharybin [Thu, 17 Apr 2014 17:31:57 +0000 (23:31 +0600)]
Re-bundle Libmv to be sure it's all fine
Sergey Sharybin [Thu, 17 Apr 2014 16:36:07 +0000 (22:36 +0600)]
Fix for
771a9dd: libmv build files are automatically generated
This means if one makes change to either SConscript or CMakeLists.txt
there he MUST update bundle.sh.
Also made it so *.cc files from intern/libmv are matching which would
make it easier to add more .cc files there if needed.
And one more thing is removing 'simple_pipeline/distortion_models.cc'
which doesn't match any of the files.
Tamito Kajiyama [Thu, 17 Apr 2014 16:24:11 +0000 (01:24 +0900)]
Revised freestyle.predicates.pyZBP1D so that the constructor accepts an integration type.
Bastien Montagne [Thu, 17 Apr 2014 14:22:25 +0000 (16:22 +0200)]
BI: cleanup in autosmooth area.
Antony Riakiotakis [Thu, 17 Apr 2014 16:12:05 +0000 (19:12 +0300)]
Optimize and symmetrize operators missed reset of node layer.
Antony Riakiotakis [Thu, 17 Apr 2014 16:02:55 +0000 (19:02 +0300)]
Refactor to Dyntopo node customdata commit.
Don't use a dedicated node layer but use temporary int layer instead.
Works like a charm as long as we are careful resetting the layer when
needed (after pbvh clearing and always after bmesh has been filled in
undo)
Tip by Campbell, thanks!
Antony Riakiotakis [Thu, 17 Apr 2014 15:55:53 +0000 (18:55 +0300)]
Recreating a bmesh log did not account for modified faces.
It shouldn't create issues in practice because modified face ids should
have been reclaimed from an added face on a previous entry, but add for
completeness.
Jens Verwiebe [Thu, 17 Apr 2014 15:00:29 +0000 (17:00 +0200)]
Lbmv: fix scons compile after
ed2ddc9
Campbell Barton [Thu, 17 Apr 2014 12:54:10 +0000 (22:54 +1000)]
View3D: use smoothview for localview switching
Campbell Barton [Thu, 17 Apr 2014 11:14:34 +0000 (21:14 +1000)]
Code cleanup: use const for array args
Campbell Barton [Thu, 17 Apr 2014 10:38:21 +0000 (20:38 +1000)]
View3D: no need to mask mask out localview for each object
Antony Riakiotakis [Thu, 17 Apr 2014 13:03:14 +0000 (16:03 +0300)]
Add missing node update in dyntopo flood fill.
Antony Riakiotakis [Thu, 17 Apr 2014 12:58:40 +0000 (15:58 +0300)]
Fix T39765 crash on text with generative modifiers.
Antony Riakiotakis [Thu, 17 Apr 2014 12:53:11 +0000 (15:53 +0300)]
Fix compilation issue.
Bastien Montagne [Thu, 17 Apr 2014 12:50:06 +0000 (14:50 +0200)]
Fix T39771: Armature Tools and Options Panel appears in other TABs.
Bastien Montagne [Thu, 17 Apr 2014 12:39:13 +0000 (14:39 +0200)]
Fix another Freestyle building glitch.
Sergey Sharybin [Thu, 17 Apr 2014 12:46:19 +0000 (18:46 +0600)]
Attempt to fix one more issue with Freestyle compilation