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
2022-08-12Fix T100350: missing brush falloff preview in sculpt modeBrecht Van Lommel
2022-08-12Merge branch 'blender-v3.3-release'Bastien Montagne
2022-08-12Cleanup: Typos in comments.Bastien Montagne
2022-08-12Merge branch 'blender-v3.3-release'Bastien Montagne
Conflicts: source/blender/blenkernel/BKE_lib_override.h
2022-08-12Fix (unreported) infinite tie building Outliner liboverride hierarchy tree.Bastien Montagne
In complex scenes featuring thousands of connections between IDs in their liboverride hierarchies (e.g. Heist files), the time required to check if tree items were available (before allocated a new one) would become insanely long (O(n^2)). This commit brings it back to roughly a constant time, only re-checking the whole array for unused items once in a while (once every 10k times currently), since in almost all cases is the index after `lastused` value is not unused, and you have reached the end of the currently used array of items, you actually need to 'allocate' a new one anyway. It also improves the handling of `lastused` index, in particular in `tse_group_add_element`. This makes switching to the Outliner override hierarchy view in Heist scenes from virtually infinite time (more than 30mins for sure) to about 20 seconds on my machine. Still far from being effectively usable. Note that this is only a bandaid fix anyway, root of the issue is that this view has to deal with way too many items in its tree, current code is not designed for that. Either outliner has to improve its tree handling (by only building subsets of the whole tree maybe?), or we have to cull/filter out some of the ID relationships between overridden IDs to make this view actually usable. Maybe limit the depth of the tree?
2022-08-12Fix (unreported) crashes in Outliner override hierarchy view.Bastien Montagne
Fix wrong assumption that 'embedded' IDs are only ever used by their owners. This is especially not true with shape keys. Also small optimization by adding an eraly abort when both IDs are the same (i.e. an ID has a pointer to itself).
2022-08-12IDType `get_owner`: add an optional hint about owner ID.Bastien Montagne
In some cases, there is a chance code already knows who might be the owner of the given ID, in which case it can be more efficient to check it first (especially in cases like embedded node trees or scene collections, where the only other way is to loop over all possible owners currently). Will be used in next commit in some Outliner fix.
2022-08-12Fix T100138: Use `double` for LineArt intersection record.YimingWu
The use of `float` for intermediate intersection record led to some inaccuracy which caused flickering in intersection lines. Now fixed.
2022-08-12Merge branch 'blender-v3.3-release'Campbell Barton
2022-08-12Fix T96885: Drag Fallback on Tweak is using Move insteadCampbell Barton
Since [0] (fix for T95591), the tweak tools fallback action used tweak instead of press. This was enabled so tools such as "Measure" & "Add Cube" could use fallback tools (otherwise is wasn't possible to add a new ruler without also selecting for e.g.), however this is of limited use since both tools support dragging anywhere to activate, making them less useful with other selection tools beside tweak (box/lasso for e.g.). Resolve by disabling the fallback option for tools where using the tweak tool to select is undesirable. Selection by clicking with "Measure" & "Add Cube" is still supported as this is also set in the 3D view's key-map. [0]: 0e51defcf42e1cb231d36da9ecc2cc0fbe6ae505
2022-08-12Cleanup: repeated words in stringsCampbell Barton
2022-08-12Cleanup: repeated words in commentsCampbell Barton
2022-08-12Cleanup: use sizeof() for better readabilityCampbell Barton
2022-08-12Cleanup: add missing braces, quite warnings by castingCampbell Barton
2022-08-12Cleanup: group translation importsCampbell Barton
2022-08-12Cleanup: remove unnecessary ifdefCampbell Barton
2022-08-12Cleanup: replace misleading use of 'true' for the bit-field sizeCampbell Barton
Also use a bit-field for SnapObjectParams.keep_on_same_target
2022-08-12Cleanup: screw modifier comments & namingCampbell Barton
Rename dist to dist_sq as it's the squared distance, also prefer __func__ in temporary allocated arrays.
2022-08-12Cleanup: use 'filepath' for fill pathsCampbell Barton
2022-08-12Cleanup: add missing braces in GHOSTCampbell Barton
2022-08-12Cleanup: remove unnecessary icon assignmentCampbell Barton
2022-08-12Cleanup: clang-tidy GHOST Context/Event/TimerManagerCampbell Barton
2022-08-12Cleanup: update comments in MANTA_main.cppCampbell Barton
2022-08-12Cleanup: use enum type for argumentCampbell Barton
2022-08-12WM: define WM_OT_drop_blend_file path as a file-path, skip-saveCampbell Barton
File paths have special handling of non-utf8 characters, so it's best to use the FILE_PATH sup-type for all file-paths.
2022-08-12Cleanup: use short names for verts & polys as they're unambiguousCampbell Barton
Follow conventions used in most existing code.
2022-08-12Cleanup: replace magic number with flagCampbell Barton
2022-08-12Cleanup: early exit ui_but_extra_operator_icon_mouse_over_getCampbell Barton
Early exit when the button has no extra icons, avoiding a redundant transformation from mouse to button coordinates.
2022-08-12Cleanup: typo in selection checkCampbell Barton
In practice this is harmless as in most cases checking selected vertices is enough, however as the intention is to check all 3 elements it's best to do so.
2022-08-12Fix incorrect custom-data layer access for hide layersCampbell Barton
Error in [0], missed in review. [0] 2480b55f216c31373a84bc5c5d2b0cc158497c44
2022-08-12Cleanup: replace term face with polyCampbell Barton
Be consistent with naming to avoid mixing MPoly/MFace.
2022-08-12Fix: Broken mesh hide status RNA accessorsHans Goudey
Mistake in 2480b55f216c31. Also deduplicate some of the code to find the indices of mesh elements.
2022-08-11BLF: Mutex Lock Glyph Cache Per Font, Not GlobalHarley Acheson
Only lock access to our glyph caches per-font, rather than globally. Also upgrade from spinlocks to mutexes. See D15644 for more details. Differential Revision: https://developer.blender.org/D15644 Reviewed by Brecht Van Lommel
2022-08-11Fix: Use of uninitialized variable in recent commitHans Goudey
Mistake in 2480b55f216c.
2022-08-11Cycles: take into account time limit for progress barBrecht Van Lommel
This change allows the Cycles progress report system to take into conderation the time limit property. This allows for more accuracte progress reports for high sample count renders with short time limits. Contributed by Alaska. Differential Revision: https://developer.blender.org/D15599
2022-08-11Merge branch 'blender-v3.3-release'Brecht Van Lommel
2022-08-11Fix T100130: animation player crash on exitBrecht Van Lommel
GPU_exit is now expected to run within an active GPU context. Also run BLF_exit and IMB_exit first they can use GPU resources and gave ASAN errors. And remove redundant GPU_shader_free_builtin_shaders already handled by GPU_exit.
2022-08-11Curve: Simplify legacy curve conversion to meshHans Goudey
Build the mesh directly instead of returning arrays which need to be copied to a new mesh. Also decrease the scope of some variables.
2022-08-11Mesh: Move hide flags to generic attributesHans Goudey
This commit moves the hide status of mesh vertices, edges, and faces from the `ME_FLAG` to optional generic boolean attributes. Storing this data as generic attributes can significantly simplify and improve code, as described in T95965. The attributes are called `.hide_vert`, `.hide_edge`, and `.hide_poly`, using the attribute name semantics discussed in T97452. The `.` prefix means they are "UI attributes", so they still contain original data edited by users, but they aren't meant to be accessed procedurally by the user in arbitrary situations. They are also be hidden in the spreadsheet and the attribute list by default, Until 4.0, the attributes are still written to and read from the mesh in the old way, so neither forward nor backward compatibility are affected. This means memory requirements will be increased by one byte per element when the hide status is used. When the flags are removed completely, requirements will decrease when hiding is unused. Further notes: * Some code can be further simplified to skip some processing when the hide attributes don't exist. * The data is still stored in flags for `BMesh`, necessitating some complexity in the conversion to and from `Mesh`. * Access to the "hide" property of mesh elements in RNA is slower. The separate boolean arrays should be used where possible. Ref T95965 Differential Revision: https://developer.blender.org/D14685
2022-08-11Cleanup: minor changes to DebugFlagsBrecht Van Lommel
Use C++11, remove unused running_inside_blender and move viewport_static_bvh to BlenderSync.
2022-08-11obj: support importing multiple files at onceAras Pranckevicius
Implemented the same way as STL or GPencil SVG importers: loop over the input files, import one by one. Has been requested by the community for quite a long time (e.g. https://blender.community/c/rightclickselect/Jhbbbc/), as well as 3rd party addons to implement just this (https://github.com/p2or/blender-batch-import-wavefront-obj).
2022-08-11Merge branch 'blender-v3.3-release'Aras Pranckevicius
2022-08-11Fix T98781: OBJ exporter wrongly writing default material socket values when ↵Aras Pranckevicius
textures are present Report T98781 and part of T97642: the MTLMaterial info only captures image nodes and the default socket values. When the image information is present, do not emit the socket defaults - the .MTL spec states they are multiplied together, but the default value is not used in blender when the socket is connected. Also contains svn tests repository update to extend the test coverage, and update test expectation outputs.
2022-08-11GHOST/Wayland: support setting modifiers on window activationCampbell Barton
Take advantage of Waylands wl_keyboard_listener.enter callback which takes an array of keys that are pressed when a window is activated. Resolves T74684 under Wayland.
2022-08-11Cleanup: access modifier keys by index under WaylandCampbell Barton
This simplifies accessing modifiers as there is no need to perform a string lookup each time (which may fail).
2022-08-11Fix T66088: Modifier keys ignored when the window doesn't have focusCampbell Barton
Always use modifier keys from the active window, as changes to the modifiers aren't sent to inactive windows. Also resolves modifier keys being lost on window de-activation. Activating the window again would check the previous state of the modifiers which was always cleared as of [0], now clearing is no longer needed. [0]: 472595f1d3533f143bdc84700b26f20a7b2ba1c1
2022-08-11BLF: Fallback Broken After Cache RemovalHarley Acheson
Font fallback feature not working after reverting the implementation of the cache system. Missing an blf_ensure_face before FT_Get_Char_Index. Otherwise glyphs not found in fonts without faces. Own Code
2022-08-11Cleanup: refactoring uvislands to prepare for python apiChris Blackbourn
Add element_map->island_total_uvs. Add element_map->island_total_unique_uvs. Simplify callers based on new members. Add comments. Resolves: D15598
2022-08-11Cleanup: doxy parameters, use static set instead of tupleCampbell Barton
2022-08-11Merge branch 'blender-v3.3-release'Campbell Barton