Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-06-10Add unit for time stored in secondsSergey Sharybin
Allows to define properties which will have proper units displayed in the interface. The internal storage is expected to be seconds (which matches how other times are stored in Blender). Is not immediately used in Blender, but is required for the upcoming feature in Cycles X (D11526) The naming does not sound very exciting, but can't think of anything better either. For test it probably easiest to define FloatProperty with subdtype of TIME_ABSOLUTE. Differential Revision: https://developer.blender.org/D11532
2021-06-10DataTransfer: Fix vertices being wrongly added to vgroup.Bastien Montagne
Previously, a vertex from destination mesh would always be added to all transferred vgroup (with a 0.0 weight), even if none of its matching sources in source mesh belonged to the matching source vgroups. Now a destination vertex is only added to a given destination vgroup if at least one of its source vertices belong to the matching source vgroup. Issue found and initial investigation by @pls in D11524, thanks!
2021-06-10Cleanup: spelling in commentsCampbell Barton
2021-06-10Cleanup: quiet array-parameter warning from GCC11Campbell Barton
2021-06-10Docs: update oxygen configuration to v1.9.1Campbell Barton
2021-06-10Docs: Add preprocessor define for doxygenRay Molenkamp
Doxygen by default leaves out any functions inside #ifdef blocks that it thinks are disabled. This change adds a DOXYGEN symbol, so you can still get the functions included in the documentation even if the #ifdef would have normally excluded them. before #if defined(_WIN32) after #if defined(_WIN32) || defined(DOXYGEN) Patch provided by Campbell Barton on chat.
2021-06-10Windows: Use TBBMalloc for GMPErik Abrahamsson
TBBmalloc_proxy already takes care of any allocations being done from MSVC compiled code, some of the dependencies like GMP cannot be build with MSVC and we have to use mingw to build them. mingw however links against the older msvcrt.dll for its allocation needs, which TBBMallocProxy does not hook. GMP has an option to supply your own allocation functions so we can still manually redirect them to TBBMalloc. In a test-file with a boolean geometry node, this patch uses 32s effective CPU time compared to 52s before. Differential Revision: https://developer.blender.org/D11435 Reviewed by Campbell Barton, Ray Molenkamp
2021-06-10Fix: Point translate and point scale don't execute on curve dataHans Goudey
2021-06-10Fix T88546: Pose slider typed input not workingChristoph Lendenfeld
Remove an unnecessary call to pose_slide_mouse_update_percentage That call was overriding the typed value Reviewed By: #animation_rigging, Sybren A. Stüvel Differential Revision: https://developer.blender.org/D11395 Ref D11395
2021-06-09Geometry Nodes: Copy spline attributes in the curve resample nodeHans Goudey
Previously only point domain attributes were copied to the result curve.
2021-06-09Fix T88799: 3DViewport Stats Column MeasurementsHarley Acheson
To draw the overlay stats in columns the strings must be measured to find the longest one. In some circumstances this measurement can be incorrect. We draw the text with a specific size yet do not explicitly set the size before calling BLF_size. This patch properly sets the size so that the measurement will match what will be used for output. See T88799 for examples of measurement failure. Differential Revision: https://developer.blender.org/D11504 Reviewed by Hans Goudey
2021-06-09Splines: Add API functions for interpolating dataHans Goudey
First, expand on the interpolation to evaluated points with a templated helper function, and a function that takes a GSPan. Next, add a set of functions to `Spline` for interpolating at arbitrary intervals between the evaluated points. The code for doing that isn't that complicated anyway, but it's nice to avoid repeating, and it might make it easier to unroll the special cases for the first and last points if we require the index factors to be sorted.
2021-06-09Geometry Nodes: Add Convex Hull NodeHenrik Dick
This commit adds a node to output the convex hull of any input geometry as a mesh, which is an enclosing geometry around a set of points. All geometry types are supported, besides volumes. The code supports operating on instances to avoid copying all input geometry before the operation. The implementation uses the same backend as the operation in edit mode, but uses Mesh directly instead of BMesh. Attribute transfer is not supported currently, but would be a point of improvement for the future if it can work in a predictable way on different geometry input types. Differential Revision: https://developer.blender.org/D10925
2021-06-09Fix T88974: Add missing liboverrides to GP modifiers and shaderfx.Bastien Montagne
Proper RNA code was simply never added for those...
2021-06-09Cleanup: use doxy sections for task_iterator.cCampbell Barton
2021-06-09Cleanup: missing NULL check in assertCampbell Barton
2021-06-09Cleanup: redundant/unused assignmentsCampbell Barton
2021-06-09Cleanup: replace 'else if' with 'else'Campbell Barton
2021-06-09Cleanup: remove redundant checks which have already been testedCampbell Barton
Note that these changes are limited simple cases as these kinds of changes could allow for errors when refactoring code when the known state is not so obvious.
2021-06-09Cleanup: simplify grease pencil preset set logicCampbell Barton
2021-06-09Cleanup: simplify grease pencil type checksCampbell Barton
2021-06-09Cleanup: spelling in commentsCampbell Barton
2021-06-09Cleanup: quiet array-parameter warningCampbell Barton
2021-06-09Fix invalid return value assignment in getEdgeVertexIndicesCampbell Barton
2021-06-09Fix uninitialized variable in task.MempoolIterTLS testCampbell Barton
Error in 14f3b2cdad2d7b00ce3ea27bf8eb0087ac2a6cbd.
2021-06-09LineArt: Camera marker update fix.YimingWu
The original fix was probably flushed by some newer line art commits. Fixed. See https://developer.blender.org/T88464
2021-06-09Revert "GPencil: Add custom normal entry to bGPDspoint."YimingWu
This reverts commit f546b0800b9121b24b1292f1ec602ed9964d1848.
2021-06-09BMesh: multi-thread face tessellationCampbell Barton
Use BM_iter_parallel for face tessellation, this gives around 6.5x speedup for BM_mesh_calc_tessellation on high poly meshes in my tests, although exact speedup depends on available cores.
2021-06-09BLI_task: add TLS support to BLI_task_parallel_mempoolCampbell Barton
Support thread local storage for BLI_task_parallel_mempool, as well as support for the reduce and free callbacks. mempool_iter_threadsafe_* functions have been moved into a private header thats only shared between task_iterator.c and BLI_mempool.c so the TLS can be made part of the iterator array without having to rely on passing in struct offsets. Add test task.MempoolIterTLS that ensures reduce and free are working as expected. Reviewed By: mont29 Ref D11548
2021-06-09GPencil: Add custom normal entry to bGPDspoint.YimingWu
Also modified existing utility functions to take care of the new surface normal interpolation and so on. Reviewed By: Antonio Vazquez (antoniov) Differential Revision: https://developer.blender.org/D11543
2021-06-09Fix assigning material to linked object being forbidden in BKE.Bastien Montagne
While this should not be allowed in general, there are some cases (library overrides at least) where supporting this is mandatory. Further more, comment stating that this could crash is from 2011, could not reproduce any issue with current code. Commit comment was referring to undo/redo, but in use cases here those should not affect things. Note that in general, such relatively high-level checks should be handled by high-level, close to user code (like in ED area e.g.), not in low-level BKE code anyway.
2021-06-09Cleanup: Removed unused definition.Jeroen Bakker
2021-06-09Cleanup: Comment formattingHans Goudey
2021-06-09T88352: Use threaded ibo.tris extraction for single material meshes.Jeroen Bakker
This patch adds a specific extraction method when the mesh has only one material. This method is multi-threaded. There is a trade-off in this patch as the ibo isn't compressed (it adds restart indexes for hidden faces). So it depends if threading is faster than the additional GPU buffer upload. # Subdivided cube I used a cube subdivided 7 times, modifiers applied. that gives around 400000 faces. The test is selecting some vertices and move them. During this test the next buffers are updated on each frame: * vbo.pos_nor * vbo.lnor * vbo.edit_data * ibo.tris * ibo.points System info: |platform| Linux-5.11.0-7614-generic-x86_64-with-glibc2.33| | renderer| AMD SIENNA_CICHLID (DRM 3.40.0, 5.11.0-7614-generic, LLVM 11.0.1)| |vendor| AMD| |version| 4.6 (Core Profile) Mesa 21.0.1| |cpu| Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz| |compiler| gcc version 10.3.0| Timing have been measured using DEBUG_TIME in `draw_cache_extract_mesh`. master: `rdata 8ms iter 45ms (frame 153ms)` this patch `rdata 6ms iter 36ms (frame 132ms)` Reviewed By: mano-wii Maniphest Tasks: T88352 Differential Revision: https://developer.blender.org/D11290
2021-06-09UI: Add the option to not display some socket labelsHans Goudey
This commit adds a flag to disable displaying some socket labels which just redundant eye sores. We still want to have a label, because that information can potentially be accessed elsewhere in the UI. The flag is used in a few geometry nodes. Differential Revision: https://developer.blender.org/D11540
2021-06-09Fix T88885: Circle select deselects first selections after moving cursorGermano Cavalcante
`is_active_prev` is always set after the first operation. But this was not the case with `wait_for_input` `false`.
2021-06-09Tests: temporarily increase threshold for OpenImageDenoise testBrecht Van Lommel
Until all platforms have the same version, this helps the tests pass.
2021-06-09Fix T88998: GPencil not projecting to the most front surfaceGermano Cavalcante
It was projecting from the stroke position. The behavior has changed in {rB5400be9ffee2}.
2021-06-09Draw Cache: use threading for Mesh extract linesGermano Cavalcante
This is an optimization, but the difference is still not that significant as some extractions are still done in single thread. **Benchmarking** ||before:|after: |---|---|---| |large_mesh_editing:|Average: 14.246502 FPS|Average: 15.438118 FPS ||rdata 9ms iter 31ms (frame 69ms)|rdata 9ms iter 27ms (frame 65ms) |large_mesh_editing_ledge: |Average: 14.913622 FPS|Average: 15.856538 FPS ||rdata 9ms iter 30ms (frame 67ms)|rdata 9ms iter 26ms (frame 63ms) |looptris_test:|Average: 3.970774 FPS|Average: 4.095200 FPS ||rdata 11ms iter 90ms (frame 235ms)|rdata 12ms iter 87ms (frame 229ms) Reviewed By: jbakker Differential Revision: https://developer.blender.org/D11467
2021-06-09Fix T88983: GPencil toggle caps error in python enumAntonio Vazquez
The value for default option was wrong in the python definition.
2021-06-09GPencil: Hide Brush panels for some toolsAntonio Vazquez
Some tools don't use brush and the panel must be hidden. Reviewed By: mendio Differential Revision: https://developer.blender.org/D11518
2021-06-09Fix missing free calls for task iteratorCampbell Barton
A single threaded task with thread data over 8192 bytes would leak. While this didn't happen in practice, it could cause issues in the future. The free call for `task_parallel_iterator_do` wasn't running if callbacks weren't set, also not an issue in practice but avoids potential problems in the future too.
2021-06-09Fix: Compositor test desintegrate failing on arm64Manuel Castilla
Changes introduced in commit rBe9f2f17e8518 can create different render results when there is a Math or Mix operation after TextureOperation on tiled execution model. This is due to WriteBufferOperation forcing a single pixel resolution when these operations use a preferred resolution of 0 to check if their inputs have resolution. Fixing this behaviour creates different renders too. This patch keeps previous tiled implementation and adds the new implementation only for full frame execution. Reviewed By: Jeroen Bakker (jbakker) Differential Revision: https://developer.blender.org/D11546
2021-06-09Compositor: Refactor recursive methods to iterativeManuel Castilla
In order to reduce stack size this patch converts full frame recursive methods into iterative. - No functional changes. - No performance changes. - Memory peak may slightly vary depending on the tree because now breadth-first traversal is used instead of depth-first. Tests in D11113 have same results except for test1 memory peak: 360MBs instead of 329.50MBs. Reviewed By: Jeroen Bakker (jbakker) Differential Revision: https://developer.blender.org/D11515
2021-06-09Fix failing test case sequence_transform.Jeroen Bakker
2021-06-09Fix: Incorrect node bezier spline tangent calculation for end pointsHans Goudey
The code was using the useless dangling handle at each end of the spline rather than the handle pointing inwards.
2021-06-09Fix: Prevent small memory leak in VSE indexerSebastian Parborg
We need to unref the packet to tell ffmpeg it is ok to free it after use.
2021-06-08Build: upgrade OpenImageDenoise to 1.4.0Brecht Van Lommel
CMake builder and install deps changes, precompiled libraries are still to be committed. Ref T88438, T88434 Differential Revision: https://developer.blender.org/D11486
2021-06-08PyAPI: use keyword only argumentsCampbell Barton
Use keyword only arguments for the following functions. - addon_utils.module_bl_info 2nd arg `info_basis`. - addon_utils.modules 1st `module_cache`, 2nd arg `refresh`. - addon_utils.modules_refresh 1st arg `module_cache`. - bl_app_template_utils.activate 1nd arg `template_id`. - bl_app_template_utils.import_from_id 2nd arg `ignore_not_found`. - bl_app_template_utils.import_from_path 2nd arg `ignore_not_found`. - bl_keymap_utils.keymap_from_toolbar.generate 2nd & 3rd args `use_fallback_keys` & `use_reset`. - bl_keymap_utils.platform_helpers.keyconfig_data_oskey_from_ctrl 2nd arg `filter_fn`. - bl_ui_utils.bug_report_url.url_prefill_from_blender 1st arg `addon_info`. - bmesh.types.BMFace.copy 1st & 2nd args `verts`, `edges`. - bmesh.types.BMesh.calc_volume 1st arg `signed`. - bmesh.types.BMesh.from_mesh 2nd..4th args `face_normals`, `use_shape_key`, `shape_key_index`. - bmesh.types.BMesh.from_object 3rd & 4th args `cage`, `face_normals`. - bmesh.types.BMesh.transform 2nd arg `filter`. - bmesh.types.BMesh.update_edit_mesh 2nd & 3rd args `loop_triangles`, `destructive`. - bmesh.types.{BMVertSeq,BMEdgeSeq,BMFaceSeq}.sort 1st & 2nd arg `key`, `reverse`. - bmesh.utils.face_split 4th..6th args `coords`, `use_exist`, `example`. - bpy.data.libraries.load 2nd..4th args `link`, `relative`, `assets_only`. - bpy.data.user_map 1st..3rd args `subset`, `key_types, `value_types`. - bpy.msgbus.subscribe_rna 5th arg `options`. - bpy.path.abspath 2nd & 3rd args `start` & `library`. - bpy.path.clean_name 2nd arg `replace`. - bpy.path.ensure_ext 3rd arg `case_sensitive`. - bpy.path.module_names 2nd arg `recursive`. - bpy.path.relpath 2nd arg `start`. - bpy.types.EditBone.transform 2nd & 3rd arg `scale`, `roll`. - bpy.types.Operator.as_keywords 1st arg `ignore`. - bpy.types.Struct.{keyframe_insert,keyframe_delete} 2nd..5th args `index`, `frame`, `group`, `options`. - bpy.types.WindowManager.popup_menu 2nd & 3rd arg `title`, `icon`. - bpy.types.WindowManager.popup_menu_pie 3rd & 4th arg `title`, `icon`. - bpy.utils.app_template_paths 1st arg `subdir`. - bpy.utils.app_template_paths 1st arg `subdir`. - bpy.utils.blend_paths 1st..3rd args `absolute`, `packed`, `local`. - bpy.utils.execfile 2nd arg `mod`. - bpy.utils.keyconfig_set 2nd arg `report`. - bpy.utils.load_scripts 1st & 2nd `reload_scripts` & `refresh_scripts`. - bpy.utils.preset_find 3rd & 4th args `display_name`, `ext`. - bpy.utils.resource_path 2nd & 3rd arg `major`, `minor`. - bpy.utils.script_paths 1st..4th args `subdir`, `user_pref`, `check_all`, `use_user`. - bpy.utils.smpte_from_frame 2nd & 3rd args `fps`, `fps_base`. - bpy.utils.smpte_from_seconds 2nd & 3rd args `fps`, `fps_base`. - bpy.utils.system_resource 2nd arg `subdir`. - bpy.utils.time_from_frame 2nd & 3rd args `fps`, `fps_base`. - bpy.utils.time_to_frame 2nd & 3rd args `fps`, `fps_base`. - bpy.utils.units.to_string 4th..6th `precision`, `split_unit`, `compatible_unit`. - bpy.utils.units.to_value 4th arg `str_ref_unit`. - bpy.utils.user_resource 2nd & 3rd args `subdir`, `create` - bpy_extras.view3d_utils.location_3d_to_region_2d 4th arg `default`. - bpy_extras.view3d_utils.region_2d_to_origin_3d 4th arg `clamp`. - gpu.offscreen.unbind 1st arg `restore`. - gpu_extras.batch.batch_for_shader 4th arg `indices`. - gpu_extras.batch.presets.draw_circle_2d 4th arg `segments`. - gpu_extras.presets.draw_circle_2d 4th arg `segments`. - imbuf.types.ImBuf.resize 2nd arg `resize`. - imbuf.write 2nd arg `filepath`. - mathutils.kdtree.KDTree.find 2nd arg `filter`. - nodeitems_utils.NodeCategory 3rd & 4th arg `descriptions`, `items`. - nodeitems_utils.NodeItem 2nd..4th args `label`, `settings`, `poll`. - nodeitems_utils.NodeItemCustom 1st & 2nd arg `poll`, `draw`. - rna_prop_ui.draw 5th arg `use_edit`. - rna_prop_ui.rna_idprop_ui_get 2nd arg `create`. - rna_prop_ui.rna_idprop_ui_prop_clear 3rd arg `remove`. - rna_prop_ui.rna_idprop_ui_prop_get 3rd arg `create`. - rna_xml.xml2rna 2nd arg `root_rna`. - rna_xml.xml_file_write 4th arg `skip_typemap`.
2021-06-08Cleanup: Apply clang-format (`make format`)Julian Eisel