June 18, 2020, 09:09 (GMT) |
Fix T77957: Height change in Camera Properties column when changing lens type Remove unneeded extra column from perspective type properties. Maniphest Tasks: T77957 Differential Revision: https://developer.blender.org/D8060 |
June 18, 2020, 09:01 (GMT) |
June 18, 2020, 08:48 (GMT) |
Ceres: Update to the latest upstream version Using latest master because of various compilation error fixes. Brings a lot of recent development. From most interesting parts: - New threading model. - Tiny solver. - Compatibility with C++17. |
June 18, 2020, 08:48 (GMT) |
Update C++ standard to C++14 This is an intermittent state to get all dependencies to compile. For example, the latest Ceres is needed to bring C++17 support, but it has bumped minimal requirement to C++14. |
June 18, 2020, 08:37 (GMT) |
Allow interpolation of matrices with negative scale / axis flips The matrix interpolation function `interp_m3_m3m3()` decomposes the matrices into rotation and scale matrices, converts the rotation matrices to quaternions, SLERPs the quaternions, and converts the result back to a matrix. Since quaternions cannot represent axis flips, this results in interpolation problems like described in T77154. Our interpolation function is based on "Matrix Animation and Polar Decomposition", by Ken Shoemake & Tom Duff. The paper states that it produces invalid results when there is an axis flip in the rotation matrix (or negative determinant, or negative scale, those all indicate the same thing). Their solution is to multiply the rotation matrix with `-I`, where `I` is the identity matrix. This is the same as element-wise multiplication with `-1.0f`. My proposed solution is to not only do that with the rotation matrix `R`, but also with the scale matrix `S`. This ensures that the decomposition of `A = R * S` remains valid, while also making it possible to conver the rotation component to a quaternion. There is still an issue when interpolating between matrices with different determinant. As the determinant represents the change in volume when that matrix is applied to an object, interpolating between a negative and a positive matrix will have to go through a zero determinant. In this case the volume collapses to zero. I don't see this as a big issue, though, as without this patch Blender would also produce invalid results anyway. Reviewed By: brecht, sergey Differential Revision: https://developer.blender.org/D8048 |
June 18, 2020, 08:37 (GMT) |
Tests: added simple unittests for matrix interpolation The interpolation of 4x4 and 3x3 matrices will fail when the rotation component has a singularity, i.e. when there is one axis mirrored. Two mirrored axes are just a rotation of 180 degrees around the third, and three mirrored axes are such a rotation + a single axis mirror. To prepare for a fix, I first wanted to cover the basic functionality with a few unit tests. These tests check that `interpolate(A, B, alpha)` always returns `A` for `alpha=0`, always return `B` for `alpha=1`, and something in between for `alpha=0.5`. |
June 18, 2020, 08:19 (GMT) |
Merge branch 'master' into soc-2020-io-performance |
June 18, 2020, 08:15 (GMT) |
Export triangulated mesh, not modifying the scene Add UI checkbox for triangulating before writing the OBJ file. The scene is not modified at all. Actual modifier should be used if one needs the mesh to be modified too. The settings for triangulation are the same as default ones of the modifier: ngon-method: "Beauty", quad-method: "Shortest Diagonal", min vertices:4 |
June 18, 2020, 07:51 (GMT) |
Bumped file subversion to 19 |
June 18, 2020, 07:32 (GMT) |
Fix T77657: NVIDIA Quadro FX4800 crash on startup Limit support for `GLEW_ARB_base_instance` to OpenGL 4.0 and higher. NVIDIA Quadro FX 4800 (TeraScale) report that they support GLEW_ARB_base_instance, but the driver does not support `GLEW_ARB_draw_indirect` as it has an OpenGL3 context what also matches the minimum needed requirements. We use `GLEW_ARB_draw_indirect` as a target for `glMapBuffer(Range)` what is part of the OpenGL 4 API. So better disable it when we don't have an OpenGL4 context. Note: fix should be ported to Blender 2.83 LTS Reviewed By: Cl�ment Foucault Differential Revision: https://developer.blender.org/D7994 |
Revision 8e555bf by Antonio Vazquez (blender-v2.83-release, tmp-2.83-cycles-rtx3-kernels, tmp-T80603) June 18, 2020, 07:31 (GMT) |
GPencil: Improve viewlayer masking check Check if the mask layer is used in a layer that is going to be used in the current viewlayer. Related to T77667 |
Revision 0178e7b by Campbell Barton (blender-v2.83-release, tmp-2.83-cycles-rtx3-kernels, tmp-T80603) June 18, 2020, 07:31 (GMT) |
Fix T77148: Crash changing multiple values for sequencer strips This was caused by assuming all strips were the same type. |
June 18, 2020, 07:28 (GMT) |
Fix T77047: Dyntopo Sample detail size on hidden mesh causes crash The `Toolbar` and `Sidebar` hide the corresponding panel `VIEW3D_PT_sculpt_dyntopo` by polling for context.sculpt_object and context.tool_settings.sculpt. In the Active Tool in the Properties Editor this poll does not return False though, thus the sample_detail_size is possible from there. Second security check (the operator poll `SCULPT_mode_poll`) checks the active object -- that is still valid even if hidden, so we are allowed to execute the operator. However the active object becomes NULL once the area is switched in `sample_detail()` -- see `CTX_wm_area_set`), leading to the crash. Dont think there is a quick and easy way to do this in the poll from the Properties Editor, so just check for a valid active abject in the operator and return OPERATOR_CANCELLED if we dont have it. Maniphest Tasks: T77047 Differential Revision: https://developer.blender.org/D7832 |
June 18, 2020, 07:27 (GMT) |
Fix T74101: File Browser in macOS fullscreen crashes or makes windows unusable When closing the File Browser window after making it fullscreen, Blender would either crash or all windows would disappear, with no obvious way to bring them back. The "fix" is to not allow fullscreen for File Browsers (or any future "dialog" windows), but only maximizing. From what I can tell that's how secondary windows are supposed to work on macOS. What we previously did seemed like something macOS doesn't handle cleanly, and I didn't find a simple way to do so on our side. |
Revision ce11640 by Campbell Barton (blender-v2.83-release, tmp-2.83-cycles-rtx3-kernels, tmp-T80603) June 18, 2020, 07:26 (GMT) |
June 18, 2020, 07:26 (GMT) |
Fix T76894: Disable clipping region selection in material/rendered mode In this case the draw engine isn't responsible for the selection, but the editor is. Reviewed By: Cl�ment Foucault Differential Revision: https://developer.blender.org/D7955 |
Revision 0a8eeae by Campbell Barton / Jeroen Bakker (blender-v2.83-release, tmp-2.83-cycles-rtx3-kernels, tmp-T80603) June 18, 2020, 07:25 (GMT) |
Fix T72936: Incorrect gizmo orientation with inherit rotation disabled |
Revision f649e5c by Campbell Barton / Jeroen Bakker (blender-v2.83-release, tmp-2.83-cycles-rtx3-kernels, tmp-T80603) June 18, 2020, 07:25 (GMT) |
Revision 5439f43 by Jacques Lucke / Jeroen Bakker (blender-v2.83-release, tmp-2.83-cycles-rtx3-kernels, tmp-T80603) June 18, 2020, 07:10 (GMT) |
Fix T77603: OSL parser fails when script ends with comment without newline Reviewers: brecht Differential Revision: https://developer.blender.org/D7958 |
Revision 5fc252f by Julian Eisel / Jeroen Bakker (blender-v2.83-release, tmp-2.83-cycles-rtx3-kernels, tmp-T80603) June 18, 2020, 07:08 (GMT) |
Fix crash running "Edit Voxel Size" operator outside of a main 3D View region Accessed `RegionView3D` data from context, which of course would only be set if actually executed from a main 3D View region. |
|
|
|


Master Commits
MiikaHweb | 2003-2021