Commit Graph

44729 Commits

Author SHA1 Message Date
a217db0d63 Fix T40297: Crash while ripping an edge when autosmooth is activated.
Turned out there was still quite a few cases were indices were set dirty,
but elem_index_dirty was not tagged accordingly (mostly for BM_LOOP,
but a few others as well). So probably this crash was not the only one
hidden here.

Hopefully all possible cases were catched this time!
2014-05-21 22:37:50 +02:00
Dalai Felinto
8d297394ba Bake API: partial fix T40156 (applyRotation issues)
This fixes most of the cases, the only situation not addressed is when
the highpoly object(s) has non-uniform scale.

mul_transposed_mat3_m4_v3() should take care of non-uniform scales so
I'm a bit confused on why it doesn't work. The lowpoly object can have
any transformation, the only issue is if the highpoly object has
non-uniform scale.

Test file of the remaining issue:
https://developer.blender.org/file/info/PHID-FILE-tpw2xgddyzxtpg3e7xzs/

Reference reading:
http://www.unknownroad.com/rtfm/graphics/rt_normals.html
2014-05-21 15:10:57 -03:00
79fe023ec6 Fix T40299, Crash on rendering due to dependency cycles and NULL pointer when using particle duplis. 2014-05-21 19:07:53 +02:00
d88e9fb338 Minor cleanup of previous commit. 2014-05-21 18:52:50 +02:00
b963434f49 Fix T40222 texture painting on mirrored meshes does not apply pixel
bleeding at the symmetry edges.

We need an extra way to detect if faces overlap here. An easy way is to
detect the winding of the faces in UV space. If the winding differs, the
faces will naturally overlap. I have tried a few approaches here such as
choosing an offset point from the middle of the edge for intersection in
both faces of the edge in uv space, but winding is the safest way and
should work with very small faces/dense meshes too.
2014-05-21 18:35:27 +02:00
e07034f8e1 Freestyle: code cleanup: removed old commented lines of code in SilhouetteGeomEngine. 2014-05-22 00:46:25 +09:00
56b67cb2b4 Freestyle: code cleanup - removed very old commented lines of code. 2014-05-22 00:46:25 +09:00
13c92a77d3 Freestyle: Fix for Z normalization in SilhouetteGeomEngine.
The Z component of the projected point in the 2D image space has already been normalized
in GeomUtils::fromWorldToImage().
2014-05-22 00:46:23 +09:00
01ac74e4ad Freestyle: Added utility function SilhouetteGeomEngine::CameraToImage().
TODO: Fix for Z normalization in SilhouetteGeomEngine methods.
2014-05-22 00:46:22 +09:00
27cebb2651 Fix T39711: cycles particle motion blur affected by viewport draw method. 2014-05-21 15:51:37 +02:00
ebbeb082d1 Fix T40271: recalculation of the bone roll does not work correctly.
Check that up_axis is not aligned with bone was wrong in at least two aspects
(not working against negative alignement case, and since ages it seems,
using Z axis when bones are along Y axis...).

Also optimized a bit here, better to have a normalized version of vec_roll_to_mat3(),
since it needs normalized vector anyway, and we have to normalize it for the tests
before calling it anyway (so now, we only do that twice in Transform code, instead
of three times).

And we can perform aling test *before* calling vec_roll_to_mat3!
2014-05-21 15:22:31 +02:00
d203edfc93 Fix T40291: Crash when adding # driver to some fields 2014-05-21 16:33:48 +10:00
38fcc3e14b Fix T40280: sequencer sound strips with an end at a negative time kept playing
The bug was caused by using negative numbers as the end for playing forever (or until the end of the sound is reached) in the library. This was used with speaker objects which have an end of FLT_MAX now instead and the negative number interpretation was removed. I hope this doesn't break anything else.
2014-05-20 23:01:56 +02:00
3bba558944 Fix T40269: Transform Constraint Doesn't Obey World/World Setting (Inherits from Parent instead!)
Revert small part of own rB8714ae09f894, which changed scale setting from absolute to relative
(was good in absolute, but bad because it breaks existing rigs).
2014-05-20 15:21:33 +02:00
c28f2ed489 Fix T40224: Crash moving objects to another layer
Incorrect nonnull attribute was optimizing out NULL check.
2014-05-20 21:41:57 +10:00
9296f0c2fe This reverts commit c998d6d4b5. 2014-05-20 21:35:34 +10:00
c998d6d4b5 Fix T40224: Crash moving objects to another layer
passing NULL to BLI_sprintfN crashed in some cases.
2014-05-20 21:01:02 +10:00
358664a28a Use int for i in hair smoothing function, we check against negative
values below
2014-05-20 10:49:29 +03:00
2191590711 Polyfill: simply re-ordering checks gives ~%15 speedup 2014-05-20 17:21:57 +10:00
e2a9923a6b Fix T40271: Missing redraw for bone editing bone roll
We should have a new notifier for this
2014-05-20 16:20:14 +10:00
f6e774552c Freestyle: Fix for returned references to auto variables. 2014-05-20 15:12:13 +09:00
6c136a69b0 Freestyle: Fix for GetOccludeeF1D returning a one-element list containing None when it is supposed to return an empty list. 2014-05-20 15:12:12 +09:00
cb023ce0fd Fix T34255: Modifier keys ignored when activating windows 2014-05-20 14:21:13 +10:00
71c11dbb02 Fix T40252: Knife snapping ignores axis-constraint 2014-05-20 13:53:52 +10:00
295bc1249a Fix part of T35600: Outliner did not update when renaming armature bone names. 2014-05-19 22:37:35 +02:00
85975be58e Show warning when hiding a proxy bone
It can't be undoe with Ctrl-Z, but Alt-H works just fine.
So instead of breaking someone's workflow let's just add
an info about how to bring bones back.
2014-05-19 16:26:34 +02:00
d9dd29054f Style cleanup 2014-05-20 00:11:16 +10:00
f44e743c72 Fix T40194: cycles deformation motion blur not working with curves + shape keys. 2014-05-19 14:25:08 +02:00
5f05ebc2d9 Fix T40242: 3D view background images incorrectly shown during viewport render.
Now they are shown when they are also visible in other draw modes.
2014-05-19 14:25:08 +02:00
74f77a2956 This reverts commit d1526da787.
If tweaking is done by accident, user better increase threshold in preferences.
2014-05-19 21:34:57 +10:00
3a3b990b2d Workaround T40241: Vertex snapping snaps to wrong place 2014-05-19 19:25:59 +10:00
f8278e5479 Correct ARRAY_SIZE macro and make doxy comments consistent 2014-05-19 18:00:20 +10:00
875aff2a9a Fix T39897: shape keys created while the Relative checkbox is unchecked start out with frame=0
So! First, frame for absolute shape keys: never allow a new key to have the same pos as an
existing one (this does not make sense). This way, the two workflows are possible (create
all keys and then animate ctime, or animate ctime and then create keys where you need them).

Also, fixed UIList for shapekeys, the "absolute" test was wrong, and better to show frame
value, even though not editable, than nothing in case of absolute keys.

And finally, add getter to RNA 'frame' readonly value, so that we output real frame values,
and not dummy internal ones (which are /100) in our API.
2014-05-18 22:05:21 +02:00
d1dde3c981 Fix T40251: Rename of Shape key is not redrawed in Dopesheep. 2014-05-18 20:30:48 +02:00
193e77cc67 Fix T40201: Keyframe edits fail to update the viewport 2014-05-19 00:24:45 +10:00
e8630bdccf Comment unused BLI_rebase_path 2014-05-19 00:00:59 +10:00
2a49bf35f0 Add ARRAY_SIZE macro to check fixed size arrays 2014-05-18 23:51:59 +10:00
a089a86edd Fix BLI_cleanup_path: '.' at the start of a path
On windows "." was replaced with the root directory.
On other systems any path starting with a '.' would be replaced with "/"

This was added for the file selector only,
so better handle this in the file selector (though it looks not to be needed).
2014-05-18 19:03:15 +10:00
003387fab5 Fix T40230: Recursion check when adding objects to groups is incorrect.
rB568f0c7 added a recursion check that is supposed to prevent cyclic
cases where a group includes itself via dupli instancing.

The check function was descending into all groups nested inside the
target group - which works for single level recursion like in the test
case, but does not handle generic recursion. Basically it asked:
"is object X in the group already or in any instanced dupligroup?"

The new check instead asks:
"is group G dupli'd by X or any instanced subgroup thereof?"
which is what we really need to know.
2014-05-17 18:28:30 +02:00
2bbb442fc9 Fix T40236: Undo not pushed in old-school node curve tool button functions. 2014-05-17 16:48:06 +02:00
7a085b4c85 Revised the debug code added in the commit rB4958aff780a3 according to the raised concern. 2014-05-17 17:40:04 +09:00
575d3dd5ba Fix T40231: Crash with matcaps 2014-05-17 14:48:10 +10:00
5ed449dabb Fix mistake in recent patch 2014-05-17 14:36:05 +10:00
92a380d0b2 Minor changes for standalone mathutils 2014-05-17 12:06:29 +10:00
4958aff780 Freestyle: Added a piece of debug code for checking the consistency of face normals.
The code was found helpful while addressing T39669 and might help solving similar
issues related to face normals in the future.
2014-05-17 10:36:39 +09:00
f8554ed61a Fix T39669: Freestyle: Curve with extrude>0 causes warnings in console.
The reported Freestyle warnings were due to wrong normals of filled faces at both ends
of a 2D extruded curve. The problem is detailed in the comment #19 of T39669.

The cause of the bug was an inconsistency in the use of vertex indices between
BKE_mesh_nurbs_displist_to_mdata() and init_render_curve() in the case of
DispList::type equal to DL_INDEX3.

This commit also fixes a related bug that the normals of filled faces were not inverted
when a scale of the curve object is set to a negative value (e.g., the Z scale was -1).

Reviewers: campbellbarton

Reviewed By: campbellbarton

Differential Revision: https://developer.blender.org/D532
2014-05-17 08:51:00 +09:00
1923a8f23a Fix T40223: Setting bevel_factor_mapping_start/end crashes
Patch from Lukas Treyer
2014-05-17 01:01:43 +10:00
04665e2006 Fix T40226: Keep collapse-menu when splitting areas 2014-05-17 00:29:27 +10:00
758bdcd6c2 Fix Bevel bugs T39726 and T39108, bevels with wire edges.
This updates the fix in rB27db75363, which had to be undone
because it broke other bevels.
It also fixes cases where edges went away went doing vertex
bevel on vertices with some wire edges.
2014-05-16 10:28:15 -04:00
3e38be0000 Fix T40202: File selector operators not reported in info view 2014-05-16 21:25:48 +10:00