Luca Rood [Sat, 18 Feb 2017 06:10:53 +0000 (18 04:10 -0200)]
Fix typo and change `.enabled` to `.active`
Luca Rood [Tue, 14 Feb 2017 18:43:15 +0000 (14 16:43 -0200)]
Use parenthesis for bit shifts
Luca Rood [Tue, 14 Feb 2017 18:41:53 +0000 (14 16:41 -0200)]
Remove unused `weight_components`
Luca Rood [Tue, 14 Feb 2017 18:33:24 +0000 (14 16:33 -0200)]
Use poll callback to disable bind operator instead of Python
Luca Rood [Mon, 6 Feb 2017 03:22:13 +0000 (6 01:22 -0200)]
icon
Luca Rood [Wed, 25 Jan 2017 05:59:20 +0000 (25 03:59 -0200)]
Review: Multithread deform code
Luca Rood [Wed, 25 Jan 2017 05:27:07 +0000 (25 03:27 -0200)]
Review: Cleanup
Luca Rood [Wed, 25 Jan 2017 05:24:51 +0000 (25 03:24 -0200)]
Review: Add infinite weight flags enum
Luca Rood [Wed, 25 Jan 2017 05:17:25 +0000 (25 03:17 -0200)]
Review: Move stuff to helper func and more cleanup
Luca Rood [Wed, 25 Jan 2017 04:56:25 +0000 (25 02:56 -0200)]
Review: Optimize numpoly calculation
Luca Rood [Wed, 25 Jan 2017 04:28:32 +0000 (25 02:28 -0200)]
Review: Join allocations and some bpoly refactor
Luca Rood [Tue, 24 Jan 2017 20:47:38 +0000 (24 18:47 -0200)]
Review: Combine allocations and minor cleanup
Luca Rood [Tue, 24 Jan 2017 19:58:54 +0000 (24 17:58 -0200)]
Review: Report errors in UI and some more cleanup
Luca Rood [Mon, 23 Jan 2017 23:12:12 +0000 (23 21:12 -0200)]
Review: Fix depsgraph relation
Luca Rood [Mon, 23 Jan 2017 22:56:19 +0000 (23 20:56 -0200)]
Review: Fix indentations and use MEM_SAFE_FREE
Luca Rood [Mon, 23 Jan 2017 21:46:39 +0000 (23 19:46 -0200)]
Review: Replace weight_components with individual variables
Luca Rood [Mon, 23 Jan 2017 21:36:20 +0000 (23 19:36 -0200)]
Review: More cleanup...
Luca Rood [Mon, 23 Jan 2017 20:43:11 +0000 (23 18:43 -0200)]
Review: Inline loop indices
Also fixed endian switch sign, and UI Python thingy...
Luca Rood [Sun, 15 Jan 2017 18:52:01 +0000 (15 16:52 -0200)]
General cleanup (unsigned stuff and loop counter inlining)
Luca Rood [Sun, 15 Jan 2017 06:36:47 +0000 (15 04:36 -0200)]
Remove warnings
Luca Rood [Sun, 15 Jan 2017 00:45:17 +0000 (14 22:45 -0200)]
Fix silly mistake in nearestVert
Luca Rood [Sat, 14 Jan 2017 03:49:52 +0000 (14 01:49 -0200)]
Change angle function calls in sdef
Luca Rood [Sat, 14 Jan 2017 02:19:06 +0000 (14 00:19 -0200)]
Change angle function call in 3d to 2d mapping function
Luca Rood [Wed, 11 Jan 2017 17:39:20 +0000 (11 15:39 -0200)]
Split interp_weights_face_v3 into specific functions for tris and quads
Luca Rood [Wed, 11 Jan 2017 16:49:12 +0000 (11 14:49 -0200)]
Remove custom weight interp func in favor of Blender's built-in implementation
Luca Rood [Wed, 11 Jan 2017 14:57:45 +0000 (11 12:57 -0200)]
Fix VS 2015 issue (change isnanf to isnan)
Luca Rood [Wed, 11 Jan 2017 05:57:25 +0000 (11 03:57 -0200)]
Fix 2d mapping function's name
Luca Rood [Tue, 10 Jan 2017 19:46:31 +0000 (10 17:46 -0200)]
Replace "cent" functions from math_geom with "mid" ones from math_vector
Luca Rood [Tue, 10 Jan 2017 18:30:52 +0000 (10 16:30 -0200)]
Constify some stuff (for clarity and correctness)
Luca Rood [Tue, 3 Jan 2017 22:01:33 +0000 (3 20:01 -0200)]
Silly const mistake (missed in refactor...)
Luca Rood [Sat, 10 Dec 2016 05:45:41 +0000 (10 03:45 -0200)]
Implement target poly influence interpolation
Luca Rood [Thu, 22 Dec 2016 04:13:03 +0000 (22 02:13 -0200)]
Add 3d to 2d plane mapping functions to math lib
Luca Rood [Thu, 22 Dec 2016 04:11:59 +0000 (22 02:11 -0200)]
Fix out of bounds memory access in interp_weights_face_v3
interp_weights_face_v3 required a length four array for weights even when
calculating weights for a tri, otherwise, it would access unkown memory.
This fix allows a weight array of size three to be passed when only
calculating tri weights.
Luca Rood [Sun, 27 Nov 2016 02:47:23 +0000 (27 00:47 -0200)]
Initial Surface Deform Modifier implementation
Luca Rood [Sun, 27 Nov 2016 02:44:48 +0000 (27 00:44 -0200)]
Add cent_poly_v3 function
Luca Rood [Fri, 25 Nov 2016 16:46:11 +0000 (25 14:46 -0200)]
Add is_poly_convex_v3 function
Luca Rood [Wed, 23 Nov 2016 19:19:03 +0000 (23 17:19 -0200)]
Fix (unreported) looptri array not being recalculated in ccgDM and emDM
In ccgDM and emDM, looptri array recalculation was being handled
directly by `*DM_getLoopTriArray` (`getLoopTriArray` callback), while
`*DM_recalcLoopTri` (`recalcLoopTri` callback) was doing nothing.
This results in the array not being recalculated when other functions
that depend on the array data are called. These functions, such as
`getNumLoopTris`, call `recalcLoopTri` to ensure the data is up to date,
but in the case of CCGDerivedMesh that was doing nothing.
This moves all the recalculation code to `ccgDM_recalcLoopTri` and makes
`ccgDM_getLoopTriArray` call that.
Reviewed By: mont29
Differential Revision: https://developer.blender.org/D2375
Martijn Berger [Thu, 24 Nov 2016 12:43:29 +0000 (24 13:43 +0100)]
Remove unused vector icons from RNA
Campbell Barton [Thu, 24 Nov 2016 00:14:45 +0000 (24 11:14 +1100)]
Fix prefs UI when built w/o Cycles
Sergey Sharybin [Wed, 23 Nov 2016 10:33:09 +0000 (23 11:33 +0100)]
Fix T50100: Cycles SeparateRGBNode Red socket defined wrong
Spotted by David (bocs), thanks!
Sergey Sharybin [Wed, 23 Nov 2016 10:09:05 +0000 (23 11:09 +0100)]
Depsgraph: Fix matrix_world driver source
Reported by Dalai in IRC, thanks!
Sergey Sharybin [Wed, 23 Nov 2016 09:59:54 +0000 (23 10:59 +0100)]
Cycles: Fix strict compilation warnings
Brecht Van Lommel [Tue, 22 Nov 2016 23:03:06 +0000 (23 00:03 +0100)]
Fix Cycles device backwards compatibility error if device type is unavailable.
Brecht Van Lommel [Sun, 20 Nov 2016 19:50:16 +0000 (20 20:50 +0100)]
Fix spelling in Cycles distance culling description.
Luca Rood [Tue, 22 Nov 2016 16:38:43 +0000 (22 14:38 -0200)]
Fix T49718: Wrong "Make Duplicates Real" behavior with "Keep Hierarchy"
All objects were being parented to a single instance of each parent
object, instead of their respective instances, when using dupliverts or
dupligroups.
Behavior was caused by the `persistent_id[0]` (vertex/face id) being
ignored when computing `parent_gh` hash, which caused all instances to
have the same hash, and thus only the first one was included.
Reviewed By: mont29
Differential Revision: https://developer.blender.org/D2370
Sergey Sharybin [Tue, 22 Nov 2016 15:38:37 +0000 (22 16:38 +0100)]
Cycles: Fix strict compilation warnings
Should be no functional changes.
Bastien Montagne [Tue, 22 Nov 2016 15:04:43 +0000 (22 16:04 +0100)]
Install_deps: fix warning message not showing up in case build fails.
Kinda stupid, but big nice warning about need to try clean build if
something fails was only showing in case install_deps completed
successfully... :P
Sergey Sharybin [Tue, 22 Nov 2016 15:03:16 +0000 (22 16:03 +0100)]
Fix T50034: Blender changes processor affinity unauthorized
Sergey Sharybin [Tue, 22 Nov 2016 11:43:59 +0000 (22 12:43 +0100)]
GLog: Workaround compilation error on Hurd
There is syscall headers but no SYS_Write syscall.
Sergey Sharybin [Tue, 22 Nov 2016 11:34:23 +0000 (22 12:34 +0100)]
Cycles: Fix re-definition of some functions on x32 arch
Bastien Montagne [Tue, 22 Nov 2016 11:21:25 +0000 (22 12:21 +0100)]
Fix (unreported) crash when drawing armatures' poses in some cases.
Was affecting armatures' pose drawing code, could try to draw with
non-updated pose, which may contain NULL bone pointers (e.g. after some
data-block management tool execution, like make local, remapping, etc.).
Sergey Sharybin [Tue, 22 Nov 2016 11:11:08 +0000 (22 12:11 +0100)]
Cycles: Another attempt to fix compilation on 32bit Linux
Sergey Sharybin [Tue, 22 Nov 2016 11:05:57 +0000 (22 12:05 +0100)]
Cycles: Attempt to fix 32bit buildbot builds after recent commit
Sergey Sharybin [Thu, 17 Nov 2016 11:13:22 +0000 (17 12:13 +0100)]
Cycles: Implement texture size limit simplify option
Main intention is to give some quick way to control scene's memory
usage by clamping textures which are too big. This is really handy
on the early production stages when you first create really nice
looking hi-res textures and only when it all works and approved
start investing time on optimizing your scene.
This is a new option in Scene Simplify panel and it acts as
following: when texture size is bigger than the given value it'll
be scaled down by half for until it fits into given limit.
There are various possible improvements, such as:
- Use threaded scaling using our own task manager.
This is actually one of the main reasons why image resize is
manually-implemented instead of using OIIO's resize. Other
reason here is that API seems limited to construct 3D texture
description easily.
- Vectorization of uchar4/float4/half4 textures.
- Use something smarter than box filter.
Was playing with some other filters, but not sure they are
really better: they kind of causes more fuzzy edges.
Even with such a TODOs in the code the option is already quite
useful.
Reviewers: brecht
Reviewed By: brecht
Subscribers: jtheninja, Blendify, gregzaal, venomgfx
Differential Revision: https://developer.blender.org/D2362
Sergey Sharybin [Tue, 22 Nov 2016 10:38:27 +0000 (22 11:38 +0100)]
GPU: Consider latest Gallium driver an official ATI/AMD
This will make triple buffer used by default for such configuration.
Ideally we would switch to triple buffer on all platforms, but let's
do it in 2.8 branch and don't open can of worms in master now.
This should solve issues like T49945.
Sergey Sharybin [Mon, 21 Nov 2016 20:04:48 +0000 (21 21:04 +0100)]
Glog: Fix compilation error on ppc64el
This was fixed in upstream already. Time to re-bundle?
Sergey Sharybin [Mon, 21 Nov 2016 20:03:34 +0000 (21 21:03 +0100)]
CLEW: Workaround compilation error on ppc64el
Something was conflicting here, causing C++ to consider bool as
a __vector(4) bool.
Bastien Montagne [Mon, 21 Nov 2016 19:57:02 +0000 (21 20:57 +0100)]
Partly revert own rBb97c567c1df1e, clear_proxy is actually safe.
This is very confusing, in fact, and rna tooltip was wrong,
BKE_object_make_local_ex actually ensures we never have several proxies
of same object, since it always clears proxy when it has to copy object
to make it local...
What that RNA function is probably missing, though, is same logic as in
BKE_library_make_local to actually remap proxy from old linked object to
new local one.
Bastien Montagne [Mon, 21 Nov 2016 14:19:34 +0000 (21 15:19 +0100)]
Fix two very bad issues in new ID.make_local RNA function.
I) `clear_proxy` parameter was not assigned to parm in RNA define code,
so 'pyfunc optional' flag was set to `new_id` parameter of `user_remap`
func - super ugly!
II) `clear_proxy` parameter itself, when set to False, would allow to
leave .blend file in invalid state (more than one proxy of same object),
this should never, ever be allowed in RNA API imho. Left the PAI
untouched for now, just disabled any effect from this parameter (hence
always clearing proxy when copying).
Bastien Montagne [Mon, 21 Nov 2016 13:26:35 +0000 (21 14:26 +0100)]
Cleanup: get rid of unused `BKE_constraints_relink()`.
Libquery/generic ID remapping code handles this now.
Sergey Sharybin [Mon, 21 Nov 2016 13:36:36 +0000 (21 14:36 +0100)]
Fix T49981: New Depsgraph - When camera is on inactive layer, it does not evaluate constraints
Sergey Sharybin [Mon, 21 Nov 2016 12:32:41 +0000 (21 13:32 +0100)]
Cycles: Attempt to fix compilation error on ppc64el
There is some define conflict between system headers and clew,
so delay include of clew.h as much as possible.]
This is something which needed to be done in the code before
the refactor, hopefully such change will still work.
Sergey Sharybin [Mon, 21 Nov 2016 11:00:09 +0000 (21 12:00 +0100)]
Depsgraph: Fix infinite viewport object update in CYcles render mode
The issue was caused by wrong object re-tag needed to have proper dependnecies
update for OpenSubdiv.
Sergey Sharybin [Mon, 21 Nov 2016 10:05:56 +0000 (21 11:05 +0100)]
Depsgraph: use more explicit parenthesis
Brecht Van Lommel [Sun, 20 Nov 2016 16:46:29 +0000 (20 17:46 +0100)]
Fix Xcode link error, missing definitions in RNA C++ API that other compilers ignored.
Mai Lavelle [Sun, 20 Nov 2016 16:46:43 +0000 (20 11:46 -0500)]
Cycles: Don't shadow loop variable
Brecht Van Lommel [Sat, 19 Nov 2016 00:15:08 +0000 (19 01:15 +0100)]
Cycles: add basic backwards compatibility for device selection, move to System tab.
For the multi-GPU case users still have to reconfigure the devices they want to use.
Based on patch from Lukas Stockner.
Differential Revision: https://developer.blender.org/D2347
Brecht Van Lommel [Sat, 12 Nov 2016 23:45:16 +0000 (13 00:45 +0100)]
Cycles: refactor culling code into utility class.
Carlo Andreacchio [Sat, 12 Nov 2016 23:16:50 +0000 (13 00:16 +0100)]
Cycles: distance culling for objects.
This can be used together with camera culling to keep nearby objects visible in
reflections, using a minimum distance within which objects are visible. It is
also useful to cull small objects far from the camera.
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D2332
Campbell Barton [Sat, 19 Nov 2016 22:11:26 +0000 (20 09:11 +1100)]
Cleanup: harmless mistake in rangetree
Campbell Barton [Sat, 19 Nov 2016 21:58:41 +0000 (20 08:58 +1100)]
GHOST/X11: Incorrect WM_STATE access
This worked by accident because of struct padding,
treat state as a CARD32 as documented.
Matches wine-x11 usage.
Antonioya [Sat, 19 Nov 2016 21:41:37 +0000 (19 22:41 +0100)]
Fix T50081: Grease pencil parented rotation problem
When the parent object matrix change after the layer was parented, the
inverse matrix for strokes must be updated when editing strokes or the
transformations will be wrong.
Luca Rood [Sat, 19 Nov 2016 18:18:10 +0000 (19 19:18 +0100)]
Fix T50078: Vertex Groups not copied over when making proxy.
Reviewers: mont29
Reviewed By: mont29
Differential Revision: https://developer.blender.org/D2368
Bastien Montagne [Sat, 19 Nov 2016 11:20:29 +0000 (19 12:20 +0100)]
Fix T49991: reloading librairies doesn't update node groups.
We need to check node tree links are still valid, after we remapped
some NodeGroup.
Note: In fact, we have to run that for *all* ID types, since nodes may
use any kind of data-block (in theory)... :/
Bastien Montagne [Sat, 19 Nov 2016 11:18:32 +0000 (19 12:18 +0100)]
Fix NodeGroup generic verify function crashing if node's ID pointer is NULL.
Another nice crasher - in this case, we just want to nuke all sockets...
Related to T49991.
Bastien Montagne [Sat, 19 Nov 2016 11:16:14 +0000 (19 12:16 +0100)]
Fix (unreported) nodeRemoveAllSockets() not clearing inputs/outputs sockets lists.
Nice crasher (though seems to not be much used so far)!
Related to T49991.
Bastien Montagne [Fri, 18 Nov 2016 21:41:56 +0000 (18 22:41 +0100)]
Fix forward-compat Nodes write code being executed also for undo steps writing.
Forward compatibility code should never, ever be run during undo saving.
Note: related to T49991 (but does not fix it either, crash now happens
when doing a real file save...).
Bastien Montagne [Fri, 18 Nov 2016 21:36:52 +0000 (18 22:36 +0100)]
Fix Node space ID remap callback not handling node trees.
Yep. Kinda ridiculous, but forgot to handle the very node trees
data-blocks in that editor!
Related (but not fixing) to T49991.
Bastien Montagne [Fri, 18 Nov 2016 21:34:04 +0000 (18 22:34 +0100)]
Fix T50071: Radience HDR fomat does not support alpha at all.
Campbell Barton [Fri, 18 Nov 2016 19:57:55 +0000 (19 06:57 +1100)]
Fix UV layer bug in object_utils.object_data_add()
Adding a torus in edit-mode, with 'Generate UVs'
for example would either create another UV layer with the default name or
switch to the default UV layer name if it exists.
Now use the existing UV layer if present.
Campbell Barton [Fri, 18 Nov 2016 19:57:13 +0000 (19 06:57 +1100)]
Add Torus: avoid excessive attr access
Campbell Barton [Fri, 18 Nov 2016 19:26:25 +0000 (19 06:26 +1100)]
BMesh: invalid return from BM_mesh_validate
Returned value was always false, even for valid meshes,
note that this is a debug-only function.
Also set internal-tag cleared.
Bastien Montagne [Fri, 18 Nov 2016 17:46:10 +0000 (18 18:46 +0100)]
Minor debug-report tweak to autosave code.
Print in cosole a warning when we skip autosave due to runnning modal op.
Related to T49974.
Dalai Felinto [Fri, 18 Nov 2016 17:23:45 +0000 (18 18:23 +0100)]
Cycles: Different noise seed for stereoscopic rendering (Fix #T50024)
Patch by Sergey Sharybin.
Sergey Sharybin [Fri, 18 Nov 2016 16:47:17 +0000 (18 17:47 +0100)]
Depsgraph: Fix residue of debug-only code
Bastien Montagne [Fri, 18 Nov 2016 14:49:41 +0000 (18 15:49 +0100)]
Fix T50035: Minor interface bug: UV/ImageEditor - Paint Mode - Fill Brush
Patch by @LucaRood, added some cleanup of DRAW/FILL conditions in this
code too...
Bastien Montagne [Fri, 18 Nov 2016 14:32:50 +0000 (18 15:32 +0100)]
Fix (unreported) bad handling of brush's fill threshold value.
'1' threshold value would only allow to access a third of the basic
'color space' (from black to white, from 0.0 to 1.0 component values),
when you expect it to access the whole range.
Unfortunately, this needs a subversion bump to allow already defined
brushes to keep exact same behavior!
Also, did not change default value (0.2) for new brushes, think here
keeping current one makes more sense.
Thanks to @LucaRood for confirming the issue.
Bastien Montagne [Fri, 18 Nov 2016 14:14:22 +0000 (18 15:14 +0100)]
Fix T50052: bpy.utils.unregister_module doesn't unregister classes of submodules in reload scenario.
reload case would clear TypeMap before unregistering addons, which made
all calls to unregister_module() to do absolutely nothing.
Julian Eisel [Fri, 18 Nov 2016 12:37:04 +0000 (18 13:37 +0100)]
Fix T50063: Editing driver's expression eliminates "Zero" number
Disables trimming of trailing zeros in case button contains an expression.
Dalai Felinto [Fri, 18 Nov 2016 11:37:39 +0000 (18 12:37 +0100)]
Implement multi-view stereo support for image empties
Empty images were implemented to expand (and eventually replace)
the background images functionalities. If we are ever to drop
background images "image empties" should support stereo/multi-view as well.
Bastien Montagne [Fri, 18 Nov 2016 11:03:12 +0000 (18 12:03 +0100)]
Fix potential NULL dereference in mesh sequence cache modifier.
Reported by coverity.
Bastien Montagne [Fri, 18 Nov 2016 10:55:28 +0000 (18 11:55 +0100)]
Fix copy/paste typo in new depsgraph object geometry builder (found by coverity).
Campbell Barton [Thu, 17 Nov 2016 18:55:37 +0000 (18 05:55 +1100)]
BMesh: avoid using temp array for face-area
Campbell Barton [Tue, 15 Nov 2016 16:22:49 +0000 (16 03:22 +1100)]
BMesh: minor cleanup
Comment & don't use dummy pointer.
Campbell Barton [Thu, 17 Nov 2016 19:08:51 +0000 (18 06:08 +1100)]
Cleanup: redundant index loop for monkey-create
Also rename face vars (the faces aren't temp),
and quiet old-style-definition warning.
Sergey Sharybin [Thu, 17 Nov 2016 15:37:25 +0000 (17 16:37 +0100)]
Depsgrpah: Fix missing animation update in movie clips
Sergey Sharybin [Thu, 17 Nov 2016 14:38:03 +0000 (17 15:38 +0100)]
Depsgraph: Move scene builder function to own file
This way it's much easier to grasp what the graph actually contains.
Sergey Sharybin [Thu, 17 Nov 2016 14:29:22 +0000 (17 15:29 +0100)]
Fix T50060: New depsgraph does not update mask animation
Sergey Sharybin [Thu, 17 Nov 2016 14:11:55 +0000 (17 15:11 +0100)]
Depsgraph: Use utility macro to iterate over linked list
This will be compiled into same exact code, just saves us from
doing annoying type casts all over the place.
Sergey Sharybin [Thu, 17 Nov 2016 13:34:46 +0000 (17 14:34 +0100)]
Depsgraph: Move rig builder functions to own files
Those routines are rather big and started to be annoying to have
one big file.
Should be no functional changes.