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-08-31Fix 'WM_window_find_under_cursor'Germano Cavalcante
This function was not working if the window is partially out of screen space.
2021-08-31Fix T90988: Incorrect speed effect strip mathRichard Antalik
Math implemented in 929d7597b345 was incorrect, but also inconsistent with previous behavior. `SEQ_SPEED_STRETCH` should change length only when right handle is moved. This is now documented in code.
2021-08-31Fix VSE move_to_meta function moving meta stripRichard Antalik
API function `move_to_meta` should move strips without changing context data like `MetaStack` that tells UI which meta strip should be displayed and operated upon. `SEQ_time_update_sequence` relied on `MetaStack` to update meta strip content length. Instead of changing function `SEQ_time_update_sequence`, use function `SEQ_time_update_meta_strip_range` directly. This is because caller would have to be aware of parent meta strip that needs update anyway.
2021-08-31PyDoc: Fix compliation warningAaron Carlisle
2021-08-31PyDoc: Fix compilation after recent contex_member additionAaron Carlisle
Fixes missing change needed for rB0a8f53a7b847d9c8bdcefc025de70fd2608012b7
2021-08-31Cleanup: sequencer operatorsCampbell Barton
- Use name 'strip' instead of 's' - Assign a variable to 'scene' instead of accessing from context. - Avoid temporary variable for swapping values.
2021-08-31Cleanup: use new active_sequence_strip context attributeCampbell Barton
2021-08-31Context: add "active_sequence_strip" context memberPhilipp Oeser
This is an alternative to context.scene.sequence_editor.active_strip which could be verbose, especially with additional None checks. Part of fix for T90723, extracted from D12297.
2021-08-30Docs: GPU Shader: improvementsGermano Cavalcante
Changes: - line break - enum highlighting - better description
2021-08-30Fix: add virtual destructor to base classJacques Lucke
2021-08-30Cleanup: clang-tidyJacques Lucke
readability-named-parameter
2021-08-30Nodes: add more flexible method to declare sockets of a nodeJacques Lucke
Previously, built-in nodes had to implement "socket templates" (`bNodeSocketTemplate`) to tell Blender which sockets they have. It was nice that this was declarative, but this approach was way too rigid and was cumbersome to use in many cases. This commit starts to move us away from this rigid structure by letting nodes implement a function that declares the sockets the node has. Right now this is used as a direct replacement of the "socket template" approach to keep the refactor smaller. It's just a bit easier to read and write. In the future we want to support more complex features like dynamic numbers of sockets and type inferencing. Those features will be easier to build on this new approach. This new approach can live side by side with `bNodeSocketTemplate` for a while. That makes it easier to update nodes one by one. Note: In `bNodeSocketTemplate` socket identifiers were made unique automatically. In this new approach, one has to specify unique identifiers manually (unless the name is unique already). Differential Revision: https://developer.blender.org/D12335
2021-08-30Fix T91056: GPencil merge layers doesn't preseve Keyframe type.Antonio Vazquez
Now if the frame does not exist in destination layer, the frame type of merge layer is used. For existing frames in destination layer, the existing type is not changed.
2021-08-30Fix T90742: Gpencil ghost point on selectionHenrik Dick
Reviewed By: fclem, filedescriptor Maniphest Tasks: T90742 Differential Revision: https://developer.blender.org/D12259
2021-08-30Docs: retitle 'GPU Shader Module' to 'GPU Module'Germano Cavalcante
We already have a module for GPU Shader (`gpu.shader`). So, remove the name "Shader" from the title to avoid confusion.
2021-08-30Geometry Nodes: Curve Fill NodeErik Abrahamsson
This node takes a curve geometry input and creates a filled mesh at Z=0 using a constrained Delaunay triangulation algorithm. Because of the choice of algorithm, the results should be higher quality than the filling for 2D curve objects. This commit adds an initial fairly simple version of the node, but more features may be added in the future, like transferring attributes when necessary, or an index attribute input to break up the calculations into smaller chunks to improve performance. Differential Revision: https://developer.blender.org/D11846
2021-08-30Cleanup: Add comment about suspicious O(n^3) loopHans Goudey
2021-08-30Geometry Nodes: Enhance the cube mesh primitive as a cuboidRajesh Advani
This mesh primitive enhances the Cube mesh primitive and allows the creation of a cuboid with a configurable size and number of vertices in all 3 directions. The Cube primitive is now similar to the Grid primitive except that it works in 3 dimensions. Previously it was possible to create a cube and scale it arbitrarily along each axis. You could also subdivide the mesh, but the number of subdivisions was equal along all axes. This meant that making the basic frame for something like modular buildings wasn't trivial. Inspired by tutorials and files for modular building creation. The cuboid is created as a `Mesh` so that large meshes with millions of faces are created quickly. Though edge calculation could be faster if implemented here, edges are calculated using `BKE_mesh_calc_edges` to reduce complexity, and in hopes that they may be calculated lazily for `Mesh` in the future like vertex normals. See the differential revision for more information. Differential Revision: https://developer.blender.org/D11810
2021-08-30Geometry Nodes: Allow for one vertex in grid nodeMattias Fredriksson
This commit allows setting the number of vertices in either direction to 1, so that the primitive grid node will create a line instead of a grid. To avoid confusion the soft limits of the input sockets are not changed, so this is purely an increase in flexibility for when it is helpful. Differential Revision: https://developer.blender.org/D11772
2021-08-30Fix: Circle mesh primitive outer edges do not renderMattias Fredriksson
The outer edges created om the circle mesh primitive node weren't marked with the flags that makes them show in wireframe mode. Differential Revision: https://developer.blender.org/D12152
2021-08-29Fix BLI_strncpy_wchar_from_utf8 result on WindowsCampbell Barton
This function was documented to return the length but returned an error value for WIN32. While this doesn't cause any bugs at the moment, it could cause problems in the future. Oversight in 5496d8cd361385268316f91afa150e69b5345ab0.
2021-08-28UI: Timecodes: Rename "No TC in use" to "None"Aaron Carlisle
Differential Revision: https://developer.blender.org/D12296
2021-08-28BLI_string_utf8: add buffer size arg to BLI_str_utf8_from_unicodeCampbell Barton
Besides helping to avoid buffer overflow errors this reduces complexity of BLI_str_utf32_as_utf8 which needed a special loop for the last 6 characters to avoid writing past the buffer bounds. Also add BLI_str_utf8_from_unicode_len which only returns the length.
2021-08-28Fix error scaling thumbnails to zero dimensionsCampbell Barton
Follow up to fix for T89868.
2021-08-28BLF: remove checks for blend file relative pathsCampbell Barton
This was added in b24712a9ca6fa807660a02d6988269748daecdbf but is no longer needed as of efc129bc827558e55cf4619b8e2ca502342338f3. Further, this wasn't reliable as it could fail on linked library data which has a different base directory. Assert when blend file relative paths are passed to BLF (matching imbuf file loading).
2021-08-27Cleanup: Remove redundant null checkHans Goudey
2021-08-27Fix failing alembic test after IDProperty UI data refactorHans Goudey
The default float IDProperty min value rB8b9a3b94fc148d19 for when there is no UI data was FLT_MIN instead of -FLT_MAX, which meant that animated custom property values couldn't be less than zero unless they had their UI data values edited previously. That's a mistake I won't make again! Also change the int minimums from -INT_MAX to INT_MIN to sanitize the whole situation.
2021-08-27UI: Reduce Node Contents Jiggling When MovedHarley Acheson
This patch just clamps and rounds node contents and socket locations so they don't appear to jiggle around when you move them. This issue happens because node sizing and positioning are in floats while text content must be pixel-aligned. See D11684 for more details and comparisons. Differential Revision: https://developer.blender.org/D11684 Reviewed by Julian Eisel
2021-08-27UI: Fix summary overlay wrong range and overlap in DopesheetPablo Vazquez
The overlay was drawn twice on top of each other making it hard to see, hard to theme, and making it more prominent in the wrong areas (before frame 0, not even start frame). The comment in the code was also wrong since it said "frame one" but it was 0. Checked with the Animation module team that it's better to use start/end frame range instead of frame 0. There is a TODO note to de-duplicate this section eventually so I left it there. This fix is currently done for Grease Pencil and Mask modes, but it should also be fixed for the regular Dopesheet mode (in line 244 if anyone wants to do it).
2021-08-27Refactor IDProperty UI data storageHans Goudey
The storage of IDProperty UI data (min, max, default value, etc) is quite complicated. For every property, retrieving a single one of these values involves three string lookups. First for the "_RNA_UI" group property, then another for a group with the property's name, then for the data value name. Not only is this inefficient, it's hard to reason about, unintuitive, and not at all self-explanatory. This commit replaces that system with a UI data struct directly in the IDProperty. If it's not used, the only cost is of a NULL pointer. Beyond storing the description, name, and RNA subtype, derived structs are used to store type specific UI data like min and max. Note that this means that addons using (abusing) the `_RNA_UI` custom property will have to be changed. A few places in the addons repository will be changed after this commit with D9919. **Before** Before, first the _RNA_UI subgroup is retrieved the _RNA_UI group, then the subgroup for the original property, then specific UI data is accessed like any other IDProperty. ``` prop = rna_idprop_ui_prop_get(idproperties_owner, "prop_name", create=True) prop["min"] = 1.0 ``` **After** After, the `id_properties_ui` function for RNA structs returns a python object specifically for managing an IDProperty's UI data. ``` ui_data = idproperties_owner.id_properties_ui("prop_name") ui_data.update(min=1.0) ``` In addition to `update`, there are now other functions: - `as_dict`: Returns a dictionary of the property's UI data. - `clear`: Removes the property's UI data. - `update_from`: Copy UI data between properties, even if they have different owners. Differential Revision: https://developer.blender.org/D9697
2021-08-27Fix crash sampling render result before any pixel was renderedSergey Sharybin
Caused by recent lazy render result passes allocation change.
2021-08-27Fix shadowing in sequencer iteratorSergey Sharybin
The __LINE__ was not properly expanded.
2021-08-27Fix "toggle shading" op not updating VR viewPeter Kim
Reason was that the notifier did not set the NS_VIEW3D_SHADING subtype, which the VR view listens for for a shading update. In the case of "toggle xray", a notifier was absent altogether.
2021-08-27VSE: Transform overwrite modeRichard Antalik
Add mode to overwrite strips on overlap instead of resolving overlap. When overlap is created, 3 things can happen: - On partial overlap, handles of overlapped strip are moved - On complete overlap with smaller strip, overlapped strip is split - On complete overlap with larger strip, overlapped strip is removed This mode can be enabled in header. Reviewed By: fsiddi, mano-wii Differential Revision: https://developer.blender.org/D11805
2021-08-27Cleanup: quiet maybe-used-uninitialized warningJacques Lucke
2021-08-27Fix T90907: RNA pointers for material slots are not unique across IDsPhilipp Oeser
Caused by {rB1a81d268a19f}. This caused e.g. ALT-clicking the 'Link' button to not propagate to other selected objects (same as the 'Copy To Selected' context menu entry). If these are not unique across IDs, checks in ui_selectcontext_begin() or copy_to_selected_button() could fail. Now offset by ID pointer. thx @JacquesLucke for clarification on the POINTER_* macros (and why not to use them)! Maniphest Tasks: T90907 Differential Revision: https://developer.blender.org/D12321
2021-08-27Fix XR action map index initializationPeter Kim
This reverts 151eed752b01. Originally thought it was necessary to initialize selected/active indices to -1 to prevent out-of-bounds list access, but this is not needed since null checks are already performed after obtaining list members via BLI_findlink(). In addition, leaving indices zero-initialized facilitates use of the Python API, for example when displaying action map information in a UI list.
2021-08-27Cleanup: clang-tidyCampbell Barton
2021-08-27Cleanup: utf8 stepping functionsCampbell Barton
Various changes to reduce risk of out of bounds errors in utf8 seeking. - Remove BLI_str_prev_char_utf8 This function could potentially scan past the beginning of a string. Use BLI_str_find_prev_char_utf8 instead which takes a limiting string start argument. - Swap arguments for BLI_str_find_prev_char_utf8 so the stepping argument is first and the limiting argument is last. This matches BLI_str_find_next_char_utf8. - Change behavior of these functions to return it the start or end pointers instead of NULL, which complicated use of these functions to calculate offsets. Callers that need to check if the limits were reached can compare the return value with the start/end pointers. - Return 'const char *' from these functions so they don't remove const from the input arguments.
2021-08-27Fix loading packed fonts for sequencer stripsCampbell Barton
2021-08-27Cleanup: use early returnCampbell Barton
2021-08-27Fix sequencer font loading using an unexpected pathCampbell Barton
Reuse the existing font loading function which handles this case.
2021-08-27Modifier: smooth interpolation supportHenrik Dick
Add an option to the mask modifier to use the vertex weights to generate smooth in between geometry, instead of just deleting non complete faces. This can be used to make all sorts of smooth dissolve animations directly with geometry, which are usually hacked together with shaders. It also allows for implicit function plotting using geometry nodes and boolean like operations on non manifold geometry with the proximity modifier. Reviewed By: campbellbarton Ref D10979
2021-08-27Cleanup: warningsCampbell Barton
2021-08-26Fix T90973: GPencil - Add buttons to move up and down vertex groupsAntonio Vazquez
These buttons were in Meshes but not for Grease Pencil. This patch add them in order to keep consistency. Reviewed By: HooglyBoogly Maniphest Tasks: T90973 Differential Revision: https://developer.blender.org/D12328
2021-08-26UI: Consistent Area Move Snapping LocationsHarley Acheson
Change Area Move snapping locations to even 12ths, rather than current eights and thirds, so snap distances are consistent sizes. Also adds snapping at minimum and maximum locations. see D11938 for details and illustrations. Differential Revision: https://developer.blender.org/D11938 Reviewed by Hans Goudey
2021-08-26Fix error in last commmitGermano Cavalcante
2021-08-26Fix T90817: Object Picker Doesn't Work on Second windowGermano Cavalcante
Solution similar to the one seen in {rBb94ab93dfb82}. The idea is to find the window and region under the cursor to use in the operator. Reviewed By: brecht Maniphest Tasks: T90817 Differential Revision: https://developer.blender.org/D12310
2021-08-26Cleanup: split eyedropper_color_sample_fl into more specific utilitiesGermano Cavalcante
The window and region find utility can be used in other eyedropper operators.
2021-08-26Cleanup: return window in 'WM_window_find_under_cursor'Germano Cavalcante
This better matches other functions like `BKE_screen_find_area_xy`.