August 24, 2021, 05:55 (GMT) |
Sculpt dyntopo: more smooth stuff * All of the smooth brushes now use the SculptCustomLayer system for temporary data, so all work with dyntopo now. * You can now use a flat array in SculptCustomLayer with PBVH_BMESH (though you have to build the structure manually). The mesh filter code uses this. * Smooth (and autosmooth) now have an option to preserve face set boundaries. Corners are currently not handled. * Simplify brush has preserve face set boundaries autosmooth flag set by default. * SCULPT_vertex_is_boundary now takes an addition argument for whether to check for face set boundaries. |
August 24, 2021, 04:53 (GMT) |
PyAPI: remove active area test for script.python_file_run operator There is no reason running a Python file should require an active area. |
August 24, 2021, 04:52 (GMT) |
Fix buffer size mismatch in SCRIPT_OT_python_file_run Reading paths over 512 bytes would cause a buffer overrun. |
August 24, 2021, 04:36 (GMT) |
Fix reporting Python reference leaks with WITH_PYTHON_SAFETY Error in f3e26c847b6ba0924cfd02641345164c54234425 |
August 24, 2021, 04:25 (GMT) |
Fix BLI_str_utf8_as_unicode_step reading past intended bounds Add a string length argument to BLI_str_utf8_as_unicode_step to prevent reading past the buffer bounds or the intended range since some callers of this function take a string length to operate on part of the string. Font drawing for example didn't respect the length argument, potentially causing a buffer over-read with multi-byte characters that could read past the end of the string. The following command would read 5 bytes past the end of the input. `BLF_draw(font_id, (char[]){252}, 1);` In practice strings are typically null terminated so this didn't crash reading past buffer bounds. Nevertheless, this wasn't correct and could cause bugs in the future. Clamping by the length now has the same behavior as a null byte. Add test to ensure this is working as intended. |
August 24, 2021, 04:06 (GMT) |
Sculpt dyntopo: Smooth improvements and bug fixes * Added an option to weight smooth by face areas * Dyntopo now caches face areas in a CD_PROP_FLOAT layer * Dyntopo also caches number of edges around verts inside of MDynTopoVert. To avoid increasing the struct size flag was made a short. * Cleanup mode (dissolves 3/4-valence verts) now piggybacks on subdivide code to build list of verts; this is much faster. |
August 24, 2021, 02:53 (GMT) |
Merge branch 'master' into subdivision_work |
August 24, 2021, 02:52 (GMT) |
Merge branch 'master' into subdivision_work |
August 24, 2021, 02:49 (GMT) |
Cleanup: spelling |
August 24, 2021, 02:43 (GMT) |
Cleanup: quiet clang-format warnings, unused argument |
August 24, 2021, 00:48 (GMT) |
UI: Make use of menu item theme roundness Use theme preference instead of hardcoded square corners. |
August 24, 2021, 00:46 (GMT) |
UI: Use Outline color of menu item for separator Instead of forcing a transparent shadeof the text color. |
August 24, 2021, 00:31 (GMT) |
UI: Adjust outline color of active default buttons Simply darken slightly the already used outline color. On light themes it prevents too bright outlines on hover. |
August 24, 2021, 00:13 (GMT) |
UI: Support alpha in Value Slider widget The alpha value was being ignored even though the item property could be set. |
August 24, 2021, 00:03 (GMT) |
UI: Do not rotate vertical scale indicators In animation editors with vertical scale indicators, such as Graph Editor or Drivers, display the values aligned to the view. |
August 23, 2021, 23:43 (GMT) |
Fix T90854: Cycles, normal map fails with applied transformations Prior to rBb8ecdbcd964a normals were stored both in DeviceScene.tri_vnormal and the float3 attributes buffer. However, the normals in `DeviceScene.tri_vnormal` might have be transformed to world space if the object's transformation was applied, while the data in the float3 attributes buffer were not. This caused shading issues in cases where the objects did have transformation applied, as the math expects the normals to be in object space. To fix this, convert the normals to object space if necessary before applying the normal map. Reviewed By: brecht Maniphest Tasks: T90854 Differential Revision: https://developer.blender.org/D12294 |
August 23, 2021, 23:21 (GMT) |
VSE: Add Sequence.parent_meta() python API function This function can be used to find metastrip parent of nested strip. Reviewed By: ISS Differential Revision: https://developer.blender.org/D11985 |
August 23, 2021, 23:10 (GMT) |
VSE: Cleanup speed effect math Simplify logic of speed effect frame calculation by using discrete math where possible. Only `SEQ_SPEED_MULTIPLY` mode with animation requires frame map to be built. Frame map building was simplified by removing unused branches. Functional change: Animating strip in negative range will reverse playback. I assume this was limitation of previous system, where each frame map item was limited to be within correct frame range. Now frame map can contain values that point beyond usable range and they are limited by `seq_speed_effect_target_frame_get`. This way it is possible to control playback rate in both directions. Mostly fixes T89120 apart from offset handling. Reviewed By: mano-wii Differential Revision: https://developer.blender.org/D11939 |
August 23, 2021, 22:58 (GMT) |
Fix T88237: Prefetch crash on rendering scene strip Prefetch needs to avoid rendering scene strips, because - Rendering in background needs own dependency graph, which fails to initialize from evaluated data. - This locks UI and can make it unresponsive for long time periods. In T88237 prefetch failed to avoid scene strip, because of effect strip was attached to scene strip. Ensure, that no effect that is attached to scene strip either directly or indirectly would be rendered. Reviewed By: sergey Differential Revision: https://developer.blender.org/D11247 |
August 23, 2021, 22:52 (GMT) |
Fix T90407: Split fails on transition strips When splitting strips, first they are duplicated and then offsets adjusted. This can fail on cross transitions, because some strips don't overlap with split frame. All strips, that relate to each other must be duplicated to ensure correct relations after splitting, so solution is to delete non overlapping strips from left or right side respectively. Since cross transition don't have to overlap with source strips, splitting such strips would lead to effect being deleted, which could cause crash when iterating over strips in python. Therefore splitting of such strips is now forbidden and will generate error. Splitting of transition will also generate error solely because such operation is illogical. Reviewed By: sergey Differential Revision: https://developer.blender.org/D12121 |
|
|
|


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