Revision 9683807 by Joshua Leung September 5, 2015, 12:07 (GMT) |
Fix T45938: Ocean modifier animation not working with NLA action-strip (old depsgraph only) When a modifier was animated by a NLA strip, this animation was not working when using the old depsgraph. This was because the code which checks if a NLA strip affects any modifiers was missing - specifically, it was originally left out as it was thought that it was unlikely that many users would need this, but adding in those checks would have a (slight) negative effect files where there are heaps of NLA strips but modifiers animated this way were absent. The new depsgraph however doesn't suffer from this problem, as these sorts of checks need ot be built into the graph-building stage for everything to work, so these links had already been added. |
Revision b8e0b2d by Campbell Barton September 5, 2015, 07:44 (GMT) |
Math Lib: isect_plane_*_v3 avoid negation Unmeasurable speedup for plane intersection. |
Revision ba188cf by Campbell Barton September 5, 2015, 07:10 (GMT) |
Math Lib: simplify isect_plane_plane_v3 Unlike the 3 plane method, the 2 planes squared cross-product _is_ the determinant. |
Revision ac51e2f by Bastien Montagne September 4, 2015, 20:41 (GMT) |
Fix T46015: normals_split_custom_set_from_vertices doesn't work with zero vectors This was simply broken for vertex case (indexing loop normals with vert indices...). Turns out to be rather verbose to replace on-the-fly zero normals by default ones correctly, and do not want to make a full copy of the given custom normals array, so now this one is editied in place (replacing zero vectors by correct default normals). Don't think this could be a serious issue anyway. |
Revision 83a36b2 by Sergey Sharybin September 4, 2015, 15:06 (GMT) |
Cycles: Fix for wrong optimization of bump node It can't be simply removed in cases when it's connected to input which is different from Normal. This is because the input wouldn't be connected to default Normal geometry input, possibly breaking shading setup. The fix is not really ideal, but should work at least. This fixes skin having too much glossy reflection in the file from T46013. |
Revision 713ce03 by Sergey Sharybin September 4, 2015, 15:06 (GMT) |
Cycles: Fix wrong check for zero-sized triangles Initial idea was to optimize calculation a bit by skipping calculation of actual triangle edges and use vector from ray origin to triangles. In practice this optimization didn't quite work in cases when origin point is too close to the triangle. Let's do 2.76 with a bit more complicated calculation, still looking into exact reasons why watertight intersections fails in certain cases, but actual fix might bit be ready so soon. This fixes wrong eyes on the lady from T46013. |
Revision 65a8070 by Bastien Montagne September 4, 2015, 14:50 (GMT) |
Fix T46010: Bone offset between Rest Pose and Edit mode. That one was hairy... To summarize: * We were setting Bone.head/tail (aka **local** rest location of bone) from EditBone data, using **EditBone's parent computed armature space**. * We use those local head/tail to define Bone's restpose (in `BKE_armature_where_is_bone()`), using **Bone's parent armature space** (aka parent's arm_mat). * Because of bone's roll nightmare, the two above parent's matrices will often not be the same. In an ideal world, this should not affect locations (head/tail), but in real world of float it does - noticeably, in some extreme cases. So! This commit cleans up things a bit (`fix_bonelist_roll()` was already doing much more than just fixing roll mess, has been renamed to `armature_finalize_restpose()`), and ensures we do use (final!) parent's arm_mat local space to compute children's local head/tail as well. This allows us to avoid too much imprecision here. Checked the patch also with a complete Victor's rig from Gooseberry, seems to have no nasty side effects - fingers crossed! |
Revision c882cbd by Bastien Montagne September 4, 2015, 14:50 (GMT) |
Cleanup: Better to assert over bad condition (which shall never happen anyway), than just return with un-initialized mat... |
Revision 39752eb by Campbell Barton September 4, 2015, 12:29 (GMT) |
Fix for isect_tri_tri_epsilon_v3 w/ small faces tris with ~1e-05 edge lengths would fail |
Revision 1d71ad2 by Campbell Barton September 4, 2015, 12:13 (GMT) |
Math Lib: Use plane intersect from graphics-gems |
Revision d0e7ba3 by Campbell Barton September 4, 2015, 12:06 (GMT) |
Math Lib: avoid sqrt w/ triangle intersection |
Revision 2ea96df by Campbell Barton September 4, 2015, 12:06 (GMT) |
Correct own error in line_point_factor Passing zero epsilon allowed divide by zero. |
Revision f79c748 by Bastien Montagne September 4, 2015, 10:26 (GMT) |
Armature: Cheap edit-to-object mode speedup. `fix_bonelist_roll()` is already recursive, and was calling recursive `BKE_armature_where_is_bone()` twice! Changed `BKE_armature_where_is_bone()` to controll whether we recurse over children or not. With full Victor's rig, we gain 16% in `ED_armature_from_edit()` (from 31ms to 26ms). With a dummy test-case 100 bones chain, we gain 80% in `ED_armature_from_edit()` (from 1.25ms to 0.25ms). Not crucial, but still worth it. ;) |
Revision 52fda9b by Sergey Sharybin September 4, 2015, 10:19 (GMT) |
Fix T45019: Cycles wrong render of motion blur mesh The issue was caused by wrong detection whether number of verticies changed or not. Basically, it wasn't working correct in cases when number of verticies is increasing compared to the current frame. |
Revision 3e63c60 by Campbell Barton September 4, 2015, 04:40 (GMT) |
Partial revert of warning cleanup These warnings are false-positives |
Revision ef629e0 by Julian Eisel September 3, 2015, 23:04 (GMT) |
Quiet warnings We had too many warnings lately... was awaiting that someone would kill them - didn't happen -> goes to my commit ratio! :P |
Revision c3fef00 by Campbell Barton September 3, 2015, 18:23 (GMT) |
View-Selected: use custom bones boundbox Support using custom pose-bone transform and object when calculating view bounds. |
Revision 54ad576 by Campbell Barton September 3, 2015, 15:59 (GMT) |
Small tri intersect fails when not normalized Logic was ok, but would run into precision issues. |
Revision e709da3 by Campbell Barton September 3, 2015, 15:11 (GMT) |
Cleanup: minor RST edits |
Revision 10c93a5 by Howard Trickey September 3, 2015, 14:42 (GMT) |
Check for no-op edge separates to quiet asserts when inset individual. This causes no change in behavior, since code was alreadying doing a no-op in bmesh_edge_separate if the edge is a boundary. But it tripped an assert, annoying in debug builds. We want to leave assert in bmesh_edge_separate in case callers expect there to be separate loops after this always. So putting test in caller. (Same worry about bmesh_urmv_loop? I checked callers and they appear OK to me - they deal with the no-op return.) |
|
|
|


Master Commits
MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021