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-04-17Transform Snap Refactor: Use enum for cage snap optionsGermano Cavalcante
This allows the addition of the `SNAP_GEOM_CAGE` option. Currently unused.
2021-04-17Merge branch 'blender-v2.93-release'Howard Trickey
2021-04-17Fix T86805 Inconsistent results for exact boolean.Howard Trickey
The fast triangulator from Blenlib could leave a non-manifold mesh after removing degenerate triangles. Switched to an exact triangulator.
2021-04-17Merge branch 'blender-v2.93-release'Jacques Lucke
2021-04-17Cleanup: quiet compiler warning on macosJacques Lucke
2021-04-17BLI: add unit tests for recently added methodsJacques Lucke
2021-04-17BLI: support multiple parameters in Stack.push_asJacques Lucke
2021-04-17BLI: add Vector.append_as methodJacques Lucke
This method is similar to `std::vector::emblace_back` in that it constructs the new object inplace in the vector, removing the need for a move. The `_as` suffix is consistent with similar behavior in Map and Set data structures.
2021-04-17Fix wrong logic used in 'ED_view3d_depth_read_cached'Germano Cavalcante
It is important to limit the pixels read on `BLI_array_iter_spiral_square`. Fortunately `ED_view3d_depth_read_cached` was not being called with a `margin` parameter. Wrong logic introduced in rB44c76e4ce310.
2021-04-17Fix wrong logic used in 'ED_view3d_depth_read_cached'Germano Cavalcante
It is important to limit the pixels read on `BLI_array_iter_spiral_square`. Fortunately `ED_view3d_depth_read_cached` was not being called with a `margin` parameter. Wrong logic introduced in rB44c76e4ce310.
2021-04-17BLI: support multiple arguments for value in *_as methods of MapJacques Lucke
This allows us to build more complex values in-place in the map. Before those values had to be build separately and then moved into the map. Existing calls to the Map API remain unchanged.
2021-04-17Geometry Nodes: use virtual arrays in internal attribute apiJacques Lucke
A virtual array is a data structure that is similar to a normal array in that its elements can be accessed by an index. However, a virtual array does not have to be a contiguous array internally. Instead, its elements can be layed out arbitrarily while element access happens through a virtual function call. However, the virtual array data structures are designed so that the virtual function call can be avoided in cases where it could become a bottleneck. Most commonly, a virtual array is backed by an actual array/span or is a single value internally, that is the same for every index. Besides those, there are many more specialized virtual arrays like the ones that provides vertex positions based on the `MVert` struct or vertex group weights. Not all attributes used by geometry nodes are stored in simple contiguous arrays. To provide uniform access to all kinds of attributes, the attribute API has to provide virtual array functionality that hides the implementation details of attributes. Before this refactor, the attribute API provided its own virtual array implementation as part of the `ReadAttribute` and `WriteAttribute` types. That resulted in unnecessary code duplication with the virtual array system. Even worse, it bound many algorithms used by geometry nodes to the specifics of the attribute API, even though they could also use different data sources (such as data from sockets, default values, later results of expressions, ...). This refactor removes the `ReadAttribute` and `WriteAttribute` types and replaces them with `GVArray` and `GVMutableArray` respectively. The `GV` stands for "generic virtual". The "generic" means that the data type contained in those virtual arrays is only known at run-time. There are the corresponding statically typed types `VArray<T>` and `VMutableArray<T>` as well. No regressions are expected from this refactor. It does come with one improvement for users. The attribute API can convert the data type on write now. This is especially useful when writing to builtin attributes like `material_index` with e.g. the Attribute Math node (which usually just writes to float attributes, while `material_index` is an integer attribute). Differential Revision: https://developer.blender.org/D10994
2021-04-17Merge branch 'blender-v2.93-release'Antonio Vazquez
2021-04-17Fix T87321: GPencil Arrange strokes not consistent with industry standardsAntonio Vazquez
Now if one stroke in the extremes of the stack is selected, other strokes are moved. Reviewed By: pepeland, Dantti Maniphest Tasks: T87321 Differential Revision: https://developer.blender.org/D10997
2021-04-17Functions: extend virtual array functionalityJacques Lucke
This adds support for mutable virtual arrays and provides many utilities for creating virtual arrays for various kinds of data. This commit is preparation for D10994.
2021-04-16Snap Gizmo: Improve event comparison codeGermano Cavalcante
Better distinction between modifier key events and mouse position events. No functional changes.
2021-04-16Merge branch 'blender-v2.93-release'Hans Goudey
2021-04-16Fix T87555: Incorrect view transform default in startup fileHans Goudey
This was another error in rBac90c8a7743f. It turns out it's quite important to use a full build to save the file, which I didn't do then.
2021-04-16Merge branch 'blender-v2.93-release'Antonio Vazquez
2021-04-16GPencil: Remove Grease Pencil menu options in UV editorAntonio Vazquez
Differential Revision: https://developer.blender.org/D10993
2021-04-16Merge branch 'blender-v2.93-release'Philipp Oeser
2021-04-16Fix T87010: VSE: adding strips crashes in certain filesPhilipp Oeser
Caused by {rB571362642201} where versioning code for new sequencer tool settings was only done for scenes already having sequencer scene->ed. If scene->ed was not present, sequencer tool settings were never initalized for this scene [if the VSE was then used later], leading to crashes in some places. Now just use the versioning code to initalize sequencer tool settings for all scenes not having them yet. Maniphest Tasks: T87010 Differential Revision: https://developer.blender.org/D10996
2021-04-16Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-16Fix missing owner_id values from 919558854d624f5db40acfa9f5674ac8c94873b6Campbell Barton
This prevented dynamic enum callbacks being called.
2021-04-16Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-16WM: remove redundant click-drag offset for gizmo highlight checkingCampbell Barton
Tweak and click-drag events already apply this offset, this was a no-op.
2021-04-16Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-16WM: prevent drag events being continually testedCampbell Barton
Click-drag events that weren't handled would continually be tested for each mouse-motion event. As well as being redundant, this added the overhead of querying gizmos twice per motion event. Now click-drag is only tested once when the drag threshold is reached. This mitigates T87511, although the single drag test still causes the snap gizmo to flicker.
2021-04-16Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-16Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-16Cleanup: clang-formatCampbell Barton
2021-04-16Fix BLO_library_temp_load_id loading temporary ID's into G.mainCampbell Barton
The intention with this API function was to temporarily load ID's tagged LIB_TAG_TEMP_MAIN, however the way the `real_main` was used, these ID's were loaded into the G.main.
2021-04-16Merge branch 'blender-v2.93-release'Jacques Lucke
2021-04-16Fix T87522: frame selected does not take instances into accountJacques Lucke
`ob->runtime.geometry_set_eval` can contain instances as well. This only affected instances generated by geometry nodes. We should probably have a separate function that tells us if an object has instances or not..
2021-04-16Fix unreported: instances disappear when instanced mesh is in edit modeJacques Lucke
The issue is that for historic reasons, `geometry_set_eval` does not contain the mesh component when the object is in edit mode.
2021-04-16Remove unneeded code from previous commit.Jeroen Bakker
2021-04-16Fix OCIO Shader Compilation Error.Jeroen Bakker
Compilation fails when our OCIO wrapper creates a shader that transfer first to scene ref and directly after that to display. This cause is that the GPU resources of both transfers had the same name. This is fixed by prefixing the resources. This can be reproduced by loading a movie file (mkv) in the VSE editor. Reported by Sergey Sharybin.
2021-04-16Fix T87169: support attribute search on group nodesJacques Lucke
2021-04-16Fix T87217: improve impact of seed in point distribute nodeJacques Lucke
Incrementing the seed just by one did not mix things up enough.
2021-04-16Fix T87359: set group output in geometry node tree update callbackWannes Malfait
This also fixes T85511. Differential Revision: https://developer.blender.org/D10970
2021-04-16Fix T87441: don't remove custom attributes automaticallyJacques Lucke
In the past, custom attributes were rarely used in practice, because the only way to use them was from Python. Since geometry nodes, more users started to add their own attributes. Those attributes should not be removed automatically. It is still possible to remove them in geometry nodes explictly to improve performance.
2021-04-16Fix T85691: attributes used by geometry nodes were removed automaticallyJacques Lucke
This has technically been fixed by rB3e87d8a4315d794efff659e40f0bb9e34e2aec8a, but the fix there is questionable, because it disables an optimization for vertex groups entirely. This fix is a little bit more precise in that it only disables the optimization when the object is used by some geometry nodes modifier.
2021-04-16Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-16Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-16Fix T65064: Keymaps items controlling dynamic enums fail to exportCampbell Barton
Keymap UI and import/export could depend on the current context for dynamic enum's. Use STRUCT_NO_CONTEXT_WITHOUT_OWNER_ID for OperatorProperties.
2021-04-16RNA: add STRUCT_NO_CONTEXT_WITHOUT_OWNER_ID flagCampbell Barton
This flag is needed so PointerRNA structs that aren't part of the current context can access enum values without inspecting the context. This is needed for keymap access, so the keymap UI and keymap export doesn't depend on the current context.
2021-04-16Merge branch 'blender-v2.93-release'Campbell Barton
2021-04-16Fix RNA enum item callbacks not checking for NULL contextCampbell Barton
The NULL context is used to extract items for document generation.
2021-04-16Merge branch 'blender-v2.93-release'Germano Cavalcante
2021-04-16Snap Gizmo: Minor optimization in detecting toggle inversionGermano Cavalcante
Do not compare the x and y values of the mouse to check inversion. Also remove "Lazy Initialization".